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,30 @@
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
+ """
7
+ Data structures generated from the [eo-protocol](https://github.com/cirras/eo-protocol/tree/master/xml/pub/server/protocol.xml){target="_blank"} XML specification.
8
+
9
+ Warning:
10
+ - This subpackage should not be directly imported.
11
+ - Instead, import [eolib.protocol.pub.server][] (or the top-level `eolib`).
12
+ """
13
+
14
+ from .talk_record import *
15
+ from .talk_message_record import *
16
+ from .talk_file import *
17
+ from .skill_master_skill_record import *
18
+ from .skill_master_record import *
19
+ from .skill_master_file import *
20
+ from .shop_trade_record import *
21
+ from .shop_record import *
22
+ from .shop_file import *
23
+ from .shop_craft_record import *
24
+ from .shop_craft_ingredient_record import *
25
+ from .inn_record import *
26
+ from .inn_question_record import *
27
+ from .inn_file import *
28
+ from .drop_record import *
29
+ from .drop_npc_record import *
30
+ from .drop_file import *
@@ -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 .drop_npc_record import DropNpcRecord
9
+ from ....serialization_error import SerializationError
10
+ from .....data.eo_writer import EoWriter
11
+ from .....data.eo_reader import EoReader
12
+
13
+ class DropFile:
14
+ """
15
+ Endless Drop File
16
+ """
17
+ _byte_size: int = 0
18
+ _npcs: tuple[DropNpcRecord, ...]
19
+
20
+ def __init__(self, *, npcs: Iterable[DropNpcRecord]):
21
+ """
22
+ Create a new instance of DropFile.
23
+
24
+ Args:
25
+ npcs (Iterable[DropNpcRecord]):
26
+ """
27
+ self._npcs = tuple(npcs)
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 npcs(self) -> tuple[DropNpcRecord, ...]:
41
+ return self._npcs
42
+
43
+ @staticmethod
44
+ def serialize(writer: EoWriter, data: "DropFile") -> None:
45
+ """
46
+ Serializes an instance of `DropFile` to the provided `EoWriter`.
47
+
48
+ Args:
49
+ writer (EoWriter): The writer that the data will be serialized to.
50
+ data (DropFile): The data to serialize.
51
+ """
52
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
53
+ try:
54
+ writer.add_fixed_string("EDF", 3, False)
55
+ if data._npcs is None:
56
+ raise SerializationError("npcs must be provided.")
57
+ for i in range(len(data._npcs)):
58
+ DropNpcRecord.serialize(writer, data._npcs[i])
59
+ finally:
60
+ writer.string_sanitization_mode = old_string_sanitization_mode
61
+
62
+ @staticmethod
63
+ def deserialize(reader: EoReader) -> "DropFile":
64
+ """
65
+ Deserializes an instance of `DropFile` from the provided `EoReader`.
66
+
67
+ Args:
68
+ reader (EoReader): The writer that the data will be serialized to.
69
+
70
+ Returns:
71
+ DropFile: 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
+ npcs = []
78
+ while reader.remaining > 0:
79
+ npcs.append(DropNpcRecord.deserialize(reader))
80
+ result = DropFile(npcs=npcs)
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"DropFile(byte_size={repr(self._byte_size)}, npcs={repr(self._npcs)})"
@@ -0,0 +1,104 @@
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 .drop_record import DropRecord
9
+ from ....serialization_error import SerializationError
10
+ from .....data.eo_writer import EoWriter
11
+ from .....data.eo_reader import EoReader
12
+
13
+ class DropNpcRecord:
14
+ """
15
+ Record of potential drops from an NPC
16
+ """
17
+ _byte_size: int = 0
18
+ _npc_id: int
19
+ _drops_count: int
20
+ _drops: tuple[DropRecord, ...]
21
+
22
+ def __init__(self, *, npc_id: int, drops: Iterable[DropRecord]):
23
+ """
24
+ Create a new instance of DropNpcRecord.
25
+
26
+ Args:
27
+ npc_id (int): (Value range is 0-64008.)
28
+ drops (Iterable[DropRecord]): (Length must be 64008 or less.)
29
+ """
30
+ self._npc_id = npc_id
31
+ self._drops = tuple(drops)
32
+ self._drops_count = len(self._drops)
33
+
34
+ @property
35
+ def byte_size(self) -> int:
36
+ """
37
+ Returns the size of the data that this was deserialized from.
38
+
39
+ Returns:
40
+ int: The size of the data that this was deserialized from.
41
+ """
42
+ return self._byte_size
43
+
44
+ @property
45
+ def npc_id(self) -> int:
46
+ return self._npc_id
47
+
48
+ @property
49
+ def drops(self) -> tuple[DropRecord, ...]:
50
+ return self._drops
51
+
52
+ @staticmethod
53
+ def serialize(writer: EoWriter, data: "DropNpcRecord") -> None:
54
+ """
55
+ Serializes an instance of `DropNpcRecord` to the provided `EoWriter`.
56
+
57
+ Args:
58
+ writer (EoWriter): The writer that the data will be serialized to.
59
+ data (DropNpcRecord): The data to serialize.
60
+ """
61
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
62
+ try:
63
+ if data._npc_id is None:
64
+ raise SerializationError("npc_id must be provided.")
65
+ writer.add_short(data._npc_id)
66
+ if data._drops_count is None:
67
+ raise SerializationError("drops_count must be provided.")
68
+ writer.add_short(data._drops_count)
69
+ if data._drops is None:
70
+ raise SerializationError("drops must be provided.")
71
+ if len(data._drops) > 64008:
72
+ raise SerializationError(f"Expected length of drops to be 64008 or less, got {len(data._drops)}.")
73
+ for i in range(data._drops_count):
74
+ DropRecord.serialize(writer, data._drops[i])
75
+ finally:
76
+ writer.string_sanitization_mode = old_string_sanitization_mode
77
+
78
+ @staticmethod
79
+ def deserialize(reader: EoReader) -> "DropNpcRecord":
80
+ """
81
+ Deserializes an instance of `DropNpcRecord` from the provided `EoReader`.
82
+
83
+ Args:
84
+ reader (EoReader): The writer that the data will be serialized to.
85
+
86
+ Returns:
87
+ DropNpcRecord: The data to serialize.
88
+ """
89
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
90
+ try:
91
+ reader_start_position: int = reader.position
92
+ npc_id = reader.get_short()
93
+ drops_count = reader.get_short()
94
+ drops = []
95
+ for i in range(drops_count):
96
+ drops.append(DropRecord.deserialize(reader))
97
+ result = DropNpcRecord(npc_id=npc_id, drops=drops)
98
+ result._byte_size = reader.position - reader_start_position
99
+ return result
100
+ finally:
101
+ reader.chunked_reading_mode = old_chunked_reading_mode
102
+
103
+ def __repr__(self):
104
+ return f"DropNpcRecord(byte_size={repr(self._byte_size)}, npc_id={repr(self._npc_id)}, drops={repr(self._drops)})"
@@ -0,0 +1,115 @@
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 DropRecord:
11
+ """
12
+ Record of an item an NPC can drop when killed
13
+ """
14
+ _byte_size: int = 0
15
+ _item_id: int
16
+ _min_amount: int
17
+ _max_amount: int
18
+ _rate: int
19
+
20
+ def __init__(self, *, item_id: int, min_amount: int, max_amount: int, rate: int):
21
+ """
22
+ Create a new instance of DropRecord.
23
+
24
+ Args:
25
+ item_id (int): (Value range is 0-64008.)
26
+ min_amount (int): (Value range is 0-16194276.)
27
+ max_amount (int): (Value range is 0-16194276.)
28
+ rate (int): Chance (x in 64,000) of the item being dropped (Value range is 0-64008.)
29
+ """
30
+ self._item_id = item_id
31
+ self._min_amount = min_amount
32
+ self._max_amount = max_amount
33
+ self._rate = rate
34
+
35
+ @property
36
+ def byte_size(self) -> int:
37
+ """
38
+ Returns the size of the data that this was deserialized from.
39
+
40
+ Returns:
41
+ int: The size of the data that this was deserialized from.
42
+ """
43
+ return self._byte_size
44
+
45
+ @property
46
+ def item_id(self) -> int:
47
+ return self._item_id
48
+
49
+ @property
50
+ def min_amount(self) -> int:
51
+ return self._min_amount
52
+
53
+ @property
54
+ def max_amount(self) -> int:
55
+ return self._max_amount
56
+
57
+ @property
58
+ def rate(self) -> int:
59
+ """
60
+ Chance (x in 64,000) of the item being dropped
61
+ """
62
+ return self._rate
63
+
64
+ @staticmethod
65
+ def serialize(writer: EoWriter, data: "DropRecord") -> None:
66
+ """
67
+ Serializes an instance of `DropRecord` to the provided `EoWriter`.
68
+
69
+ Args:
70
+ writer (EoWriter): The writer that the data will be serialized to.
71
+ data (DropRecord): The data to serialize.
72
+ """
73
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
74
+ try:
75
+ if data._item_id is None:
76
+ raise SerializationError("item_id must be provided.")
77
+ writer.add_short(data._item_id)
78
+ if data._min_amount is None:
79
+ raise SerializationError("min_amount must be provided.")
80
+ writer.add_three(data._min_amount)
81
+ if data._max_amount is None:
82
+ raise SerializationError("max_amount must be provided.")
83
+ writer.add_three(data._max_amount)
84
+ if data._rate is None:
85
+ raise SerializationError("rate must be provided.")
86
+ writer.add_short(data._rate)
87
+ finally:
88
+ writer.string_sanitization_mode = old_string_sanitization_mode
89
+
90
+ @staticmethod
91
+ def deserialize(reader: EoReader) -> "DropRecord":
92
+ """
93
+ Deserializes an instance of `DropRecord` from the provided `EoReader`.
94
+
95
+ Args:
96
+ reader (EoReader): The writer that the data will be serialized to.
97
+
98
+ Returns:
99
+ DropRecord: The data to serialize.
100
+ """
101
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
102
+ try:
103
+ reader_start_position: int = reader.position
104
+ item_id = reader.get_short()
105
+ min_amount = reader.get_three()
106
+ max_amount = reader.get_three()
107
+ rate = reader.get_short()
108
+ result = DropRecord(item_id=item_id, min_amount=min_amount, max_amount=max_amount, rate=rate)
109
+ result._byte_size = reader.position - reader_start_position
110
+ return result
111
+ finally:
112
+ reader.chunked_reading_mode = old_chunked_reading_mode
113
+
114
+ def __repr__(self):
115
+ return f"DropRecord(byte_size={repr(self._byte_size)}, item_id={repr(self._item_id)}, min_amount={repr(self._min_amount)}, max_amount={repr(self._max_amount)}, rate={repr(self._rate)})"
@@ -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 .inn_record import InnRecord
9
+ from ....serialization_error import SerializationError
10
+ from .....data.eo_writer import EoWriter
11
+ from .....data.eo_reader import EoReader
12
+
13
+ class InnFile:
14
+ """
15
+ Endless Inn File
16
+ """
17
+ _byte_size: int = 0
18
+ _inns: tuple[InnRecord, ...]
19
+
20
+ def __init__(self, *, inns: Iterable[InnRecord]):
21
+ """
22
+ Create a new instance of InnFile.
23
+
24
+ Args:
25
+ inns (Iterable[InnRecord]):
26
+ """
27
+ self._inns = tuple(inns)
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 inns(self) -> tuple[InnRecord, ...]:
41
+ return self._inns
42
+
43
+ @staticmethod
44
+ def serialize(writer: EoWriter, data: "InnFile") -> None:
45
+ """
46
+ Serializes an instance of `InnFile` to the provided `EoWriter`.
47
+
48
+ Args:
49
+ writer (EoWriter): The writer that the data will be serialized to.
50
+ data (InnFile): The data to serialize.
51
+ """
52
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
53
+ try:
54
+ writer.add_fixed_string("EID", 3, False)
55
+ if data._inns is None:
56
+ raise SerializationError("inns must be provided.")
57
+ for i in range(len(data._inns)):
58
+ InnRecord.serialize(writer, data._inns[i])
59
+ finally:
60
+ writer.string_sanitization_mode = old_string_sanitization_mode
61
+
62
+ @staticmethod
63
+ def deserialize(reader: EoReader) -> "InnFile":
64
+ """
65
+ Deserializes an instance of `InnFile` from the provided `EoReader`.
66
+
67
+ Args:
68
+ reader (EoReader): The writer that the data will be serialized to.
69
+
70
+ Returns:
71
+ InnFile: 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
+ inns = []
78
+ while reader.remaining > 0:
79
+ inns.append(InnRecord.deserialize(reader))
80
+ result = InnFile(inns=inns)
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"InnFile(byte_size={repr(self._byte_size)}, inns={repr(self._inns)})"
@@ -0,0 +1,106 @@
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 InnQuestionRecord:
11
+ """
12
+ Record of a question and answer that the player must answer to register citizenship with an inn
13
+ """
14
+ _byte_size: int = 0
15
+ _question_length: int
16
+ _question: str
17
+ _answer_length: int
18
+ _answer: str
19
+
20
+ def __init__(self, *, question: str, answer: str):
21
+ """
22
+ Create a new instance of InnQuestionRecord.
23
+
24
+ Args:
25
+ question (str): (Length must be 252 or less.)
26
+ answer (str): (Length must be 252 or less.)
27
+ """
28
+ self._question = question
29
+ self._question_length = len(self._question)
30
+ self._answer = answer
31
+ self._answer_length = len(self._answer)
32
+
33
+ @property
34
+ def byte_size(self) -> int:
35
+ """
36
+ Returns the size of the data that this was deserialized from.
37
+
38
+ Returns:
39
+ int: The size of the data that this was deserialized from.
40
+ """
41
+ return self._byte_size
42
+
43
+ @property
44
+ def question(self) -> str:
45
+ return self._question
46
+
47
+ @property
48
+ def answer(self) -> str:
49
+ return self._answer
50
+
51
+ @staticmethod
52
+ def serialize(writer: EoWriter, data: "InnQuestionRecord") -> None:
53
+ """
54
+ Serializes an instance of `InnQuestionRecord` to the provided `EoWriter`.
55
+
56
+ Args:
57
+ writer (EoWriter): The writer that the data will be serialized to.
58
+ data (InnQuestionRecord): The data to serialize.
59
+ """
60
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
61
+ try:
62
+ if data._question_length is None:
63
+ raise SerializationError("question_length must be provided.")
64
+ writer.add_char(data._question_length)
65
+ if data._question is None:
66
+ raise SerializationError("question must be provided.")
67
+ if len(data._question) > 252:
68
+ raise SerializationError(f"Expected length of question to be 252 or less, got {len(data._question)}.")
69
+ writer.add_fixed_string(data._question, data._question_length, False)
70
+ if data._answer_length is None:
71
+ raise SerializationError("answer_length must be provided.")
72
+ writer.add_char(data._answer_length)
73
+ if data._answer is None:
74
+ raise SerializationError("answer must be provided.")
75
+ if len(data._answer) > 252:
76
+ raise SerializationError(f"Expected length of answer to be 252 or less, got {len(data._answer)}.")
77
+ writer.add_fixed_string(data._answer, data._answer_length, False)
78
+ finally:
79
+ writer.string_sanitization_mode = old_string_sanitization_mode
80
+
81
+ @staticmethod
82
+ def deserialize(reader: EoReader) -> "InnQuestionRecord":
83
+ """
84
+ Deserializes an instance of `InnQuestionRecord` from the provided `EoReader`.
85
+
86
+ Args:
87
+ reader (EoReader): The writer that the data will be serialized to.
88
+
89
+ Returns:
90
+ InnQuestionRecord: The data to serialize.
91
+ """
92
+ old_chunked_reading_mode: bool = reader.chunked_reading_mode
93
+ try:
94
+ reader_start_position: int = reader.position
95
+ question_length = reader.get_char()
96
+ question = reader.get_fixed_string(question_length, False)
97
+ answer_length = reader.get_char()
98
+ answer = reader.get_fixed_string(answer_length, False)
99
+ result = InnQuestionRecord(question=question, answer=answer)
100
+ result._byte_size = reader.position - reader_start_position
101
+ return result
102
+ finally:
103
+ reader.chunked_reading_mode = old_chunked_reading_mode
104
+
105
+ def __repr__(self):
106
+ return f"InnQuestionRecord(byte_size={repr(self._byte_size)}, question={repr(self._question)}, answer={repr(self._answer)})"