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