eolib 1.1.1__py3-none-any.whl → 1.2.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. eolib/__about__.py +1 -1
  2. eolib/protocol/_generated/coords.py +10 -6
  3. eolib/protocol/_generated/emote.py +1 -1
  4. eolib/protocol/_generated/map/emf.py +113 -109
  5. eolib/protocol/_generated/map/map_graphic_layer.py +13 -9
  6. eolib/protocol/_generated/map/map_graphic_row.py +16 -12
  7. eolib/protocol/_generated/map/map_graphic_row_tile.py +10 -6
  8. eolib/protocol/_generated/map/map_item.py +22 -18
  9. eolib/protocol/_generated/map/map_legacy_door_key.py +10 -6
  10. eolib/protocol/_generated/map/map_npc.py +19 -15
  11. eolib/protocol/_generated/map/map_sign.py +18 -14
  12. eolib/protocol/_generated/map/map_tile_spec_row.py +16 -12
  13. eolib/protocol/_generated/map/map_tile_spec_row_tile.py +10 -6
  14. eolib/protocol/_generated/map/map_warp.py +16 -12
  15. eolib/protocol/_generated/map/map_warp_row.py +16 -12
  16. eolib/protocol/_generated/map/map_warp_row_tile.py +10 -6
  17. eolib/protocol/_generated/net/char_item.py +10 -6
  18. eolib/protocol/_generated/net/client/account_agree_client_packet.py +18 -12
  19. eolib/protocol/_generated/net/client/account_create_client_packet.py +38 -32
  20. eolib/protocol/_generated/net/client/account_request_client_packet.py +7 -3
  21. eolib/protocol/_generated/net/client/admin_interact_report_client_packet.py +13 -7
  22. eolib/protocol/_generated/net/client/admin_interact_tell_client_packet.py +7 -3
  23. eolib/protocol/_generated/net/client/attack_use_client_packet.py +10 -6
  24. eolib/protocol/_generated/net/client/bank_add_client_packet.py +10 -6
  25. eolib/protocol/_generated/net/client/bank_open_client_packet.py +7 -3
  26. eolib/protocol/_generated/net/client/bank_take_client_packet.py +10 -6
  27. eolib/protocol/_generated/net/client/barber_buy_client_packet.py +13 -9
  28. eolib/protocol/_generated/net/client/barber_open_client_packet.py +7 -3
  29. eolib/protocol/_generated/net/client/board_create_client_packet.py +18 -12
  30. eolib/protocol/_generated/net/client/board_open_client_packet.py +7 -3
  31. eolib/protocol/_generated/net/client/board_remove_client_packet.py +10 -6
  32. eolib/protocol/_generated/net/client/board_take_client_packet.py +10 -6
  33. eolib/protocol/_generated/net/client/book_request_client_packet.py +8 -4
  34. eolib/protocol/_generated/net/client/byte_coords.py +10 -6
  35. eolib/protocol/_generated/net/client/chair_request_client_packet.py +21 -14
  36. eolib/protocol/_generated/net/client/character_create_client_packet.py +26 -20
  37. eolib/protocol/_generated/net/client/character_remove_client_packet.py +10 -6
  38. eolib/protocol/_generated/net/client/character_request_client_packet.py +8 -2
  39. eolib/protocol/_generated/net/client/character_take_client_packet.py +7 -3
  40. eolib/protocol/_generated/net/client/chest_add_client_packet.py +10 -6
  41. eolib/protocol/_generated/net/client/chest_open_client_packet.py +7 -3
  42. eolib/protocol/_generated/net/client/chest_take_client_packet.py +10 -6
  43. eolib/protocol/_generated/net/client/citizen_accept_client_packet.py +10 -6
  44. eolib/protocol/_generated/net/client/citizen_open_client_packet.py +7 -3
  45. eolib/protocol/_generated/net/client/citizen_remove_client_packet.py +7 -3
  46. eolib/protocol/_generated/net/client/citizen_reply_client_packet.py +22 -16
  47. eolib/protocol/_generated/net/client/citizen_request_client_packet.py +10 -6
  48. eolib/protocol/_generated/net/client/connection_accept_client_packet.py +13 -9
  49. eolib/protocol/_generated/net/client/connection_ping_client_packet.py +5 -4
  50. eolib/protocol/_generated/net/client/door_open_client_packet.py +7 -3
  51. eolib/protocol/_generated/net/client/emote_report_client_packet.py +7 -3
  52. eolib/protocol/_generated/net/client/face_player_client_packet.py +7 -3
  53. eolib/protocol/_generated/net/client/global_close_client_packet.py +5 -4
  54. eolib/protocol/_generated/net/client/global_open_client_packet.py +5 -4
  55. eolib/protocol/_generated/net/client/global_player_client_packet.py +5 -4
  56. eolib/protocol/_generated/net/client/global_remove_client_packet.py +5 -4
  57. eolib/protocol/_generated/net/client/guild_accept_client_packet.py +8 -4
  58. eolib/protocol/_generated/net/client/guild_agree_client_packet.py +41 -30
  59. eolib/protocol/_generated/net/client/guild_buy_client_packet.py +10 -6
  60. eolib/protocol/_generated/net/client/guild_create_client_packet.py +22 -16
  61. eolib/protocol/_generated/net/client/guild_junk_client_packet.py +7 -3
  62. eolib/protocol/_generated/net/client/guild_kick_client_packet.py +10 -6
  63. eolib/protocol/_generated/net/client/guild_open_client_packet.py +7 -3
  64. eolib/protocol/_generated/net/client/guild_player_client_packet.py +18 -12
  65. eolib/protocol/_generated/net/client/guild_rank_client_packet.py +14 -10
  66. eolib/protocol/_generated/net/client/guild_remove_client_packet.py +7 -3
  67. eolib/protocol/_generated/net/client/guild_report_client_packet.py +10 -6
  68. eolib/protocol/_generated/net/client/guild_request_client_packet.py +18 -12
  69. eolib/protocol/_generated/net/client/guild_take_client_packet.py +34 -7
  70. eolib/protocol/_generated/net/client/guild_tell_client_packet.py +10 -6
  71. eolib/protocol/_generated/net/client/guild_use_client_packet.py +7 -3
  72. eolib/protocol/_generated/net/client/init_init_client_packet.py +19 -15
  73. eolib/protocol/_generated/net/client/item_drop_client_packet.py +12 -8
  74. eolib/protocol/_generated/net/client/item_get_client_packet.py +7 -3
  75. eolib/protocol/_generated/net/client/item_junk_client_packet.py +7 -3
  76. eolib/protocol/_generated/net/client/item_use_client_packet.py +7 -3
  77. eolib/protocol/_generated/net/client/jukebox_msg_client_packet.py +13 -7
  78. eolib/protocol/_generated/net/client/jukebox_open_client_packet.py +7 -3
  79. eolib/protocol/_generated/net/client/jukebox_use_client_packet.py +10 -6
  80. eolib/protocol/_generated/net/client/locker_add_client_packet.py +10 -6
  81. eolib/protocol/_generated/net/client/locker_buy_client_packet.py +5 -4
  82. eolib/protocol/_generated/net/client/locker_open_client_packet.py +7 -3
  83. eolib/protocol/_generated/net/client/locker_take_client_packet.py +10 -6
  84. eolib/protocol/_generated/net/client/login_request_client_packet.py +14 -8
  85. eolib/protocol/_generated/net/client/marriage_open_client_packet.py +7 -3
  86. eolib/protocol/_generated/net/client/marriage_request_client_packet.py +16 -10
  87. eolib/protocol/_generated/net/client/message_ping_client_packet.py +5 -4
  88. eolib/protocol/_generated/net/client/npc_range_request_client_packet.py +14 -10
  89. eolib/protocol/_generated/net/client/paperdoll_add_client_packet.py +10 -6
  90. eolib/protocol/_generated/net/client/paperdoll_remove_client_packet.py +10 -6
  91. eolib/protocol/_generated/net/client/paperdoll_request_client_packet.py +8 -4
  92. eolib/protocol/_generated/net/client/party_accept_client_packet.py +10 -6
  93. eolib/protocol/_generated/net/client/party_remove_client_packet.py +7 -3
  94. eolib/protocol/_generated/net/client/party_request_client_packet.py +10 -6
  95. eolib/protocol/_generated/net/client/party_take_client_packet.py +7 -3
  96. eolib/protocol/_generated/net/client/player_range_request_client_packet.py +8 -4
  97. eolib/protocol/_generated/net/client/players_accept_client_packet.py +7 -3
  98. eolib/protocol/_generated/net/client/players_list_client_packet.py +5 -4
  99. eolib/protocol/_generated/net/client/players_request_client_packet.py +5 -4
  100. eolib/protocol/_generated/net/client/priest_accept_client_packet.py +7 -3
  101. eolib/protocol/_generated/net/client/priest_open_client_packet.py +7 -3
  102. eolib/protocol/_generated/net/client/priest_request_client_packet.py +13 -7
  103. eolib/protocol/_generated/net/client/priest_use_client_packet.py +8 -4
  104. eolib/protocol/_generated/net/client/quest_accept_client_packet.py +33 -26
  105. eolib/protocol/_generated/net/client/quest_list_client_packet.py +7 -3
  106. eolib/protocol/_generated/net/client/quest_use_client_packet.py +10 -6
  107. eolib/protocol/_generated/net/client/range_request_client_packet.py +15 -9
  108. eolib/protocol/_generated/net/client/refresh_request_client_packet.py +5 -4
  109. eolib/protocol/_generated/net/client/shop_buy_client_packet.py +10 -6
  110. eolib/protocol/_generated/net/client/shop_create_client_packet.py +10 -6
  111. eolib/protocol/_generated/net/client/shop_open_client_packet.py +7 -3
  112. eolib/protocol/_generated/net/client/shop_sell_client_packet.py +10 -6
  113. eolib/protocol/_generated/net/client/sit_request_client_packet.py +21 -14
  114. eolib/protocol/_generated/net/client/spell_request_client_packet.py +10 -6
  115. eolib/protocol/_generated/net/client/spell_target_group_client_packet.py +10 -6
  116. eolib/protocol/_generated/net/client/spell_target_other_client_packet.py +19 -15
  117. eolib/protocol/_generated/net/client/spell_target_self_client_packet.py +13 -9
  118. eolib/protocol/_generated/net/client/spell_use_client_packet.py +7 -3
  119. eolib/protocol/_generated/net/client/stat_skill_add_client_packet.py +32 -21
  120. eolib/protocol/_generated/net/client/stat_skill_junk_client_packet.py +7 -3
  121. eolib/protocol/_generated/net/client/stat_skill_open_client_packet.py +7 -3
  122. eolib/protocol/_generated/net/client/stat_skill_remove_client_packet.py +10 -6
  123. eolib/protocol/_generated/net/client/stat_skill_take_client_packet.py +10 -6
  124. eolib/protocol/_generated/net/client/talk_admin_client_packet.py +7 -3
  125. eolib/protocol/_generated/net/client/talk_announce_client_packet.py +7 -3
  126. eolib/protocol/_generated/net/client/talk_msg_client_packet.py +7 -3
  127. eolib/protocol/_generated/net/client/talk_open_client_packet.py +7 -3
  128. eolib/protocol/_generated/net/client/talk_player_client_packet.py +7 -3
  129. eolib/protocol/_generated/net/client/talk_report_client_packet.py +7 -3
  130. eolib/protocol/_generated/net/client/talk_request_client_packet.py +7 -3
  131. eolib/protocol/_generated/net/client/talk_tell_client_packet.py +13 -7
  132. eolib/protocol/_generated/net/client/talk_use_client_packet.py +7 -3
  133. eolib/protocol/_generated/net/client/trade_accept_client_packet.py +8 -4
  134. eolib/protocol/_generated/net/client/trade_add_client_packet.py +7 -3
  135. eolib/protocol/_generated/net/client/trade_agree_client_packet.py +7 -3
  136. eolib/protocol/_generated/net/client/trade_close_client_packet.py +5 -4
  137. eolib/protocol/_generated/net/client/trade_remove_client_packet.py +7 -3
  138. eolib/protocol/_generated/net/client/trade_request_client_packet.py +8 -4
  139. eolib/protocol/_generated/net/client/walk_action.py +13 -9
  140. eolib/protocol/_generated/net/client/walk_admin_client_packet.py +7 -3
  141. eolib/protocol/_generated/net/client/walk_player_client_packet.py +7 -3
  142. eolib/protocol/_generated/net/client/walk_spec_client_packet.py +7 -3
  143. eolib/protocol/_generated/net/client/warp_accept_client_packet.py +10 -6
  144. eolib/protocol/_generated/net/client/warp_take_client_packet.py +10 -6
  145. eolib/protocol/_generated/net/client/welcome_agree_client_packet.py +68 -45
  146. eolib/protocol/_generated/net/client/welcome_msg_client_packet.py +10 -6
  147. eolib/protocol/_generated/net/client/welcome_request_client_packet.py +7 -3
  148. eolib/protocol/_generated/net/item.py +10 -6
  149. eolib/protocol/_generated/net/server/account_reply_server_packet.py +88 -57
  150. eolib/protocol/_generated/net/server/admin_interact_agree_server_packet.py +7 -3
  151. eolib/protocol/_generated/net/server/admin_interact_list_server_packet.py +27 -21
  152. eolib/protocol/_generated/net/server/admin_interact_remove_server_packet.py +7 -3
  153. eolib/protocol/_generated/net/server/admin_interact_reply_server_packet.py +49 -36
  154. eolib/protocol/_generated/net/server/admin_interact_tell_server_packet.py +33 -27
  155. eolib/protocol/_generated/net/server/arena_accept_server_packet.py +21 -15
  156. eolib/protocol/_generated/net/server/arena_drop_server_packet.py +6 -5
  157. eolib/protocol/_generated/net/server/arena_spec_server_packet.py +25 -19
  158. eolib/protocol/_generated/net/server/arena_use_server_packet.py +7 -3
  159. eolib/protocol/_generated/net/server/attack_error_server_packet.py +5 -4
  160. eolib/protocol/_generated/net/server/attack_player_server_packet.py +10 -6
  161. eolib/protocol/_generated/net/server/avatar_admin_server_packet.py +36 -32
  162. eolib/protocol/_generated/net/server/avatar_agree_server_packet.py +7 -3
  163. eolib/protocol/_generated/net/server/avatar_change.py +53 -38
  164. eolib/protocol/_generated/net/server/avatar_change_type.py +1 -1
  165. eolib/protocol/_generated/net/server/avatar_remove_server_packet.py +10 -6
  166. eolib/protocol/_generated/net/server/avatar_reply_server_packet.py +22 -18
  167. eolib/protocol/_generated/net/server/bank_open_server_packet.py +13 -9
  168. eolib/protocol/_generated/net/server/bank_reply_server_packet.py +10 -6
  169. eolib/protocol/_generated/net/server/barber_agree_server_packet.py +10 -6
  170. eolib/protocol/_generated/net/server/barber_open_server_packet.py +7 -3
  171. eolib/protocol/_generated/net/server/big_coords.py +10 -6
  172. eolib/protocol/_generated/net/server/board_open_server_packet.py +19 -15
  173. eolib/protocol/_generated/net/server/board_player_server_packet.py +12 -6
  174. eolib/protocol/_generated/net/server/board_post_listing.py +17 -11
  175. eolib/protocol/_generated/net/server/book_reply_server_packet.py +17 -12
  176. eolib/protocol/_generated/net/server/cast_accept_server_packet.py +19 -15
  177. eolib/protocol/_generated/net/server/cast_reply_server_packet.py +28 -24
  178. eolib/protocol/_generated/net/server/cast_spec_server_packet.py +16 -12
  179. eolib/protocol/_generated/net/server/chair_close_server_packet.py +10 -6
  180. eolib/protocol/_generated/net/server/chair_player_server_packet.py +13 -9
  181. eolib/protocol/_generated/net/server/chair_remove_server_packet.py +10 -6
  182. eolib/protocol/_generated/net/server/chair_reply_server_packet.py +13 -9
  183. eolib/protocol/_generated/net/server/character_base_stats.py +22 -18
  184. eolib/protocol/_generated/net/server/character_base_stats_welcome.py +22 -18
  185. eolib/protocol/_generated/net/server/character_details.py +42 -36
  186. eolib/protocol/_generated/net/server/character_elemental_stats.py +22 -18
  187. eolib/protocol/_generated/net/server/character_map_info.py +70 -64
  188. eolib/protocol/_generated/net/server/character_player_server_packet.py +10 -6
  189. eolib/protocol/_generated/net/server/character_reply_server_packet.py +108 -79
  190. eolib/protocol/_generated/net/server/character_secondary_stats.py +19 -15
  191. eolib/protocol/_generated/net/server/character_secondary_stats_info_lookup.py +19 -15
  192. eolib/protocol/_generated/net/server/character_selection_list_entry.py +34 -28
  193. eolib/protocol/_generated/net/server/character_stats_equipment_change.py +16 -12
  194. eolib/protocol/_generated/net/server/character_stats_info_lookup.py +25 -21
  195. eolib/protocol/_generated/net/server/character_stats_reset.py +31 -27
  196. eolib/protocol/_generated/net/server/character_stats_update.py +22 -18
  197. eolib/protocol/_generated/net/server/character_stats_welcome.py +34 -30
  198. eolib/protocol/_generated/net/server/chest_agree_server_packet.py +8 -4
  199. eolib/protocol/_generated/net/server/chest_close_server_packet.py +13 -6
  200. eolib/protocol/_generated/net/server/chest_get_server_packet.py +14 -10
  201. eolib/protocol/_generated/net/server/chest_open_server_packet.py +11 -7
  202. eolib/protocol/_generated/net/server/chest_reply_server_packet.py +17 -13
  203. eolib/protocol/_generated/net/server/chest_spec_server_packet.py +5 -4
  204. eolib/protocol/_generated/net/server/citizen_accept_server_packet.py +7 -3
  205. eolib/protocol/_generated/net/server/citizen_open_server_packet.py +24 -18
  206. eolib/protocol/_generated/net/server/citizen_remove_server_packet.py +7 -3
  207. eolib/protocol/_generated/net/server/citizen_reply_server_packet.py +7 -3
  208. eolib/protocol/_generated/net/server/citizen_request_server_packet.py +7 -3
  209. eolib/protocol/_generated/net/server/connection_player_server_packet.py +10 -6
  210. eolib/protocol/_generated/net/server/dialog_entry.py +24 -17
  211. eolib/protocol/_generated/net/server/dialog_quest_entry.py +10 -6
  212. eolib/protocol/_generated/net/server/door_close_server_packet.py +7 -3
  213. eolib/protocol/_generated/net/server/door_open_server_packet.py +8 -4
  214. eolib/protocol/_generated/net/server/effect_admin_server_packet.py +16 -12
  215. eolib/protocol/_generated/net/server/effect_agree_server_packet.py +10 -6
  216. eolib/protocol/_generated/net/server/effect_player_server_packet.py +10 -6
  217. eolib/protocol/_generated/net/server/effect_report_server_packet.py +5 -4
  218. eolib/protocol/_generated/net/server/effect_spec_server_packet.py +44 -33
  219. eolib/protocol/_generated/net/server/effect_target_other_server_packet.py +17 -13
  220. eolib/protocol/_generated/net/server/effect_use_server_packet.py +21 -14
  221. eolib/protocol/_generated/net/server/emote_player_server_packet.py +10 -6
  222. eolib/protocol/_generated/net/server/equipment_change.py +20 -16
  223. eolib/protocol/_generated/net/server/equipment_character_select.py +19 -15
  224. eolib/protocol/_generated/net/server/equipment_map_info.py +23 -19
  225. eolib/protocol/_generated/net/server/equipment_paperdoll.py +50 -46
  226. eolib/protocol/_generated/net/server/equipment_welcome.py +49 -45
  227. eolib/protocol/_generated/net/server/face_player_server_packet.py +10 -6
  228. eolib/protocol/_generated/net/server/global_backfill_message.py +13 -7
  229. eolib/protocol/_generated/net/server/group_heal_target_player.py +13 -9
  230. eolib/protocol/_generated/net/server/guild_accept_server_packet.py +7 -3
  231. eolib/protocol/_generated/net/server/guild_agree_server_packet.py +22 -16
  232. eolib/protocol/_generated/net/server/guild_buy_server_packet.py +8 -4
  233. eolib/protocol/_generated/net/server/guild_create_server_packet.py +25 -19
  234. eolib/protocol/_generated/net/server/guild_kick_server_packet.py +5 -4
  235. eolib/protocol/_generated/net/server/guild_member.py +17 -11
  236. eolib/protocol/_generated/net/server/guild_open_server_packet.py +7 -3
  237. eolib/protocol/_generated/net/server/guild_rank_server_packet.py +13 -9
  238. eolib/protocol/_generated/net/server/guild_reply_server_packet.py +46 -31
  239. eolib/protocol/_generated/net/server/guild_report_server_packet.py +44 -42
  240. eolib/protocol/_generated/net/server/guild_request_server_packet.py +10 -6
  241. eolib/protocol/_generated/net/server/guild_sell_server_packet.py +7 -3
  242. eolib/protocol/_generated/net/server/guild_staff.py +13 -7
  243. eolib/protocol/_generated/net/server/guild_take_server_packet.py +7 -3
  244. eolib/protocol/_generated/net/server/guild_tell_server_packet.py +17 -13
  245. eolib/protocol/_generated/net/server/init_ban_type.py +1 -1
  246. eolib/protocol/_generated/net/server/init_init_server_packet.py +186 -124
  247. eolib/protocol/_generated/net/server/init_reply.py +3 -0
  248. eolib/protocol/_generated/net/server/item_accept_server_packet.py +7 -3
  249. eolib/protocol/_generated/net/server/item_add_server_packet.py +16 -12
  250. eolib/protocol/_generated/net/server/item_agree_server_packet.py +8 -4
  251. eolib/protocol/_generated/net/server/item_drop_server_packet.py +19 -15
  252. eolib/protocol/_generated/net/server/item_get_server_packet.py +13 -9
  253. eolib/protocol/_generated/net/server/item_junk_server_packet.py +13 -9
  254. eolib/protocol/_generated/net/server/item_kick_server_packet.py +10 -6
  255. eolib/protocol/_generated/net/server/item_map_info.py +16 -12
  256. eolib/protocol/_generated/net/server/item_obtain_server_packet.py +10 -6
  257. eolib/protocol/_generated/net/server/item_remove_server_packet.py +7 -3
  258. eolib/protocol/_generated/net/server/item_reply_server_packet.py +97 -74
  259. eolib/protocol/_generated/net/server/item_spec_server_packet.py +5 -4
  260. eolib/protocol/_generated/net/server/jukebox_agree_server_packet.py +7 -3
  261. eolib/protocol/_generated/net/server/jukebox_msg_server_packet.py +16 -12
  262. eolib/protocol/_generated/net/server/jukebox_open_server_packet.py +10 -6
  263. eolib/protocol/_generated/net/server/jukebox_player_server_packet.py +7 -3
  264. eolib/protocol/_generated/net/server/jukebox_reply_server_packet.py +5 -4
  265. eolib/protocol/_generated/net/server/jukebox_use_server_packet.py +11 -3
  266. eolib/protocol/_generated/net/server/level_up_stats.py +22 -18
  267. eolib/protocol/_generated/net/server/locker_buy_server_packet.py +10 -6
  268. eolib/protocol/_generated/net/server/locker_get_server_packet.py +14 -10
  269. eolib/protocol/_generated/net/server/locker_open_server_packet.py +11 -7
  270. eolib/protocol/_generated/net/server/locker_reply_server_packet.py +14 -10
  271. eolib/protocol/_generated/net/server/locker_spec_server_packet.py +7 -3
  272. eolib/protocol/_generated/net/server/login_reply.py +6 -0
  273. eolib/protocol/_generated/net/server/login_reply_server_packet.py +77 -50
  274. eolib/protocol/_generated/net/server/map_drain_damage_other.py +13 -9
  275. eolib/protocol/_generated/net/server/map_file.py +7 -3
  276. eolib/protocol/_generated/net/server/marriage_open_server_packet.py +7 -3
  277. eolib/protocol/_generated/net/server/marriage_reply_server_packet.py +21 -14
  278. eolib/protocol/_generated/net/server/message_accept_server_packet.py +13 -9
  279. eolib/protocol/_generated/net/server/message_close_server_packet.py +5 -4
  280. eolib/protocol/_generated/net/server/message_open_server_packet.py +7 -3
  281. eolib/protocol/_generated/net/server/message_pong_server_packet.py +5 -4
  282. eolib/protocol/_generated/net/server/music_player_server_packet.py +7 -3
  283. eolib/protocol/_generated/net/server/nearby_info.py +26 -22
  284. eolib/protocol/_generated/net/server/npc_accept_server_packet.py +13 -9
  285. eolib/protocol/_generated/net/server/npc_agree_server_packet.py +16 -12
  286. eolib/protocol/_generated/net/server/npc_dialog_server_packet.py +10 -6
  287. eolib/protocol/_generated/net/server/npc_junk_server_packet.py +7 -3
  288. eolib/protocol/_generated/net/server/npc_killed_data.py +28 -24
  289. eolib/protocol/_generated/net/server/npc_map_info.py +16 -12
  290. eolib/protocol/_generated/net/server/npc_player_server_packet.py +27 -21
  291. eolib/protocol/_generated/net/server/npc_reply_server_packet.py +22 -18
  292. eolib/protocol/_generated/net/server/npc_spec_server_packet.py +10 -6
  293. eolib/protocol/_generated/net/server/npc_update_attack.py +22 -18
  294. eolib/protocol/_generated/net/server/npc_update_chat.py +15 -11
  295. eolib/protocol/_generated/net/server/npc_update_position.py +13 -9
  296. eolib/protocol/_generated/net/server/online_player.py +26 -20
  297. eolib/protocol/_generated/net/server/paperdoll_agree_server_packet.py +19 -15
  298. eolib/protocol/_generated/net/server/paperdoll_ping_server_packet.py +9 -5
  299. eolib/protocol/_generated/net/server/paperdoll_remove_server_packet.py +16 -12
  300. eolib/protocol/_generated/net/server/paperdoll_reply_server_packet.py +15 -9
  301. eolib/protocol/_generated/net/server/party_add_server_packet.py +7 -3
  302. eolib/protocol/_generated/net/server/party_agree_server_packet.py +10 -6
  303. eolib/protocol/_generated/net/server/party_close_server_packet.py +5 -4
  304. eolib/protocol/_generated/net/server/party_create_server_packet.py +10 -5
  305. eolib/protocol/_generated/net/server/party_exp_share.py +16 -12
  306. eolib/protocol/_generated/net/server/party_list_server_packet.py +10 -5
  307. eolib/protocol/_generated/net/server/party_member.py +20 -16
  308. eolib/protocol/_generated/net/server/party_remove_server_packet.py +7 -3
  309. eolib/protocol/_generated/net/server/party_reply_server_packet.py +32 -21
  310. eolib/protocol/_generated/net/server/party_request_server_packet.py +13 -9
  311. eolib/protocol/_generated/net/server/party_target_group_server_packet.py +8 -4
  312. eolib/protocol/_generated/net/server/players_agree_server_packet.py +7 -3
  313. eolib/protocol/_generated/net/server/players_list.py +17 -13
  314. eolib/protocol/_generated/net/server/players_list_friends.py +17 -13
  315. eolib/protocol/_generated/net/server/players_list_server_packet.py +9 -3
  316. eolib/protocol/_generated/net/server/players_net242_server_packet.py +7 -3
  317. eolib/protocol/_generated/net/server/players_ping_server_packet.py +7 -3
  318. eolib/protocol/_generated/net/server/players_pong_server_packet.py +7 -3
  319. eolib/protocol/_generated/net/server/players_remove_server_packet.py +7 -3
  320. eolib/protocol/_generated/net/server/players_reply_server_packet.py +9 -3
  321. eolib/protocol/_generated/net/server/priest_open_server_packet.py +7 -3
  322. eolib/protocol/_generated/net/server/priest_reply_server_packet.py +7 -3
  323. eolib/protocol/_generated/net/server/priest_request_server_packet.py +10 -6
  324. eolib/protocol/_generated/net/server/pub_file.py +10 -6
  325. eolib/protocol/_generated/net/server/quest_dialog_server_packet.py +33 -30
  326. eolib/protocol/_generated/net/server/quest_list_server_packet.py +39 -28
  327. eolib/protocol/_generated/net/server/quest_progress_entry.py +23 -17
  328. eolib/protocol/_generated/net/server/quest_report_server_packet.py +14 -9
  329. eolib/protocol/_generated/net/server/range_reply_server_packet.py +7 -3
  330. eolib/protocol/_generated/net/server/recover_agree_server_packet.py +13 -9
  331. eolib/protocol/_generated/net/server/recover_list_server_packet.py +10 -6
  332. eolib/protocol/_generated/net/server/recover_player_server_packet.py +10 -6
  333. eolib/protocol/_generated/net/server/recover_reply_server_packet.py +21 -17
  334. eolib/protocol/_generated/net/server/recover_target_group_server_packet.py +19 -15
  335. eolib/protocol/_generated/net/server/refresh_reply_server_packet.py +7 -3
  336. eolib/protocol/_generated/net/server/server_settings.py +25 -21
  337. eolib/protocol/_generated/net/server/shop_buy_server_packet.py +13 -9
  338. eolib/protocol/_generated/net/server/shop_craft_item.py +13 -9
  339. eolib/protocol/_generated/net/server/shop_create_server_packet.py +16 -12
  340. eolib/protocol/_generated/net/server/shop_open_server_packet.py +23 -17
  341. eolib/protocol/_generated/net/server/shop_sell_server_packet.py +13 -9
  342. eolib/protocol/_generated/net/server/shop_sold_item.py +10 -6
  343. eolib/protocol/_generated/net/server/shop_trade_item.py +16 -12
  344. eolib/protocol/_generated/net/server/sit_close_server_packet.py +10 -6
  345. eolib/protocol/_generated/net/server/sit_player_server_packet.py +14 -10
  346. eolib/protocol/_generated/net/server/sit_remove_server_packet.py +10 -6
  347. eolib/protocol/_generated/net/server/sit_reply_server_packet.py +14 -10
  348. eolib/protocol/_generated/net/server/skill_learn.py +25 -21
  349. eolib/protocol/_generated/net/server/spell_error_server_packet.py +5 -4
  350. eolib/protocol/_generated/net/server/spell_player_server_packet.py +10 -6
  351. eolib/protocol/_generated/net/server/spell_request_server_packet.py +10 -6
  352. eolib/protocol/_generated/net/server/spell_target_group_server_packet.py +20 -16
  353. eolib/protocol/_generated/net/server/spell_target_other_server_packet.py +25 -21
  354. eolib/protocol/_generated/net/server/spell_target_self_server_packet.py +22 -18
  355. eolib/protocol/_generated/net/server/stat_skill_accept_server_packet.py +10 -6
  356. eolib/protocol/_generated/net/server/stat_skill_junk_server_packet.py +7 -3
  357. eolib/protocol/_generated/net/server/stat_skill_open_server_packet.py +17 -11
  358. eolib/protocol/_generated/net/server/stat_skill_player_server_packet.py +10 -6
  359. eolib/protocol/_generated/net/server/stat_skill_remove_server_packet.py +7 -3
  360. eolib/protocol/_generated/net/server/stat_skill_reply_server_packet.py +21 -14
  361. eolib/protocol/_generated/net/server/stat_skill_take_server_packet.py +10 -6
  362. eolib/protocol/_generated/net/server/talk_admin_server_packet.py +13 -7
  363. eolib/protocol/_generated/net/server/talk_announce_server_packet.py +13 -7
  364. eolib/protocol/_generated/net/server/talk_list_server_packet.py +10 -5
  365. eolib/protocol/_generated/net/server/talk_msg_server_packet.py +13 -7
  366. eolib/protocol/_generated/net/server/talk_open_server_packet.py +10 -6
  367. eolib/protocol/_generated/net/server/talk_player_server_packet.py +10 -6
  368. eolib/protocol/_generated/net/server/talk_reply_server_packet.py +10 -6
  369. eolib/protocol/_generated/net/server/talk_request_server_packet.py +13 -7
  370. eolib/protocol/_generated/net/server/talk_server_server_packet.py +7 -3
  371. eolib/protocol/_generated/net/server/talk_spec_server_packet.py +7 -3
  372. eolib/protocol/_generated/net/server/talk_tell_server_packet.py +13 -7
  373. eolib/protocol/_generated/net/server/trade_admin_server_packet.py +7 -3
  374. eolib/protocol/_generated/net/server/trade_agree_server_packet.py +10 -6
  375. eolib/protocol/_generated/net/server/trade_close_server_packet.py +7 -3
  376. eolib/protocol/_generated/net/server/trade_item_data.py +22 -16
  377. eolib/protocol/_generated/net/server/trade_open_server_packet.py +20 -14
  378. eolib/protocol/_generated/net/server/trade_reply_server_packet.py +7 -3
  379. eolib/protocol/_generated/net/server/trade_request_server_packet.py +11 -7
  380. eolib/protocol/_generated/net/server/trade_spec_server_packet.py +7 -3
  381. eolib/protocol/_generated/net/server/trade_use_server_packet.py +7 -3
  382. eolib/protocol/_generated/net/server/walk_close_server_packet.py +5 -4
  383. eolib/protocol/_generated/net/server/walk_open_server_packet.py +5 -4
  384. eolib/protocol/_generated/net/server/walk_player_server_packet.py +13 -9
  385. eolib/protocol/_generated/net/server/walk_reply_server_packet.py +20 -14
  386. eolib/protocol/_generated/net/server/warp_agree_server_packet.py +29 -20
  387. eolib/protocol/_generated/net/server/warp_create_server_packet.py +7 -3
  388. eolib/protocol/_generated/net/server/warp_player_server_packet.py +7 -3
  389. eolib/protocol/_generated/net/server/warp_request_server_packet.py +33 -26
  390. eolib/protocol/_generated/net/server/welcome_net242_server_packet.py +7 -3
  391. eolib/protocol/_generated/net/server/welcome_net243_server_packet.py +7 -3
  392. eolib/protocol/_generated/net/server/welcome_net244_server_packet.py +7 -3
  393. eolib/protocol/_generated/net/server/welcome_ping_server_packet.py +7 -3
  394. eolib/protocol/_generated/net/server/welcome_pong_server_packet.py +7 -3
  395. eolib/protocol/_generated/net/server/welcome_reply_server_packet.py +158 -147
  396. eolib/protocol/_generated/net/spell.py +10 -6
  397. eolib/protocol/_generated/net/three_item.py +10 -6
  398. eolib/protocol/_generated/net/version.py +13 -9
  399. eolib/protocol/_generated/net/weight.py +10 -6
  400. eolib/protocol/_generated/pub/ecf.py +21 -17
  401. eolib/protocol/_generated/pub/ecf_record.py +36 -32
  402. eolib/protocol/_generated/pub/eif.py +21 -17
  403. eolib/protocol/_generated/pub/eif_record.py +130 -126
  404. eolib/protocol/_generated/pub/enf.py +21 -17
  405. eolib/protocol/_generated/pub/enf_record.py +72 -68
  406. eolib/protocol/_generated/pub/esf.py +21 -17
  407. eolib/protocol/_generated/pub/esf_record.py +106 -102
  408. eolib/protocol/_generated/pub/server/__init__.py +30 -0
  409. eolib/protocol/_generated/pub/server/drop_file.py +81 -0
  410. eolib/protocol/_generated/pub/server/drop_npc_record.py +116 -0
  411. eolib/protocol/_generated/pub/server/drop_record.py +149 -0
  412. eolib/protocol/_generated/pub/server/inn_file.py +81 -0
  413. eolib/protocol/_generated/pub/server/inn_question_record.py +119 -0
  414. eolib/protocol/_generated/pub/server/inn_record.py +383 -0
  415. eolib/protocol/_generated/pub/server/shop_craft_ingredient_record.py +107 -0
  416. eolib/protocol/_generated/pub/server/shop_craft_record.py +110 -0
  417. eolib/protocol/_generated/pub/server/shop_file.py +81 -0
  418. eolib/protocol/_generated/pub/server/shop_record.py +253 -0
  419. eolib/protocol/_generated/pub/server/shop_trade_record.py +157 -0
  420. eolib/protocol/_generated/pub/server/skill_master_file.py +81 -0
  421. eolib/protocol/_generated/pub/server/skill_master_record.py +224 -0
  422. eolib/protocol/_generated/pub/server/skill_master_skill_record.py +336 -0
  423. eolib/protocol/_generated/pub/server/talk_file.py +81 -0
  424. eolib/protocol/_generated/pub/server/talk_message_record.py +90 -0
  425. eolib/protocol/_generated/pub/server/talk_record.py +145 -0
  426. eolib/protocol/protocol_enum_meta.py +1 -3
  427. eolib/protocol/pub/server/__init__.py +8 -0
  428. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/METADATA +5 -3
  429. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/RECORD +431 -412
  430. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/WHEEL +1 -1
  431. {eolib-1.1.1.dist-info → eolib-1.2.0.dist-info}/licenses/LICENSE.txt +0 -0
eolib/__about__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "1.1.1"
1
+ __version__ = "1.2.0"
@@ -66,12 +66,16 @@ class Coords:
66
66
  writer (EoWriter): The writer that the data will be serialized to.
67
67
  data (Coords): The data to serialize.
68
68
  """
69
- if data._x is None:
70
- raise SerializationError("x must be provided.")
71
- writer.add_char(data._x)
72
- if data._y is None:
73
- raise SerializationError("y must be provided.")
74
- writer.add_char(data._y)
69
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
70
+ try:
71
+ if data._x is None:
72
+ raise SerializationError("x must be provided.")
73
+ writer.add_char(data._x)
74
+ if data._y is None:
75
+ raise SerializationError("y must be provided.")
76
+ writer.add_char(data._y)
77
+ finally:
78
+ writer.string_sanitization_mode = old_string_sanitization_mode
75
79
 
76
80
  @staticmethod
77
81
  def deserialize(reader: EoReader) -> "Coords":
@@ -8,7 +8,7 @@ from ..protocol_enum_meta import ProtocolEnumMeta
8
8
 
9
9
  class Emote(IntEnum, metaclass=ProtocolEnumMeta):
10
10
  """
11
- Emote that can be played over a player's head
11
+ Emote that can be played over a player's head
12
12
  """
13
13
  Happy = 1
14
14
  Depressed = 2
@@ -380,115 +380,119 @@ class Emf:
380
380
  writer (EoWriter): The writer that the data will be serialized to.
381
381
  data (Emf): The data to serialize.
382
382
  """
383
- writer.add_fixed_string("EMF", 3, False)
384
- if data._rid is None:
385
- raise SerializationError("rid must be provided.")
386
- if len(data._rid) != 2:
387
- raise SerializationError(f"Expected length of rid to be exactly 2, got {len(data._rid)}.")
388
- for i in range(2):
389
- writer.add_short(data._rid[i])
390
- if data._name is None:
391
- raise SerializationError("name must be provided.")
392
- if len(data._name) > 24:
393
- raise SerializationError(f"Expected length of name to be 24 or less, got {len(data._name)}.")
394
- writer.add_fixed_encoded_string(data._name, 24, True)
395
- if data._type is None:
396
- raise SerializationError("type must be provided.")
397
- writer.add_char(int(data._type))
398
- if data._timed_effect is None:
399
- raise SerializationError("timed_effect must be provided.")
400
- writer.add_char(int(data._timed_effect))
401
- if data._music_id is None:
402
- raise SerializationError("music_id must be provided.")
403
- writer.add_char(data._music_id)
404
- if data._music_control is None:
405
- raise SerializationError("music_control must be provided.")
406
- writer.add_char(int(data._music_control))
407
- if data._ambient_sound_id is None:
408
- raise SerializationError("ambient_sound_id must be provided.")
409
- writer.add_short(data._ambient_sound_id)
410
- if data._width is None:
411
- raise SerializationError("width must be provided.")
412
- writer.add_char(data._width)
413
- if data._height is None:
414
- raise SerializationError("height must be provided.")
415
- writer.add_char(data._height)
416
- if data._fill_tile is None:
417
- raise SerializationError("fill_tile must be provided.")
418
- writer.add_short(data._fill_tile)
419
- if data._map_available is None:
420
- raise SerializationError("map_available must be provided.")
421
- writer.add_char(1 if data._map_available else 0)
422
- if data._can_scroll is None:
423
- raise SerializationError("can_scroll must be provided.")
424
- writer.add_char(1 if data._can_scroll else 0)
425
- if data._relog_x is None:
426
- raise SerializationError("relog_x must be provided.")
427
- writer.add_char(data._relog_x)
428
- if data._relog_y is None:
429
- raise SerializationError("relog_y must be provided.")
430
- writer.add_char(data._relog_y)
431
- writer.add_char(0)
432
- if data._npcs_count is None:
433
- raise SerializationError("npcs_count must be provided.")
434
- writer.add_char(data._npcs_count)
435
- if data._npcs is None:
436
- raise SerializationError("npcs must be provided.")
437
- if len(data._npcs) > 252:
438
- raise SerializationError(f"Expected length of npcs to be 252 or less, got {len(data._npcs)}.")
439
- for i in range(data._npcs_count):
440
- MapNpc.serialize(writer, data._npcs[i])
441
- if data._legacy_door_keys_count is None:
442
- raise SerializationError("legacy_door_keys_count must be provided.")
443
- writer.add_char(data._legacy_door_keys_count)
444
- if data._legacy_door_keys is None:
445
- raise SerializationError("legacy_door_keys must be provided.")
446
- if len(data._legacy_door_keys) > 252:
447
- raise SerializationError(f"Expected length of legacy_door_keys to be 252 or less, got {len(data._legacy_door_keys)}.")
448
- for i in range(data._legacy_door_keys_count):
449
- MapLegacyDoorKey.serialize(writer, data._legacy_door_keys[i])
450
- if data._items_count is None:
451
- raise SerializationError("items_count must be provided.")
452
- writer.add_char(data._items_count)
453
- if data._items is None:
454
- raise SerializationError("items must be provided.")
455
- if len(data._items) > 252:
456
- raise SerializationError(f"Expected length of items to be 252 or less, got {len(data._items)}.")
457
- for i in range(data._items_count):
458
- MapItem.serialize(writer, data._items[i])
459
- if data._tile_spec_rows_count is None:
460
- raise SerializationError("tile_spec_rows_count must be provided.")
461
- writer.add_char(data._tile_spec_rows_count)
462
- if data._tile_spec_rows is None:
463
- raise SerializationError("tile_spec_rows must be provided.")
464
- if len(data._tile_spec_rows) > 252:
465
- raise SerializationError(f"Expected length of tile_spec_rows to be 252 or less, got {len(data._tile_spec_rows)}.")
466
- for i in range(data._tile_spec_rows_count):
467
- MapTileSpecRow.serialize(writer, data._tile_spec_rows[i])
468
- if data._warp_rows_count is None:
469
- raise SerializationError("warp_rows_count must be provided.")
470
- writer.add_char(data._warp_rows_count)
471
- if data._warp_rows is None:
472
- raise SerializationError("warp_rows must be provided.")
473
- if len(data._warp_rows) > 252:
474
- raise SerializationError(f"Expected length of warp_rows to be 252 or less, got {len(data._warp_rows)}.")
475
- for i in range(data._warp_rows_count):
476
- MapWarpRow.serialize(writer, data._warp_rows[i])
477
- if data._graphic_layers is None:
478
- raise SerializationError("graphic_layers must be provided.")
479
- if len(data._graphic_layers) != 9:
480
- raise SerializationError(f"Expected length of graphic_layers to be exactly 9, got {len(data._graphic_layers)}.")
481
- for i in range(9):
482
- MapGraphicLayer.serialize(writer, data._graphic_layers[i])
483
- if data._signs_count is None:
484
- raise SerializationError("signs_count must be provided.")
485
- writer.add_char(data._signs_count)
486
- if data._signs is None:
487
- raise SerializationError("signs must be provided.")
488
- if len(data._signs) > 252:
489
- raise SerializationError(f"Expected length of signs to be 252 or less, got {len(data._signs)}.")
490
- for i in range(data._signs_count):
491
- MapSign.serialize(writer, data._signs[i])
383
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
384
+ try:
385
+ writer.add_fixed_string("EMF", 3, False)
386
+ if data._rid is None:
387
+ raise SerializationError("rid must be provided.")
388
+ if len(data._rid) != 2:
389
+ raise SerializationError(f"Expected length of rid to be exactly 2, got {len(data._rid)}.")
390
+ for i in range(2):
391
+ writer.add_short(data._rid[i])
392
+ if data._name is None:
393
+ raise SerializationError("name must be provided.")
394
+ if len(data._name) > 24:
395
+ raise SerializationError(f"Expected length of name to be 24 or less, got {len(data._name)}.")
396
+ writer.add_fixed_encoded_string(data._name, 24, True)
397
+ if data._type is None:
398
+ raise SerializationError("type must be provided.")
399
+ writer.add_char(int(data._type))
400
+ if data._timed_effect is None:
401
+ raise SerializationError("timed_effect must be provided.")
402
+ writer.add_char(int(data._timed_effect))
403
+ if data._music_id is None:
404
+ raise SerializationError("music_id must be provided.")
405
+ writer.add_char(data._music_id)
406
+ if data._music_control is None:
407
+ raise SerializationError("music_control must be provided.")
408
+ writer.add_char(int(data._music_control))
409
+ if data._ambient_sound_id is None:
410
+ raise SerializationError("ambient_sound_id must be provided.")
411
+ writer.add_short(data._ambient_sound_id)
412
+ if data._width is None:
413
+ raise SerializationError("width must be provided.")
414
+ writer.add_char(data._width)
415
+ if data._height is None:
416
+ raise SerializationError("height must be provided.")
417
+ writer.add_char(data._height)
418
+ if data._fill_tile is None:
419
+ raise SerializationError("fill_tile must be provided.")
420
+ writer.add_short(data._fill_tile)
421
+ if data._map_available is None:
422
+ raise SerializationError("map_available must be provided.")
423
+ writer.add_char(1 if data._map_available else 0)
424
+ if data._can_scroll is None:
425
+ raise SerializationError("can_scroll must be provided.")
426
+ writer.add_char(1 if data._can_scroll else 0)
427
+ if data._relog_x is None:
428
+ raise SerializationError("relog_x must be provided.")
429
+ writer.add_char(data._relog_x)
430
+ if data._relog_y is None:
431
+ raise SerializationError("relog_y must be provided.")
432
+ writer.add_char(data._relog_y)
433
+ writer.add_char(0)
434
+ if data._npcs_count is None:
435
+ raise SerializationError("npcs_count must be provided.")
436
+ writer.add_char(data._npcs_count)
437
+ if data._npcs is None:
438
+ raise SerializationError("npcs must be provided.")
439
+ if len(data._npcs) > 252:
440
+ raise SerializationError(f"Expected length of npcs to be 252 or less, got {len(data._npcs)}.")
441
+ for i in range(data._npcs_count):
442
+ MapNpc.serialize(writer, data._npcs[i])
443
+ if data._legacy_door_keys_count is None:
444
+ raise SerializationError("legacy_door_keys_count must be provided.")
445
+ writer.add_char(data._legacy_door_keys_count)
446
+ if data._legacy_door_keys is None:
447
+ raise SerializationError("legacy_door_keys must be provided.")
448
+ if len(data._legacy_door_keys) > 252:
449
+ raise SerializationError(f"Expected length of legacy_door_keys to be 252 or less, got {len(data._legacy_door_keys)}.")
450
+ for i in range(data._legacy_door_keys_count):
451
+ MapLegacyDoorKey.serialize(writer, data._legacy_door_keys[i])
452
+ if data._items_count is None:
453
+ raise SerializationError("items_count must be provided.")
454
+ writer.add_char(data._items_count)
455
+ if data._items is None:
456
+ raise SerializationError("items must be provided.")
457
+ if len(data._items) > 252:
458
+ raise SerializationError(f"Expected length of items to be 252 or less, got {len(data._items)}.")
459
+ for i in range(data._items_count):
460
+ MapItem.serialize(writer, data._items[i])
461
+ if data._tile_spec_rows_count is None:
462
+ raise SerializationError("tile_spec_rows_count must be provided.")
463
+ writer.add_char(data._tile_spec_rows_count)
464
+ if data._tile_spec_rows is None:
465
+ raise SerializationError("tile_spec_rows must be provided.")
466
+ if len(data._tile_spec_rows) > 252:
467
+ raise SerializationError(f"Expected length of tile_spec_rows to be 252 or less, got {len(data._tile_spec_rows)}.")
468
+ for i in range(data._tile_spec_rows_count):
469
+ MapTileSpecRow.serialize(writer, data._tile_spec_rows[i])
470
+ if data._warp_rows_count is None:
471
+ raise SerializationError("warp_rows_count must be provided.")
472
+ writer.add_char(data._warp_rows_count)
473
+ if data._warp_rows is None:
474
+ raise SerializationError("warp_rows must be provided.")
475
+ if len(data._warp_rows) > 252:
476
+ raise SerializationError(f"Expected length of warp_rows to be 252 or less, got {len(data._warp_rows)}.")
477
+ for i in range(data._warp_rows_count):
478
+ MapWarpRow.serialize(writer, data._warp_rows[i])
479
+ if data._graphic_layers is None:
480
+ raise SerializationError("graphic_layers must be provided.")
481
+ if len(data._graphic_layers) != 9:
482
+ raise SerializationError(f"Expected length of graphic_layers to be exactly 9, got {len(data._graphic_layers)}.")
483
+ for i in range(9):
484
+ MapGraphicLayer.serialize(writer, data._graphic_layers[i])
485
+ if data._signs_count is None:
486
+ raise SerializationError("signs_count must be provided.")
487
+ writer.add_char(data._signs_count)
488
+ if data._signs is None:
489
+ raise SerializationError("signs must be provided.")
490
+ if len(data._signs) > 252:
491
+ raise SerializationError(f"Expected length of signs to be 252 or less, got {len(data._signs)}.")
492
+ for i in range(data._signs_count):
493
+ MapSign.serialize(writer, data._signs[i])
494
+ finally:
495
+ writer.string_sanitization_mode = old_string_sanitization_mode
492
496
 
493
497
  @staticmethod
494
498
  def deserialize(reader: EoReader) -> "Emf":
@@ -53,15 +53,19 @@ class MapGraphicLayer:
53
53
  writer (EoWriter): The writer that the data will be serialized to.
54
54
  data (MapGraphicLayer): The data to serialize.
55
55
  """
56
- if data._graphic_rows_count is None:
57
- raise SerializationError("graphic_rows_count must be provided.")
58
- writer.add_char(data._graphic_rows_count)
59
- if data._graphic_rows is None:
60
- raise SerializationError("graphic_rows must be provided.")
61
- if len(data._graphic_rows) > 252:
62
- raise SerializationError(f"Expected length of graphic_rows to be 252 or less, got {len(data._graphic_rows)}.")
63
- for i in range(data._graphic_rows_count):
64
- MapGraphicRow.serialize(writer, data._graphic_rows[i])
56
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
57
+ try:
58
+ if data._graphic_rows_count is None:
59
+ raise SerializationError("graphic_rows_count must be provided.")
60
+ writer.add_char(data._graphic_rows_count)
61
+ if data._graphic_rows is None:
62
+ raise SerializationError("graphic_rows must be provided.")
63
+ if len(data._graphic_rows) > 252:
64
+ raise SerializationError(f"Expected length of graphic_rows to be 252 or less, got {len(data._graphic_rows)}.")
65
+ for i in range(data._graphic_rows_count):
66
+ MapGraphicRow.serialize(writer, data._graphic_rows[i])
67
+ finally:
68
+ writer.string_sanitization_mode = old_string_sanitization_mode
65
69
 
66
70
  @staticmethod
67
71
  def deserialize(reader: EoReader) -> "MapGraphicLayer":
@@ -70,18 +70,22 @@ class MapGraphicRow:
70
70
  writer (EoWriter): The writer that the data will be serialized to.
71
71
  data (MapGraphicRow): The data to serialize.
72
72
  """
73
- if data._y is None:
74
- raise SerializationError("y must be provided.")
75
- writer.add_char(data._y)
76
- if data._tiles_count is None:
77
- raise SerializationError("tiles_count must be provided.")
78
- writer.add_char(data._tiles_count)
79
- if data._tiles is None:
80
- raise SerializationError("tiles must be provided.")
81
- if len(data._tiles) > 252:
82
- raise SerializationError(f"Expected length of tiles to be 252 or less, got {len(data._tiles)}.")
83
- for i in range(data._tiles_count):
84
- MapGraphicRowTile.serialize(writer, data._tiles[i])
73
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
74
+ try:
75
+ if data._y is None:
76
+ raise SerializationError("y must be provided.")
77
+ writer.add_char(data._y)
78
+ if data._tiles_count is None:
79
+ raise SerializationError("tiles_count must be provided.")
80
+ writer.add_char(data._tiles_count)
81
+ if data._tiles is None:
82
+ raise SerializationError("tiles must be provided.")
83
+ if len(data._tiles) > 252:
84
+ raise SerializationError(f"Expected length of tiles to be 252 or less, got {len(data._tiles)}.")
85
+ for i in range(data._tiles_count):
86
+ MapGraphicRowTile.serialize(writer, data._tiles[i])
87
+ finally:
88
+ writer.string_sanitization_mode = old_string_sanitization_mode
85
89
 
86
90
  @staticmethod
87
91
  def deserialize(reader: EoReader) -> "MapGraphicRow":
@@ -66,12 +66,16 @@ class MapGraphicRowTile:
66
66
  writer (EoWriter): The writer that the data will be serialized to.
67
67
  data (MapGraphicRowTile): The data to serialize.
68
68
  """
69
- if data._x is None:
70
- raise SerializationError("x must be provided.")
71
- writer.add_char(data._x)
72
- if data._graphic is None:
73
- raise SerializationError("graphic must be provided.")
74
- writer.add_short(data._graphic)
69
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
70
+ try:
71
+ if data._x is None:
72
+ raise SerializationError("x must be provided.")
73
+ writer.add_char(data._x)
74
+ if data._graphic is None:
75
+ raise SerializationError("graphic must be provided.")
76
+ writer.add_short(data._graphic)
77
+ finally:
78
+ writer.string_sanitization_mode = old_string_sanitization_mode
75
79
 
76
80
  @staticmethod
77
81
  def deserialize(reader: EoReader) -> "MapGraphicRowTile":
@@ -127,24 +127,28 @@ class MapItem:
127
127
  writer (EoWriter): The writer that the data will be serialized to.
128
128
  data (MapItem): The data to serialize.
129
129
  """
130
- if data._coords is None:
131
- raise SerializationError("coords must be provided.")
132
- Coords.serialize(writer, data._coords)
133
- if data._key is None:
134
- raise SerializationError("key must be provided.")
135
- writer.add_short(data._key)
136
- if data._chest_slot is None:
137
- raise SerializationError("chest_slot must be provided.")
138
- writer.add_char(data._chest_slot)
139
- if data._item_id is None:
140
- raise SerializationError("item_id must be provided.")
141
- writer.add_short(data._item_id)
142
- if data._spawn_time is None:
143
- raise SerializationError("spawn_time must be provided.")
144
- writer.add_short(data._spawn_time)
145
- if data._amount is None:
146
- raise SerializationError("amount must be provided.")
147
- writer.add_three(data._amount)
130
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
131
+ try:
132
+ if data._coords is None:
133
+ raise SerializationError("coords must be provided.")
134
+ Coords.serialize(writer, data._coords)
135
+ if data._key is None:
136
+ raise SerializationError("key must be provided.")
137
+ writer.add_short(data._key)
138
+ if data._chest_slot is None:
139
+ raise SerializationError("chest_slot must be provided.")
140
+ writer.add_char(data._chest_slot)
141
+ if data._item_id is None:
142
+ raise SerializationError("item_id must be provided.")
143
+ writer.add_short(data._item_id)
144
+ if data._spawn_time is None:
145
+ raise SerializationError("spawn_time must be provided.")
146
+ writer.add_short(data._spawn_time)
147
+ if data._amount is None:
148
+ raise SerializationError("amount must be provided.")
149
+ writer.add_three(data._amount)
150
+ finally:
151
+ writer.string_sanitization_mode = old_string_sanitization_mode
148
152
 
149
153
  @staticmethod
150
154
  def deserialize(reader: EoReader) -> "MapItem":
@@ -59,12 +59,16 @@ class MapLegacyDoorKey:
59
59
  writer (EoWriter): The writer that the data will be serialized to.
60
60
  data (MapLegacyDoorKey): The data to serialize.
61
61
  """
62
- if data._coords is None:
63
- raise SerializationError("coords must be provided.")
64
- Coords.serialize(writer, data._coords)
65
- if data._key is None:
66
- raise SerializationError("key must be provided.")
67
- writer.add_short(data._key)
62
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
63
+ try:
64
+ if data._coords is None:
65
+ raise SerializationError("coords must be provided.")
66
+ Coords.serialize(writer, data._coords)
67
+ if data._key is None:
68
+ raise SerializationError("key must be provided.")
69
+ writer.add_short(data._key)
70
+ finally:
71
+ writer.string_sanitization_mode = old_string_sanitization_mode
68
72
 
69
73
  @staticmethod
70
74
  def deserialize(reader: EoReader) -> "MapLegacyDoorKey":
@@ -110,21 +110,25 @@ class MapNpc:
110
110
  writer (EoWriter): The writer that the data will be serialized to.
111
111
  data (MapNpc): The data to serialize.
112
112
  """
113
- if data._coords is None:
114
- raise SerializationError("coords must be provided.")
115
- Coords.serialize(writer, data._coords)
116
- if data._id is None:
117
- raise SerializationError("id must be provided.")
118
- writer.add_short(data._id)
119
- if data._spawn_type is None:
120
- raise SerializationError("spawn_type must be provided.")
121
- writer.add_char(data._spawn_type)
122
- if data._spawn_time is None:
123
- raise SerializationError("spawn_time must be provided.")
124
- writer.add_short(data._spawn_time)
125
- if data._amount is None:
126
- raise SerializationError("amount must be provided.")
127
- writer.add_char(data._amount)
113
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
114
+ try:
115
+ if data._coords is None:
116
+ raise SerializationError("coords must be provided.")
117
+ Coords.serialize(writer, data._coords)
118
+ if data._id is None:
119
+ raise SerializationError("id must be provided.")
120
+ writer.add_short(data._id)
121
+ if data._spawn_type is None:
122
+ raise SerializationError("spawn_type must be provided.")
123
+ writer.add_char(data._spawn_type)
124
+ if data._spawn_time is None:
125
+ raise SerializationError("spawn_time must be provided.")
126
+ writer.add_short(data._spawn_time)
127
+ if data._amount is None:
128
+ raise SerializationError("amount must be provided.")
129
+ writer.add_char(data._amount)
130
+ finally:
131
+ writer.string_sanitization_mode = old_string_sanitization_mode
128
132
 
129
133
  @staticmethod
130
134
  def deserialize(reader: EoReader) -> "MapNpc":
@@ -78,20 +78,24 @@ class MapSign:
78
78
  writer (EoWriter): The writer that the data will be serialized to.
79
79
  data (MapSign): The data to serialize.
80
80
  """
81
- if data._coords is None:
82
- raise SerializationError("coords must be provided.")
83
- Coords.serialize(writer, data._coords)
84
- if data._string_data_length is None:
85
- raise SerializationError("string_data_length must be provided.")
86
- writer.add_short(data._string_data_length + 1)
87
- if data._string_data is None:
88
- raise SerializationError("string_data must be provided.")
89
- if len(data._string_data) > 64007:
90
- raise SerializationError(f"Expected length of string_data to be 64007 or less, got {len(data._string_data)}.")
91
- writer.add_fixed_encoded_string(data._string_data, data._string_data_length, False)
92
- if data._title_length is None:
93
- raise SerializationError("title_length must be provided.")
94
- writer.add_char(data._title_length)
81
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
82
+ try:
83
+ if data._coords is None:
84
+ raise SerializationError("coords must be provided.")
85
+ Coords.serialize(writer, data._coords)
86
+ if data._string_data_length is None:
87
+ raise SerializationError("string_data_length must be provided.")
88
+ writer.add_short(data._string_data_length + 1)
89
+ if data._string_data is None:
90
+ raise SerializationError("string_data must be provided.")
91
+ if len(data._string_data) > 64007:
92
+ raise SerializationError(f"Expected length of string_data to be 64007 or less, got {len(data._string_data)}.")
93
+ writer.add_fixed_encoded_string(data._string_data, data._string_data_length, False)
94
+ if data._title_length is None:
95
+ raise SerializationError("title_length must be provided.")
96
+ writer.add_char(data._title_length)
97
+ finally:
98
+ writer.string_sanitization_mode = old_string_sanitization_mode
95
99
 
96
100
  @staticmethod
97
101
  def deserialize(reader: EoReader) -> "MapSign":
@@ -70,18 +70,22 @@ class MapTileSpecRow:
70
70
  writer (EoWriter): The writer that the data will be serialized to.
71
71
  data (MapTileSpecRow): The data to serialize.
72
72
  """
73
- if data._y is None:
74
- raise SerializationError("y must be provided.")
75
- writer.add_char(data._y)
76
- if data._tiles_count is None:
77
- raise SerializationError("tiles_count must be provided.")
78
- writer.add_char(data._tiles_count)
79
- if data._tiles is None:
80
- raise SerializationError("tiles must be provided.")
81
- if len(data._tiles) > 252:
82
- raise SerializationError(f"Expected length of tiles to be 252 or less, got {len(data._tiles)}.")
83
- for i in range(data._tiles_count):
84
- MapTileSpecRowTile.serialize(writer, data._tiles[i])
73
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
74
+ try:
75
+ if data._y is None:
76
+ raise SerializationError("y must be provided.")
77
+ writer.add_char(data._y)
78
+ if data._tiles_count is None:
79
+ raise SerializationError("tiles_count must be provided.")
80
+ writer.add_char(data._tiles_count)
81
+ if data._tiles is None:
82
+ raise SerializationError("tiles must be provided.")
83
+ if len(data._tiles) > 252:
84
+ raise SerializationError(f"Expected length of tiles to be 252 or less, got {len(data._tiles)}.")
85
+ for i in range(data._tiles_count):
86
+ MapTileSpecRowTile.serialize(writer, data._tiles[i])
87
+ finally:
88
+ writer.string_sanitization_mode = old_string_sanitization_mode
85
89
 
86
90
  @staticmethod
87
91
  def deserialize(reader: EoReader) -> "MapTileSpecRow":
@@ -59,12 +59,16 @@ class MapTileSpecRowTile:
59
59
  writer (EoWriter): The writer that the data will be serialized to.
60
60
  data (MapTileSpecRowTile): The data to serialize.
61
61
  """
62
- if data._x is None:
63
- raise SerializationError("x must be provided.")
64
- writer.add_char(data._x)
65
- if data._tile_spec is None:
66
- raise SerializationError("tile_spec must be provided.")
67
- writer.add_char(int(data._tile_spec))
62
+ old_string_sanitization_mode: bool = writer.string_sanitization_mode
63
+ try:
64
+ if data._x is None:
65
+ raise SerializationError("x must be provided.")
66
+ writer.add_char(data._x)
67
+ if data._tile_spec is None:
68
+ raise SerializationError("tile_spec must be provided.")
69
+ writer.add_char(int(data._tile_spec))
70
+ finally:
71
+ writer.string_sanitization_mode = old_string_sanitization_mode
68
72
 
69
73
  @staticmethod
70
74
  def deserialize(reader: EoReader) -> "MapTileSpecRowTile":