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
@@ -0,0 +1,255 @@
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 collections.abc import Iterable
8
+ from .inn_question_record import InnQuestionRecord
9
+ from ....serialization_error import SerializationError
10
+ from .....data.eo_writer import EoWriter
11
+ from .....data.eo_reader import EoReader
12
+
13
+ class InnRecord:
14
+ """
15
+ Record of Inn data in an Endless Inn File
16
+ """
17
+ _byte_size: int = 0
18
+ _behavior_id: int
19
+ _name_length: int
20
+ _name: str
21
+ _spawn_map: int
22
+ _spawn_x: int
23
+ _spawn_y: int
24
+ _sleep_map: int
25
+ _sleep_x: int
26
+ _sleep_y: int
27
+ _alternate_spawn_enabled: bool
28
+ _alternate_spawn_map: int
29
+ _alternate_spawn_x: int
30
+ _alternate_spawn_y: int
31
+ _questions: tuple[InnQuestionRecord, ...]
32
+
33
+ def __init__(self, *, behavior_id: int, name: str, spawn_map: int, spawn_x: int, spawn_y: int, sleep_map: int, sleep_x: int, sleep_y: int, alternate_spawn_enabled: bool, alternate_spawn_map: int, alternate_spawn_x: int, alternate_spawn_y: int, questions: Iterable[InnQuestionRecord]):
34
+ """
35
+ Create a new instance of InnRecord.
36
+
37
+ Args:
38
+ behavior_id (int): Behavior ID of the NPC that runs the inn. 0 for default inn (Value range is 0-64008.)
39
+ name (str): (Length must be 252 or less.)
40
+ spawn_map (int): ID of the map the player is sent to after respawning (Value range is 0-64008.)
41
+ spawn_x (int): X coordinate of the map the player is sent to after respawning (Value range is 0-252.)
42
+ spawn_y (int): Y coordinate of the map the player is sent to after respawning (Value range is 0-252.)
43
+ sleep_map (int): ID of the map the player is sent to after sleeping at the inn (Value range is 0-64008.)
44
+ sleep_x (int): X coordinate of the map the player is sent to after sleeping at the inn (Value range is 0-252.)
45
+ sleep_y (int): Y coordinate of the map the player is sent to after sleeping at the inn (Value range is 0-252.)
46
+ alternate_spawn_enabled (bool): Flag for an alternate spawn point. If true, the server will use this alternate spawn map, x, and, y based on some other condition. In the official server, this is used to respawn new characters on the noob island until they reach a certain level.
47
+ alternate_spawn_map (int): (Value range is 0-64008.)
48
+ alternate_spawn_x (int): (Value range is 0-252.)
49
+ alternate_spawn_y (int): (Value range is 0-252.)
50
+ questions (Iterable[InnQuestionRecord]): (Length must be `3`.)
51
+ """
52
+ self._behavior_id = behavior_id
53
+ self._name = name
54
+ self._name_length = len(self._name)
55
+ self._spawn_map = spawn_map
56
+ self._spawn_x = spawn_x
57
+ self._spawn_y = spawn_y
58
+ self._sleep_map = sleep_map
59
+ self._sleep_x = sleep_x
60
+ self._sleep_y = sleep_y
61
+ self._alternate_spawn_enabled = alternate_spawn_enabled
62
+ self._alternate_spawn_map = alternate_spawn_map
63
+ self._alternate_spawn_x = alternate_spawn_x
64
+ self._alternate_spawn_y = alternate_spawn_y
65
+ self._questions = tuple(questions)
66
+
67
+ @property
68
+ def byte_size(self) -> int:
69
+ """
70
+ Returns the size of the data that this was deserialized from.
71
+
72
+ Returns:
73
+ int: The size of the data that this was deserialized from.
74
+ """
75
+ return self._byte_size
76
+
77
+ @property
78
+ def behavior_id(self) -> int:
79
+ """
80
+ Behavior ID of the NPC that runs the inn. 0 for default inn
81
+ """
82
+ return self._behavior_id
83
+
84
+ @property
85
+ def name(self) -> str:
86
+ return self._name
87
+
88
+ @property
89
+ def spawn_map(self) -> int:
90
+ """
91
+ ID of the map the player is sent to after respawning
92
+ """
93
+ return self._spawn_map
94
+
95
+ @property
96
+ def spawn_x(self) -> int:
97
+ """
98
+ X coordinate of the map the player is sent to after respawning
99
+ """
100
+ return self._spawn_x
101
+
102
+ @property
103
+ def spawn_y(self) -> int:
104
+ """
105
+ Y coordinate of the map the player is sent to after respawning
106
+ """
107
+ return self._spawn_y
108
+
109
+ @property
110
+ def sleep_map(self) -> int:
111
+ """
112
+ ID of the map the player is sent to after sleeping at the inn
113
+ """
114
+ return self._sleep_map
115
+
116
+ @property
117
+ def sleep_x(self) -> int:
118
+ """
119
+ X coordinate of the map the player is sent to after sleeping at the inn
120
+ """
121
+ return self._sleep_x
122
+
123
+ @property
124
+ def sleep_y(self) -> int:
125
+ """
126
+ Y coordinate of the map the player is sent to after sleeping at the inn
127
+ """
128
+ return self._sleep_y
129
+
130
+ @property
131
+ def alternate_spawn_enabled(self) -> bool:
132
+ """
133
+ Flag for an alternate spawn point. If true, the server will use this alternate spawn
134
+ map, x, and, y based on some other condition.
135
+
136
+ In the official server, this is used to respawn new characters on the noob island
137
+ until they reach a certain level.
138
+ """
139
+ return self._alternate_spawn_enabled
140
+
141
+ @property
142
+ def alternate_spawn_map(self) -> int:
143
+ return self._alternate_spawn_map
144
+
145
+ @property
146
+ def alternate_spawn_x(self) -> int:
147
+ return self._alternate_spawn_x
148
+
149
+ @property
150
+ def alternate_spawn_y(self) -> int:
151
+ return self._alternate_spawn_y
152
+
153
+ @property
154
+ def questions(self) -> tuple[InnQuestionRecord, ...]:
155
+ return self._questions
156
+
157
+ @staticmethod
158
+ def serialize(writer: EoWriter, data: "InnRecord") -> None:
159
+ """
160
+ Serializes an instance of `InnRecord` to the provided `EoWriter`.
161
+
162
+ Args:
163
+ writer (EoWriter): The writer that the data will be serialized to.
164
+ data (InnRecord): The data to serialize.
165
+ """
166
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
167
+ try:
168
+ if data._behavior_id is None:
169
+ raise SerializationError("behavior_id must be provided.")
170
+ writer.add_short(data._behavior_id)
171
+ if data._name_length is None:
172
+ raise SerializationError("name_length must be provided.")
173
+ writer.add_char(data._name_length)
174
+ if data._name is None:
175
+ raise SerializationError("name must be provided.")
176
+ if len(data._name) > 252:
177
+ raise SerializationError(f"Expected length of name to be 252 or less, got {len(data._name)}.")
178
+ writer.add_fixed_string(data._name, data._name_length, False)
179
+ if data._spawn_map is None:
180
+ raise SerializationError("spawn_map must be provided.")
181
+ writer.add_short(data._spawn_map)
182
+ if data._spawn_x is None:
183
+ raise SerializationError("spawn_x must be provided.")
184
+ writer.add_char(data._spawn_x)
185
+ if data._spawn_y is None:
186
+ raise SerializationError("spawn_y must be provided.")
187
+ writer.add_char(data._spawn_y)
188
+ if data._sleep_map is None:
189
+ raise SerializationError("sleep_map must be provided.")
190
+ writer.add_short(data._sleep_map)
191
+ if data._sleep_x is None:
192
+ raise SerializationError("sleep_x must be provided.")
193
+ writer.add_char(data._sleep_x)
194
+ if data._sleep_y is None:
195
+ raise SerializationError("sleep_y must be provided.")
196
+ writer.add_char(data._sleep_y)
197
+ if data._alternate_spawn_enabled is None:
198
+ raise SerializationError("alternate_spawn_enabled must be provided.")
199
+ writer.add_char(1 if data._alternate_spawn_enabled else 0)
200
+ if data._alternate_spawn_map is None:
201
+ raise SerializationError("alternate_spawn_map must be provided.")
202
+ writer.add_short(data._alternate_spawn_map)
203
+ if data._alternate_spawn_x is None:
204
+ raise SerializationError("alternate_spawn_x must be provided.")
205
+ writer.add_char(data._alternate_spawn_x)
206
+ if data._alternate_spawn_y is None:
207
+ raise SerializationError("alternate_spawn_y must be provided.")
208
+ writer.add_char(data._alternate_spawn_y)
209
+ if data._questions is None:
210
+ raise SerializationError("questions must be provided.")
211
+ if len(data._questions) != 3:
212
+ raise SerializationError(f"Expected length of questions to be exactly 3, got {len(data._questions)}.")
213
+ for i in range(3):
214
+ InnQuestionRecord.serialize(writer, data._questions[i])
215
+ finally:
216
+ writer.string_sanitization_mode = old_string_sanitization_mode
217
+
218
+ @staticmethod
219
+ def deserialize(reader: EoReader) -> "InnRecord":
220
+ """
221
+ Deserializes an instance of `InnRecord` from the provided `EoReader`.
222
+
223
+ Args:
224
+ reader (EoReader): The writer that the data will be serialized to.
225
+
226
+ Returns:
227
+ InnRecord: The data to serialize.
228
+ """
229
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
230
+ try:
231
+ reader_start_position: int = reader.position
232
+ behavior_id = reader.get_short()
233
+ name_length = reader.get_char()
234
+ name = reader.get_fixed_string(name_length, False)
235
+ spawn_map = reader.get_short()
236
+ spawn_x = reader.get_char()
237
+ spawn_y = reader.get_char()
238
+ sleep_map = reader.get_short()
239
+ sleep_x = reader.get_char()
240
+ sleep_y = reader.get_char()
241
+ alternate_spawn_enabled = reader.get_char() != 0
242
+ alternate_spawn_map = reader.get_short()
243
+ alternate_spawn_x = reader.get_char()
244
+ alternate_spawn_y = reader.get_char()
245
+ questions = []
246
+ for i in range(3):
247
+ questions.append(InnQuestionRecord.deserialize(reader))
248
+ result = InnRecord(behavior_id=behavior_id, name=name, spawn_map=spawn_map, spawn_x=spawn_x, spawn_y=spawn_y, sleep_map=sleep_map, sleep_x=sleep_x, sleep_y=sleep_y, alternate_spawn_enabled=alternate_spawn_enabled, alternate_spawn_map=alternate_spawn_map, alternate_spawn_x=alternate_spawn_x, alternate_spawn_y=alternate_spawn_y, questions=questions)
249
+ result._byte_size = reader.position - reader_start_position
250
+ return result
251
+ finally:
252
+ reader.chunked_reading_mode = old_chunked_reading_mode
253
+
254
+ def __repr__(self):
255
+ return f"InnRecord(byte_size={repr(self._byte_size)}, behavior_id={repr(self._behavior_id)}, name={repr(self._name)}, spawn_map={repr(self._spawn_map)}, spawn_x={repr(self._spawn_x)}, spawn_y={repr(self._spawn_y)}, sleep_map={repr(self._sleep_map)}, sleep_x={repr(self._sleep_x)}, sleep_y={repr(self._sleep_y)}, alternate_spawn_enabled={repr(self._alternate_spawn_enabled)}, alternate_spawn_map={repr(self._alternate_spawn_map)}, alternate_spawn_x={repr(self._alternate_spawn_x)}, alternate_spawn_y={repr(self._alternate_spawn_y)}, questions={repr(self._questions)})"
@@ -0,0 +1,93 @@
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 ShopCraftIngredientRecord:
11
+ """
12
+ Record of an ingredient for crafting an item in a shop
13
+ """
14
+ _byte_size: int = 0
15
+ _item_id: int
16
+ _amount: int
17
+
18
+ def __init__(self, *, item_id: int, amount: int):
19
+ """
20
+ Create a new instance of ShopCraftIngredientRecord.
21
+
22
+ Args:
23
+ item_id (int): Item ID of the craft ingredient, or 0 if the ingredient is not present (Value range is 0-64008.)
24
+ amount (int): (Value range is 0-252.)
25
+ """
26
+ self._item_id = item_id
27
+ self._amount = amount
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 item_id(self) -> int:
41
+ """
42
+ Item ID of the craft ingredient, or 0 if the ingredient is not present
43
+ """
44
+ return self._item_id
45
+
46
+ @property
47
+ def amount(self) -> int:
48
+ return self._amount
49
+
50
+ @staticmethod
51
+ def serialize(writer: EoWriter, data: "ShopCraftIngredientRecord") -> None:
52
+ """
53
+ Serializes an instance of `ShopCraftIngredientRecord` to the provided `EoWriter`.
54
+
55
+ Args:
56
+ writer (EoWriter): The writer that the data will be serialized to.
57
+ data (ShopCraftIngredientRecord): The data to serialize.
58
+ """
59
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
60
+ try:
61
+ if data._item_id is None:
62
+ raise SerializationError("item_id must be provided.")
63
+ writer.add_short(data._item_id)
64
+ if data._amount is None:
65
+ raise SerializationError("amount must be provided.")
66
+ writer.add_char(data._amount)
67
+ finally:
68
+ writer.string_sanitization_mode = old_string_sanitization_mode
69
+
70
+ @staticmethod
71
+ def deserialize(reader: EoReader) -> "ShopCraftIngredientRecord":
72
+ """
73
+ Deserializes an instance of `ShopCraftIngredientRecord` from the provided `EoReader`.
74
+
75
+ Args:
76
+ reader (EoReader): The writer that the data will be serialized to.
77
+
78
+ Returns:
79
+ ShopCraftIngredientRecord: The data to serialize.
80
+ """
81
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
82
+ try:
83
+ reader_start_position: int = reader.position
84
+ item_id = reader.get_short()
85
+ amount = reader.get_char()
86
+ result = ShopCraftIngredientRecord(item_id=item_id, amount=amount)
87
+ result._byte_size = reader.position - reader_start_position
88
+ return result
89
+ finally:
90
+ reader.chunked_reading_mode = old_chunked_reading_mode
91
+
92
+ def __repr__(self):
93
+ return f"ShopCraftIngredientRecord(byte_size={repr(self._byte_size)}, item_id={repr(self._item_id)}, amount={repr(self._amount)})"
@@ -0,0 +1,98 @@
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 collections.abc import Iterable
8
+ from .shop_craft_ingredient_record import ShopCraftIngredientRecord
9
+ from ....serialization_error import SerializationError
10
+ from .....data.eo_writer import EoWriter
11
+ from .....data.eo_reader import EoReader
12
+
13
+ class ShopCraftRecord:
14
+ """
15
+ Record of an item that can be crafted in a shop
16
+ """
17
+ _byte_size: int = 0
18
+ _item_id: int
19
+ _ingredients: tuple[ShopCraftIngredientRecord, ...]
20
+
21
+ def __init__(self, *, item_id: int, ingredients: Iterable[ShopCraftIngredientRecord]):
22
+ """
23
+ Create a new instance of ShopCraftRecord.
24
+
25
+ Args:
26
+ item_id (int): (Value range is 0-64008.)
27
+ ingredients (Iterable[ShopCraftIngredientRecord]): (Length must be `4`.)
28
+ """
29
+ self._item_id = item_id
30
+ self._ingredients = tuple(ingredients)
31
+
32
+ @property
33
+ def byte_size(self) -> int:
34
+ """
35
+ Returns the size of the data that this was deserialized from.
36
+
37
+ Returns:
38
+ int: The size of the data that this was deserialized from.
39
+ """
40
+ return self._byte_size
41
+
42
+ @property
43
+ def item_id(self) -> int:
44
+ return self._item_id
45
+
46
+ @property
47
+ def ingredients(self) -> tuple[ShopCraftIngredientRecord, ...]:
48
+ return self._ingredients
49
+
50
+ @staticmethod
51
+ def serialize(writer: EoWriter, data: "ShopCraftRecord") -> None:
52
+ """
53
+ Serializes an instance of `ShopCraftRecord` to the provided `EoWriter`.
54
+
55
+ Args:
56
+ writer (EoWriter): The writer that the data will be serialized to.
57
+ data (ShopCraftRecord): The data to serialize.
58
+ """
59
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
60
+ try:
61
+ if data._item_id is None:
62
+ raise SerializationError("item_id must be provided.")
63
+ writer.add_short(data._item_id)
64
+ if data._ingredients is None:
65
+ raise SerializationError("ingredients must be provided.")
66
+ if len(data._ingredients) != 4:
67
+ raise SerializationError(f"Expected length of ingredients to be exactly 4, got {len(data._ingredients)}.")
68
+ for i in range(4):
69
+ ShopCraftIngredientRecord.serialize(writer, data._ingredients[i])
70
+ finally:
71
+ writer.string_sanitization_mode = old_string_sanitization_mode
72
+
73
+ @staticmethod
74
+ def deserialize(reader: EoReader) -> "ShopCraftRecord":
75
+ """
76
+ Deserializes an instance of `ShopCraftRecord` from the provided `EoReader`.
77
+
78
+ Args:
79
+ reader (EoReader): The writer that the data will be serialized to.
80
+
81
+ Returns:
82
+ ShopCraftRecord: The data to serialize.
83
+ """
84
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
85
+ try:
86
+ reader_start_position: int = reader.position
87
+ item_id = reader.get_short()
88
+ ingredients = []
89
+ for i in range(4):
90
+ ingredients.append(ShopCraftIngredientRecord.deserialize(reader))
91
+ result = ShopCraftRecord(item_id=item_id, ingredients=ingredients)
92
+ result._byte_size = reader.position - reader_start_position
93
+ return result
94
+ finally:
95
+ reader.chunked_reading_mode = old_chunked_reading_mode
96
+
97
+ def __repr__(self):
98
+ return f"ShopCraftRecord(byte_size={repr(self._byte_size)}, item_id={repr(self._item_id)}, ingredients={repr(self._ingredients)})"
@@ -0,0 +1,87 @@
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 collections.abc import Iterable
8
+ from .shop_record import ShopRecord
9
+ from ....serialization_error import SerializationError
10
+ from .....data.eo_writer import EoWriter
11
+ from .....data.eo_reader import EoReader
12
+
13
+ class ShopFile:
14
+ """
15
+ Endless Shop File
16
+ """
17
+ _byte_size: int = 0
18
+ _shops: tuple[ShopRecord, ...]
19
+
20
+ def __init__(self, *, shops: Iterable[ShopRecord]):
21
+ """
22
+ Create a new instance of ShopFile.
23
+
24
+ Args:
25
+ shops (Iterable[ShopRecord]):
26
+ """
27
+ self._shops = tuple(shops)
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 shops(self) -> tuple[ShopRecord, ...]:
41
+ return self._shops
42
+
43
+ @staticmethod
44
+ def serialize(writer: EoWriter, data: "ShopFile") -> None:
45
+ """
46
+ Serializes an instance of `ShopFile` to the provided `EoWriter`.
47
+
48
+ Args:
49
+ writer (EoWriter): The writer that the data will be serialized to.
50
+ data (ShopFile): The data to serialize.
51
+ """
52
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
53
+ try:
54
+ writer.add_fixed_string("ESF", 3, False)
55
+ if data._shops is None:
56
+ raise SerializationError("shops must be provided.")
57
+ for i in range(len(data._shops)):
58
+ ShopRecord.serialize(writer, data._shops[i])
59
+ finally:
60
+ writer.string_sanitization_mode = old_string_sanitization_mode
61
+
62
+ @staticmethod
63
+ def deserialize(reader: EoReader) -> "ShopFile":
64
+ """
65
+ Deserializes an instance of `ShopFile` from the provided `EoReader`.
66
+
67
+ Args:
68
+ reader (EoReader): The writer that the data will be serialized to.
69
+
70
+ Returns:
71
+ ShopFile: The data to serialize.
72
+ """
73
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
74
+ try:
75
+ reader_start_position: int = reader.position
76
+ reader.get_fixed_string(3, False)
77
+ shops = []
78
+ while reader.remaining > 0:
79
+ shops.append(ShopRecord.deserialize(reader))
80
+ result = ShopFile(shops=shops)
81
+ result._byte_size = reader.position - reader_start_position
82
+ return result
83
+ finally:
84
+ reader.chunked_reading_mode = old_chunked_reading_mode
85
+
86
+ def __repr__(self):
87
+ return f"ShopFile(byte_size={repr(self._byte_size)}, shops={repr(self._shops)})"