eolib 1.1.1__py3-none-any.whl → 2.0.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. eolib/__about__.py +1 -1
  2. eolib/protocol/__init__.py +1 -1
  3. eolib/protocol/_generated/coords.py +28 -37
  4. eolib/protocol/_generated/emote.py +1 -1
  5. eolib/protocol/_generated/map/emf.py +248 -410
  6. eolib/protocol/_generated/map/map_graphic_layer.py +34 -32
  7. eolib/protocol/_generated/map/map_graphic_row.py +41 -49
  8. eolib/protocol/_generated/map/map_graphic_row_tile.py +28 -37
  9. eolib/protocol/_generated/map/map_item.py +56 -97
  10. eolib/protocol/_generated/map/map_legacy_door_key.py +28 -29
  11. eolib/protocol/_generated/map/map_npc.py +49 -80
  12. eolib/protocol/_generated/map/map_sign.py +43 -54
  13. eolib/protocol/_generated/map/map_tile_spec_row.py +41 -49
  14. eolib/protocol/_generated/map/map_tile_spec_row_tile.py +28 -29
  15. eolib/protocol/_generated/map/map_warp.py +42 -63
  16. eolib/protocol/_generated/map/map_warp_row.py +41 -49
  17. eolib/protocol/_generated/map/map_warp_row_tile.py +28 -29
  18. eolib/protocol/_generated/net/char_item.py +28 -37
  19. eolib/protocol/_generated/net/client/account_agree_client_packet.py +40 -33
  20. eolib/protocol/_generated/net/client/account_create_client_packet.py +80 -91
  21. eolib/protocol/_generated/net/client/account_request_client_packet.py +21 -12
  22. eolib/protocol/_generated/net/client/admin_interact_report_client_packet.py +31 -22
  23. eolib/protocol/_generated/net/client/admin_interact_tell_client_packet.py +21 -12
  24. eolib/protocol/_generated/net/client/attack_use_client_packet.py +28 -29
  25. eolib/protocol/_generated/net/client/bank_add_client_packet.py +28 -37
  26. eolib/protocol/_generated/net/client/bank_open_client_packet.py +21 -20
  27. eolib/protocol/_generated/net/client/bank_take_client_packet.py +28 -37
  28. eolib/protocol/_generated/net/client/barber_buy_client_packet.py +35 -54
  29. eolib/protocol/_generated/net/client/barber_open_client_packet.py +21 -20
  30. eolib/protocol/_generated/net/client/board_create_client_packet.py +40 -41
  31. eolib/protocol/_generated/net/client/board_open_client_packet.py +21 -20
  32. eolib/protocol/_generated/net/client/board_remove_client_packet.py +28 -37
  33. eolib/protocol/_generated/net/client/board_take_client_packet.py +28 -37
  34. eolib/protocol/_generated/net/client/book_request_client_packet.py +22 -21
  35. eolib/protocol/_generated/net/client/byte_coords.py +28 -37
  36. eolib/protocol/_generated/net/client/chair_request_client_packet.py +56 -40
  37. eolib/protocol/_generated/net/client/character_create_client_packet.py +60 -91
  38. eolib/protocol/_generated/net/client/character_remove_client_packet.py +31 -35
  39. eolib/protocol/_generated/net/client/character_request_client_packet.py +22 -7
  40. eolib/protocol/_generated/net/client/character_take_client_packet.py +21 -20
  41. eolib/protocol/_generated/net/client/chest_add_client_packet.py +28 -21
  42. eolib/protocol/_generated/net/client/chest_open_client_packet.py +21 -12
  43. eolib/protocol/_generated/net/client/chest_take_client_packet.py +28 -29
  44. eolib/protocol/_generated/net/client/citizen_accept_client_packet.py +28 -37
  45. eolib/protocol/_generated/net/client/citizen_open_client_packet.py +21 -20
  46. eolib/protocol/_generated/net/client/citizen_remove_client_packet.py +21 -20
  47. eolib/protocol/_generated/net/client/citizen_reply_client_packet.py +47 -63
  48. eolib/protocol/_generated/net/client/citizen_request_client_packet.py +28 -37
  49. eolib/protocol/_generated/net/client/connection_accept_client_packet.py +35 -54
  50. eolib/protocol/_generated/net/client/connection_ping_client_packet.py +13 -7
  51. eolib/protocol/_generated/net/client/door_open_client_packet.py +21 -12
  52. eolib/protocol/_generated/net/client/emote_report_client_packet.py +21 -12
  53. eolib/protocol/_generated/net/client/face_player_client_packet.py +21 -12
  54. eolib/protocol/_generated/net/client/global_close_client_packet.py +13 -7
  55. eolib/protocol/_generated/net/client/global_open_client_packet.py +13 -7
  56. eolib/protocol/_generated/net/client/global_player_client_packet.py +13 -7
  57. eolib/protocol/_generated/net/client/global_remove_client_packet.py +13 -7
  58. eolib/protocol/_generated/net/client/guild_accept_client_packet.py +22 -21
  59. eolib/protocol/_generated/net/client/guild_agree_client_packet.py +99 -91
  60. eolib/protocol/_generated/net/client/guild_buy_client_packet.py +28 -37
  61. eolib/protocol/_generated/net/client/guild_create_client_packet.py +48 -51
  62. eolib/protocol/_generated/net/client/guild_junk_client_packet.py +21 -20
  63. eolib/protocol/_generated/net/client/guild_kick_client_packet.py +28 -29
  64. eolib/protocol/_generated/net/client/guild_open_client_packet.py +21 -20
  65. eolib/protocol/_generated/net/client/guild_player_client_packet.py +40 -41
  66. eolib/protocol/_generated/net/client/guild_rank_client_packet.py +36 -47
  67. eolib/protocol/_generated/net/client/guild_remove_client_packet.py +21 -20
  68. eolib/protocol/_generated/net/client/guild_report_client_packet.py +28 -29
  69. eolib/protocol/_generated/net/client/guild_request_client_packet.py +40 -41
  70. eolib/protocol/_generated/net/client/guild_take_client_packet.py +41 -29
  71. eolib/protocol/_generated/net/client/guild_tell_client_packet.py +28 -29
  72. eolib/protocol/_generated/net/client/guild_use_client_packet.py +21 -20
  73. eolib/protocol/_generated/net/client/init_init_client_packet.py +44 -55
  74. eolib/protocol/_generated/net/client/item_drop_client_packet.py +29 -29
  75. eolib/protocol/_generated/net/client/item_get_client_packet.py +21 -20
  76. eolib/protocol/_generated/net/client/item_junk_client_packet.py +21 -12
  77. eolib/protocol/_generated/net/client/item_use_client_packet.py +21 -20
  78. eolib/protocol/_generated/net/client/jukebox_msg_client_packet.py +24 -22
  79. eolib/protocol/_generated/net/client/jukebox_open_client_packet.py +21 -12
  80. eolib/protocol/_generated/net/client/jukebox_use_client_packet.py +28 -37
  81. eolib/protocol/_generated/net/client/locker_add_client_packet.py +28 -21
  82. eolib/protocol/_generated/net/client/locker_buy_client_packet.py +13 -7
  83. eolib/protocol/_generated/net/client/locker_open_client_packet.py +21 -12
  84. eolib/protocol/_generated/net/client/locker_take_client_packet.py +28 -29
  85. eolib/protocol/_generated/net/client/login_request_client_packet.py +32 -23
  86. eolib/protocol/_generated/net/client/marriage_open_client_packet.py +21 -20
  87. eolib/protocol/_generated/net/client/marriage_request_client_packet.py +38 -39
  88. eolib/protocol/_generated/net/client/message_ping_client_packet.py +13 -7
  89. eolib/protocol/_generated/net/client/npc_range_request_client_packet.py +35 -35
  90. eolib/protocol/_generated/net/client/paperdoll_add_client_packet.py +28 -37
  91. eolib/protocol/_generated/net/client/paperdoll_remove_client_packet.py +28 -37
  92. eolib/protocol/_generated/net/client/paperdoll_request_client_packet.py +22 -21
  93. eolib/protocol/_generated/net/client/party_accept_client_packet.py +28 -29
  94. eolib/protocol/_generated/net/client/party_remove_client_packet.py +21 -20
  95. eolib/protocol/_generated/net/client/party_request_client_packet.py +28 -29
  96. eolib/protocol/_generated/net/client/party_take_client_packet.py +21 -20
  97. eolib/protocol/_generated/net/client/player_range_request_client_packet.py +25 -23
  98. eolib/protocol/_generated/net/client/players_accept_client_packet.py +21 -12
  99. eolib/protocol/_generated/net/client/players_list_client_packet.py +13 -7
  100. eolib/protocol/_generated/net/client/players_request_client_packet.py +13 -7
  101. eolib/protocol/_generated/net/client/priest_accept_client_packet.py +21 -20
  102. eolib/protocol/_generated/net/client/priest_open_client_packet.py +21 -20
  103. eolib/protocol/_generated/net/client/priest_request_client_packet.py +31 -30
  104. eolib/protocol/_generated/net/client/priest_use_client_packet.py +22 -21
  105. eolib/protocol/_generated/net/client/quest_accept_client_packet.py +150 -115
  106. eolib/protocol/_generated/net/client/quest_list_client_packet.py +21 -12
  107. eolib/protocol/_generated/net/client/quest_use_client_packet.py +28 -38
  108. eolib/protocol/_generated/net/client/range_request_client_packet.py +38 -44
  109. eolib/protocol/_generated/net/client/refresh_request_client_packet.py +13 -7
  110. eolib/protocol/_generated/net/client/shop_buy_client_packet.py +28 -29
  111. eolib/protocol/_generated/net/client/shop_create_client_packet.py +28 -37
  112. eolib/protocol/_generated/net/client/shop_open_client_packet.py +21 -20
  113. eolib/protocol/_generated/net/client/shop_sell_client_packet.py +28 -29
  114. eolib/protocol/_generated/net/client/sit_request_client_packet.py +56 -43
  115. eolib/protocol/_generated/net/client/spell_request_client_packet.py +28 -37
  116. eolib/protocol/_generated/net/client/spell_target_group_client_packet.py +28 -37
  117. eolib/protocol/_generated/net/client/spell_target_other_client_packet.py +49 -80
  118. eolib/protocol/_generated/net/client/spell_target_self_client_packet.py +35 -46
  119. eolib/protocol/_generated/net/client/spell_use_client_packet.py +21 -12
  120. eolib/protocol/_generated/net/client/stat_skill_add_client_packet.py +83 -66
  121. eolib/protocol/_generated/net/client/stat_skill_junk_client_packet.py +21 -20
  122. eolib/protocol/_generated/net/client/stat_skill_open_client_packet.py +21 -20
  123. eolib/protocol/_generated/net/client/stat_skill_remove_client_packet.py +28 -37
  124. eolib/protocol/_generated/net/client/stat_skill_take_client_packet.py +28 -37
  125. eolib/protocol/_generated/net/client/talk_admin_client_packet.py +21 -12
  126. eolib/protocol/_generated/net/client/talk_announce_client_packet.py +21 -12
  127. eolib/protocol/_generated/net/client/talk_msg_client_packet.py +21 -12
  128. eolib/protocol/_generated/net/client/talk_open_client_packet.py +21 -12
  129. eolib/protocol/_generated/net/client/talk_player_client_packet.py +21 -12
  130. eolib/protocol/_generated/net/client/talk_report_client_packet.py +21 -12
  131. eolib/protocol/_generated/net/client/talk_request_client_packet.py +21 -12
  132. eolib/protocol/_generated/net/client/talk_tell_client_packet.py +31 -22
  133. eolib/protocol/_generated/net/client/talk_use_client_packet.py +21 -12
  134. eolib/protocol/_generated/net/client/trade_accept_client_packet.py +22 -21
  135. eolib/protocol/_generated/net/client/trade_add_client_packet.py +21 -12
  136. eolib/protocol/_generated/net/client/trade_agree_client_packet.py +21 -12
  137. eolib/protocol/_generated/net/client/trade_close_client_packet.py +13 -7
  138. eolib/protocol/_generated/net/client/trade_remove_client_packet.py +21 -20
  139. eolib/protocol/_generated/net/client/trade_request_client_packet.py +22 -21
  140. eolib/protocol/_generated/net/client/walk_action.py +35 -38
  141. eolib/protocol/_generated/net/client/walk_admin_client_packet.py +21 -12
  142. eolib/protocol/_generated/net/client/walk_player_client_packet.py +21 -12
  143. eolib/protocol/_generated/net/client/walk_spec_client_packet.py +21 -12
  144. eolib/protocol/_generated/net/client/warp_accept_client_packet.py +28 -37
  145. eolib/protocol/_generated/net/client/warp_take_client_packet.py +28 -37
  146. eolib/protocol/_generated/net/client/welcome_agree_client_packet.py +171 -169
  147. eolib/protocol/_generated/net/client/welcome_msg_client_packet.py +28 -37
  148. eolib/protocol/_generated/net/client/welcome_request_client_packet.py +21 -20
  149. eolib/protocol/_generated/net/item.py +28 -37
  150. eolib/protocol/_generated/net/server/__init__.py +4 -0
  151. eolib/protocol/_generated/net/server/account_reply_server_packet.py +190 -131
  152. eolib/protocol/_generated/net/server/admin_interact_agree_server_packet.py +21 -20
  153. eolib/protocol/_generated/net/server/admin_interact_list_server_packet.py +62 -74
  154. eolib/protocol/_generated/net/server/admin_interact_remove_server_packet.py +21 -20
  155. eolib/protocol/_generated/net/server/admin_interact_reply_server_packet.py +112 -91
  156. eolib/protocol/_generated/net/server/admin_interact_tell_server_packet.py +86 -110
  157. eolib/protocol/_generated/net/server/arena_accept_server_packet.py +47 -50
  158. eolib/protocol/_generated/net/server/arena_drop_server_packet.py +14 -8
  159. eolib/protocol/_generated/net/server/arena_spec_server_packet.py +55 -68
  160. eolib/protocol/_generated/net/server/arena_use_server_packet.py +21 -20
  161. eolib/protocol/_generated/net/server/attack_error_server_packet.py +13 -7
  162. eolib/protocol/_generated/net/server/attack_player_server_packet.py +28 -29
  163. eolib/protocol/_generated/net/server/avatar_admin_server_packet.py +67 -110
  164. eolib/protocol/_generated/net/server/avatar_agree_server_packet.py +21 -12
  165. eolib/protocol/_generated/net/server/avatar_change.py +132 -136
  166. eolib/protocol/_generated/net/server/avatar_change_type.py +1 -1
  167. eolib/protocol/_generated/net/server/avatar_remove_server_packet.py +29 -29
  168. eolib/protocol/_generated/net/server/avatar_reply_server_packet.py +56 -89
  169. eolib/protocol/_generated/net/server/bank_open_server_packet.py +35 -54
  170. eolib/protocol/_generated/net/server/bank_reply_server_packet.py +28 -37
  171. eolib/protocol/_generated/net/server/barber_agree_server_packet.py +28 -29
  172. eolib/protocol/_generated/net/server/barber_open_server_packet.py +21 -20
  173. eolib/protocol/_generated/net/server/big_coords.py +28 -37
  174. eolib/protocol/_generated/net/server/board_open_server_packet.py +44 -52
  175. eolib/protocol/_generated/net/server/board_player_server_packet.py +30 -29
  176. eolib/protocol/_generated/net/server/board_post_listing.py +39 -40
  177. eolib/protocol/_generated/net/server/book_reply_server_packet.py +42 -35
  178. eolib/protocol/_generated/net/server/cast_accept_server_packet.py +65 -71
  179. eolib/protocol/_generated/net/server/cast_reply_server_packet.py +78 -122
  180. eolib/protocol/_generated/net/server/cast_spec_server_packet.py +48 -60
  181. eolib/protocol/_generated/net/server/chair_close_server_packet.py +28 -29
  182. eolib/protocol/_generated/net/server/chair_player_server_packet.py +35 -38
  183. eolib/protocol/_generated/net/server/chair_remove_server_packet.py +28 -29
  184. eolib/protocol/_generated/net/server/chair_reply_server_packet.py +35 -38
  185. eolib/protocol/_generated/net/server/character_base_stats.py +56 -105
  186. eolib/protocol/_generated/net/server/character_base_stats_welcome.py +56 -105
  187. eolib/protocol/_generated/net/server/character_details.py +92 -115
  188. eolib/protocol/_generated/net/server/character_elemental_stats.py +56 -105
  189. eolib/protocol/_generated/net/server/character_map_info.py +161 -283
  190. eolib/protocol/_generated/net/server/character_player_server_packet.py +28 -37
  191. eolib/protocol/_generated/net/server/character_reply_server_packet.py +229 -179
  192. eolib/protocol/_generated/net/server/character_secondary_stats.py +49 -88
  193. eolib/protocol/_generated/net/server/character_secondary_stats_info_lookup.py +49 -88
  194. eolib/protocol/_generated/net/server/character_selection_list_entry.py +80 -125
  195. eolib/protocol/_generated/net/server/character_stats_equipment_change.py +42 -55
  196. eolib/protocol/_generated/net/server/character_stats_info_lookup.py +65 -100
  197. eolib/protocol/_generated/net/server/character_stats_reset.py +77 -140
  198. eolib/protocol/_generated/net/server/character_stats_update.py +56 -89
  199. eolib/protocol/_generated/net/server/character_stats_welcome.py +84 -157
  200. eolib/protocol/_generated/net/server/chest_agree_server_packet.py +25 -15
  201. eolib/protocol/_generated/net/server/chest_close_server_packet.py +28 -24
  202. eolib/protocol/_generated/net/server/chest_get_server_packet.py +39 -33
  203. eolib/protocol/_generated/net/server/chest_open_server_packet.py +32 -24
  204. eolib/protocol/_generated/net/server/chest_reply_server_packet.py +46 -58
  205. eolib/protocol/_generated/net/server/chest_spec_server_packet.py +13 -7
  206. eolib/protocol/_generated/net/server/citizen_accept_server_packet.py +21 -20
  207. eolib/protocol/_generated/net/server/citizen_open_server_packet.py +53 -79
  208. eolib/protocol/_generated/net/server/citizen_remove_server_packet.py +21 -12
  209. eolib/protocol/_generated/net/server/citizen_reply_server_packet.py +21 -20
  210. eolib/protocol/_generated/net/server/citizen_request_server_packet.py +21 -20
  211. eolib/protocol/_generated/net/server/connection_player_server_packet.py +28 -37
  212. eolib/protocol/_generated/net/server/dialog_entry.py +63 -57
  213. eolib/protocol/_generated/net/server/dialog_quest_entry.py +28 -29
  214. eolib/protocol/_generated/net/server/door_close_server_packet.py +21 -20
  215. eolib/protocol/_generated/net/server/door_open_server_packet.py +25 -14
  216. eolib/protocol/_generated/net/server/effect_admin_server_packet.py +42 -63
  217. eolib/protocol/_generated/net/server/effect_agree_server_packet.py +32 -38
  218. eolib/protocol/_generated/net/server/effect_player_server_packet.py +32 -45
  219. eolib/protocol/_generated/net/server/effect_report_server_packet.py +13 -7
  220. eolib/protocol/_generated/net/server/effect_spec_server_packet.py +111 -142
  221. eolib/protocol/_generated/net/server/effect_target_other_server_packet.py +46 -66
  222. eolib/protocol/_generated/net/server/effect_use_server_packet.py +56 -48
  223. eolib/protocol/_generated/net/server/emote_player_server_packet.py +28 -29
  224. eolib/protocol/_generated/net/server/equipment_change.py +50 -89
  225. eolib/protocol/_generated/net/server/equipment_character_select.py +49 -88
  226. eolib/protocol/_generated/net/server/equipment_map_info.py +53 -92
  227. eolib/protocol/_generated/net/server/equipment_paperdoll.py +115 -229
  228. eolib/protocol/_generated/net/server/equipment_welcome.py +114 -228
  229. eolib/protocol/_generated/net/server/face_player_server_packet.py +28 -29
  230. eolib/protocol/_generated/net/server/global_backfill_message.py +31 -22
  231. eolib/protocol/_generated/net/server/group_heal_target_player.py +35 -54
  232. eolib/protocol/_generated/net/server/guild_accept_server_packet.py +21 -20
  233. eolib/protocol/_generated/net/server/guild_agree_server_packet.py +48 -51
  234. eolib/protocol/_generated/net/server/guild_buy_server_packet.py +22 -21
  235. eolib/protocol/_generated/net/server/guild_create_server_packet.py +55 -68
  236. eolib/protocol/_generated/net/server/guild_kick_server_packet.py +13 -7
  237. eolib/protocol/_generated/net/server/guild_member.py +39 -40
  238. eolib/protocol/_generated/net/server/guild_open_server_packet.py +21 -20
  239. eolib/protocol/_generated/net/server/guild_rank_server_packet.py +30 -28
  240. eolib/protocol/_generated/net/server/guild_reply_server_packet.py +117 -93
  241. eolib/protocol/_generated/net/server/guild_report_server_packet.py +91 -111
  242. eolib/protocol/_generated/net/server/guild_request_server_packet.py +28 -29
  243. eolib/protocol/_generated/net/server/guild_sell_server_packet.py +21 -20
  244. eolib/protocol/_generated/net/server/guild_staff.py +31 -30
  245. eolib/protocol/_generated/net/server/guild_take_server_packet.py +21 -12
  246. eolib/protocol/_generated/net/server/guild_tell_server_packet.py +38 -36
  247. eolib/protocol/_generated/net/server/init_ban_type.py +1 -1
  248. eolib/protocol/_generated/net/server/init_init_server_packet.py +454 -393
  249. eolib/protocol/_generated/net/server/init_reply.py +3 -0
  250. eolib/protocol/_generated/net/server/item_accept_server_packet.py +21 -20
  251. eolib/protocol/_generated/net/server/item_add_server_packet.py +42 -63
  252. eolib/protocol/_generated/net/server/item_agree_server_packet.py +22 -21
  253. eolib/protocol/_generated/net/server/item_drop_server_packet.py +49 -64
  254. eolib/protocol/_generated/net/server/item_get_server_packet.py +35 -38
  255. eolib/protocol/_generated/net/server/item_junk_server_packet.py +35 -38
  256. eolib/protocol/_generated/net/server/item_kick_server_packet.py +28 -29
  257. eolib/protocol/_generated/net/server/item_map_info.py +42 -63
  258. eolib/protocol/_generated/net/server/item_obtain_server_packet.py +28 -29
  259. eolib/protocol/_generated/net/server/item_remove_server_packet.py +21 -20
  260. eolib/protocol/_generated/net/server/item_reply_server_packet.py +235 -300
  261. eolib/protocol/_generated/net/server/item_spec_server_packet.py +13 -7
  262. eolib/protocol/_generated/net/server/jukebox_agree_server_packet.py +21 -20
  263. eolib/protocol/_generated/net/server/jukebox_msg_server_packet.py +42 -63
  264. eolib/protocol/_generated/net/server/jukebox_open_server_packet.py +28 -29
  265. eolib/protocol/_generated/net/server/jukebox_player_server_packet.py +21 -20
  266. eolib/protocol/_generated/net/server/jukebox_reply_server_packet.py +13 -7
  267. eolib/protocol/_generated/net/server/jukebox_use_server_packet.py +22 -18
  268. eolib/protocol/_generated/net/server/level_up_stats.py +56 -105
  269. eolib/protocol/_generated/net/server/locker_buy_server_packet.py +28 -37
  270. eolib/protocol/_generated/net/server/locker_get_server_packet.py +39 -33
  271. eolib/protocol/_generated/net/server/locker_open_server_packet.py +32 -24
  272. eolib/protocol/_generated/net/server/locker_reply_server_packet.py +39 -33
  273. eolib/protocol/_generated/net/server/locker_spec_server_packet.py +21 -20
  274. eolib/protocol/_generated/net/server/login_reply.py +6 -0
  275. eolib/protocol/_generated/net/server/login_reply_server_packet.py +169 -115
  276. eolib/protocol/_generated/net/server/map_drain_damage_other.py +35 -54
  277. eolib/protocol/_generated/net/server/map_file.py +21 -12
  278. eolib/protocol/_generated/net/server/marriage_open_server_packet.py +21 -20
  279. eolib/protocol/_generated/net/server/marriage_reply_server_packet.py +56 -48
  280. eolib/protocol/_generated/net/server/message_accept_server_packet.py +30 -28
  281. eolib/protocol/_generated/net/server/message_close_server_packet.py +13 -7
  282. eolib/protocol/_generated/net/server/message_open_server_packet.py +21 -12
  283. eolib/protocol/_generated/net/server/message_pong_server_packet.py +13 -7
  284. eolib/protocol/_generated/net/server/music_player_server_packet.py +21 -20
  285. eolib/protocol/_generated/net/server/nearby_info.py +59 -61
  286. eolib/protocol/_generated/net/server/npc_accept_server_packet.py +47 -38
  287. eolib/protocol/_generated/net/server/npc_agree_server_packet.py +34 -32
  288. eolib/protocol/_generated/net/server/npc_dialog_server_packet.py +28 -29
  289. eolib/protocol/_generated/net/server/npc_junk_server_packet.py +21 -20
  290. eolib/protocol/_generated/net/server/npc_killed_data.py +70 -123
  291. eolib/protocol/_generated/net/server/npc_map_info.py +42 -55
  292. eolib/protocol/_generated/net/server/npc_player_server_packet.py +66 -76
  293. eolib/protocol/_generated/net/server/npc_reply_server_packet.py +60 -89
  294. eolib/protocol/_generated/net/server/npc_spec_server_packet.py +30 -27
  295. eolib/protocol/_generated/net/server/npc_update_attack.py +56 -89
  296. eolib/protocol/_generated/net/server/npc_update_chat.py +36 -45
  297. eolib/protocol/_generated/net/server/npc_update_position.py +35 -38
  298. eolib/protocol/_generated/net/server/online_player.py +60 -75
  299. eolib/protocol/_generated/net/server/paperdoll_agree_server_packet.py +49 -72
  300. eolib/protocol/_generated/net/server/paperdoll_ping_server_packet.py +22 -22
  301. eolib/protocol/_generated/net/server/paperdoll_remove_server_packet.py +42 -55
  302. eolib/protocol/_generated/net/server/paperdoll_reply_server_packet.py +37 -30
  303. eolib/protocol/_generated/net/server/party_add_server_packet.py +21 -12
  304. eolib/protocol/_generated/net/server/party_agree_server_packet.py +28 -37
  305. eolib/protocol/_generated/net/server/party_close_server_packet.py +13 -7
  306. eolib/protocol/_generated/net/server/party_create_server_packet.py +27 -16
  307. eolib/protocol/_generated/net/server/party_exp_share.py +37 -57
  308. eolib/protocol/_generated/net/server/party_list_server_packet.py +27 -16
  309. eolib/protocol/_generated/net/server/party_member.py +50 -73
  310. eolib/protocol/_generated/net/server/party_remove_server_packet.py +21 -20
  311. eolib/protocol/_generated/net/server/party_reply_server_packet.py +83 -58
  312. eolib/protocol/_generated/net/server/party_request_server_packet.py +35 -38
  313. eolib/protocol/_generated/net/server/party_target_group_server_packet.py +25 -15
  314. eolib/protocol/_generated/net/server/player_effect.py +90 -0
  315. eolib/protocol/_generated/net/server/players_agree_server_packet.py +21 -12
  316. eolib/protocol/_generated/net/server/players_list.py +38 -36
  317. eolib/protocol/_generated/net/server/players_list_friends.py +38 -36
  318. eolib/protocol/_generated/net/server/players_list_server_packet.py +23 -12
  319. eolib/protocol/_generated/net/server/players_net242_server_packet.py +21 -12
  320. eolib/protocol/_generated/net/server/players_ping_server_packet.py +21 -12
  321. eolib/protocol/_generated/net/server/players_pong_server_packet.py +21 -12
  322. eolib/protocol/_generated/net/server/players_remove_server_packet.py +21 -20
  323. eolib/protocol/_generated/net/server/players_reply_server_packet.py +23 -12
  324. eolib/protocol/_generated/net/server/priest_open_server_packet.py +21 -20
  325. eolib/protocol/_generated/net/server/priest_reply_server_packet.py +21 -12
  326. eolib/protocol/_generated/net/server/priest_request_server_packet.py +28 -29
  327. eolib/protocol/_generated/net/server/pub_file.py +28 -29
  328. eolib/protocol/_generated/net/server/quest_dialog_server_packet.py +76 -117
  329. eolib/protocol/_generated/net/server/quest_list_server_packet.py +99 -83
  330. eolib/protocol/_generated/net/server/quest_progress_entry.py +53 -66
  331. eolib/protocol/_generated/net/server/quest_report_server_packet.py +38 -37
  332. eolib/protocol/_generated/net/server/range_reply_server_packet.py +21 -12
  333. eolib/protocol/_generated/net/server/recover_agree_server_packet.py +35 -54
  334. eolib/protocol/_generated/net/server/recover_list_server_packet.py +28 -29
  335. eolib/protocol/_generated/net/server/recover_player_server_packet.py +30 -37
  336. eolib/protocol/_generated/net/server/recover_reply_server_packet.py +53 -93
  337. eolib/protocol/_generated/net/server/recover_target_group_server_packet.py +49 -88
  338. eolib/protocol/_generated/net/server/refresh_reply_server_packet.py +21 -12
  339. eolib/protocol/_generated/net/server/server_settings.py +63 -114
  340. eolib/protocol/_generated/net/server/shop_buy_server_packet.py +35 -38
  341. eolib/protocol/_generated/net/server/shop_craft_item.py +34 -42
  342. eolib/protocol/_generated/net/server/shop_create_server_packet.py +41 -51
  343. eolib/protocol/_generated/net/server/shop_open_server_packet.py +53 -57
  344. eolib/protocol/_generated/net/server/shop_sell_server_packet.py +35 -38
  345. eolib/protocol/_generated/net/server/shop_sold_item.py +28 -37
  346. eolib/protocol/_generated/net/server/shop_trade_item.py +42 -71
  347. eolib/protocol/_generated/net/server/sit_close_server_packet.py +28 -29
  348. eolib/protocol/_generated/net/server/sit_player_server_packet.py +36 -39
  349. eolib/protocol/_generated/net/server/sit_remove_server_packet.py +28 -29
  350. eolib/protocol/_generated/net/server/sit_reply_server_packet.py +36 -39
  351. eolib/protocol/_generated/net/server/skill_learn.py +64 -106
  352. eolib/protocol/_generated/net/server/skill_stat_requirements.py +134 -0
  353. eolib/protocol/_generated/net/server/spell_error_server_packet.py +13 -7
  354. eolib/protocol/_generated/net/server/spell_player_server_packet.py +28 -29
  355. eolib/protocol/_generated/net/server/spell_reply_server_packet.py +133 -0
  356. eolib/protocol/_generated/net/server/spell_request_server_packet.py +28 -37
  357. eolib/protocol/_generated/net/server/spell_target_group_server_packet.py +53 -83
  358. eolib/protocol/_generated/net/server/spell_target_other_server_packet.py +64 -114
  359. eolib/protocol/_generated/net/server/spell_target_self_server_packet.py +58 -107
  360. eolib/protocol/_generated/net/server/stat_skill_accept_server_packet.py +28 -29
  361. eolib/protocol/_generated/net/server/stat_skill_junk_server_packet.py +21 -12
  362. eolib/protocol/_generated/net/server/stat_skill_open_server_packet.py +42 -42
  363. eolib/protocol/_generated/net/server/stat_skill_player_server_packet.py +28 -29
  364. eolib/protocol/_generated/net/server/stat_skill_remove_server_packet.py +21 -20
  365. eolib/protocol/_generated/net/server/stat_skill_reply_server_packet.py +56 -48
  366. eolib/protocol/_generated/net/server/stat_skill_take_server_packet.py +28 -37
  367. eolib/protocol/_generated/net/server/talk_admin_server_packet.py +31 -22
  368. eolib/protocol/_generated/net/server/talk_announce_server_packet.py +31 -22
  369. eolib/protocol/_generated/net/server/talk_list_server_packet.py +27 -16
  370. eolib/protocol/_generated/net/server/talk_msg_server_packet.py +31 -22
  371. eolib/protocol/_generated/net/server/talk_open_server_packet.py +28 -29
  372. eolib/protocol/_generated/net/server/talk_player_server_packet.py +28 -29
  373. eolib/protocol/_generated/net/server/talk_reply_server_packet.py +28 -21
  374. eolib/protocol/_generated/net/server/talk_request_server_packet.py +31 -22
  375. eolib/protocol/_generated/net/server/talk_server_server_packet.py +21 -12
  376. eolib/protocol/_generated/net/server/talk_spec_server_packet.py +21 -12
  377. eolib/protocol/_generated/net/server/talk_tell_server_packet.py +31 -22
  378. eolib/protocol/_generated/net/server/tile_effect.py +91 -0
  379. eolib/protocol/_generated/net/server/trade_admin_server_packet.py +35 -13
  380. eolib/protocol/_generated/net/server/trade_agree_server_packet.py +28 -29
  381. eolib/protocol/_generated/net/server/trade_close_server_packet.py +21 -20
  382. eolib/protocol/_generated/net/server/trade_item_data.py +38 -82
  383. eolib/protocol/_generated/net/server/trade_open_server_packet.py +46 -57
  384. eolib/protocol/_generated/net/server/trade_reply_server_packet.py +35 -13
  385. eolib/protocol/_generated/net/server/trade_request_server_packet.py +29 -30
  386. eolib/protocol/_generated/net/server/trade_spec_server_packet.py +21 -12
  387. eolib/protocol/_generated/net/server/trade_use_server_packet.py +35 -13
  388. eolib/protocol/_generated/net/server/walk_close_server_packet.py +13 -7
  389. eolib/protocol/_generated/net/server/walk_open_server_packet.py +13 -7
  390. eolib/protocol/_generated/net/server/walk_player_server_packet.py +35 -58
  391. eolib/protocol/_generated/net/server/walk_reply_server_packet.py +49 -57
  392. eolib/protocol/_generated/net/server/warp_agree_server_packet.py +72 -66
  393. eolib/protocol/_generated/net/server/warp_create_server_packet.py +21 -12
  394. eolib/protocol/_generated/net/server/warp_player_server_packet.py +21 -12
  395. eolib/protocol/_generated/net/server/warp_request_server_packet.py +83 -106
  396. eolib/protocol/_generated/net/server/welcome_net242_server_packet.py +21 -12
  397. eolib/protocol/_generated/net/server/welcome_net243_server_packet.py +21 -12
  398. eolib/protocol/_generated/net/server/welcome_net244_server_packet.py +21 -12
  399. eolib/protocol/_generated/net/server/welcome_ping_server_packet.py +21 -12
  400. eolib/protocol/_generated/net/server/welcome_pong_server_packet.py +21 -12
  401. eolib/protocol/_generated/net/server/welcome_reply_server_packet.py +350 -556
  402. eolib/protocol/_generated/net/spell.py +28 -37
  403. eolib/protocol/_generated/net/three_item.py +28 -37
  404. eolib/protocol/_generated/net/version.py +35 -54
  405. eolib/protocol/_generated/net/weight.py +28 -37
  406. eolib/protocol/_generated/pub/ecf.py +52 -74
  407. eolib/protocol/_generated/pub/ecf_record.py +85 -164
  408. eolib/protocol/_generated/pub/eif.py +52 -74
  409. eolib/protocol/_generated/pub/eif_record.py +303 -658
  410. eolib/protocol/_generated/pub/enf.py +52 -74
  411. eolib/protocol/_generated/pub/enf_record.py +169 -328
  412. eolib/protocol/_generated/pub/esf.py +52 -74
  413. eolib/protocol/_generated/pub/esf_record.py +242 -491
  414. eolib/protocol/_generated/pub/server/__init__.py +30 -0
  415. eolib/protocol/_generated/pub/server/drop_file.py +87 -0
  416. eolib/protocol/_generated/pub/server/drop_npc_record.py +104 -0
  417. eolib/protocol/_generated/pub/server/drop_record.py +115 -0
  418. eolib/protocol/_generated/pub/server/inn_file.py +87 -0
  419. eolib/protocol/_generated/pub/server/inn_question_record.py +106 -0
  420. eolib/protocol/_generated/pub/server/inn_record.py +255 -0
  421. eolib/protocol/_generated/pub/server/shop_craft_ingredient_record.py +93 -0
  422. eolib/protocol/_generated/pub/server/shop_craft_record.py +98 -0
  423. eolib/protocol/_generated/pub/server/shop_file.py +87 -0
  424. eolib/protocol/_generated/pub/server/shop_record.py +188 -0
  425. eolib/protocol/_generated/pub/server/shop_trade_record.py +121 -0
  426. eolib/protocol/_generated/pub/server/skill_master_file.py +87 -0
  427. eolib/protocol/_generated/pub/server/skill_master_record.py +168 -0
  428. eolib/protocol/_generated/pub/server/skill_master_skill_record.py +223 -0
  429. eolib/protocol/_generated/pub/server/talk_file.py +87 -0
  430. eolib/protocol/_generated/pub/server/talk_message_record.py +87 -0
  431. eolib/protocol/_generated/pub/server/talk_record.py +121 -0
  432. eolib/protocol/protocol_enum_meta.py +1 -3
  433. eolib/protocol/pub/server/__init__.py +8 -0
  434. {eolib-1.1.1.dist-info → eolib-2.0.0.dist-info}/METADATA +5 -3
  435. {eolib-1.1.1.dist-info → eolib-2.0.0.dist-info}/RECORD +437 -414
  436. {eolib-1.1.1.dist-info → eolib-2.0.0.dist-info}/WHEEL +1 -1
  437. {eolib-1.1.1.dist-info → eolib-2.0.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -18,29 +18,76 @@ from .....data.eo_reader import EoReader
18
18
  class CharacterMapInfo:
19
19
  """
20
20
  Information about a nearby character.
21
- The official client skips these if they're under 42 bytes in length.
21
+ The official client skips these if they're under 42 bytes in length.
22
22
  """
23
23
  _byte_size: int = 0
24
- _name: str = None # type: ignore [assignment]
25
- _player_id: int = None # type: ignore [assignment]
26
- _map_id: int = None # type: ignore [assignment]
27
- _coords: BigCoords = None # type: ignore [assignment]
28
- _direction: Direction = None # type: ignore [assignment]
29
- _class_id: int = None # type: ignore [assignment]
30
- _guild_tag: str = None # type: ignore [assignment]
31
- _level: int = None # type: ignore [assignment]
32
- _gender: Gender = None # type: ignore [assignment]
33
- _hair_style: int = None # type: ignore [assignment]
34
- _hair_color: int = None # type: ignore [assignment]
35
- _skin: int = None # type: ignore [assignment]
36
- _max_hp: int = None # type: ignore [assignment]
37
- _hp: int = None # type: ignore [assignment]
38
- _max_tp: int = None # type: ignore [assignment]
39
- _tp: int = None # type: ignore [assignment]
40
- _equipment: EquipmentMapInfo = None # type: ignore [assignment]
41
- _sit_state: SitState = None # type: ignore [assignment]
42
- _invisible: bool = None # type: ignore [assignment]
43
- _warp_effect: Optional[WarpEffect] = None # type: ignore [assignment]
24
+ _name: str
25
+ _player_id: int
26
+ _map_id: int
27
+ _coords: BigCoords
28
+ _direction: Direction
29
+ _class_id: int
30
+ _guild_tag: str
31
+ _level: int
32
+ _gender: Gender
33
+ _hair_style: int
34
+ _hair_color: int
35
+ _skin: int
36
+ _max_hp: int
37
+ _hp: int
38
+ _max_tp: int
39
+ _tp: int
40
+ _equipment: EquipmentMapInfo
41
+ _sit_state: SitState
42
+ _invisible: bool
43
+ _warp_effect: Optional[WarpEffect]
44
+
45
+ def __init__(self, *, name: str, player_id: int, map_id: int, coords: BigCoords, direction: Direction, class_id: int, guild_tag: str, level: int, gender: Gender, hair_style: int, hair_color: int, skin: int, max_hp: int, hp: int, max_tp: int, tp: int, equipment: EquipmentMapInfo, sit_state: SitState, invisible: bool, warp_effect: Optional[WarpEffect] = None):
46
+ """
47
+ Create a new instance of CharacterMapInfo.
48
+
49
+ Args:
50
+ name (str):
51
+ player_id (int): (Value range is 0-64008.)
52
+ map_id (int): (Value range is 0-64008.)
53
+ coords (BigCoords):
54
+ direction (Direction):
55
+ class_id (int): (Value range is 0-252.)
56
+ guild_tag (str): (Length must be `3`.)
57
+ level (int): (Value range is 0-252.)
58
+ gender (Gender):
59
+ hair_style (int): (Value range is 0-252.)
60
+ hair_color (int): (Value range is 0-252.)
61
+ skin (int): (Value range is 0-252.)
62
+ max_hp (int): (Value range is 0-64008.)
63
+ hp (int): (Value range is 0-64008.)
64
+ max_tp (int): (Value range is 0-64008.)
65
+ tp (int): (Value range is 0-64008.)
66
+ equipment (EquipmentMapInfo):
67
+ sit_state (SitState):
68
+ invisible (bool):
69
+ warp_effect (Optional[WarpEffect]):
70
+ """
71
+ self._name = name
72
+ self._player_id = player_id
73
+ self._map_id = map_id
74
+ self._coords = coords
75
+ self._direction = direction
76
+ self._class_id = class_id
77
+ self._guild_tag = guild_tag
78
+ self._level = level
79
+ self._gender = gender
80
+ self._hair_style = hair_style
81
+ self._hair_color = hair_color
82
+ self._skin = skin
83
+ self._max_hp = max_hp
84
+ self._hp = hp
85
+ self._max_tp = max_tp
86
+ self._tp = tp
87
+ self._equipment = equipment
88
+ self._sit_state = sit_state
89
+ self._invisible = invisible
90
+ self._warp_effect = warp_effect
44
91
 
45
92
  @property
46
93
  def byte_size(self) -> int:
@@ -56,258 +103,82 @@ class CharacterMapInfo:
56
103
  def name(self) -> str:
57
104
  return self._name
58
105
 
59
- @name.setter
60
- def name(self, name: str) -> None:
61
- self._name = name
62
-
63
106
  @property
64
107
  def player_id(self) -> int:
65
- """
66
- Note:
67
- - Value range is 0-64008.
68
- """
69
108
  return self._player_id
70
109
 
71
- @player_id.setter
72
- def player_id(self, player_id: int) -> None:
73
- """
74
- Note:
75
- - Value range is 0-64008.
76
- """
77
- self._player_id = player_id
78
-
79
110
  @property
80
111
  def map_id(self) -> int:
81
- """
82
- Note:
83
- - Value range is 0-64008.
84
- """
85
112
  return self._map_id
86
113
 
87
- @map_id.setter
88
- def map_id(self, map_id: int) -> None:
89
- """
90
- Note:
91
- - Value range is 0-64008.
92
- """
93
- self._map_id = map_id
94
-
95
114
  @property
96
115
  def coords(self) -> BigCoords:
97
116
  return self._coords
98
117
 
99
- @coords.setter
100
- def coords(self, coords: BigCoords) -> None:
101
- self._coords = coords
102
-
103
118
  @property
104
119
  def direction(self) -> Direction:
105
120
  return self._direction
106
121
 
107
- @direction.setter
108
- def direction(self, direction: Direction) -> None:
109
- self._direction = direction
110
-
111
122
  @property
112
123
  def class_id(self) -> int:
113
- """
114
- Note:
115
- - Value range is 0-252.
116
- """
117
124
  return self._class_id
118
125
 
119
- @class_id.setter
120
- def class_id(self, class_id: int) -> None:
121
- """
122
- Note:
123
- - Value range is 0-252.
124
- """
125
- self._class_id = class_id
126
-
127
126
  @property
128
127
  def guild_tag(self) -> str:
129
- """
130
- Note:
131
- - Length must be `3`.
132
- """
133
128
  return self._guild_tag
134
129
 
135
- @guild_tag.setter
136
- def guild_tag(self, guild_tag: str) -> None:
137
- """
138
- Note:
139
- - Length must be `3`.
140
- """
141
- self._guild_tag = guild_tag
142
-
143
130
  @property
144
131
  def level(self) -> int:
145
- """
146
- Note:
147
- - Value range is 0-252.
148
- """
149
132
  return self._level
150
133
 
151
- @level.setter
152
- def level(self, level: int) -> None:
153
- """
154
- Note:
155
- - Value range is 0-252.
156
- """
157
- self._level = level
158
-
159
134
  @property
160
135
  def gender(self) -> Gender:
161
136
  return self._gender
162
137
 
163
- @gender.setter
164
- def gender(self, gender: Gender) -> None:
165
- self._gender = gender
166
-
167
138
  @property
168
139
  def hair_style(self) -> int:
169
- """
170
- Note:
171
- - Value range is 0-252.
172
- """
173
140
  return self._hair_style
174
141
 
175
- @hair_style.setter
176
- def hair_style(self, hair_style: int) -> None:
177
- """
178
- Note:
179
- - Value range is 0-252.
180
- """
181
- self._hair_style = hair_style
182
-
183
142
  @property
184
143
  def hair_color(self) -> int:
185
- """
186
- Note:
187
- - Value range is 0-252.
188
- """
189
144
  return self._hair_color
190
145
 
191
- @hair_color.setter
192
- def hair_color(self, hair_color: int) -> None:
193
- """
194
- Note:
195
- - Value range is 0-252.
196
- """
197
- self._hair_color = hair_color
198
-
199
146
  @property
200
147
  def skin(self) -> int:
201
- """
202
- Note:
203
- - Value range is 0-252.
204
- """
205
148
  return self._skin
206
149
 
207
- @skin.setter
208
- def skin(self, skin: int) -> None:
209
- """
210
- Note:
211
- - Value range is 0-252.
212
- """
213
- self._skin = skin
214
-
215
150
  @property
216
151
  def max_hp(self) -> int:
217
- """
218
- Note:
219
- - Value range is 0-64008.
220
- """
221
152
  return self._max_hp
222
153
 
223
- @max_hp.setter
224
- def max_hp(self, max_hp: int) -> None:
225
- """
226
- Note:
227
- - Value range is 0-64008.
228
- """
229
- self._max_hp = max_hp
230
-
231
154
  @property
232
155
  def hp(self) -> int:
233
- """
234
- Note:
235
- - Value range is 0-64008.
236
- """
237
156
  return self._hp
238
157
 
239
- @hp.setter
240
- def hp(self, hp: int) -> None:
241
- """
242
- Note:
243
- - Value range is 0-64008.
244
- """
245
- self._hp = hp
246
-
247
158
  @property
248
159
  def max_tp(self) -> int:
249
- """
250
- Note:
251
- - Value range is 0-64008.
252
- """
253
160
  return self._max_tp
254
161
 
255
- @max_tp.setter
256
- def max_tp(self, max_tp: int) -> None:
257
- """
258
- Note:
259
- - Value range is 0-64008.
260
- """
261
- self._max_tp = max_tp
262
-
263
162
  @property
264
163
  def tp(self) -> int:
265
- """
266
- Note:
267
- - Value range is 0-64008.
268
- """
269
164
  return self._tp
270
165
 
271
- @tp.setter
272
- def tp(self, tp: int) -> None:
273
- """
274
- Note:
275
- - Value range is 0-64008.
276
- """
277
- self._tp = tp
278
-
279
166
  @property
280
167
  def equipment(self) -> EquipmentMapInfo:
281
168
  return self._equipment
282
169
 
283
- @equipment.setter
284
- def equipment(self, equipment: EquipmentMapInfo) -> None:
285
- self._equipment = equipment
286
-
287
170
  @property
288
171
  def sit_state(self) -> SitState:
289
172
  return self._sit_state
290
173
 
291
- @sit_state.setter
292
- def sit_state(self, sit_state: SitState) -> None:
293
- self._sit_state = sit_state
294
-
295
174
  @property
296
175
  def invisible(self) -> bool:
297
176
  return self._invisible
298
177
 
299
- @invisible.setter
300
- def invisible(self, invisible: bool) -> None:
301
- self._invisible = invisible
302
-
303
178
  @property
304
179
  def warp_effect(self) -> Optional[WarpEffect]:
305
180
  return self._warp_effect
306
181
 
307
- @warp_effect.setter
308
- def warp_effect(self, warp_effect: Optional[WarpEffect]) -> None:
309
- self._warp_effect = warp_effect
310
-
311
182
  @staticmethod
312
183
  def serialize(writer: EoWriter, data: "CharacterMapInfo") -> None:
313
184
  """
@@ -317,69 +188,75 @@ class CharacterMapInfo:
317
188
  writer (EoWriter): The writer that the data will be serialized to.
318
189
  data (CharacterMapInfo): The data to serialize.
319
190
  """
320
- if data._name is None:
321
- raise SerializationError("name must be provided.")
322
- writer.add_string(data._name)
323
- writer.add_byte(0xFF)
324
- if data._player_id is None:
325
- raise SerializationError("player_id must be provided.")
326
- writer.add_short(data._player_id)
327
- if data._map_id is None:
328
- raise SerializationError("map_id must be provided.")
329
- writer.add_short(data._map_id)
330
- if data._coords is None:
331
- raise SerializationError("coords must be provided.")
332
- BigCoords.serialize(writer, data._coords)
333
- if data._direction is None:
334
- raise SerializationError("direction must be provided.")
335
- writer.add_char(int(data._direction))
336
- if data._class_id is None:
337
- raise SerializationError("class_id must be provided.")
338
- writer.add_char(data._class_id)
339
- if data._guild_tag is None:
340
- raise SerializationError("guild_tag must be provided.")
341
- if len(data._guild_tag) != 3:
342
- raise SerializationError(f"Expected length of guild_tag to be exactly 3, got {len(data._guild_tag)}.")
343
- writer.add_fixed_string(data._guild_tag, 3, False)
344
- if data._level is None:
345
- raise SerializationError("level must be provided.")
346
- writer.add_char(data._level)
347
- if data._gender is None:
348
- raise SerializationError("gender must be provided.")
349
- writer.add_char(int(data._gender))
350
- if data._hair_style is None:
351
- raise SerializationError("hair_style must be provided.")
352
- writer.add_char(data._hair_style)
353
- if data._hair_color is None:
354
- raise SerializationError("hair_color must be provided.")
355
- writer.add_char(data._hair_color)
356
- if data._skin is None:
357
- raise SerializationError("skin must be provided.")
358
- writer.add_char(data._skin)
359
- if data._max_hp is None:
360
- raise SerializationError("max_hp must be provided.")
361
- writer.add_short(data._max_hp)
362
- if data._hp is None:
363
- raise SerializationError("hp must be provided.")
364
- writer.add_short(data._hp)
365
- if data._max_tp is None:
366
- raise SerializationError("max_tp must be provided.")
367
- writer.add_short(data._max_tp)
368
- if data._tp is None:
369
- raise SerializationError("tp must be provided.")
370
- writer.add_short(data._tp)
371
- if data._equipment is None:
372
- raise SerializationError("equipment must be provided.")
373
- EquipmentMapInfo.serialize(writer, data._equipment)
374
- if data._sit_state is None:
375
- raise SerializationError("sit_state must be provided.")
376
- writer.add_char(int(data._sit_state))
377
- if data._invisible is None:
378
- raise SerializationError("invisible must be provided.")
379
- writer.add_char(1 if data._invisible else 0)
380
- reached_missing_optional = data._warp_effect is None
381
- if not reached_missing_optional:
382
- writer.add_char(int(cast(WarpEffect, data._warp_effect)))
191
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
192
+ try:
193
+ writer.string_sanitization_mode = True
194
+ if data._name is None:
195
+ raise SerializationError("name must be provided.")
196
+ writer.add_string(data._name)
197
+ writer.add_byte(0xFF)
198
+ if data._player_id is None:
199
+ raise SerializationError("player_id must be provided.")
200
+ writer.add_short(data._player_id)
201
+ if data._map_id is None:
202
+ raise SerializationError("map_id must be provided.")
203
+ writer.add_short(data._map_id)
204
+ if data._coords is None:
205
+ raise SerializationError("coords must be provided.")
206
+ BigCoords.serialize(writer, data._coords)
207
+ if data._direction is None:
208
+ raise SerializationError("direction must be provided.")
209
+ writer.add_char(int(data._direction))
210
+ if data._class_id is None:
211
+ raise SerializationError("class_id must be provided.")
212
+ writer.add_char(data._class_id)
213
+ if data._guild_tag is None:
214
+ raise SerializationError("guild_tag must be provided.")
215
+ if len(data._guild_tag) != 3:
216
+ raise SerializationError(f"Expected length of guild_tag to be exactly 3, got {len(data._guild_tag)}.")
217
+ writer.add_fixed_string(data._guild_tag, 3, False)
218
+ if data._level is None:
219
+ raise SerializationError("level must be provided.")
220
+ writer.add_char(data._level)
221
+ if data._gender is None:
222
+ raise SerializationError("gender must be provided.")
223
+ writer.add_char(int(data._gender))
224
+ if data._hair_style is None:
225
+ raise SerializationError("hair_style must be provided.")
226
+ writer.add_char(data._hair_style)
227
+ if data._hair_color is None:
228
+ raise SerializationError("hair_color must be provided.")
229
+ writer.add_char(data._hair_color)
230
+ if data._skin is None:
231
+ raise SerializationError("skin must be provided.")
232
+ writer.add_char(data._skin)
233
+ if data._max_hp is None:
234
+ raise SerializationError("max_hp must be provided.")
235
+ writer.add_short(data._max_hp)
236
+ if data._hp is None:
237
+ raise SerializationError("hp must be provided.")
238
+ writer.add_short(data._hp)
239
+ if data._max_tp is None:
240
+ raise SerializationError("max_tp must be provided.")
241
+ writer.add_short(data._max_tp)
242
+ if data._tp is None:
243
+ raise SerializationError("tp must be provided.")
244
+ writer.add_short(data._tp)
245
+ if data._equipment is None:
246
+ raise SerializationError("equipment must be provided.")
247
+ EquipmentMapInfo.serialize(writer, data._equipment)
248
+ if data._sit_state is None:
249
+ raise SerializationError("sit_state must be provided.")
250
+ writer.add_char(int(data._sit_state))
251
+ if data._invisible is None:
252
+ raise SerializationError("invisible must be provided.")
253
+ writer.add_char(1 if data._invisible else 0)
254
+ reached_missing_optional = data._warp_effect is None
255
+ if not reached_missing_optional:
256
+ writer.add_char(int(cast(WarpEffect, data._warp_effect)))
257
+ writer.string_sanitization_mode = False
258
+ finally:
259
+ writer.string_sanitization_mode = old_string_sanitization_mode
383
260
 
384
261
  @staticmethod
385
262
  def deserialize(reader: EoReader) -> "CharacterMapInfo":
@@ -392,36 +269,37 @@ class CharacterMapInfo:
392
269
  Returns:
393
270
  CharacterMapInfo: The data to serialize.
394
271
  """
395
- data: CharacterMapInfo = CharacterMapInfo()
396
272
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
397
273
  try:
398
274
  reader_start_position: int = reader.position
399
275
  reader.chunked_reading_mode = True
400
- data._name = reader.get_string()
276
+ name = reader.get_string()
401
277
  reader.next_chunk()
402
- data._player_id = reader.get_short()
403
- data._map_id = reader.get_short()
404
- data._coords = BigCoords.deserialize(reader)
405
- data._direction = Direction(reader.get_char())
406
- data._class_id = reader.get_char()
407
- data._guild_tag = reader.get_fixed_string(3, False)
408
- data._level = reader.get_char()
409
- data._gender = Gender(reader.get_char())
410
- data._hair_style = reader.get_char()
411
- data._hair_color = reader.get_char()
412
- data._skin = reader.get_char()
413
- data._max_hp = reader.get_short()
414
- data._hp = reader.get_short()
415
- data._max_tp = reader.get_short()
416
- data._tp = reader.get_short()
417
- data._equipment = EquipmentMapInfo.deserialize(reader)
418
- data._sit_state = SitState(reader.get_char())
419
- data._invisible = reader.get_char() != 0
278
+ player_id = reader.get_short()
279
+ map_id = reader.get_short()
280
+ coords = BigCoords.deserialize(reader)
281
+ direction = Direction(reader.get_char())
282
+ class_id = reader.get_char()
283
+ guild_tag = reader.get_fixed_string(3, False)
284
+ level = reader.get_char()
285
+ gender = Gender(reader.get_char())
286
+ hair_style = reader.get_char()
287
+ hair_color = reader.get_char()
288
+ skin = reader.get_char()
289
+ max_hp = reader.get_short()
290
+ hp = reader.get_short()
291
+ max_tp = reader.get_short()
292
+ tp = reader.get_short()
293
+ equipment = EquipmentMapInfo.deserialize(reader)
294
+ sit_state = SitState(reader.get_char())
295
+ invisible = reader.get_char() != 0
296
+ warp_effect: Optional[WarpEffect] = None
420
297
  if reader.remaining > 0:
421
- data._warp_effect = WarpEffect(reader.get_char())
298
+ warp_effect = WarpEffect(reader.get_char())
422
299
  reader.chunked_reading_mode = False
423
- data._byte_size = reader.position - reader_start_position
424
- return data
300
+ result = CharacterMapInfo(name=name, player_id=player_id, map_id=map_id, coords=coords, direction=direction, class_id=class_id, guild_tag=guild_tag, level=level, gender=gender, hair_style=hair_style, hair_color=hair_color, skin=skin, max_hp=max_hp, hp=hp, max_tp=max_tp, tp=tp, equipment=equipment, sit_state=sit_state, invisible=invisible, warp_effect=warp_effect)
301
+ result._byte_size = reader.position - reader_start_position
302
+ return result
425
303
  finally:
426
304
  reader.chunked_reading_mode = old_chunked_reading_mode
427
305
 
@@ -15,8 +15,19 @@ class CharacterPlayerServerPacket(Packet):
15
15
  Reply to client request to delete a character from the account (Character_Take)
16
16
  """
17
17
  _byte_size: int = 0
18
- _session_id: int = None # type: ignore [assignment]
19
- _character_id: int = None # type: ignore [assignment]
18
+ _session_id: int
19
+ _character_id: int
20
+
21
+ def __init__(self, *, session_id: int, character_id: int):
22
+ """
23
+ Create a new instance of CharacterPlayerServerPacket.
24
+
25
+ Args:
26
+ session_id (int): (Value range is 0-64008.)
27
+ character_id (int): (Value range is 0-4097152080.)
28
+ """
29
+ self._session_id = session_id
30
+ self._character_id = character_id
20
31
 
21
32
  @property
22
33
  def byte_size(self) -> int:
@@ -30,36 +41,12 @@ class CharacterPlayerServerPacket(Packet):
30
41
 
31
42
  @property
32
43
  def session_id(self) -> int:
33
- """
34
- Note:
35
- - Value range is 0-64008.
36
- """
37
44
  return self._session_id
38
45
 
39
- @session_id.setter
40
- def session_id(self, session_id: int) -> None:
41
- """
42
- Note:
43
- - Value range is 0-64008.
44
- """
45
- self._session_id = session_id
46
-
47
46
  @property
48
47
  def character_id(self) -> int:
49
- """
50
- Note:
51
- - Value range is 0-4097152080.
52
- """
53
48
  return self._character_id
54
49
 
55
- @character_id.setter
56
- def character_id(self, character_id: int) -> None:
57
- """
58
- Note:
59
- - Value range is 0-4097152080.
60
- """
61
- self._character_id = character_id
62
-
63
50
  @staticmethod
64
51
  def family() -> PacketFamily:
65
52
  """
@@ -98,12 +85,16 @@ class CharacterPlayerServerPacket(Packet):
98
85
  writer (EoWriter): The writer that the data will be serialized to.
99
86
  data (CharacterPlayerServerPacket): The data to serialize.
100
87
  """
101
- if data._session_id is None:
102
- raise SerializationError("session_id must be provided.")
103
- writer.add_short(data._session_id)
104
- if data._character_id is None:
105
- raise SerializationError("character_id must be provided.")
106
- writer.add_int(data._character_id)
88
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
89
+ try:
90
+ if data._session_id is None:
91
+ raise SerializationError("session_id must be provided.")
92
+ writer.add_short(data._session_id)
93
+ if data._character_id is None:
94
+ raise SerializationError("character_id must be provided.")
95
+ writer.add_int(data._character_id)
96
+ finally:
97
+ writer.string_sanitization_mode = old_string_sanitization_mode
107
98
 
108
99
  @staticmethod
109
100
  def deserialize(reader: EoReader) -> "CharacterPlayerServerPacket":
@@ -116,14 +107,14 @@ class CharacterPlayerServerPacket(Packet):
116
107
  Returns:
117
108
  CharacterPlayerServerPacket: The data to serialize.
118
109
  """
119
- data: CharacterPlayerServerPacket = CharacterPlayerServerPacket()
120
110
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
121
111
  try:
122
112
  reader_start_position: int = reader.position
123
- data._session_id = reader.get_short()
124
- data._character_id = reader.get_int()
125
- data._byte_size = reader.position - reader_start_position
126
- return data
113
+ session_id = reader.get_short()
114
+ character_id = reader.get_int()
115
+ result = CharacterPlayerServerPacket(session_id=session_id, character_id=character_id)
116
+ result._byte_size = reader.position - reader_start_position
117
+ return result
127
118
  finally:
128
119
  reader.chunked_reading_mode = old_chunked_reading_mode
129
120