MsgTypes.py 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. """MsgTypes module: contains distributed object message types"""
  2. from direct.showbase.PythonUtil import invertDictLossless
  3. MsgName2Id = {
  4. # 2 new params: passwd, char bool 0/1 1 = new account
  5. # 2 new return values: 129 = not found, 12 = bad passwd,
  6. 'CLIENT_LOGIN': 1,
  7. 'CLIENT_LOGIN_RESP': 2,
  8. 'CLIENT_GET_AVATARS': 3,
  9. # Sent by the server when it is dropping the connection deliberately.
  10. 'CLIENT_GO_GET_LOST': 4,
  11. 'CLIENT_GET_AVATARS_RESP': 5,
  12. 'CLIENT_CREATE_AVATAR': 6,
  13. 'CLIENT_CREATE_AVATAR_RESP': 7,
  14. 'CLIENT_GET_FRIEND_LIST': 10,
  15. 'CLIENT_GET_FRIEND_LIST_RESP': 11,
  16. 'CLIENT_GET_AVATAR_DETAILS': 14,
  17. 'CLIENT_GET_AVATAR_DETAILS_RESP': 15,
  18. 'CLIENT_LOGIN_2': 16,
  19. 'CLIENT_LOGIN_2_RESP': 17,
  20. 'CLIENT_OBJECT_UPDATE_FIELD': 24,
  21. 'CLIENT_OBJECT_UPDATE_FIELD_RESP': 24,
  22. 'CLIENT_OBJECT_DISABLE': 25,
  23. 'CLIENT_OBJECT_DISABLE_RESP': 25,
  24. 'CLIENT_OBJECT_DISABLE_OWNER': 26,
  25. 'CLIENT_OBJECT_DISABLE_OWNER_RESP': 26,
  26. 'CLIENT_OBJECT_DELETE': 27,
  27. 'CLIENT_OBJECT_DELETE_RESP': 27,
  28. 'CLIENT_SET_ZONE_CMU': 29,
  29. 'CLIENT_REMOVE_ZONE': 30,
  30. 'CLIENT_SET_AVATAR': 32,
  31. 'CLIENT_CREATE_OBJECT_REQUIRED': 34,
  32. 'CLIENT_CREATE_OBJECT_REQUIRED_RESP': 34,
  33. 'CLIENT_CREATE_OBJECT_REQUIRED_OTHER': 35,
  34. 'CLIENT_CREATE_OBJECT_REQUIRED_OTHER_RESP': 35,
  35. 'CLIENT_CREATE_OBJECT_REQUIRED_OTHER_OWNER': 36,
  36. 'CLIENT_CREATE_OBJECT_REQUIRED_OTHER_OWNER_RESP':36,
  37. 'CLIENT_REQUEST_GENERATES': 36,
  38. 'CLIENT_DISCONNECT': 37,
  39. 'CLIENT_GET_STATE_RESP': 47,
  40. 'CLIENT_DONE_INTEREST_RESP': 48,
  41. 'CLIENT_DELETE_AVATAR': 49,
  42. 'CLIENT_DELETE_AVATAR_RESP': 5,
  43. 'CLIENT_HEARTBEAT': 52,
  44. 'CLIENT_FRIEND_ONLINE': 53,
  45. 'CLIENT_FRIEND_OFFLINE': 54,
  46. 'CLIENT_REMOVE_FRIEND': 56,
  47. 'CLIENT_CHANGE_PASSWORD': 65,
  48. 'CLIENT_SET_NAME_PATTERN': 67,
  49. 'CLIENT_SET_NAME_PATTERN_ANSWER': 68,
  50. 'CLIENT_SET_WISHNAME': 70,
  51. 'CLIENT_SET_WISHNAME_RESP': 71,
  52. 'CLIENT_SET_WISHNAME_CLEAR': 72,
  53. 'CLIENT_SET_SECURITY': 73,
  54. 'CLIENT_SET_DOID_RANGE': 74,
  55. 'CLIENT_GET_AVATARS_RESP2': 75,
  56. 'CLIENT_CREATE_AVATAR2': 76,
  57. 'CLIENT_SYSTEM_MESSAGE': 78,
  58. 'CLIENT_SET_AVTYPE': 80,
  59. 'CLIENT_GET_PET_DETAILS': 81,
  60. 'CLIENT_GET_PET_DETAILS_RESP': 82,
  61. 'CLIENT_ADD_INTEREST': 97,
  62. 'CLIENT_REMOVE_INTEREST': 99,
  63. 'CLIENT_OBJECT_LOCATION': 102,
  64. 'CLIENT_LOGIN_3': 111,
  65. 'CLIENT_LOGIN_3_RESP': 110,
  66. 'CLIENT_GET_FRIEND_LIST_EXTENDED': 115,
  67. 'CLIENT_GET_FRIEND_LIST_EXTENDED_RESP': 116,
  68. 'CLIENT_SET_FIELD_SENDABLE': 120,
  69. 'CLIENT_SYSTEMMESSAGE_AKNOWLEDGE': 123,
  70. 'CLIENT_CHANGE_GENERATE_ORDER': 124,
  71. # new toontown specific login message, adds last logged in, and if child account has parent acount
  72. 'CLIENT_LOGIN_TOONTOWN': 125,
  73. 'CLIENT_LOGIN_TOONTOWN_RESP': 126,
  74. 'STATESERVER_OBJECT_GENERATE_WITH_REQUIRED': 2001,
  75. 'STATESERVER_OBJECT_GENERATE_WITH_REQUIRED_OTHER': 2003,
  76. 'STATESERVER_OBJECT_UPDATE_FIELD': 2004,
  77. 'STATESERVER_OBJECT_CREATE_WITH_REQUIRED_CONTEXT': 2050,
  78. 'STATESERVER_OBJECT_CREATE_WITH_REQUIR_OTHER_CONTEXT': 2051,
  79. 'STATESERVER_BOUNCE_MESSAGE': 2086,
  80. }
  81. # create id->name table for debugging
  82. MsgId2Names = invertDictLossless(MsgName2Id)
  83. # put msg names in module scope, assigned to msg value
  84. globals().update(MsgName2Id)
  85. # These messages are ignored when the client is headed to the quiet zone
  86. QUIET_ZONE_IGNORED_LIST = [
  87. # We mustn't ignore updates, because some updates for localToon
  88. # are always important.
  89. #CLIENT_OBJECT_UPDATE_FIELD,
  90. # These are now handled. If it is a create for a class that is in the
  91. # uber zone, we should create it.
  92. #CLIENT_CREATE_OBJECT_REQUIRED,
  93. #CLIENT_CREATE_OBJECT_REQUIRED_OTHER,
  94. ]
  95. # The following is a different set of numbers from above.
  96. # These are the sub-message types for CLIENT_LOGIN_2.
  97. CLIENT_LOGIN_2_GREEN = 1 # Disney's GoReg subscription token, not used.
  98. CLIENT_LOGIN_2_PLAY_TOKEN = 2 # VR Studio PlayToken.
  99. CLIENT_LOGIN_2_BLUE = 3 # The international GoReg token.
  100. CLIENT_LOGIN_3_DISL_TOKEN = 4 # SSL encoded blob from DISL system.