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
@@ -19,12 +19,31 @@ class NpcReplyServerPacket(Packet):
19
19
  Nearby NPC hit by a player
20
20
  """
21
21
  _byte_size: int = 0
22
- _player_id: int = None # type: ignore [assignment]
23
- _player_direction: Direction = None # type: ignore [assignment]
24
- _npc_index: int = None # type: ignore [assignment]
25
- _damage: int = None # type: ignore [assignment]
26
- _hp_percentage: int = None # type: ignore [assignment]
27
- _kill_steal_protection: Optional[NpcKillStealProtectionState] = None # type: ignore [assignment]
22
+ _player_id: int
23
+ _player_direction: Direction
24
+ _npc_index: int
25
+ _damage: int
26
+ _hp_percentage: int
27
+ _kill_steal_protection: Optional[NpcKillStealProtectionState]
28
+
29
+ def __init__(self, *, player_id: int, player_direction: Direction, npc_index: int, damage: int, hp_percentage: int, kill_steal_protection: Optional[NpcKillStealProtectionState] = None):
30
+ """
31
+ Create a new instance of NpcReplyServerPacket.
32
+
33
+ Args:
34
+ player_id (int): (Value range is 0-64008.)
35
+ player_direction (Direction):
36
+ npc_index (int): (Value range is 0-64008.)
37
+ damage (int): (Value range is 0-16194276.)
38
+ hp_percentage (int): (Value range is 0-64008.)
39
+ kill_steal_protection (Optional[NpcKillStealProtectionState]): This field should be sent to the attacker, but not nearby players
40
+ """
41
+ self._player_id = player_id
42
+ self._player_direction = player_direction
43
+ self._npc_index = npc_index
44
+ self._damage = damage
45
+ self._hp_percentage = hp_percentage
46
+ self._kill_steal_protection = kill_steal_protection
28
47
 
29
48
  @property
30
49
  def byte_size(self) -> int:
@@ -38,84 +57,31 @@ class NpcReplyServerPacket(Packet):
38
57
 
39
58
  @property
40
59
  def player_id(self) -> int:
41
- """
42
- Note:
43
- - Value range is 0-64008.
44
- """
45
60
  return self._player_id
46
61
 
47
- @player_id.setter
48
- def player_id(self, player_id: int) -> None:
49
- """
50
- Note:
51
- - Value range is 0-64008.
52
- """
53
- self._player_id = player_id
54
-
55
62
  @property
56
63
  def player_direction(self) -> Direction:
57
64
  return self._player_direction
58
65
 
59
- @player_direction.setter
60
- def player_direction(self, player_direction: Direction) -> None:
61
- self._player_direction = player_direction
62
-
63
66
  @property
64
67
  def npc_index(self) -> int:
65
- """
66
- Note:
67
- - Value range is 0-64008.
68
- """
69
68
  return self._npc_index
70
69
 
71
- @npc_index.setter
72
- def npc_index(self, npc_index: int) -> None:
73
- """
74
- Note:
75
- - Value range is 0-64008.
76
- """
77
- self._npc_index = npc_index
78
-
79
70
  @property
80
71
  def damage(self) -> int:
81
- """
82
- Note:
83
- - Value range is 0-16194276.
84
- """
85
72
  return self._damage
86
73
 
87
- @damage.setter
88
- def damage(self, damage: int) -> None:
89
- """
90
- Note:
91
- - Value range is 0-16194276.
92
- """
93
- self._damage = damage
94
-
95
74
  @property
96
75
  def hp_percentage(self) -> int:
97
- """
98
- Note:
99
- - Value range is 0-64008.
100
- """
101
76
  return self._hp_percentage
102
77
 
103
- @hp_percentage.setter
104
- def hp_percentage(self, hp_percentage: int) -> None:
105
- """
106
- Note:
107
- - Value range is 0-64008.
108
- """
109
- self._hp_percentage = hp_percentage
110
-
111
78
  @property
112
79
  def kill_steal_protection(self) -> Optional[NpcKillStealProtectionState]:
80
+ """
81
+ This field should be sent to the attacker, but not nearby players
82
+ """
113
83
  return self._kill_steal_protection
114
84
 
115
- @kill_steal_protection.setter
116
- def kill_steal_protection(self, kill_steal_protection: Optional[NpcKillStealProtectionState]) -> None:
117
- self._kill_steal_protection = kill_steal_protection
118
-
119
85
  @staticmethod
120
86
  def family() -> PacketFamily:
121
87
  """
@@ -154,24 +120,28 @@ class NpcReplyServerPacket(Packet):
154
120
  writer (EoWriter): The writer that the data will be serialized to.
155
121
  data (NpcReplyServerPacket): The data to serialize.
156
122
  """
157
- if data._player_id is None:
158
- raise SerializationError("player_id must be provided.")
159
- writer.add_short(data._player_id)
160
- if data._player_direction is None:
161
- raise SerializationError("player_direction must be provided.")
162
- writer.add_char(int(data._player_direction))
163
- if data._npc_index is None:
164
- raise SerializationError("npc_index must be provided.")
165
- writer.add_short(data._npc_index)
166
- if data._damage is None:
167
- raise SerializationError("damage must be provided.")
168
- writer.add_three(data._damage)
169
- if data._hp_percentage is None:
170
- raise SerializationError("hp_percentage must be provided.")
171
- writer.add_short(data._hp_percentage)
172
- reached_missing_optional = data._kill_steal_protection is None
173
- if not reached_missing_optional:
174
- writer.add_char(int(cast(NpcKillStealProtectionState, data._kill_steal_protection)))
123
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
124
+ try:
125
+ if data._player_id is None:
126
+ raise SerializationError("player_id must be provided.")
127
+ writer.add_short(data._player_id)
128
+ if data._player_direction is None:
129
+ raise SerializationError("player_direction must be provided.")
130
+ writer.add_char(int(data._player_direction))
131
+ if data._npc_index is None:
132
+ raise SerializationError("npc_index must be provided.")
133
+ writer.add_short(data._npc_index)
134
+ if data._damage is None:
135
+ raise SerializationError("damage must be provided.")
136
+ writer.add_three(data._damage)
137
+ if data._hp_percentage is None:
138
+ raise SerializationError("hp_percentage must be provided.")
139
+ writer.add_short(data._hp_percentage)
140
+ reached_missing_optional = data._kill_steal_protection is None
141
+ if not reached_missing_optional:
142
+ writer.add_char(int(cast(NpcKillStealProtectionState, data._kill_steal_protection)))
143
+ finally:
144
+ writer.string_sanitization_mode = old_string_sanitization_mode
175
145
 
176
146
  @staticmethod
177
147
  def deserialize(reader: EoReader) -> "NpcReplyServerPacket":
@@ -184,19 +154,20 @@ class NpcReplyServerPacket(Packet):
184
154
  Returns:
185
155
  NpcReplyServerPacket: The data to serialize.
186
156
  """
187
- data: NpcReplyServerPacket = NpcReplyServerPacket()
188
157
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
189
158
  try:
190
159
  reader_start_position: int = reader.position
191
- data._player_id = reader.get_short()
192
- data._player_direction = Direction(reader.get_char())
193
- data._npc_index = reader.get_short()
194
- data._damage = reader.get_three()
195
- data._hp_percentage = reader.get_short()
160
+ player_id = reader.get_short()
161
+ player_direction = Direction(reader.get_char())
162
+ npc_index = reader.get_short()
163
+ damage = reader.get_three()
164
+ hp_percentage = reader.get_short()
165
+ kill_steal_protection: Optional[NpcKillStealProtectionState] = None
196
166
  if reader.remaining > 0:
197
- data._kill_steal_protection = NpcKillStealProtectionState(reader.get_char())
198
- data._byte_size = reader.position - reader_start_position
199
- return data
167
+ kill_steal_protection = NpcKillStealProtectionState(reader.get_char())
168
+ result = NpcReplyServerPacket(player_id=player_id, player_direction=player_direction, npc_index=npc_index, damage=damage, hp_percentage=hp_percentage, kill_steal_protection=kill_steal_protection)
169
+ result._byte_size = reader.position - reader_start_position
170
+ return result
200
171
  finally:
201
172
  reader.chunked_reading_mode = old_chunked_reading_mode
202
173
 
@@ -18,8 +18,19 @@ class NpcSpecServerPacket(Packet):
18
18
  Nearby NPC killed by player
19
19
  """
20
20
  _byte_size: int = 0
21
- _npc_killed_data: NpcKilledData = None # type: ignore [assignment]
22
- _experience: Optional[int] = None # type: ignore [assignment]
21
+ _npc_killed_data: NpcKilledData
22
+ _experience: Optional[int]
23
+
24
+ def __init__(self, *, npc_killed_data: NpcKilledData, experience: Optional[int] = None):
25
+ """
26
+ Create a new instance of NpcSpecServerPacket.
27
+
28
+ Args:
29
+ npc_killed_data (NpcKilledData):
30
+ experience (Optional[int]): This field should be sent to the killer, but not nearby players (Value range is 0-4097152080.)
31
+ """
32
+ self._npc_killed_data = npc_killed_data
33
+ self._experience = experience
23
34
 
24
35
  @property
25
36
  def byte_size(self) -> int:
@@ -35,26 +46,13 @@ class NpcSpecServerPacket(Packet):
35
46
  def npc_killed_data(self) -> NpcKilledData:
36
47
  return self._npc_killed_data
37
48
 
38
- @npc_killed_data.setter
39
- def npc_killed_data(self, npc_killed_data: NpcKilledData) -> None:
40
- self._npc_killed_data = npc_killed_data
41
-
42
49
  @property
43
50
  def experience(self) -> Optional[int]:
44
51
  """
45
- Note:
46
- - Value range is 0-4097152080.
52
+ This field should be sent to the killer, but not nearby players
47
53
  """
48
54
  return self._experience
49
55
 
50
- @experience.setter
51
- def experience(self, experience: Optional[int]) -> None:
52
- """
53
- Note:
54
- - Value range is 0-4097152080.
55
- """
56
- self._experience = experience
57
-
58
56
  @staticmethod
59
57
  def family() -> PacketFamily:
60
58
  """
@@ -93,12 +91,16 @@ class NpcSpecServerPacket(Packet):
93
91
  writer (EoWriter): The writer that the data will be serialized to.
94
92
  data (NpcSpecServerPacket): The data to serialize.
95
93
  """
96
- if data._npc_killed_data is None:
97
- raise SerializationError("npc_killed_data must be provided.")
98
- NpcKilledData.serialize(writer, data._npc_killed_data)
99
- reached_missing_optional = data._experience is None
100
- if not reached_missing_optional:
101
- writer.add_int(cast(int, data._experience))
94
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
95
+ try:
96
+ if data._npc_killed_data is None:
97
+ raise SerializationError("npc_killed_data must be provided.")
98
+ NpcKilledData.serialize(writer, data._npc_killed_data)
99
+ reached_missing_optional = data._experience is None
100
+ if not reached_missing_optional:
101
+ writer.add_int(cast(int, data._experience))
102
+ finally:
103
+ writer.string_sanitization_mode = old_string_sanitization_mode
102
104
 
103
105
  @staticmethod
104
106
  def deserialize(reader: EoReader) -> "NpcSpecServerPacket":
@@ -111,15 +113,16 @@ class NpcSpecServerPacket(Packet):
111
113
  Returns:
112
114
  NpcSpecServerPacket: The data to serialize.
113
115
  """
114
- data: NpcSpecServerPacket = NpcSpecServerPacket()
115
116
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
116
117
  try:
117
118
  reader_start_position: int = reader.position
118
- data._npc_killed_data = NpcKilledData.deserialize(reader)
119
+ npc_killed_data = NpcKilledData.deserialize(reader)
120
+ experience: Optional[int] = None
119
121
  if reader.remaining > 0:
120
- data._experience = reader.get_int()
121
- data._byte_size = reader.position - reader_start_position
122
- return data
122
+ experience = reader.get_int()
123
+ result = NpcSpecServerPacket(npc_killed_data=npc_killed_data, experience=experience)
124
+ result._byte_size = reader.position - reader_start_position
125
+ return result
123
126
  finally:
124
127
  reader.chunked_reading_mode = old_chunked_reading_mode
125
128
 
@@ -14,12 +14,31 @@ class NpcUpdateAttack:
14
14
  An NPC attacking
15
15
  """
16
16
  _byte_size: int = 0
17
- _npc_index: int = None # type: ignore [assignment]
18
- _killed: PlayerKilledState = None # type: ignore [assignment]
19
- _direction: Direction = None # type: ignore [assignment]
20
- _player_id: int = None # type: ignore [assignment]
21
- _damage: int = None # type: ignore [assignment]
22
- _hp_percentage: int = None # type: ignore [assignment]
17
+ _npc_index: int
18
+ _killed: PlayerKilledState
19
+ _direction: Direction
20
+ _player_id: int
21
+ _damage: int
22
+ _hp_percentage: int
23
+
24
+ def __init__(self, *, npc_index: int, killed: PlayerKilledState, direction: Direction, player_id: int, damage: int, hp_percentage: int):
25
+ """
26
+ Create a new instance of NpcUpdateAttack.
27
+
28
+ Args:
29
+ npc_index (int): (Value range is 0-252.)
30
+ killed (PlayerKilledState):
31
+ direction (Direction):
32
+ player_id (int): (Value range is 0-64008.)
33
+ damage (int): (Value range is 0-16194276.)
34
+ hp_percentage (int): (Value range is 0-252.)
35
+ """
36
+ self._npc_index = npc_index
37
+ self._killed = killed
38
+ self._direction = direction
39
+ self._player_id = player_id
40
+ self._damage = damage
41
+ self._hp_percentage = hp_percentage
23
42
 
24
43
  @property
25
44
  def byte_size(self) -> int:
@@ -33,84 +52,28 @@ class NpcUpdateAttack:
33
52
 
34
53
  @property
35
54
  def npc_index(self) -> int:
36
- """
37
- Note:
38
- - Value range is 0-252.
39
- """
40
55
  return self._npc_index
41
56
 
42
- @npc_index.setter
43
- def npc_index(self, npc_index: int) -> None:
44
- """
45
- Note:
46
- - Value range is 0-252.
47
- """
48
- self._npc_index = npc_index
49
-
50
57
  @property
51
58
  def killed(self) -> PlayerKilledState:
52
59
  return self._killed
53
60
 
54
- @killed.setter
55
- def killed(self, killed: PlayerKilledState) -> None:
56
- self._killed = killed
57
-
58
61
  @property
59
62
  def direction(self) -> Direction:
60
63
  return self._direction
61
64
 
62
- @direction.setter
63
- def direction(self, direction: Direction) -> None:
64
- self._direction = direction
65
-
66
65
  @property
67
66
  def player_id(self) -> int:
68
- """
69
- Note:
70
- - Value range is 0-64008.
71
- """
72
67
  return self._player_id
73
68
 
74
- @player_id.setter
75
- def player_id(self, player_id: int) -> None:
76
- """
77
- Note:
78
- - Value range is 0-64008.
79
- """
80
- self._player_id = player_id
81
-
82
69
  @property
83
70
  def damage(self) -> int:
84
- """
85
- Note:
86
- - Value range is 0-16194276.
87
- """
88
71
  return self._damage
89
72
 
90
- @damage.setter
91
- def damage(self, damage: int) -> None:
92
- """
93
- Note:
94
- - Value range is 0-16194276.
95
- """
96
- self._damage = damage
97
-
98
73
  @property
99
74
  def hp_percentage(self) -> int:
100
- """
101
- Note:
102
- - Value range is 0-252.
103
- """
104
75
  return self._hp_percentage
105
76
 
106
- @hp_percentage.setter
107
- def hp_percentage(self, hp_percentage: int) -> None:
108
- """
109
- Note:
110
- - Value range is 0-252.
111
- """
112
- self._hp_percentage = hp_percentage
113
-
114
77
  @staticmethod
115
78
  def serialize(writer: EoWriter, data: "NpcUpdateAttack") -> None:
116
79
  """
@@ -120,24 +83,28 @@ class NpcUpdateAttack:
120
83
  writer (EoWriter): The writer that the data will be serialized to.
121
84
  data (NpcUpdateAttack): The data to serialize.
122
85
  """
123
- if data._npc_index is None:
124
- raise SerializationError("npc_index must be provided.")
125
- writer.add_char(data._npc_index)
126
- if data._killed is None:
127
- raise SerializationError("killed must be provided.")
128
- writer.add_char(int(data._killed))
129
- if data._direction is None:
130
- raise SerializationError("direction must be provided.")
131
- writer.add_char(int(data._direction))
132
- if data._player_id is None:
133
- raise SerializationError("player_id must be provided.")
134
- writer.add_short(data._player_id)
135
- if data._damage is None:
136
- raise SerializationError("damage must be provided.")
137
- writer.add_three(data._damage)
138
- if data._hp_percentage is None:
139
- raise SerializationError("hp_percentage must be provided.")
140
- writer.add_char(data._hp_percentage)
86
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
87
+ try:
88
+ if data._npc_index is None:
89
+ raise SerializationError("npc_index must be provided.")
90
+ writer.add_char(data._npc_index)
91
+ if data._killed is None:
92
+ raise SerializationError("killed must be provided.")
93
+ writer.add_char(int(data._killed))
94
+ if data._direction is None:
95
+ raise SerializationError("direction must be provided.")
96
+ writer.add_char(int(data._direction))
97
+ if data._player_id is None:
98
+ raise SerializationError("player_id must be provided.")
99
+ writer.add_short(data._player_id)
100
+ if data._damage is None:
101
+ raise SerializationError("damage must be provided.")
102
+ writer.add_three(data._damage)
103
+ if data._hp_percentage is None:
104
+ raise SerializationError("hp_percentage must be provided.")
105
+ writer.add_char(data._hp_percentage)
106
+ finally:
107
+ writer.string_sanitization_mode = old_string_sanitization_mode
141
108
 
142
109
  @staticmethod
143
110
  def deserialize(reader: EoReader) -> "NpcUpdateAttack":
@@ -150,18 +117,18 @@ class NpcUpdateAttack:
150
117
  Returns:
151
118
  NpcUpdateAttack: The data to serialize.
152
119
  """
153
- data: NpcUpdateAttack = NpcUpdateAttack()
154
120
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
155
121
  try:
156
122
  reader_start_position: int = reader.position
157
- data._npc_index = reader.get_char()
158
- data._killed = PlayerKilledState(reader.get_char())
159
- data._direction = Direction(reader.get_char())
160
- data._player_id = reader.get_short()
161
- data._damage = reader.get_three()
162
- data._hp_percentage = reader.get_char()
163
- data._byte_size = reader.position - reader_start_position
164
- return data
123
+ npc_index = reader.get_char()
124
+ killed = PlayerKilledState(reader.get_char())
125
+ direction = Direction(reader.get_char())
126
+ player_id = reader.get_short()
127
+ damage = reader.get_three()
128
+ hp_percentage = reader.get_char()
129
+ result = NpcUpdateAttack(npc_index=npc_index, killed=killed, direction=direction, player_id=player_id, damage=damage, hp_percentage=hp_percentage)
130
+ result._byte_size = reader.position - reader_start_position
131
+ return result
165
132
  finally:
166
133
  reader.chunked_reading_mode = old_chunked_reading_mode
167
134
 
@@ -12,9 +12,21 @@ class NpcUpdateChat:
12
12
  An NPC talking
13
13
  """
14
14
  _byte_size: int = 0
15
- _npc_index: int = None # type: ignore [assignment]
16
- _message_length: int = None # type: ignore [assignment]
17
- _message: str = None # type: ignore [assignment]
15
+ _npc_index: int
16
+ _message_length: int
17
+ _message: str
18
+
19
+ def __init__(self, *, npc_index: int, message: str):
20
+ """
21
+ Create a new instance of NpcUpdateChat.
22
+
23
+ Args:
24
+ npc_index (int): (Value range is 0-252.)
25
+ message (str): (Length must be 252 or less.)
26
+ """
27
+ self._npc_index = npc_index
28
+ self._message = message
29
+ self._message_length = len(self._message)
18
30
 
19
31
  @property
20
32
  def byte_size(self) -> int:
@@ -28,37 +40,12 @@ class NpcUpdateChat:
28
40
 
29
41
  @property
30
42
  def npc_index(self) -> int:
31
- """
32
- Note:
33
- - Value range is 0-252.
34
- """
35
43
  return self._npc_index
36
44
 
37
- @npc_index.setter
38
- def npc_index(self, npc_index: int) -> None:
39
- """
40
- Note:
41
- - Value range is 0-252.
42
- """
43
- self._npc_index = npc_index
44
-
45
45
  @property
46
46
  def message(self) -> str:
47
- """
48
- Note:
49
- - Length must be 252 or less.
50
- """
51
47
  return self._message
52
48
 
53
- @message.setter
54
- def message(self, message: str) -> None:
55
- """
56
- Note:
57
- - Length must be 252 or less.
58
- """
59
- self._message = message
60
- self._message_length = len(self._message)
61
-
62
49
  @staticmethod
63
50
  def serialize(writer: EoWriter, data: "NpcUpdateChat") -> None:
64
51
  """
@@ -68,17 +55,21 @@ class NpcUpdateChat:
68
55
  writer (EoWriter): The writer that the data will be serialized to.
69
56
  data (NpcUpdateChat): The data to serialize.
70
57
  """
71
- if data._npc_index is None:
72
- raise SerializationError("npc_index must be provided.")
73
- writer.add_char(data._npc_index)
74
- if data._message_length is None:
75
- raise SerializationError("message_length must be provided.")
76
- writer.add_char(data._message_length)
77
- if data._message is None:
78
- raise SerializationError("message must be provided.")
79
- if len(data._message) > 252:
80
- raise SerializationError(f"Expected length of message to be 252 or less, got {len(data._message)}.")
81
- writer.add_fixed_string(data._message, data._message_length, False)
58
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
59
+ try:
60
+ if data._npc_index is None:
61
+ raise SerializationError("npc_index must be provided.")
62
+ writer.add_char(data._npc_index)
63
+ if data._message_length is None:
64
+ raise SerializationError("message_length must be provided.")
65
+ writer.add_char(data._message_length)
66
+ if data._message is None:
67
+ raise SerializationError("message must be provided.")
68
+ if len(data._message) > 252:
69
+ raise SerializationError(f"Expected length of message to be 252 or less, got {len(data._message)}.")
70
+ writer.add_fixed_string(data._message, data._message_length, False)
71
+ finally:
72
+ writer.string_sanitization_mode = old_string_sanitization_mode
82
73
 
83
74
  @staticmethod
84
75
  def deserialize(reader: EoReader) -> "NpcUpdateChat":
@@ -91,15 +82,15 @@ class NpcUpdateChat:
91
82
  Returns:
92
83
  NpcUpdateChat: The data to serialize.
93
84
  """
94
- data: NpcUpdateChat = NpcUpdateChat()
95
85
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
96
86
  try:
97
87
  reader_start_position: int = reader.position
98
- data._npc_index = reader.get_char()
99
- data._message_length = reader.get_char()
100
- data._message = reader.get_fixed_string(data._message_length, False)
101
- data._byte_size = reader.position - reader_start_position
102
- return data
88
+ npc_index = reader.get_char()
89
+ message_length = reader.get_char()
90
+ message = reader.get_fixed_string(message_length, False)
91
+ result = NpcUpdateChat(npc_index=npc_index, message=message)
92
+ result._byte_size = reader.position - reader_start_position
93
+ return result
103
94
  finally:
104
95
  reader.chunked_reading_mode = old_chunked_reading_mode
105
96