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
@@ -14,9 +14,22 @@ class DialogEntry:
14
14
  An entry in a quest dialog
15
15
  """
16
16
  _byte_size: int = 0
17
- _entry_type: DialogEntryType = None # type: ignore [assignment]
18
- _entry_type_data: 'DialogEntry.EntryTypeData' = None
19
- _line: str = None # type: ignore [assignment]
17
+ _entry_type: DialogEntryType
18
+ _entry_type_data: 'DialogEntry.EntryTypeData'
19
+ _line: str
20
+
21
+ def __init__(self, *, entry_type: DialogEntryType, entry_type_data: 'DialogEntry.EntryTypeData' = None, line: str):
22
+ """
23
+ Create a new instance of DialogEntry.
24
+
25
+ Args:
26
+ entry_type (DialogEntryType):
27
+ entry_type_data (DialogEntry.EntryTypeData): Data associated with the `entry_type` field.
28
+ line (str):
29
+ """
30
+ self._entry_type = entry_type
31
+ self._entry_type_data = entry_type_data
32
+ self._line = line
20
33
 
21
34
  @property
22
35
  def byte_size(self) -> int:
@@ -32,29 +45,17 @@ class DialogEntry:
32
45
  def entry_type(self) -> DialogEntryType:
33
46
  return self._entry_type
34
47
 
35
- @entry_type.setter
36
- def entry_type(self, entry_type: DialogEntryType) -> None:
37
- self._entry_type = entry_type
38
-
39
48
  @property
40
49
  def entry_type_data(self) -> 'DialogEntry.EntryTypeData':
41
50
  """
42
- DialogEntry.EntryTypeData: Gets or sets the data associated with the `entry_type` field.
51
+ DialogEntry.EntryTypeData: Data associated with the `entry_type` field.
43
52
  """
44
53
  return self._entry_type_data
45
54
 
46
- @entry_type_data.setter
47
- def entry_type_data(self, entry_type_data: 'DialogEntry.EntryTypeData') -> None:
48
- self._entry_type_data = entry_type_data
49
-
50
55
  @property
51
56
  def line(self) -> str:
52
57
  return self._line
53
58
 
54
- @line.setter
55
- def line(self, line: str) -> None:
56
- self._line = line
57
-
58
59
  @staticmethod
59
60
  def serialize(writer: EoWriter, data: "DialogEntry") -> None:
60
61
  """
@@ -64,16 +65,20 @@ class DialogEntry:
64
65
  writer (EoWriter): The writer that the data will be serialized to.
65
66
  data (DialogEntry): The data to serialize.
66
67
  """
67
- if data._entry_type is None:
68
- raise SerializationError("entry_type must be provided.")
69
- writer.add_short(int(data._entry_type))
70
- if data._entry_type == DialogEntryType.Link:
71
- if not isinstance(data._entry_type_data, DialogEntry.EntryTypeDataLink):
72
- raise SerializationError("Expected entry_type_data to be type DialogEntry.EntryTypeDataLink for entry_type " + DialogEntryType(data._entry_type).name + ".")
73
- DialogEntry.EntryTypeDataLink.serialize(writer, data._entry_type_data)
74
- if data._line is None:
75
- raise SerializationError("line must be provided.")
76
- writer.add_string(data._line)
68
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
69
+ try:
70
+ if data._entry_type is None:
71
+ raise SerializationError("entry_type must be provided.")
72
+ writer.add_short(int(data._entry_type))
73
+ if data._entry_type == DialogEntryType.Link:
74
+ if not isinstance(data._entry_type_data, DialogEntry.EntryTypeDataLink):
75
+ raise SerializationError("Expected entry_type_data to be type DialogEntry.EntryTypeDataLink for entry_type " + DialogEntryType(data._entry_type).name + ".")
76
+ DialogEntry.EntryTypeDataLink.serialize(writer, data._entry_type_data)
77
+ if data._line is None:
78
+ raise SerializationError("line must be provided.")
79
+ writer.add_string(data._line)
80
+ finally:
81
+ writer.string_sanitization_mode = old_string_sanitization_mode
77
82
 
78
83
  @staticmethod
79
84
  def deserialize(reader: EoReader) -> "DialogEntry":
@@ -86,16 +91,17 @@ class DialogEntry:
86
91
  Returns:
87
92
  DialogEntry: The data to serialize.
88
93
  """
89
- data: DialogEntry = DialogEntry()
90
94
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
91
95
  try:
92
96
  reader_start_position: int = reader.position
93
- data._entry_type = DialogEntryType(reader.get_short())
94
- if data._entry_type == DialogEntryType.Link:
95
- data._entry_type_data = DialogEntry.EntryTypeDataLink.deserialize(reader)
96
- data._line = reader.get_string()
97
- data._byte_size = reader.position - reader_start_position
98
- return data
97
+ entry_type = DialogEntryType(reader.get_short())
98
+ entry_type_data: DialogEntry.EntryTypeData = None
99
+ if entry_type == DialogEntryType.Link:
100
+ entry_type_data = DialogEntry.EntryTypeDataLink.deserialize(reader)
101
+ line = reader.get_string()
102
+ result = DialogEntry(entry_type=entry_type, entry_type_data=entry_type_data, line=line)
103
+ result._byte_size = reader.position - reader_start_position
104
+ return result
99
105
  finally:
100
106
  reader.chunked_reading_mode = old_chunked_reading_mode
101
107
 
@@ -103,17 +109,25 @@ class DialogEntry:
103
109
  return f"DialogEntry(byte_size={repr(self._byte_size)}, entry_type={repr(self._entry_type)}, entry_type_data={repr(self._entry_type_data)}, line={repr(self._line)})"
104
110
 
105
111
  EntryTypeData = Union['DialogEntry.EntryTypeDataLink', None]
106
- EntryTypeData.__doc__ = \
107
- """
108
- Data associated with different values of the `entry_type` field.
109
- """
112
+ """
113
+ Data associated with different values of the `entry_type` field.
114
+ """
110
115
 
111
116
  class EntryTypeDataLink:
112
117
  """
113
118
  Data associated with entry_type value DialogEntryType.Link
114
119
  """
115
120
  _byte_size: int = 0
116
- _link_id: int = None # type: ignore [assignment]
121
+ _link_id: int
122
+
123
+ def __init__(self, *, link_id: int):
124
+ """
125
+ Create a new instance of DialogEntry.EntryTypeDataLink.
126
+
127
+ Args:
128
+ link_id (int): (Value range is 0-64008.)
129
+ """
130
+ self._link_id = link_id
117
131
 
118
132
  @property
119
133
  def byte_size(self) -> int:
@@ -127,20 +141,8 @@ class DialogEntry:
127
141
 
128
142
  @property
129
143
  def link_id(self) -> int:
130
- """
131
- Note:
132
- - Value range is 0-64008.
133
- """
134
144
  return self._link_id
135
145
 
136
- @link_id.setter
137
- def link_id(self, link_id: int) -> None:
138
- """
139
- Note:
140
- - Value range is 0-64008.
141
- """
142
- self._link_id = link_id
143
-
144
146
  @staticmethod
145
147
  def serialize(writer: EoWriter, data: "DialogEntry.EntryTypeDataLink") -> None:
146
148
  """
@@ -150,9 +152,13 @@ class DialogEntry:
150
152
  writer (EoWriter): The writer that the data will be serialized to.
151
153
  data (DialogEntry.EntryTypeDataLink): The data to serialize.
152
154
  """
153
- if data._link_id is None:
154
- raise SerializationError("link_id must be provided.")
155
- writer.add_short(data._link_id)
155
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
156
+ try:
157
+ if data._link_id is None:
158
+ raise SerializationError("link_id must be provided.")
159
+ writer.add_short(data._link_id)
160
+ finally:
161
+ writer.string_sanitization_mode = old_string_sanitization_mode
156
162
 
157
163
  @staticmethod
158
164
  def deserialize(reader: EoReader) -> "DialogEntry.EntryTypeDataLink":
@@ -165,13 +171,13 @@ class DialogEntry:
165
171
  Returns:
166
172
  DialogEntry.EntryTypeDataLink: The data to serialize.
167
173
  """
168
- data: DialogEntry.EntryTypeDataLink = DialogEntry.EntryTypeDataLink()
169
174
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
170
175
  try:
171
176
  reader_start_position: int = reader.position
172
- data._link_id = reader.get_short()
173
- data._byte_size = reader.position - reader_start_position
174
- return data
177
+ link_id = reader.get_short()
178
+ result = DialogEntry.EntryTypeDataLink(link_id=link_id)
179
+ result._byte_size = reader.position - reader_start_position
180
+ return result
175
181
  finally:
176
182
  reader.chunked_reading_mode = old_chunked_reading_mode
177
183
 
@@ -12,8 +12,19 @@ class DialogQuestEntry:
12
12
  An entry in the quest switcher
13
13
  """
14
14
  _byte_size: int = 0
15
- _quest_id: int = None # type: ignore [assignment]
16
- _quest_name: str = None # type: ignore [assignment]
15
+ _quest_id: int
16
+ _quest_name: str
17
+
18
+ def __init__(self, *, quest_id: int, quest_name: str):
19
+ """
20
+ Create a new instance of DialogQuestEntry.
21
+
22
+ Args:
23
+ quest_id (int): (Value range is 0-64008.)
24
+ quest_name (str):
25
+ """
26
+ self._quest_id = quest_id
27
+ self._quest_name = quest_name
17
28
 
18
29
  @property
19
30
  def byte_size(self) -> int:
@@ -27,28 +38,12 @@ class DialogQuestEntry:
27
38
 
28
39
  @property
29
40
  def quest_id(self) -> int:
30
- """
31
- Note:
32
- - Value range is 0-64008.
33
- """
34
41
  return self._quest_id
35
42
 
36
- @quest_id.setter
37
- def quest_id(self, quest_id: int) -> None:
38
- """
39
- Note:
40
- - Value range is 0-64008.
41
- """
42
- self._quest_id = quest_id
43
-
44
43
  @property
45
44
  def quest_name(self) -> str:
46
45
  return self._quest_name
47
46
 
48
- @quest_name.setter
49
- def quest_name(self, quest_name: str) -> None:
50
- self._quest_name = quest_name
51
-
52
47
  @staticmethod
53
48
  def serialize(writer: EoWriter, data: "DialogQuestEntry") -> None:
54
49
  """
@@ -58,12 +53,16 @@ class DialogQuestEntry:
58
53
  writer (EoWriter): The writer that the data will be serialized to.
59
54
  data (DialogQuestEntry): The data to serialize.
60
55
  """
61
- if data._quest_id is None:
62
- raise SerializationError("quest_id must be provided.")
63
- writer.add_short(data._quest_id)
64
- if data._quest_name is None:
65
- raise SerializationError("quest_name must be provided.")
66
- writer.add_string(data._quest_name)
56
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
57
+ try:
58
+ if data._quest_id is None:
59
+ raise SerializationError("quest_id must be provided.")
60
+ writer.add_short(data._quest_id)
61
+ if data._quest_name is None:
62
+ raise SerializationError("quest_name must be provided.")
63
+ writer.add_string(data._quest_name)
64
+ finally:
65
+ writer.string_sanitization_mode = old_string_sanitization_mode
67
66
 
68
67
  @staticmethod
69
68
  def deserialize(reader: EoReader) -> "DialogQuestEntry":
@@ -76,14 +75,14 @@ class DialogQuestEntry:
76
75
  Returns:
77
76
  DialogQuestEntry: The data to serialize.
78
77
  """
79
- data: DialogQuestEntry = DialogQuestEntry()
80
78
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
81
79
  try:
82
80
  reader_start_position: int = reader.position
83
- data._quest_id = reader.get_short()
84
- data._quest_name = reader.get_string()
85
- data._byte_size = reader.position - reader_start_position
86
- return data
81
+ quest_id = reader.get_short()
82
+ quest_name = reader.get_string()
83
+ result = DialogQuestEntry(quest_id=quest_id, quest_name=quest_name)
84
+ result._byte_size = reader.position - reader_start_position
85
+ return result
87
86
  finally:
88
87
  reader.chunked_reading_mode = old_chunked_reading_mode
89
88
 
@@ -15,7 +15,16 @@ class DoorCloseServerPacket(Packet):
15
15
  Reply to trying to open a locked door
16
16
  """
17
17
  _byte_size: int = 0
18
- _key: int = None # type: ignore [assignment]
18
+ _key: int
19
+
20
+ def __init__(self, *, key: int):
21
+ """
22
+ Create a new instance of DoorCloseServerPacket.
23
+
24
+ Args:
25
+ key (int): (Value range is 0-252.)
26
+ """
27
+ self._key = key
19
28
 
20
29
  @property
21
30
  def byte_size(self) -> int:
@@ -29,20 +38,8 @@ class DoorCloseServerPacket(Packet):
29
38
 
30
39
  @property
31
40
  def key(self) -> int:
32
- """
33
- Note:
34
- - Value range is 0-252.
35
- """
36
41
  return self._key
37
42
 
38
- @key.setter
39
- def key(self, key: int) -> None:
40
- """
41
- Note:
42
- - Value range is 0-252.
43
- """
44
- self._key = key
45
-
46
43
  @staticmethod
47
44
  def family() -> PacketFamily:
48
45
  """
@@ -81,9 +78,13 @@ class DoorCloseServerPacket(Packet):
81
78
  writer (EoWriter): The writer that the data will be serialized to.
82
79
  data (DoorCloseServerPacket): The data to serialize.
83
80
  """
84
- if data._key is None:
85
- raise SerializationError("key must be provided.")
86
- writer.add_char(data._key)
81
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
82
+ try:
83
+ if data._key is None:
84
+ raise SerializationError("key must be provided.")
85
+ writer.add_char(data._key)
86
+ finally:
87
+ writer.string_sanitization_mode = old_string_sanitization_mode
87
88
 
88
89
  @staticmethod
89
90
  def deserialize(reader: EoReader) -> "DoorCloseServerPacket":
@@ -96,13 +97,13 @@ class DoorCloseServerPacket(Packet):
96
97
  Returns:
97
98
  DoorCloseServerPacket: The data to serialize.
98
99
  """
99
- data: DoorCloseServerPacket = DoorCloseServerPacket()
100
100
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
101
101
  try:
102
102
  reader_start_position: int = reader.position
103
- data._key = reader.get_char()
104
- data._byte_size = reader.position - reader_start_position
105
- return data
103
+ key = reader.get_char()
104
+ result = DoorCloseServerPacket(key=key)
105
+ result._byte_size = reader.position - reader_start_position
106
+ return result
106
107
  finally:
107
108
  reader.chunked_reading_mode = old_chunked_reading_mode
108
109
 
@@ -16,7 +16,16 @@ class DoorOpenServerPacket(Packet):
16
16
  Nearby door opening
17
17
  """
18
18
  _byte_size: int = 0
19
- _coords: Coords = None # type: ignore [assignment]
19
+ _coords: Coords
20
+
21
+ def __init__(self, *, coords: Coords):
22
+ """
23
+ Create a new instance of DoorOpenServerPacket.
24
+
25
+ Args:
26
+ coords (Coords): The official server erroneously encodes the Y coordinate as a short. The official client reads each coordinate as a char.
27
+ """
28
+ self._coords = coords
20
29
 
21
30
  @property
22
31
  def byte_size(self) -> int:
@@ -30,12 +39,12 @@ class DoorOpenServerPacket(Packet):
30
39
 
31
40
  @property
32
41
  def coords(self) -> Coords:
42
+ """
43
+ The official server erroneously encodes the Y coordinate as a short.
44
+ The official client reads each coordinate as a char.
45
+ """
33
46
  return self._coords
34
47
 
35
- @coords.setter
36
- def coords(self, coords: Coords) -> None:
37
- self._coords = coords
38
-
39
48
  @staticmethod
40
49
  def family() -> PacketFamily:
41
50
  """
@@ -74,10 +83,13 @@ class DoorOpenServerPacket(Packet):
74
83
  writer (EoWriter): The writer that the data will be serialized to.
75
84
  data (DoorOpenServerPacket): The data to serialize.
76
85
  """
77
- if data._coords is None:
78
- raise SerializationError("coords must be provided.")
79
- Coords.serialize(writer, data._coords)
80
- writer.add_char(0)
86
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
87
+ try:
88
+ if data._coords is None:
89
+ raise SerializationError("coords must be provided.")
90
+ Coords.serialize(writer, data._coords)
91
+ finally:
92
+ writer.string_sanitization_mode = old_string_sanitization_mode
81
93
 
82
94
  @staticmethod
83
95
  def deserialize(reader: EoReader) -> "DoorOpenServerPacket":
@@ -90,14 +102,13 @@ class DoorOpenServerPacket(Packet):
90
102
  Returns:
91
103
  DoorOpenServerPacket: The data to serialize.
92
104
  """
93
- data: DoorOpenServerPacket = DoorOpenServerPacket()
94
105
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
95
106
  try:
96
107
  reader_start_position: int = reader.position
97
- data._coords = Coords.deserialize(reader)
98
- reader.get_char()
99
- data._byte_size = reader.position - reader_start_position
100
- return data
108
+ coords = Coords.deserialize(reader)
109
+ result = DoorOpenServerPacket(coords=coords)
110
+ result._byte_size = reader.position - reader_start_position
111
+ return result
101
112
  finally:
102
113
  reader.chunked_reading_mode = old_chunked_reading_mode
103
114
 
@@ -15,10 +15,25 @@ class EffectAdminServerPacket(Packet):
15
15
  Nearby character taking spike damage
16
16
  """
17
17
  _byte_size: int = 0
18
- _player_id: int = None # type: ignore [assignment]
19
- _hp_percentage: int = None # type: ignore [assignment]
20
- _died: bool = None # type: ignore [assignment]
21
- _damage: int = None # type: ignore [assignment]
18
+ _player_id: int
19
+ _hp_percentage: int
20
+ _died: bool
21
+ _damage: int
22
+
23
+ def __init__(self, *, player_id: int, hp_percentage: int, died: bool, damage: int):
24
+ """
25
+ Create a new instance of EffectAdminServerPacket.
26
+
27
+ Args:
28
+ player_id (int): (Value range is 0-64008.)
29
+ hp_percentage (int): (Value range is 0-252.)
30
+ died (bool):
31
+ damage (int): (Value range is 0-16194276.)
32
+ """
33
+ self._player_id = player_id
34
+ self._hp_percentage = hp_percentage
35
+ self._died = died
36
+ self._damage = damage
22
37
 
23
38
  @property
24
39
  def byte_size(self) -> int:
@@ -32,60 +47,20 @@ class EffectAdminServerPacket(Packet):
32
47
 
33
48
  @property
34
49
  def player_id(self) -> int:
35
- """
36
- Note:
37
- - Value range is 0-64008.
38
- """
39
50
  return self._player_id
40
51
 
41
- @player_id.setter
42
- def player_id(self, player_id: int) -> None:
43
- """
44
- Note:
45
- - Value range is 0-64008.
46
- """
47
- self._player_id = player_id
48
-
49
52
  @property
50
53
  def hp_percentage(self) -> int:
51
- """
52
- Note:
53
- - Value range is 0-252.
54
- """
55
54
  return self._hp_percentage
56
55
 
57
- @hp_percentage.setter
58
- def hp_percentage(self, hp_percentage: int) -> None:
59
- """
60
- Note:
61
- - Value range is 0-252.
62
- """
63
- self._hp_percentage = hp_percentage
64
-
65
56
  @property
66
57
  def died(self) -> bool:
67
58
  return self._died
68
59
 
69
- @died.setter
70
- def died(self, died: bool) -> None:
71
- self._died = died
72
-
73
60
  @property
74
61
  def damage(self) -> int:
75
- """
76
- Note:
77
- - Value range is 0-16194276.
78
- """
79
62
  return self._damage
80
63
 
81
- @damage.setter
82
- def damage(self, damage: int) -> None:
83
- """
84
- Note:
85
- - Value range is 0-16194276.
86
- """
87
- self._damage = damage
88
-
89
64
  @staticmethod
90
65
  def family() -> PacketFamily:
91
66
  """
@@ -124,18 +99,22 @@ class EffectAdminServerPacket(Packet):
124
99
  writer (EoWriter): The writer that the data will be serialized to.
125
100
  data (EffectAdminServerPacket): The data to serialize.
126
101
  """
127
- if data._player_id is None:
128
- raise SerializationError("player_id must be provided.")
129
- writer.add_short(data._player_id)
130
- if data._hp_percentage is None:
131
- raise SerializationError("hp_percentage must be provided.")
132
- writer.add_char(data._hp_percentage)
133
- if data._died is None:
134
- raise SerializationError("died must be provided.")
135
- writer.add_char(1 if data._died else 0)
136
- if data._damage is None:
137
- raise SerializationError("damage must be provided.")
138
- writer.add_three(data._damage)
102
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
103
+ try:
104
+ if data._player_id is None:
105
+ raise SerializationError("player_id must be provided.")
106
+ writer.add_short(data._player_id)
107
+ if data._hp_percentage is None:
108
+ raise SerializationError("hp_percentage must be provided.")
109
+ writer.add_char(data._hp_percentage)
110
+ if data._died is None:
111
+ raise SerializationError("died must be provided.")
112
+ writer.add_char(1 if data._died else 0)
113
+ if data._damage is None:
114
+ raise SerializationError("damage must be provided.")
115
+ writer.add_three(data._damage)
116
+ finally:
117
+ writer.string_sanitization_mode = old_string_sanitization_mode
139
118
 
140
119
  @staticmethod
141
120
  def deserialize(reader: EoReader) -> "EffectAdminServerPacket":
@@ -148,16 +127,16 @@ class EffectAdminServerPacket(Packet):
148
127
  Returns:
149
128
  EffectAdminServerPacket: The data to serialize.
150
129
  """
151
- data: EffectAdminServerPacket = EffectAdminServerPacket()
152
130
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
153
131
  try:
154
132
  reader_start_position: int = reader.position
155
- data._player_id = reader.get_short()
156
- data._hp_percentage = reader.get_char()
157
- data._died = reader.get_char() != 0
158
- data._damage = reader.get_three()
159
- data._byte_size = reader.position - reader_start_position
160
- return data
133
+ player_id = reader.get_short()
134
+ hp_percentage = reader.get_char()
135
+ died = reader.get_char() != 0
136
+ damage = reader.get_three()
137
+ result = EffectAdminServerPacket(player_id=player_id, hp_percentage=hp_percentage, died=died, damage=damage)
138
+ result._byte_size = reader.position - reader_start_position
139
+ return result
161
140
  finally:
162
141
  reader.chunked_reading_mode = old_chunked_reading_mode
163
142