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
@@ -4,7 +4,8 @@
4
4
  # Changes will be lost when code is regenerated.
5
5
 
6
6
  from __future__ import annotations
7
- from .character_base_stats import CharacterBaseStats
7
+ from collections.abc import Iterable
8
+ from .skill_stat_requirements import SkillStatRequirements
8
9
  from ....serialization_error import SerializationError
9
10
  from .....data.eo_writer import EoWriter
10
11
  from .....data.eo_reader import EoReader
@@ -14,12 +15,31 @@ class SkillLearn:
14
15
  A skill that can be learned from a skill master NPC
15
16
  """
16
17
  _byte_size: int = 0
17
- _id: int = None # type: ignore [assignment]
18
- _level_requirement: int = None # type: ignore [assignment]
19
- _class_requirement: int = None # type: ignore [assignment]
20
- _cost: int = None # type: ignore [assignment]
21
- _skill_requirements: list[int] = None # type: ignore [assignment]
22
- _stat_requirements: CharacterBaseStats = None # type: ignore [assignment]
18
+ _id: int
19
+ _level_requirement: int
20
+ _class_requirement: int
21
+ _cost: int
22
+ _skill_requirements: tuple[int, ...]
23
+ _stat_requirements: SkillStatRequirements
24
+
25
+ def __init__(self, *, id: int, level_requirement: int, class_requirement: int, cost: int, skill_requirements: Iterable[int], stat_requirements: SkillStatRequirements):
26
+ """
27
+ Create a new instance of SkillLearn.
28
+
29
+ Args:
30
+ id (int): (Value range is 0-64008.)
31
+ level_requirement (int): (Value range is 0-252.)
32
+ class_requirement (int): (Value range is 0-252.)
33
+ cost (int): (Value range is 0-4097152080.)
34
+ skill_requirements (Iterable[int]): (Length must be `4`.) (Element value range is 0-64008.)
35
+ stat_requirements (SkillStatRequirements):
36
+ """
37
+ self._id = id
38
+ self._level_requirement = level_requirement
39
+ self._class_requirement = class_requirement
40
+ self._cost = cost
41
+ self._skill_requirements = tuple(skill_requirements)
42
+ self._stat_requirements = stat_requirements
23
43
 
24
44
  @property
25
45
  def byte_size(self) -> int:
@@ -33,94 +53,28 @@ class SkillLearn:
33
53
 
34
54
  @property
35
55
  def id(self) -> int:
36
- """
37
- Note:
38
- - Value range is 0-64008.
39
- """
40
56
  return self._id
41
57
 
42
- @id.setter
43
- def id(self, id: int) -> None:
44
- """
45
- Note:
46
- - Value range is 0-64008.
47
- """
48
- self._id = id
49
-
50
58
  @property
51
59
  def level_requirement(self) -> int:
52
- """
53
- Note:
54
- - Value range is 0-252.
55
- """
56
60
  return self._level_requirement
57
61
 
58
- @level_requirement.setter
59
- def level_requirement(self, level_requirement: int) -> None:
60
- """
61
- Note:
62
- - Value range is 0-252.
63
- """
64
- self._level_requirement = level_requirement
65
-
66
62
  @property
67
63
  def class_requirement(self) -> int:
68
- """
69
- Note:
70
- - Value range is 0-252.
71
- """
72
64
  return self._class_requirement
73
65
 
74
- @class_requirement.setter
75
- def class_requirement(self, class_requirement: int) -> None:
76
- """
77
- Note:
78
- - Value range is 0-252.
79
- """
80
- self._class_requirement = class_requirement
81
-
82
66
  @property
83
67
  def cost(self) -> int:
84
- """
85
- Note:
86
- - Value range is 0-4097152080.
87
- """
88
68
  return self._cost
89
69
 
90
- @cost.setter
91
- def cost(self, cost: int) -> None:
92
- """
93
- Note:
94
- - Value range is 0-4097152080.
95
- """
96
- self._cost = cost
97
-
98
70
  @property
99
- def skill_requirements(self) -> list[int]:
100
- """
101
- Note:
102
- - Length must be `4`.
103
- - Element value range is 0-64008.
104
- """
71
+ def skill_requirements(self) -> tuple[int, ...]:
105
72
  return self._skill_requirements
106
73
 
107
- @skill_requirements.setter
108
- def skill_requirements(self, skill_requirements: list[int]) -> None:
109
- """
110
- Note:
111
- - Length must be `4`.
112
- - Element value range is 0-64008.
113
- """
114
- self._skill_requirements = skill_requirements
115
-
116
74
  @property
117
- def stat_requirements(self) -> CharacterBaseStats:
75
+ def stat_requirements(self) -> SkillStatRequirements:
118
76
  return self._stat_requirements
119
77
 
120
- @stat_requirements.setter
121
- def stat_requirements(self, stat_requirements: CharacterBaseStats) -> None:
122
- self._stat_requirements = stat_requirements
123
-
124
78
  @staticmethod
125
79
  def serialize(writer: EoWriter, data: "SkillLearn") -> None:
126
80
  """
@@ -130,27 +84,31 @@ class SkillLearn:
130
84
  writer (EoWriter): The writer that the data will be serialized to.
131
85
  data (SkillLearn): The data to serialize.
132
86
  """
133
- if data._id is None:
134
- raise SerializationError("id must be provided.")
135
- writer.add_short(data._id)
136
- if data._level_requirement is None:
137
- raise SerializationError("level_requirement must be provided.")
138
- writer.add_char(data._level_requirement)
139
- if data._class_requirement is None:
140
- raise SerializationError("class_requirement must be provided.")
141
- writer.add_char(data._class_requirement)
142
- if data._cost is None:
143
- raise SerializationError("cost must be provided.")
144
- writer.add_int(data._cost)
145
- if data._skill_requirements is None:
146
- raise SerializationError("skill_requirements must be provided.")
147
- if len(data._skill_requirements) != 4:
148
- raise SerializationError(f"Expected length of skill_requirements to be exactly 4, got {len(data._skill_requirements)}.")
149
- for i in range(4):
150
- writer.add_short(data._skill_requirements[i])
151
- if data._stat_requirements is None:
152
- raise SerializationError("stat_requirements must be provided.")
153
- CharacterBaseStats.serialize(writer, data._stat_requirements)
87
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
88
+ try:
89
+ if data._id is None:
90
+ raise SerializationError("id must be provided.")
91
+ writer.add_short(data._id)
92
+ if data._level_requirement is None:
93
+ raise SerializationError("level_requirement must be provided.")
94
+ writer.add_char(data._level_requirement)
95
+ if data._class_requirement is None:
96
+ raise SerializationError("class_requirement must be provided.")
97
+ writer.add_char(data._class_requirement)
98
+ if data._cost is None:
99
+ raise SerializationError("cost must be provided.")
100
+ writer.add_int(data._cost)
101
+ if data._skill_requirements is None:
102
+ raise SerializationError("skill_requirements must be provided.")
103
+ if len(data._skill_requirements) != 4:
104
+ raise SerializationError(f"Expected length of skill_requirements to be exactly 4, got {len(data._skill_requirements)}.")
105
+ for i in range(4):
106
+ writer.add_short(data._skill_requirements[i])
107
+ if data._stat_requirements is None:
108
+ raise SerializationError("stat_requirements must be provided.")
109
+ SkillStatRequirements.serialize(writer, data._stat_requirements)
110
+ finally:
111
+ writer.string_sanitization_mode = old_string_sanitization_mode
154
112
 
155
113
  @staticmethod
156
114
  def deserialize(reader: EoReader) -> "SkillLearn":
@@ -163,20 +121,20 @@ class SkillLearn:
163
121
  Returns:
164
122
  SkillLearn: The data to serialize.
165
123
  """
166
- data: SkillLearn = SkillLearn()
167
124
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
168
125
  try:
169
126
  reader_start_position: int = reader.position
170
- data._id = reader.get_short()
171
- data._level_requirement = reader.get_char()
172
- data._class_requirement = reader.get_char()
173
- data._cost = reader.get_int()
174
- data._skill_requirements = []
127
+ id = reader.get_short()
128
+ level_requirement = reader.get_char()
129
+ class_requirement = reader.get_char()
130
+ cost = reader.get_int()
131
+ skill_requirements = []
175
132
  for i in range(4):
176
- data._skill_requirements.append(reader.get_short())
177
- data._stat_requirements = CharacterBaseStats.deserialize(reader)
178
- data._byte_size = reader.position - reader_start_position
179
- return data
133
+ skill_requirements.append(reader.get_short())
134
+ stat_requirements = SkillStatRequirements.deserialize(reader)
135
+ result = SkillLearn(id=id, level_requirement=level_requirement, class_requirement=class_requirement, cost=cost, skill_requirements=skill_requirements, stat_requirements=stat_requirements)
136
+ result._byte_size = reader.position - reader_start_position
137
+ return result
180
138
  finally:
181
139
  reader.chunked_reading_mode = old_chunked_reading_mode
182
140
 
@@ -0,0 +1,134 @@
1
+ # Generated from the eo-protocol XML specification.
2
+ #
3
+ # This file should not be modified.
4
+ # Changes will be lost when code is regenerated.
5
+
6
+ from ....serialization_error import SerializationError
7
+ from .....data.eo_writer import EoWriter
8
+ from .....data.eo_reader import EoReader
9
+
10
+ class SkillStatRequirements:
11
+ """
12
+ Stat requirements to learn a skill from a skill master NPC
13
+ """
14
+ _byte_size: int = 0
15
+ _str: int
16
+ _wis: int
17
+ _intl: int
18
+ _agi: int
19
+ _con: int
20
+ _cha: int
21
+
22
+ def __init__(self, *, str: int, wis: int, intl: int, agi: int, con: int, cha: int):
23
+ """
24
+ Create a new instance of SkillStatRequirements.
25
+
26
+ Args:
27
+ str (int): (Value range is 0-64008.)
28
+ wis (int): (Value range is 0-64008.)
29
+ intl (int): (Value range is 0-64008.)
30
+ agi (int): (Value range is 0-64008.)
31
+ con (int): (Value range is 0-64008.)
32
+ cha (int): (Value range is 0-64008.)
33
+ """
34
+ self._str = str
35
+ self._wis = wis
36
+ self._intl = intl
37
+ self._agi = agi
38
+ self._con = con
39
+ self._cha = cha
40
+
41
+ @property
42
+ def byte_size(self) -> int:
43
+ """
44
+ Returns the size of the data that this was deserialized from.
45
+
46
+ Returns:
47
+ int: The size of the data that this was deserialized from.
48
+ """
49
+ return self._byte_size
50
+
51
+ @property
52
+ def str(self) -> int:
53
+ return self._str
54
+
55
+ @property
56
+ def wis(self) -> int:
57
+ return self._wis
58
+
59
+ @property
60
+ def intl(self) -> int:
61
+ return self._intl
62
+
63
+ @property
64
+ def agi(self) -> int:
65
+ return self._agi
66
+
67
+ @property
68
+ def con(self) -> int:
69
+ return self._con
70
+
71
+ @property
72
+ def cha(self) -> int:
73
+ return self._cha
74
+
75
+ @staticmethod
76
+ def serialize(writer: EoWriter, data: "SkillStatRequirements") -> None:
77
+ """
78
+ Serializes an instance of `SkillStatRequirements` to the provided `EoWriter`.
79
+
80
+ Args:
81
+ writer (EoWriter): The writer that the data will be serialized to.
82
+ data (SkillStatRequirements): The data to serialize.
83
+ """
84
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
85
+ try:
86
+ if data._str is None:
87
+ raise SerializationError("str must be provided.")
88
+ writer.add_short(data._str)
89
+ if data._wis is None:
90
+ raise SerializationError("wis must be provided.")
91
+ writer.add_short(data._wis)
92
+ if data._intl is None:
93
+ raise SerializationError("intl must be provided.")
94
+ writer.add_short(data._intl)
95
+ if data._agi is None:
96
+ raise SerializationError("agi must be provided.")
97
+ writer.add_short(data._agi)
98
+ if data._con is None:
99
+ raise SerializationError("con must be provided.")
100
+ writer.add_short(data._con)
101
+ if data._cha is None:
102
+ raise SerializationError("cha must be provided.")
103
+ writer.add_short(data._cha)
104
+ finally:
105
+ writer.string_sanitization_mode = old_string_sanitization_mode
106
+
107
+ @staticmethod
108
+ def deserialize(reader: EoReader) -> "SkillStatRequirements":
109
+ """
110
+ Deserializes an instance of `SkillStatRequirements` from the provided `EoReader`.
111
+
112
+ Args:
113
+ reader (EoReader): The writer that the data will be serialized to.
114
+
115
+ Returns:
116
+ SkillStatRequirements: The data to serialize.
117
+ """
118
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
119
+ try:
120
+ reader_start_position: int = reader.position
121
+ str = reader.get_short()
122
+ wis = reader.get_short()
123
+ intl = reader.get_short()
124
+ agi = reader.get_short()
125
+ con = reader.get_short()
126
+ cha = reader.get_short()
127
+ result = SkillStatRequirements(str=str, wis=wis, intl=intl, agi=agi, con=con, cha=cha)
128
+ result._byte_size = reader.position - reader_start_position
129
+ return result
130
+ finally:
131
+ reader.chunked_reading_mode = old_chunked_reading_mode
132
+
133
+ def __repr__(self):
134
+ return f"SkillStatRequirements(byte_size={repr(self._byte_size)}, str={repr(self._str)}, wis={repr(self._wis)}, intl={repr(self._intl)}, agi={repr(self._agi)}, con={repr(self._con)}, cha={repr(self._cha)})"
@@ -15,6 +15,11 @@ class SpellErrorServerPacket(Packet):
15
15
  """
16
16
  _byte_size: int = 0
17
17
 
18
+ def __init__(self):
19
+ """
20
+ Create a new instance of SpellErrorServerPacket.
21
+ """
22
+
18
23
  @property
19
24
  def byte_size(self) -> int:
20
25
  """
@@ -63,9 +68,11 @@ class SpellErrorServerPacket(Packet):
63
68
  writer (EoWriter): The writer that the data will be serialized to.
64
69
  data (SpellErrorServerPacket): The data to serialize.
65
70
  """
66
- old_writer_length: int = len(writer)
67
- if len(writer) == old_writer_length:
71
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
72
+ try:
68
73
  writer.add_byte(255)
74
+ finally:
75
+ writer.string_sanitization_mode = old_string_sanitization_mode
69
76
 
70
77
  @staticmethod
71
78
  def deserialize(reader: EoReader) -> "SpellErrorServerPacket":
@@ -78,14 +85,13 @@ class SpellErrorServerPacket(Packet):
78
85
  Returns:
79
86
  SpellErrorServerPacket: The data to serialize.
80
87
  """
81
- data: SpellErrorServerPacket = SpellErrorServerPacket()
82
88
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
83
89
  try:
84
90
  reader_start_position: int = reader.position
85
- if reader.position == reader_start_position:
86
- reader.get_byte()
87
- data._byte_size = reader.position - reader_start_position
88
- return data
91
+ reader.get_byte()
92
+ result = SpellErrorServerPacket()
93
+ result._byte_size = reader.position - reader_start_position
94
+ return result
89
95
  finally:
90
96
  reader.chunked_reading_mode = old_chunked_reading_mode
91
97
 
@@ -16,8 +16,19 @@ class SpellPlayerServerPacket(Packet):
16
16
  Nearby player raising their arm to cast a spell (vestigial)
17
17
  """
18
18
  _byte_size: int = 0
19
- _player_id: int = None # type: ignore [assignment]
20
- _direction: Direction = None # type: ignore [assignment]
19
+ _player_id: int
20
+ _direction: Direction
21
+
22
+ def __init__(self, *, player_id: int, direction: Direction):
23
+ """
24
+ Create a new instance of SpellPlayerServerPacket.
25
+
26
+ Args:
27
+ player_id (int): (Value range is 0-64008.)
28
+ direction (Direction):
29
+ """
30
+ self._player_id = player_id
31
+ self._direction = direction
21
32
 
22
33
  @property
23
34
  def byte_size(self) -> int:
@@ -31,28 +42,12 @@ class SpellPlayerServerPacket(Packet):
31
42
 
32
43
  @property
33
44
  def player_id(self) -> int:
34
- """
35
- Note:
36
- - Value range is 0-64008.
37
- """
38
45
  return self._player_id
39
46
 
40
- @player_id.setter
41
- def player_id(self, player_id: int) -> None:
42
- """
43
- Note:
44
- - Value range is 0-64008.
45
- """
46
- self._player_id = player_id
47
-
48
47
  @property
49
48
  def direction(self) -> Direction:
50
49
  return self._direction
51
50
 
52
- @direction.setter
53
- def direction(self, direction: Direction) -> None:
54
- self._direction = direction
55
-
56
51
  @staticmethod
57
52
  def family() -> PacketFamily:
58
53
  """
@@ -91,12 +86,16 @@ class SpellPlayerServerPacket(Packet):
91
86
  writer (EoWriter): The writer that the data will be serialized to.
92
87
  data (SpellPlayerServerPacket): The data to serialize.
93
88
  """
94
- if data._player_id is None:
95
- raise SerializationError("player_id must be provided.")
96
- writer.add_short(data._player_id)
97
- if data._direction is None:
98
- raise SerializationError("direction must be provided.")
99
- writer.add_char(int(data._direction))
89
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
90
+ try:
91
+ if data._player_id is None:
92
+ raise SerializationError("player_id must be provided.")
93
+ writer.add_short(data._player_id)
94
+ if data._direction is None:
95
+ raise SerializationError("direction must be provided.")
96
+ writer.add_char(int(data._direction))
97
+ finally:
98
+ writer.string_sanitization_mode = old_string_sanitization_mode
100
99
 
101
100
  @staticmethod
102
101
  def deserialize(reader: EoReader) -> "SpellPlayerServerPacket":
@@ -109,14 +108,14 @@ class SpellPlayerServerPacket(Packet):
109
108
  Returns:
110
109
  SpellPlayerServerPacket: The data to serialize.
111
110
  """
112
- data: SpellPlayerServerPacket = SpellPlayerServerPacket()
113
111
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
114
112
  try:
115
113
  reader_start_position: int = reader.position
116
- data._player_id = reader.get_short()
117
- data._direction = Direction(reader.get_char())
118
- data._byte_size = reader.position - reader_start_position
119
- return data
114
+ player_id = reader.get_short()
115
+ direction = Direction(reader.get_char())
116
+ result = SpellPlayerServerPacket(player_id=player_id, direction=direction)
117
+ result._byte_size = reader.position - reader_start_position
118
+ return result
120
119
  finally:
121
120
  reader.chunked_reading_mode = old_chunked_reading_mode
122
121
 
@@ -0,0 +1,133 @@
1
+ # Generated from the eo-protocol XML specification.
2
+ #
3
+ # This file should not be modified.
4
+ # Changes will be lost when code is regenerated.
5
+
6
+ from ..packet_family import PacketFamily
7
+ from ..packet_action import PacketAction
8
+ from ....serialization_error import SerializationError
9
+ from ....net.packet import Packet
10
+ from .....data.eo_writer import EoWriter
11
+ from .....data.eo_reader import EoReader
12
+
13
+ class SpellReplyServerPacket(Packet):
14
+ """
15
+ Your character self-cast a targetable heal spell
16
+ """
17
+ _byte_size: int = 0
18
+ _spell_id: int
19
+ _hp: int
20
+ _tp: int
21
+
22
+ def __init__(self, *, spell_id: int, hp: int, tp: int):
23
+ """
24
+ Create a new instance of SpellReplyServerPacket.
25
+
26
+ Args:
27
+ spell_id (int): (Value range is 0-64008.)
28
+ hp (int): (Value range is 0-64008.)
29
+ tp (int): (Value range is 0-64008.)
30
+ """
31
+ self._spell_id = spell_id
32
+ self._hp = hp
33
+ self._tp = tp
34
+
35
+ @property
36
+ def byte_size(self) -> int:
37
+ """
38
+ Returns the size of the data that this was deserialized from.
39
+
40
+ Returns:
41
+ int: The size of the data that this was deserialized from.
42
+ """
43
+ return self._byte_size
44
+
45
+ @property
46
+ def spell_id(self) -> int:
47
+ return self._spell_id
48
+
49
+ @property
50
+ def hp(self) -> int:
51
+ return self._hp
52
+
53
+ @property
54
+ def tp(self) -> int:
55
+ return self._tp
56
+
57
+ @staticmethod
58
+ def family() -> PacketFamily:
59
+ """
60
+ Returns the packet family associated with this packet.
61
+
62
+ Returns:
63
+ PacketFamily: The packet family associated with this packet.
64
+ """
65
+ return PacketFamily.Spell
66
+
67
+ @staticmethod
68
+ def action() -> PacketAction:
69
+ """
70
+ Returns the packet action associated with this packet.
71
+
72
+ Returns:
73
+ PacketAction: The packet action associated with this packet.
74
+ """
75
+ return PacketAction.Reply
76
+
77
+ def write(self, writer):
78
+ """
79
+ Serializes and writes this packet to the provided EoWriter.
80
+
81
+ Args:
82
+ writer (EoWriter): the writer that this packet will be written to.
83
+ """
84
+ SpellReplyServerPacket.serialize(writer, self)
85
+
86
+ @staticmethod
87
+ def serialize(writer: EoWriter, data: "SpellReplyServerPacket") -> None:
88
+ """
89
+ Serializes an instance of `SpellReplyServerPacket` to the provided `EoWriter`.
90
+
91
+ Args:
92
+ writer (EoWriter): The writer that the data will be serialized to.
93
+ data (SpellReplyServerPacket): The data to serialize.
94
+ """
95
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
96
+ try:
97
+ if data._spell_id is None:
98
+ raise SerializationError("spell_id must be provided.")
99
+ writer.add_short(data._spell_id)
100
+ if data._hp is None:
101
+ raise SerializationError("hp must be provided.")
102
+ writer.add_short(data._hp)
103
+ if data._tp is None:
104
+ raise SerializationError("tp must be provided.")
105
+ writer.add_short(data._tp)
106
+ finally:
107
+ writer.string_sanitization_mode = old_string_sanitization_mode
108
+
109
+ @staticmethod
110
+ def deserialize(reader: EoReader) -> "SpellReplyServerPacket":
111
+ """
112
+ Deserializes an instance of `SpellReplyServerPacket` from the provided `EoReader`.
113
+
114
+ Args:
115
+ reader (EoReader): The writer that the data will be serialized to.
116
+
117
+ Returns:
118
+ SpellReplyServerPacket: The data to serialize.
119
+ """
120
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
121
+ try:
122
+ reader_start_position: int = reader.position
123
+ spell_id = reader.get_short()
124
+ hp = reader.get_short()
125
+ tp = reader.get_short()
126
+ result = SpellReplyServerPacket(spell_id=spell_id, hp=hp, tp=tp)
127
+ result._byte_size = reader.position - reader_start_position
128
+ return result
129
+ finally:
130
+ reader.chunked_reading_mode = old_chunked_reading_mode
131
+
132
+ def __repr__(self):
133
+ return f"SpellReplyServerPacket(byte_size={repr(self._byte_size)}, spell_id={repr(self._spell_id)}, hp={repr(self._hp)}, tp={repr(self._tp)})"