eolib 1.2.0__py3-none-any.whl → 2.0.1__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 (430) hide show
  1. eolib/__about__.py +1 -1
  2. eolib/protocol/__init__.py +1 -1
  3. eolib/protocol/_generated/coords.py +18 -31
  4. eolib/protocol/_generated/map/emf.py +135 -301
  5. eolib/protocol/_generated/map/map_graphic_layer.py +21 -23
  6. eolib/protocol/_generated/map/map_graphic_row.py +25 -37
  7. eolib/protocol/_generated/map/map_graphic_row_tile.py +18 -31
  8. eolib/protocol/_generated/map/map_item.py +34 -79
  9. eolib/protocol/_generated/map/map_legacy_door_key.py +18 -23
  10. eolib/protocol/_generated/map/map_npc.py +30 -65
  11. eolib/protocol/_generated/map/map_sign.py +25 -40
  12. eolib/protocol/_generated/map/map_tile_spec_row.py +25 -37
  13. eolib/protocol/_generated/map/map_tile_spec_row_tile.py +18 -23
  14. eolib/protocol/_generated/map/map_warp.py +26 -51
  15. eolib/protocol/_generated/map/map_warp_row.py +25 -37
  16. eolib/protocol/_generated/map/map_warp_row_tile.py +18 -23
  17. eolib/protocol/_generated/net/char_item.py +18 -31
  18. eolib/protocol/_generated/net/client/account_agree_client_packet.py +22 -21
  19. eolib/protocol/_generated/net/client/account_create_client_packet.py +42 -59
  20. eolib/protocol/_generated/net/client/account_request_client_packet.py +14 -9
  21. eolib/protocol/_generated/net/client/admin_interact_report_client_packet.py +18 -15
  22. eolib/protocol/_generated/net/client/admin_interact_tell_client_packet.py +14 -9
  23. eolib/protocol/_generated/net/client/attack_use_client_packet.py +18 -23
  24. eolib/protocol/_generated/net/client/bank_add_client_packet.py +18 -31
  25. eolib/protocol/_generated/net/client/bank_open_client_packet.py +14 -17
  26. eolib/protocol/_generated/net/client/bank_take_client_packet.py +18 -31
  27. eolib/protocol/_generated/net/client/barber_buy_client_packet.py +22 -45
  28. eolib/protocol/_generated/net/client/barber_open_client_packet.py +14 -17
  29. eolib/protocol/_generated/net/client/board_create_client_packet.py +22 -29
  30. eolib/protocol/_generated/net/client/board_open_client_packet.py +14 -17
  31. eolib/protocol/_generated/net/client/board_remove_client_packet.py +18 -31
  32. eolib/protocol/_generated/net/client/board_take_client_packet.py +18 -31
  33. eolib/protocol/_generated/net/client/book_request_client_packet.py +14 -17
  34. eolib/protocol/_generated/net/client/byte_coords.py +18 -31
  35. eolib/protocol/_generated/net/client/chair_request_client_packet.py +35 -26
  36. eolib/protocol/_generated/net/client/character_create_client_packet.py +34 -71
  37. eolib/protocol/_generated/net/client/character_remove_client_packet.py +21 -29
  38. eolib/protocol/_generated/net/client/character_request_client_packet.py +14 -5
  39. eolib/protocol/_generated/net/client/character_take_client_packet.py +14 -17
  40. eolib/protocol/_generated/net/client/chest_add_client_packet.py +18 -15
  41. eolib/protocol/_generated/net/client/chest_open_client_packet.py +14 -9
  42. eolib/protocol/_generated/net/client/chest_take_client_packet.py +18 -23
  43. eolib/protocol/_generated/net/client/citizen_accept_client_packet.py +18 -31
  44. eolib/protocol/_generated/net/client/citizen_open_client_packet.py +14 -17
  45. eolib/protocol/_generated/net/client/citizen_remove_client_packet.py +14 -17
  46. eolib/protocol/_generated/net/client/citizen_reply_client_packet.py +25 -47
  47. eolib/protocol/_generated/net/client/citizen_request_client_packet.py +18 -31
  48. eolib/protocol/_generated/net/client/connection_accept_client_packet.py +22 -45
  49. eolib/protocol/_generated/net/client/connection_ping_client_packet.py +8 -3
  50. eolib/protocol/_generated/net/client/door_open_client_packet.py +14 -9
  51. eolib/protocol/_generated/net/client/emote_report_client_packet.py +14 -9
  52. eolib/protocol/_generated/net/client/face_player_client_packet.py +14 -9
  53. eolib/protocol/_generated/net/client/global_close_client_packet.py +8 -3
  54. eolib/protocol/_generated/net/client/global_open_client_packet.py +8 -3
  55. eolib/protocol/_generated/net/client/global_player_client_packet.py +8 -3
  56. eolib/protocol/_generated/net/client/global_remove_client_packet.py +8 -3
  57. eolib/protocol/_generated/net/client/guild_accept_client_packet.py +14 -17
  58. eolib/protocol/_generated/net/client/guild_agree_client_packet.py +58 -61
  59. eolib/protocol/_generated/net/client/guild_buy_client_packet.py +18 -31
  60. eolib/protocol/_generated/net/client/guild_create_client_packet.py +26 -35
  61. eolib/protocol/_generated/net/client/guild_junk_client_packet.py +14 -17
  62. eolib/protocol/_generated/net/client/guild_kick_client_packet.py +18 -23
  63. eolib/protocol/_generated/net/client/guild_open_client_packet.py +14 -17
  64. eolib/protocol/_generated/net/client/guild_player_client_packet.py +22 -29
  65. eolib/protocol/_generated/net/client/guild_rank_client_packet.py +22 -37
  66. eolib/protocol/_generated/net/client/guild_remove_client_packet.py +14 -17
  67. eolib/protocol/_generated/net/client/guild_report_client_packet.py +18 -23
  68. eolib/protocol/_generated/net/client/guild_request_client_packet.py +22 -29
  69. eolib/protocol/_generated/net/client/guild_take_client_packet.py +22 -37
  70. eolib/protocol/_generated/net/client/guild_tell_client_packet.py +18 -23
  71. eolib/protocol/_generated/net/client/guild_use_client_packet.py +14 -17
  72. eolib/protocol/_generated/net/client/init_init_client_packet.py +25 -40
  73. eolib/protocol/_generated/net/client/item_drop_client_packet.py +18 -22
  74. eolib/protocol/_generated/net/client/item_get_client_packet.py +14 -17
  75. eolib/protocol/_generated/net/client/item_junk_client_packet.py +14 -9
  76. eolib/protocol/_generated/net/client/item_use_client_packet.py +14 -17
  77. eolib/protocol/_generated/net/client/jukebox_msg_client_packet.py +14 -18
  78. eolib/protocol/_generated/net/client/jukebox_open_client_packet.py +14 -9
  79. eolib/protocol/_generated/net/client/jukebox_use_client_packet.py +18 -31
  80. eolib/protocol/_generated/net/client/locker_add_client_packet.py +18 -15
  81. eolib/protocol/_generated/net/client/locker_buy_client_packet.py +8 -3
  82. eolib/protocol/_generated/net/client/locker_open_client_packet.py +14 -9
  83. eolib/protocol/_generated/net/client/locker_take_client_packet.py +18 -23
  84. eolib/protocol/_generated/net/client/login_request_client_packet.py +18 -15
  85. eolib/protocol/_generated/net/client/marriage_open_client_packet.py +14 -17
  86. eolib/protocol/_generated/net/client/marriage_request_client_packet.py +22 -29
  87. eolib/protocol/_generated/net/client/message_ping_client_packet.py +8 -3
  88. eolib/protocol/_generated/net/client/npc_range_request_client_packet.py +21 -25
  89. eolib/protocol/_generated/net/client/paperdoll_add_client_packet.py +18 -31
  90. eolib/protocol/_generated/net/client/paperdoll_remove_client_packet.py +18 -31
  91. eolib/protocol/_generated/net/client/paperdoll_request_client_packet.py +14 -17
  92. eolib/protocol/_generated/net/client/party_accept_client_packet.py +18 -23
  93. eolib/protocol/_generated/net/client/party_remove_client_packet.py +14 -17
  94. eolib/protocol/_generated/net/client/party_request_client_packet.py +18 -23
  95. eolib/protocol/_generated/net/client/party_take_client_packet.py +14 -17
  96. eolib/protocol/_generated/net/client/player_range_request_client_packet.py +17 -19
  97. eolib/protocol/_generated/net/client/players_accept_client_packet.py +14 -9
  98. eolib/protocol/_generated/net/client/players_list_client_packet.py +8 -3
  99. eolib/protocol/_generated/net/client/players_request_client_packet.py +8 -3
  100. eolib/protocol/_generated/net/client/priest_accept_client_packet.py +14 -17
  101. eolib/protocol/_generated/net/client/priest_open_client_packet.py +14 -17
  102. eolib/protocol/_generated/net/client/priest_request_client_packet.py +18 -23
  103. eolib/protocol/_generated/net/client/priest_use_client_packet.py +14 -17
  104. eolib/protocol/_generated/net/client/quest_accept_client_packet.py +119 -91
  105. eolib/protocol/_generated/net/client/quest_list_client_packet.py +14 -9
  106. eolib/protocol/_generated/net/client/quest_use_client_packet.py +18 -32
  107. eolib/protocol/_generated/net/client/range_request_client_packet.py +23 -35
  108. eolib/protocol/_generated/net/client/refresh_request_client_packet.py +8 -3
  109. eolib/protocol/_generated/net/client/shop_buy_client_packet.py +18 -23
  110. eolib/protocol/_generated/net/client/shop_create_client_packet.py +18 -31
  111. eolib/protocol/_generated/net/client/shop_open_client_packet.py +14 -17
  112. eolib/protocol/_generated/net/client/shop_sell_client_packet.py +18 -23
  113. eolib/protocol/_generated/net/client/sit_request_client_packet.py +35 -29
  114. eolib/protocol/_generated/net/client/spell_request_client_packet.py +18 -31
  115. eolib/protocol/_generated/net/client/spell_target_group_client_packet.py +18 -31
  116. eolib/protocol/_generated/net/client/spell_target_other_client_packet.py +30 -65
  117. eolib/protocol/_generated/net/client/spell_target_self_client_packet.py +22 -37
  118. eolib/protocol/_generated/net/client/spell_use_client_packet.py +14 -9
  119. eolib/protocol/_generated/net/client/stat_skill_add_client_packet.py +51 -45
  120. eolib/protocol/_generated/net/client/stat_skill_junk_client_packet.py +14 -17
  121. eolib/protocol/_generated/net/client/stat_skill_open_client_packet.py +14 -17
  122. eolib/protocol/_generated/net/client/stat_skill_remove_client_packet.py +18 -31
  123. eolib/protocol/_generated/net/client/stat_skill_take_client_packet.py +18 -31
  124. eolib/protocol/_generated/net/client/talk_admin_client_packet.py +14 -9
  125. eolib/protocol/_generated/net/client/talk_announce_client_packet.py +14 -9
  126. eolib/protocol/_generated/net/client/talk_msg_client_packet.py +14 -9
  127. eolib/protocol/_generated/net/client/talk_open_client_packet.py +14 -9
  128. eolib/protocol/_generated/net/client/talk_player_client_packet.py +14 -9
  129. eolib/protocol/_generated/net/client/talk_report_client_packet.py +14 -9
  130. eolib/protocol/_generated/net/client/talk_request_client_packet.py +14 -9
  131. eolib/protocol/_generated/net/client/talk_tell_client_packet.py +18 -15
  132. eolib/protocol/_generated/net/client/talk_use_client_packet.py +14 -9
  133. eolib/protocol/_generated/net/client/trade_accept_client_packet.py +14 -17
  134. eolib/protocol/_generated/net/client/trade_add_client_packet.py +14 -9
  135. eolib/protocol/_generated/net/client/trade_agree_client_packet.py +14 -9
  136. eolib/protocol/_generated/net/client/trade_close_client_packet.py +8 -3
  137. eolib/protocol/_generated/net/client/trade_remove_client_packet.py +14 -17
  138. eolib/protocol/_generated/net/client/trade_request_client_packet.py +14 -17
  139. eolib/protocol/_generated/net/client/walk_action.py +22 -29
  140. eolib/protocol/_generated/net/client/walk_admin_client_packet.py +14 -9
  141. eolib/protocol/_generated/net/client/walk_player_client_packet.py +14 -9
  142. eolib/protocol/_generated/net/client/walk_spec_client_packet.py +14 -9
  143. eolib/protocol/_generated/net/client/warp_accept_client_packet.py +18 -31
  144. eolib/protocol/_generated/net/client/warp_take_client_packet.py +18 -31
  145. eolib/protocol/_generated/net/client/welcome_agree_client_packet.py +103 -124
  146. eolib/protocol/_generated/net/client/welcome_msg_client_packet.py +18 -31
  147. eolib/protocol/_generated/net/client/welcome_request_client_packet.py +14 -17
  148. eolib/protocol/_generated/net/item.py +18 -31
  149. eolib/protocol/_generated/net/server/__init__.py +4 -0
  150. eolib/protocol/_generated/net/server/account_reply_server_packet.py +103 -75
  151. eolib/protocol/_generated/net/server/admin_interact_agree_server_packet.py +14 -17
  152. eolib/protocol/_generated/net/server/admin_interact_list_server_packet.py +35 -53
  153. eolib/protocol/_generated/net/server/admin_interact_remove_server_packet.py +14 -17
  154. eolib/protocol/_generated/net/server/admin_interact_reply_server_packet.py +63 -55
  155. eolib/protocol/_generated/net/server/admin_interact_tell_server_packet.py +53 -83
  156. eolib/protocol/_generated/net/server/arena_accept_server_packet.py +26 -35
  157. eolib/protocol/_generated/net/server/arena_drop_server_packet.py +8 -3
  158. eolib/protocol/_generated/net/server/arena_spec_server_packet.py +30 -49
  159. eolib/protocol/_generated/net/server/arena_use_server_packet.py +14 -17
  160. eolib/protocol/_generated/net/server/attack_error_server_packet.py +8 -3
  161. eolib/protocol/_generated/net/server/attack_player_server_packet.py +18 -23
  162. eolib/protocol/_generated/net/server/avatar_admin_server_packet.py +38 -85
  163. eolib/protocol/_generated/net/server/avatar_agree_server_packet.py +14 -9
  164. eolib/protocol/_generated/net/server/avatar_change.py +79 -98
  165. eolib/protocol/_generated/net/server/avatar_remove_server_packet.py +19 -23
  166. eolib/protocol/_generated/net/server/avatar_reply_server_packet.py +34 -71
  167. eolib/protocol/_generated/net/server/bank_open_server_packet.py +22 -45
  168. eolib/protocol/_generated/net/server/bank_reply_server_packet.py +18 -31
  169. eolib/protocol/_generated/net/server/barber_agree_server_packet.py +18 -23
  170. eolib/protocol/_generated/net/server/barber_open_server_packet.py +14 -17
  171. eolib/protocol/_generated/net/server/big_coords.py +18 -31
  172. eolib/protocol/_generated/net/server/board_open_server_packet.py +25 -37
  173. eolib/protocol/_generated/net/server/board_player_server_packet.py +18 -23
  174. eolib/protocol/_generated/net/server/board_post_listing.py +22 -29
  175. eolib/protocol/_generated/net/server/book_reply_server_packet.py +25 -23
  176. eolib/protocol/_generated/net/server/cast_accept_server_packet.py +55 -65
  177. eolib/protocol/_generated/net/server/cast_reply_server_packet.py +54 -102
  178. eolib/protocol/_generated/net/server/cast_spec_server_packet.py +36 -52
  179. eolib/protocol/_generated/net/server/chair_close_server_packet.py +18 -23
  180. eolib/protocol/_generated/net/server/chair_player_server_packet.py +22 -29
  181. eolib/protocol/_generated/net/server/chair_remove_server_packet.py +18 -23
  182. eolib/protocol/_generated/net/server/chair_reply_server_packet.py +22 -29
  183. eolib/protocol/_generated/net/server/character_base_stats.py +34 -87
  184. eolib/protocol/_generated/net/server/character_base_stats_welcome.py +34 -87
  185. eolib/protocol/_generated/net/server/character_details.py +50 -79
  186. eolib/protocol/_generated/net/server/character_elemental_stats.py +34 -87
  187. eolib/protocol/_generated/net/server/character_map_info.py +91 -219
  188. eolib/protocol/_generated/net/server/character_player_server_packet.py +18 -31
  189. eolib/protocol/_generated/net/server/character_reply_server_packet.py +121 -100
  190. eolib/protocol/_generated/net/server/character_secondary_stats.py +30 -73
  191. eolib/protocol/_generated/net/server/character_secondary_stats_info_lookup.py +30 -73
  192. eolib/protocol/_generated/net/server/character_selection_list_entry.py +46 -97
  193. eolib/protocol/_generated/net/server/character_stats_equipment_change.py +26 -43
  194. eolib/protocol/_generated/net/server/character_stats_info_lookup.py +41 -80
  195. eolib/protocol/_generated/net/server/character_stats_reset.py +46 -113
  196. eolib/protocol/_generated/net/server/character_stats_update.py +34 -71
  197. eolib/protocol/_generated/net/server/character_stats_welcome.py +50 -127
  198. eolib/protocol/_generated/net/server/chest_agree_server_packet.py +17 -11
  199. eolib/protocol/_generated/net/server/chest_close_server_packet.py +15 -18
  200. eolib/protocol/_generated/net/server/chest_get_server_packet.py +25 -23
  201. eolib/protocol/_generated/net/server/chest_open_server_packet.py +21 -17
  202. eolib/protocol/_generated/net/server/chest_reply_server_packet.py +29 -45
  203. eolib/protocol/_generated/net/server/chest_spec_server_packet.py +8 -3
  204. eolib/protocol/_generated/net/server/citizen_accept_server_packet.py +14 -17
  205. eolib/protocol/_generated/net/server/citizen_open_server_packet.py +29 -61
  206. eolib/protocol/_generated/net/server/citizen_remove_server_packet.py +14 -9
  207. eolib/protocol/_generated/net/server/citizen_reply_server_packet.py +14 -17
  208. eolib/protocol/_generated/net/server/citizen_request_server_packet.py +14 -17
  209. eolib/protocol/_generated/net/server/connection_player_server_packet.py +18 -31
  210. eolib/protocol/_generated/net/server/dialog_entry.py +39 -40
  211. eolib/protocol/_generated/net/server/dialog_quest_entry.py +18 -23
  212. eolib/protocol/_generated/net/server/door_close_server_packet.py +14 -17
  213. eolib/protocol/_generated/net/server/door_open_server_packet.py +18 -11
  214. eolib/protocol/_generated/net/server/effect_admin_server_packet.py +26 -51
  215. eolib/protocol/_generated/net/server/effect_agree_server_packet.py +28 -38
  216. eolib/protocol/_generated/net/server/effect_player_server_packet.py +28 -45
  217. eolib/protocol/_generated/net/server/effect_report_server_packet.py +8 -3
  218. eolib/protocol/_generated/net/server/effect_spec_server_packet.py +67 -109
  219. eolib/protocol/_generated/net/server/effect_target_other_server_packet.py +29 -53
  220. eolib/protocol/_generated/net/server/effect_use_server_packet.py +35 -34
  221. eolib/protocol/_generated/net/server/emote_player_server_packet.py +18 -23
  222. eolib/protocol/_generated/net/server/equipment_change.py +30 -73
  223. eolib/protocol/_generated/net/server/equipment_character_select.py +30 -73
  224. eolib/protocol/_generated/net/server/equipment_map_info.py +30 -73
  225. eolib/protocol/_generated/net/server/equipment_paperdoll.py +65 -183
  226. eolib/protocol/_generated/net/server/equipment_welcome.py +65 -183
  227. eolib/protocol/_generated/net/server/face_player_server_packet.py +18 -23
  228. eolib/protocol/_generated/net/server/global_backfill_message.py +18 -15
  229. eolib/protocol/_generated/net/server/group_heal_target_player.py +22 -45
  230. eolib/protocol/_generated/net/server/guild_accept_server_packet.py +14 -17
  231. eolib/protocol/_generated/net/server/guild_agree_server_packet.py +26 -35
  232. eolib/protocol/_generated/net/server/guild_buy_server_packet.py +14 -17
  233. eolib/protocol/_generated/net/server/guild_create_server_packet.py +30 -49
  234. eolib/protocol/_generated/net/server/guild_kick_server_packet.py +8 -3
  235. eolib/protocol/_generated/net/server/guild_member.py +22 -29
  236. eolib/protocol/_generated/net/server/guild_open_server_packet.py +14 -17
  237. eolib/protocol/_generated/net/server/guild_rank_server_packet.py +17 -19
  238. eolib/protocol/_generated/net/server/guild_reply_server_packet.py +71 -62
  239. eolib/protocol/_generated/net/server/guild_report_server_packet.py +47 -69
  240. eolib/protocol/_generated/net/server/guild_request_server_packet.py +18 -23
  241. eolib/protocol/_generated/net/server/guild_sell_server_packet.py +14 -17
  242. eolib/protocol/_generated/net/server/guild_staff.py +18 -23
  243. eolib/protocol/_generated/net/server/guild_take_server_packet.py +14 -9
  244. eolib/protocol/_generated/net/server/guild_tell_server_packet.py +21 -23
  245. eolib/protocol/_generated/net/server/init_init_server_packet.py +268 -269
  246. eolib/protocol/_generated/net/server/item_accept_server_packet.py +14 -17
  247. eolib/protocol/_generated/net/server/item_add_server_packet.py +26 -51
  248. eolib/protocol/_generated/net/server/item_agree_server_packet.py +14 -17
  249. eolib/protocol/_generated/net/server/item_drop_server_packet.py +30 -49
  250. eolib/protocol/_generated/net/server/item_get_server_packet.py +22 -29
  251. eolib/protocol/_generated/net/server/item_junk_server_packet.py +22 -29
  252. eolib/protocol/_generated/net/server/item_kick_server_packet.py +18 -23
  253. eolib/protocol/_generated/net/server/item_map_info.py +26 -51
  254. eolib/protocol/_generated/net/server/item_obtain_server_packet.py +18 -23
  255. eolib/protocol/_generated/net/server/item_remove_server_packet.py +14 -17
  256. eolib/protocol/_generated/net/server/item_reply_server_packet.py +139 -227
  257. eolib/protocol/_generated/net/server/item_spec_server_packet.py +8 -3
  258. eolib/protocol/_generated/net/server/jukebox_agree_server_packet.py +14 -17
  259. eolib/protocol/_generated/net/server/jukebox_msg_server_packet.py +26 -51
  260. eolib/protocol/_generated/net/server/jukebox_open_server_packet.py +18 -23
  261. eolib/protocol/_generated/net/server/jukebox_player_server_packet.py +14 -17
  262. eolib/protocol/_generated/net/server/jukebox_reply_server_packet.py +8 -3
  263. eolib/protocol/_generated/net/server/jukebox_use_server_packet.py +14 -18
  264. eolib/protocol/_generated/net/server/level_up_stats.py +34 -87
  265. eolib/protocol/_generated/net/server/locker_buy_server_packet.py +18 -31
  266. eolib/protocol/_generated/net/server/locker_get_server_packet.py +25 -23
  267. eolib/protocol/_generated/net/server/locker_open_server_packet.py +21 -17
  268. eolib/protocol/_generated/net/server/locker_reply_server_packet.py +25 -23
  269. eolib/protocol/_generated/net/server/locker_spec_server_packet.py +14 -17
  270. eolib/protocol/_generated/net/server/login_reply_server_packet.py +92 -65
  271. eolib/protocol/_generated/net/server/map_drain_damage_other.py +22 -45
  272. eolib/protocol/_generated/net/server/map_file.py +14 -9
  273. eolib/protocol/_generated/net/server/marriage_open_server_packet.py +14 -17
  274. eolib/protocol/_generated/net/server/marriage_reply_server_packet.py +35 -34
  275. eolib/protocol/_generated/net/server/message_accept_server_packet.py +17 -19
  276. eolib/protocol/_generated/net/server/message_close_server_packet.py +8 -3
  277. eolib/protocol/_generated/net/server/message_open_server_packet.py +14 -9
  278. eolib/protocol/_generated/net/server/message_pong_server_packet.py +8 -3
  279. eolib/protocol/_generated/net/server/music_player_server_packet.py +14 -17
  280. eolib/protocol/_generated/net/server/nearby_info.py +33 -39
  281. eolib/protocol/_generated/net/server/npc_accept_server_packet.py +40 -35
  282. eolib/protocol/_generated/net/server/npc_agree_server_packet.py +21 -23
  283. eolib/protocol/_generated/net/server/npc_dialog_server_packet.py +18 -23
  284. eolib/protocol/_generated/net/server/npc_junk_server_packet.py +14 -17
  285. eolib/protocol/_generated/net/server/npc_killed_data.py +42 -99
  286. eolib/protocol/_generated/net/server/npc_map_info.py +26 -43
  287. eolib/protocol/_generated/net/server/npc_player_server_packet.py +39 -55
  288. eolib/protocol/_generated/net/server/npc_reply_server_packet.py +38 -71
  289. eolib/protocol/_generated/net/server/npc_spec_server_packet.py +20 -21
  290. eolib/protocol/_generated/net/server/npc_update_attack.py +34 -71
  291. eolib/protocol/_generated/net/server/npc_update_chat.py +21 -34
  292. eolib/protocol/_generated/net/server/npc_update_position.py +22 -29
  293. eolib/protocol/_generated/net/server/online_player.py +34 -55
  294. eolib/protocol/_generated/net/server/paperdoll_agree_server_packet.py +30 -57
  295. eolib/protocol/_generated/net/server/paperdoll_ping_server_packet.py +14 -18
  296. eolib/protocol/_generated/net/server/paperdoll_remove_server_packet.py +26 -43
  297. eolib/protocol/_generated/net/server/paperdoll_reply_server_packet.py +22 -21
  298. eolib/protocol/_generated/net/server/party_add_server_packet.py +14 -9
  299. eolib/protocol/_generated/net/server/party_agree_server_packet.py +18 -31
  300. eolib/protocol/_generated/net/server/party_close_server_packet.py +8 -3
  301. eolib/protocol/_generated/net/server/party_create_server_packet.py +17 -11
  302. eolib/protocol/_generated/net/server/party_exp_share.py +22 -46
  303. eolib/protocol/_generated/net/server/party_list_server_packet.py +17 -11
  304. eolib/protocol/_generated/net/server/party_member.py +30 -57
  305. eolib/protocol/_generated/net/server/party_remove_server_packet.py +14 -17
  306. eolib/protocol/_generated/net/server/party_reply_server_packet.py +51 -37
  307. eolib/protocol/_generated/net/server/party_request_server_packet.py +22 -29
  308. eolib/protocol/_generated/net/server/party_target_group_server_packet.py +17 -11
  309. eolib/protocol/_generated/net/server/player_effect.py +90 -0
  310. eolib/protocol/_generated/net/server/players_agree_server_packet.py +14 -9
  311. eolib/protocol/_generated/net/server/players_list.py +21 -23
  312. eolib/protocol/_generated/net/server/players_list_friends.py +21 -23
  313. eolib/protocol/_generated/net/server/players_list_server_packet.py +14 -9
  314. eolib/protocol/_generated/net/server/players_net242_server_packet.py +14 -9
  315. eolib/protocol/_generated/net/server/players_ping_server_packet.py +14 -9
  316. eolib/protocol/_generated/net/server/players_pong_server_packet.py +14 -9
  317. eolib/protocol/_generated/net/server/players_remove_server_packet.py +14 -17
  318. eolib/protocol/_generated/net/server/players_reply_server_packet.py +14 -9
  319. eolib/protocol/_generated/net/server/priest_open_server_packet.py +14 -17
  320. eolib/protocol/_generated/net/server/priest_reply_server_packet.py +14 -9
  321. eolib/protocol/_generated/net/server/priest_request_server_packet.py +18 -23
  322. eolib/protocol/_generated/net/server/pub_file.py +18 -23
  323. eolib/protocol/_generated/net/server/quest_dialog_server_packet.py +43 -87
  324. eolib/protocol/_generated/net/server/quest_list_server_packet.py +60 -55
  325. eolib/protocol/_generated/net/server/quest_progress_entry.py +30 -49
  326. eolib/protocol/_generated/net/server/quest_report_server_packet.py +27 -31
  327. eolib/protocol/_generated/net/server/range_reply_server_packet.py +14 -9
  328. eolib/protocol/_generated/net/server/recover_agree_server_packet.py +22 -45
  329. eolib/protocol/_generated/net/server/recover_list_server_packet.py +18 -23
  330. eolib/protocol/_generated/net/server/recover_player_server_packet.py +20 -31
  331. eolib/protocol/_generated/net/server/recover_reply_server_packet.py +33 -77
  332. eolib/protocol/_generated/net/server/recover_target_group_server_packet.py +30 -73
  333. eolib/protocol/_generated/net/server/refresh_reply_server_packet.py +14 -9
  334. eolib/protocol/_generated/net/server/server_settings.py +38 -93
  335. eolib/protocol/_generated/net/server/shop_buy_server_packet.py +22 -29
  336. eolib/protocol/_generated/net/server/shop_craft_item.py +21 -33
  337. eolib/protocol/_generated/net/server/shop_create_server_packet.py +25 -39
  338. eolib/protocol/_generated/net/server/shop_open_server_packet.py +31 -41
  339. eolib/protocol/_generated/net/server/shop_sell_server_packet.py +22 -29
  340. eolib/protocol/_generated/net/server/shop_sold_item.py +18 -31
  341. eolib/protocol/_generated/net/server/shop_trade_item.py +26 -59
  342. eolib/protocol/_generated/net/server/sit_close_server_packet.py +18 -23
  343. eolib/protocol/_generated/net/server/sit_player_server_packet.py +22 -29
  344. eolib/protocol/_generated/net/server/sit_remove_server_packet.py +18 -23
  345. eolib/protocol/_generated/net/server/sit_reply_server_packet.py +22 -29
  346. eolib/protocol/_generated/net/server/skill_learn.py +40 -86
  347. eolib/protocol/_generated/net/server/skill_stat_requirements.py +134 -0
  348. eolib/protocol/_generated/net/server/spell_error_server_packet.py +8 -3
  349. eolib/protocol/_generated/net/server/spell_player_server_packet.py +18 -23
  350. eolib/protocol/_generated/net/server/spell_reply_server_packet.py +133 -0
  351. eolib/protocol/_generated/net/server/spell_request_server_packet.py +18 -31
  352. eolib/protocol/_generated/net/server/spell_target_group_server_packet.py +33 -67
  353. eolib/protocol/_generated/net/server/spell_target_other_server_packet.py +39 -93
  354. eolib/protocol/_generated/net/server/spell_target_self_server_packet.py +36 -89
  355. eolib/protocol/_generated/net/server/stat_skill_accept_server_packet.py +18 -23
  356. eolib/protocol/_generated/net/server/stat_skill_junk_server_packet.py +14 -9
  357. eolib/protocol/_generated/net/server/stat_skill_open_server_packet.py +25 -31
  358. eolib/protocol/_generated/net/server/stat_skill_player_server_packet.py +18 -23
  359. eolib/protocol/_generated/net/server/stat_skill_remove_server_packet.py +14 -17
  360. eolib/protocol/_generated/net/server/stat_skill_reply_server_packet.py +35 -34
  361. eolib/protocol/_generated/net/server/stat_skill_take_server_packet.py +18 -31
  362. eolib/protocol/_generated/net/server/talk_admin_server_packet.py +18 -15
  363. eolib/protocol/_generated/net/server/talk_announce_server_packet.py +18 -15
  364. eolib/protocol/_generated/net/server/talk_list_server_packet.py +17 -11
  365. eolib/protocol/_generated/net/server/talk_msg_server_packet.py +18 -15
  366. eolib/protocol/_generated/net/server/talk_open_server_packet.py +18 -23
  367. eolib/protocol/_generated/net/server/talk_player_server_packet.py +18 -23
  368. eolib/protocol/_generated/net/server/talk_reply_server_packet.py +18 -15
  369. eolib/protocol/_generated/net/server/talk_request_server_packet.py +18 -15
  370. eolib/protocol/_generated/net/server/talk_server_server_packet.py +14 -9
  371. eolib/protocol/_generated/net/server/talk_spec_server_packet.py +14 -9
  372. eolib/protocol/_generated/net/server/talk_tell_server_packet.py +18 -15
  373. eolib/protocol/_generated/net/server/tile_effect.py +91 -0
  374. eolib/protocol/_generated/net/server/trade_admin_server_packet.py +29 -11
  375. eolib/protocol/_generated/net/server/trade_agree_server_packet.py +18 -23
  376. eolib/protocol/_generated/net/server/trade_close_server_packet.py +14 -17
  377. eolib/protocol/_generated/net/server/trade_item_data.py +34 -84
  378. eolib/protocol/_generated/net/server/trade_open_server_packet.py +26 -43
  379. eolib/protocol/_generated/net/server/trade_reply_server_packet.py +29 -11
  380. eolib/protocol/_generated/net/server/trade_request_server_packet.py +18 -23
  381. eolib/protocol/_generated/net/server/trade_spec_server_packet.py +14 -9
  382. eolib/protocol/_generated/net/server/trade_use_server_packet.py +29 -11
  383. eolib/protocol/_generated/net/server/walk_close_server_packet.py +8 -3
  384. eolib/protocol/_generated/net/server/walk_open_server_packet.py +8 -3
  385. eolib/protocol/_generated/net/server/walk_player_server_packet.py +22 -49
  386. eolib/protocol/_generated/net/server/walk_reply_server_packet.py +29 -43
  387. eolib/protocol/_generated/net/server/warp_agree_server_packet.py +43 -46
  388. eolib/protocol/_generated/net/server/warp_create_server_packet.py +14 -9
  389. eolib/protocol/_generated/net/server/warp_player_server_packet.py +14 -9
  390. eolib/protocol/_generated/net/server/warp_request_server_packet.py +50 -80
  391. eolib/protocol/_generated/net/server/welcome_net242_server_packet.py +14 -9
  392. eolib/protocol/_generated/net/server/welcome_net243_server_packet.py +14 -9
  393. eolib/protocol/_generated/net/server/welcome_net244_server_packet.py +14 -9
  394. eolib/protocol/_generated/net/server/welcome_ping_server_packet.py +14 -9
  395. eolib/protocol/_generated/net/server/welcome_pong_server_packet.py +14 -9
  396. eolib/protocol/_generated/net/server/welcome_reply_server_packet.py +192 -409
  397. eolib/protocol/_generated/net/spell.py +18 -31
  398. eolib/protocol/_generated/net/three_item.py +18 -31
  399. eolib/protocol/_generated/net/version.py +22 -45
  400. eolib/protocol/_generated/net/weight.py +18 -31
  401. eolib/protocol/_generated/pub/ecf.py +31 -57
  402. eolib/protocol/_generated/pub/ecf_record.py +49 -132
  403. eolib/protocol/_generated/pub/eif.py +31 -57
  404. eolib/protocol/_generated/pub/eif_record.py +173 -532
  405. eolib/protocol/_generated/pub/enf.py +31 -57
  406. eolib/protocol/_generated/pub/enf_record.py +97 -260
  407. eolib/protocol/_generated/pub/esf.py +31 -57
  408. eolib/protocol/_generated/pub/esf_record.py +136 -389
  409. eolib/protocol/_generated/pub/server/drop_file.py +17 -11
  410. eolib/protocol/_generated/pub/server/drop_npc_record.py +25 -37
  411. eolib/protocol/_generated/pub/server/drop_record.py +26 -60
  412. eolib/protocol/_generated/pub/server/inn_file.py +17 -11
  413. eolib/protocol/_generated/pub/server/inn_question_record.py +24 -37
  414. eolib/protocol/_generated/pub/server/inn_record.py +68 -196
  415. eolib/protocol/_generated/pub/server/shop_craft_ingredient_record.py +18 -32
  416. eolib/protocol/_generated/pub/server/shop_craft_record.py +21 -33
  417. eolib/protocol/_generated/pub/server/shop_file.py +17 -11
  418. eolib/protocol/_generated/pub/server/shop_record.py +54 -119
  419. eolib/protocol/_generated/pub/server/shop_trade_record.py +26 -62
  420. eolib/protocol/_generated/pub/server/skill_master_file.py +17 -11
  421. eolib/protocol/_generated/pub/server/skill_master_record.py +44 -100
  422. eolib/protocol/_generated/pub/server/skill_master_skill_record.py +57 -170
  423. eolib/protocol/_generated/pub/server/talk_file.py +17 -11
  424. eolib/protocol/_generated/pub/server/talk_message_record.py +17 -20
  425. eolib/protocol/_generated/pub/server/talk_record.py +29 -53
  426. eolib/protocol/pub/__init__.py +2 -0
  427. {eolib-1.2.0.dist-info → eolib-2.0.1.dist-info}/METADATA +1 -1
  428. {eolib-1.2.0.dist-info → eolib-2.0.1.dist-info}/RECORD +430 -426
  429. {eolib-1.2.0.dist-info → eolib-2.0.1.dist-info}/WHEEL +0 -0
  430. {eolib-1.2.0.dist-info → eolib-2.0.1.dist-info}/licenses/LICENSE.txt +0 -0
eolib/__about__.py CHANGED
@@ -1 +1 @@
1
- __version__ = "1.2.0"
1
+ __version__ = "2.0.1"
@@ -1,4 +1,4 @@
1
- """
1
+ """
2
2
  EO protocol data structures.
3
3
 
4
4
  See Also:
@@ -12,8 +12,19 @@ class Coords:
12
12
  Map coordinates
13
13
  """
14
14
  _byte_size: int = 0
15
- _x: int = None # type: ignore [assignment]
16
- _y: int = None # type: ignore [assignment]
15
+ _x: int
16
+ _y: int
17
+
18
+ def __init__(self, *, x: int, y: int):
19
+ """
20
+ Create a new instance of Coords.
21
+
22
+ Args:
23
+ x (int): (Value range is 0-252.)
24
+ y (int): (Value range is 0-252.)
25
+ """
26
+ self._x = x
27
+ self._y = y
17
28
 
18
29
  @property
19
30
  def byte_size(self) -> int:
@@ -27,36 +38,12 @@ class Coords:
27
38
 
28
39
  @property
29
40
  def x(self) -> int:
30
- """
31
- Note:
32
- - Value range is 0-252.
33
- """
34
41
  return self._x
35
42
 
36
- @x.setter
37
- def x(self, x: int) -> None:
38
- """
39
- Note:
40
- - Value range is 0-252.
41
- """
42
- self._x = x
43
-
44
43
  @property
45
44
  def y(self) -> int:
46
- """
47
- Note:
48
- - Value range is 0-252.
49
- """
50
45
  return self._y
51
46
 
52
- @y.setter
53
- def y(self, y: int) -> None:
54
- """
55
- Note:
56
- - Value range is 0-252.
57
- """
58
- self._y = y
59
-
60
47
  @staticmethod
61
48
  def serialize(writer: EoWriter, data: "Coords") -> None:
62
49
  """
@@ -88,14 +75,14 @@ class Coords:
88
75
  Returns:
89
76
  Coords: The data to serialize.
90
77
  """
91
- data: Coords = Coords()
92
78
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
93
79
  try:
94
80
  reader_start_position: int = reader.position
95
- data._x = reader.get_char()
96
- data._y = reader.get_char()
97
- data._byte_size = reader.position - reader_start_position
98
- return data
81
+ x = reader.get_char()
82
+ y = reader.get_char()
83
+ result = Coords(x=x, y=y)
84
+ result._byte_size = reader.position - reader_start_position
85
+ return result
99
86
  finally:
100
87
  reader.chunked_reading_mode = old_chunked_reading_mode
101
88
 
@@ -4,6 +4,7 @@
4
4
  # Changes will be lost when code is regenerated.
5
5
 
6
6
  from __future__ import annotations
7
+ from collections.abc import Iterable
7
8
  from .map_warp_row import MapWarpRow
8
9
  from .map_type import MapType
9
10
  from .map_timed_effect import MapTimedEffect
@@ -23,33 +24,88 @@ class Emf:
23
24
  Endless Map File
24
25
  """
25
26
  _byte_size: int = 0
26
- _rid: list[int] = None # type: ignore [assignment]
27
- _name: str = None # type: ignore [assignment]
28
- _type: MapType = None # type: ignore [assignment]
29
- _timed_effect: MapTimedEffect = None # type: ignore [assignment]
30
- _music_id: int = None # type: ignore [assignment]
31
- _music_control: MapMusicControl = None # type: ignore [assignment]
32
- _ambient_sound_id: int = None # type: ignore [assignment]
33
- _width: int = None # type: ignore [assignment]
34
- _height: int = None # type: ignore [assignment]
35
- _fill_tile: int = None # type: ignore [assignment]
36
- _map_available: bool = None # type: ignore [assignment]
37
- _can_scroll: bool = None # type: ignore [assignment]
38
- _relog_x: int = None # type: ignore [assignment]
39
- _relog_y: int = None # type: ignore [assignment]
40
- _npcs_count: int = None # type: ignore [assignment]
41
- _npcs: list[MapNpc] = None # type: ignore [assignment]
42
- _legacy_door_keys_count: int = None # type: ignore [assignment]
43
- _legacy_door_keys: list[MapLegacyDoorKey] = None # type: ignore [assignment]
44
- _items_count: int = None # type: ignore [assignment]
45
- _items: list[MapItem] = None # type: ignore [assignment]
46
- _tile_spec_rows_count: int = None # type: ignore [assignment]
47
- _tile_spec_rows: list[MapTileSpecRow] = None # type: ignore [assignment]
48
- _warp_rows_count: int = None # type: ignore [assignment]
49
- _warp_rows: list[MapWarpRow] = None # type: ignore [assignment]
50
- _graphic_layers: list[MapGraphicLayer] = None # type: ignore [assignment]
51
- _signs_count: int = None # type: ignore [assignment]
52
- _signs: list[MapSign] = None # type: ignore [assignment]
27
+ _rid: tuple[int, ...]
28
+ _name: str
29
+ _type: MapType
30
+ _timed_effect: MapTimedEffect
31
+ _music_id: int
32
+ _music_control: MapMusicControl
33
+ _ambient_sound_id: int
34
+ _width: int
35
+ _height: int
36
+ _fill_tile: int
37
+ _map_available: bool
38
+ _can_scroll: bool
39
+ _relog_x: int
40
+ _relog_y: int
41
+ _npcs_count: int
42
+ _npcs: tuple[MapNpc, ...]
43
+ _legacy_door_keys_count: int
44
+ _legacy_door_keys: tuple[MapLegacyDoorKey, ...]
45
+ _items_count: int
46
+ _items: tuple[MapItem, ...]
47
+ _tile_spec_rows_count: int
48
+ _tile_spec_rows: tuple[MapTileSpecRow, ...]
49
+ _warp_rows_count: int
50
+ _warp_rows: tuple[MapWarpRow, ...]
51
+ _graphic_layers: tuple[MapGraphicLayer, ...]
52
+ _signs_count: int
53
+ _signs: tuple[MapSign, ...]
54
+
55
+ def __init__(self, *, rid: Iterable[int], name: str, type: MapType, timed_effect: MapTimedEffect, music_id: int, music_control: MapMusicControl, ambient_sound_id: int, width: int, height: int, fill_tile: int, map_available: bool, can_scroll: bool, relog_x: int, relog_y: int, npcs: Iterable[MapNpc], legacy_door_keys: Iterable[MapLegacyDoorKey], items: Iterable[MapItem], tile_spec_rows: Iterable[MapTileSpecRow], warp_rows: Iterable[MapWarpRow], graphic_layers: Iterable[MapGraphicLayer], signs: Iterable[MapSign]):
56
+ """
57
+ Create a new instance of Emf.
58
+
59
+ Args:
60
+ rid (Iterable[int]): (Length must be `2`.) (Element value range is 0-64008.)
61
+ name (str): (Length must be `24` or less.)
62
+ type (MapType):
63
+ timed_effect (MapTimedEffect):
64
+ music_id (int): (Value range is 0-252.)
65
+ music_control (MapMusicControl):
66
+ ambient_sound_id (int): (Value range is 0-64008.)
67
+ width (int): (Value range is 0-252.)
68
+ height (int): (Value range is 0-252.)
69
+ fill_tile (int): (Value range is 0-64008.)
70
+ map_available (bool):
71
+ can_scroll (bool):
72
+ relog_x (int): (Value range is 0-252.)
73
+ relog_y (int): (Value range is 0-252.)
74
+ npcs (Iterable[MapNpc]): (Length must be 252 or less.)
75
+ legacy_door_keys (Iterable[MapLegacyDoorKey]): (Length must be 252 or less.)
76
+ items (Iterable[MapItem]): (Length must be 252 or less.)
77
+ tile_spec_rows (Iterable[MapTileSpecRow]): (Length must be 252 or less.)
78
+ warp_rows (Iterable[MapWarpRow]): (Length must be 252 or less.)
79
+ graphic_layers (Iterable[MapGraphicLayer]): The 9 layers of map graphics. Order is [Ground, Object, Overlay, Down Wall, Right Wall, Roof, Top, Shadow, Overlay2] (Length must be `9`.)
80
+ signs (Iterable[MapSign]): (Length must be 252 or less.)
81
+ """
82
+ self._rid = tuple(rid)
83
+ self._name = name
84
+ self._type = type
85
+ self._timed_effect = timed_effect
86
+ self._music_id = music_id
87
+ self._music_control = music_control
88
+ self._ambient_sound_id = ambient_sound_id
89
+ self._width = width
90
+ self._height = height
91
+ self._fill_tile = fill_tile
92
+ self._map_available = map_available
93
+ self._can_scroll = can_scroll
94
+ self._relog_x = relog_x
95
+ self._relog_y = relog_y
96
+ self._npcs = tuple(npcs)
97
+ self._npcs_count = len(self._npcs)
98
+ self._legacy_door_keys = tuple(legacy_door_keys)
99
+ self._legacy_door_keys_count = len(self._legacy_door_keys)
100
+ self._items = tuple(items)
101
+ self._items_count = len(self._items)
102
+ self._tile_spec_rows = tuple(tile_spec_rows)
103
+ self._tile_spec_rows_count = len(self._tile_spec_rows)
104
+ self._warp_rows = tuple(warp_rows)
105
+ self._warp_rows_count = len(self._warp_rows)
106
+ self._graphic_layers = tuple(graphic_layers)
107
+ self._signs = tuple(signs)
108
+ self._signs_count = len(self._signs)
53
109
 
54
110
  @property
55
111
  def byte_size(self) -> int:
@@ -62,315 +118,93 @@ class Emf:
62
118
  return self._byte_size
63
119
 
64
120
  @property
65
- def rid(self) -> list[int]:
66
- """
67
- Note:
68
- - Length must be `2`.
69
- - Element value range is 0-64008.
70
- """
121
+ def rid(self) -> tuple[int, ...]:
71
122
  return self._rid
72
123
 
73
- @rid.setter
74
- def rid(self, rid: list[int]) -> None:
75
- """
76
- Note:
77
- - Length must be `2`.
78
- - Element value range is 0-64008.
79
- """
80
- self._rid = rid
81
-
82
124
  @property
83
125
  def name(self) -> str:
84
- """
85
- Note:
86
- - Length must be `24` or less.
87
- """
88
126
  return self._name
89
127
 
90
- @name.setter
91
- def name(self, name: str) -> None:
92
- """
93
- Note:
94
- - Length must be `24` or less.
95
- """
96
- self._name = name
97
-
98
128
  @property
99
129
  def type(self) -> MapType:
100
130
  return self._type
101
131
 
102
- @type.setter
103
- def type(self, type: MapType) -> None:
104
- self._type = type
105
-
106
132
  @property
107
133
  def timed_effect(self) -> MapTimedEffect:
108
134
  return self._timed_effect
109
135
 
110
- @timed_effect.setter
111
- def timed_effect(self, timed_effect: MapTimedEffect) -> None:
112
- self._timed_effect = timed_effect
113
-
114
136
  @property
115
137
  def music_id(self) -> int:
116
- """
117
- Note:
118
- - Value range is 0-252.
119
- """
120
138
  return self._music_id
121
139
 
122
- @music_id.setter
123
- def music_id(self, music_id: int) -> None:
124
- """
125
- Note:
126
- - Value range is 0-252.
127
- """
128
- self._music_id = music_id
129
-
130
140
  @property
131
141
  def music_control(self) -> MapMusicControl:
132
142
  return self._music_control
133
143
 
134
- @music_control.setter
135
- def music_control(self, music_control: MapMusicControl) -> None:
136
- self._music_control = music_control
137
-
138
144
  @property
139
145
  def ambient_sound_id(self) -> int:
140
- """
141
- Note:
142
- - Value range is 0-64008.
143
- """
144
146
  return self._ambient_sound_id
145
147
 
146
- @ambient_sound_id.setter
147
- def ambient_sound_id(self, ambient_sound_id: int) -> None:
148
- """
149
- Note:
150
- - Value range is 0-64008.
151
- """
152
- self._ambient_sound_id = ambient_sound_id
153
-
154
148
  @property
155
149
  def width(self) -> int:
156
- """
157
- Note:
158
- - Value range is 0-252.
159
- """
160
150
  return self._width
161
151
 
162
- @width.setter
163
- def width(self, width: int) -> None:
164
- """
165
- Note:
166
- - Value range is 0-252.
167
- """
168
- self._width = width
169
-
170
152
  @property
171
153
  def height(self) -> int:
172
- """
173
- Note:
174
- - Value range is 0-252.
175
- """
176
154
  return self._height
177
155
 
178
- @height.setter
179
- def height(self, height: int) -> None:
180
- """
181
- Note:
182
- - Value range is 0-252.
183
- """
184
- self._height = height
185
-
186
156
  @property
187
157
  def fill_tile(self) -> int:
188
- """
189
- Note:
190
- - Value range is 0-64008.
191
- """
192
158
  return self._fill_tile
193
159
 
194
- @fill_tile.setter
195
- def fill_tile(self, fill_tile: int) -> None:
196
- """
197
- Note:
198
- - Value range is 0-64008.
199
- """
200
- self._fill_tile = fill_tile
201
-
202
160
  @property
203
161
  def map_available(self) -> bool:
204
162
  return self._map_available
205
163
 
206
- @map_available.setter
207
- def map_available(self, map_available: bool) -> None:
208
- self._map_available = map_available
209
-
210
164
  @property
211
165
  def can_scroll(self) -> bool:
212
166
  return self._can_scroll
213
167
 
214
- @can_scroll.setter
215
- def can_scroll(self, can_scroll: bool) -> None:
216
- self._can_scroll = can_scroll
217
-
218
168
  @property
219
169
  def relog_x(self) -> int:
220
- """
221
- Note:
222
- - Value range is 0-252.
223
- """
224
170
  return self._relog_x
225
171
 
226
- @relog_x.setter
227
- def relog_x(self, relog_x: int) -> None:
228
- """
229
- Note:
230
- - Value range is 0-252.
231
- """
232
- self._relog_x = relog_x
233
-
234
172
  @property
235
173
  def relog_y(self) -> int:
236
- """
237
- Note:
238
- - Value range is 0-252.
239
- """
240
174
  return self._relog_y
241
175
 
242
- @relog_y.setter
243
- def relog_y(self, relog_y: int) -> None:
244
- """
245
- Note:
246
- - Value range is 0-252.
247
- """
248
- self._relog_y = relog_y
249
-
250
176
  @property
251
- def npcs(self) -> list[MapNpc]:
252
- """
253
- Note:
254
- - Length must be 252 or less.
255
- """
177
+ def npcs(self) -> tuple[MapNpc, ...]:
256
178
  return self._npcs
257
179
 
258
- @npcs.setter
259
- def npcs(self, npcs: list[MapNpc]) -> None:
260
- """
261
- Note:
262
- - Length must be 252 or less.
263
- """
264
- self._npcs = npcs
265
- self._npcs_count = len(self._npcs)
266
-
267
180
  @property
268
- def legacy_door_keys(self) -> list[MapLegacyDoorKey]:
269
- """
270
- Note:
271
- - Length must be 252 or less.
272
- """
181
+ def legacy_door_keys(self) -> tuple[MapLegacyDoorKey, ...]:
273
182
  return self._legacy_door_keys
274
183
 
275
- @legacy_door_keys.setter
276
- def legacy_door_keys(self, legacy_door_keys: list[MapLegacyDoorKey]) -> None:
277
- """
278
- Note:
279
- - Length must be 252 or less.
280
- """
281
- self._legacy_door_keys = legacy_door_keys
282
- self._legacy_door_keys_count = len(self._legacy_door_keys)
283
-
284
184
  @property
285
- def items(self) -> list[MapItem]:
286
- """
287
- Note:
288
- - Length must be 252 or less.
289
- """
185
+ def items(self) -> tuple[MapItem, ...]:
290
186
  return self._items
291
187
 
292
- @items.setter
293
- def items(self, items: list[MapItem]) -> None:
294
- """
295
- Note:
296
- - Length must be 252 or less.
297
- """
298
- self._items = items
299
- self._items_count = len(self._items)
300
-
301
188
  @property
302
- def tile_spec_rows(self) -> list[MapTileSpecRow]:
303
- """
304
- Note:
305
- - Length must be 252 or less.
306
- """
189
+ def tile_spec_rows(self) -> tuple[MapTileSpecRow, ...]:
307
190
  return self._tile_spec_rows
308
191
 
309
- @tile_spec_rows.setter
310
- def tile_spec_rows(self, tile_spec_rows: list[MapTileSpecRow]) -> None:
311
- """
312
- Note:
313
- - Length must be 252 or less.
314
- """
315
- self._tile_spec_rows = tile_spec_rows
316
- self._tile_spec_rows_count = len(self._tile_spec_rows)
317
-
318
192
  @property
319
- def warp_rows(self) -> list[MapWarpRow]:
320
- """
321
- Note:
322
- - Length must be 252 or less.
323
- """
193
+ def warp_rows(self) -> tuple[MapWarpRow, ...]:
324
194
  return self._warp_rows
325
195
 
326
- @warp_rows.setter
327
- def warp_rows(self, warp_rows: list[MapWarpRow]) -> None:
328
- """
329
- Note:
330
- - Length must be 252 or less.
331
- """
332
- self._warp_rows = warp_rows
333
- self._warp_rows_count = len(self._warp_rows)
334
-
335
196
  @property
336
- def graphic_layers(self) -> list[MapGraphicLayer]:
197
+ def graphic_layers(self) -> tuple[MapGraphicLayer, ...]:
337
198
  """
338
199
  The 9 layers of map graphics.
339
200
  Order is [Ground, Object, Overlay, Down Wall, Right Wall, Roof, Top, Shadow, Overlay2]
340
-
341
- Note:
342
- - Length must be `9`.
343
201
  """
344
202
  return self._graphic_layers
345
203
 
346
- @graphic_layers.setter
347
- def graphic_layers(self, graphic_layers: list[MapGraphicLayer]) -> None:
348
- """
349
- The 9 layers of map graphics.
350
- Order is [Ground, Object, Overlay, Down Wall, Right Wall, Roof, Top, Shadow, Overlay2]
351
-
352
- Note:
353
- - Length must be `9`.
354
- """
355
- self._graphic_layers = graphic_layers
356
-
357
204
  @property
358
- def signs(self) -> list[MapSign]:
359
- """
360
- Note:
361
- - Length must be 252 or less.
362
- """
205
+ def signs(self) -> tuple[MapSign, ...]:
363
206
  return self._signs
364
207
 
365
- @signs.setter
366
- def signs(self, signs: list[MapSign]) -> None:
367
- """
368
- Note:
369
- - Length must be 252 or less.
370
- """
371
- self._signs = signs
372
- self._signs_count = len(self._signs)
373
-
374
208
  @staticmethod
375
209
  def serialize(writer: EoWriter, data: "Emf") -> None:
376
210
  """
@@ -505,57 +339,57 @@ class Emf:
505
339
  Returns:
506
340
  Emf: The data to serialize.
507
341
  """
508
- data: Emf = Emf()
509
342
  old_chunked_reading_mode: bool = reader.chunked_reading_mode
510
343
  try:
511
344
  reader_start_position: int = reader.position
512
345
  reader.get_fixed_string(3, False)
513
- data._rid = []
346
+ rid = []
514
347
  for i in range(2):
515
- data._rid.append(reader.get_short())
516
- data._name = reader.get_fixed_encoded_string(24, True)
517
- data._type = MapType(reader.get_char())
518
- data._timed_effect = MapTimedEffect(reader.get_char())
519
- data._music_id = reader.get_char()
520
- data._music_control = MapMusicControl(reader.get_char())
521
- data._ambient_sound_id = reader.get_short()
522
- data._width = reader.get_char()
523
- data._height = reader.get_char()
524
- data._fill_tile = reader.get_short()
525
- data._map_available = reader.get_char() != 0
526
- data._can_scroll = reader.get_char() != 0
527
- data._relog_x = reader.get_char()
528
- data._relog_y = reader.get_char()
348
+ rid.append(reader.get_short())
349
+ name = reader.get_fixed_encoded_string(24, True)
350
+ type = MapType(reader.get_char())
351
+ timed_effect = MapTimedEffect(reader.get_char())
352
+ music_id = reader.get_char()
353
+ music_control = MapMusicControl(reader.get_char())
354
+ ambient_sound_id = reader.get_short()
355
+ width = reader.get_char()
356
+ height = reader.get_char()
357
+ fill_tile = reader.get_short()
358
+ map_available = reader.get_char() != 0
359
+ can_scroll = reader.get_char() != 0
360
+ relog_x = reader.get_char()
361
+ relog_y = reader.get_char()
529
362
  reader.get_char()
530
- data._npcs_count = reader.get_char()
531
- data._npcs = []
532
- for i in range(data._npcs_count):
533
- data._npcs.append(MapNpc.deserialize(reader))
534
- data._legacy_door_keys_count = reader.get_char()
535
- data._legacy_door_keys = []
536
- for i in range(data._legacy_door_keys_count):
537
- data._legacy_door_keys.append(MapLegacyDoorKey.deserialize(reader))
538
- data._items_count = reader.get_char()
539
- data._items = []
540
- for i in range(data._items_count):
541
- data._items.append(MapItem.deserialize(reader))
542
- data._tile_spec_rows_count = reader.get_char()
543
- data._tile_spec_rows = []
544
- for i in range(data._tile_spec_rows_count):
545
- data._tile_spec_rows.append(MapTileSpecRow.deserialize(reader))
546
- data._warp_rows_count = reader.get_char()
547
- data._warp_rows = []
548
- for i in range(data._warp_rows_count):
549
- data._warp_rows.append(MapWarpRow.deserialize(reader))
550
- data._graphic_layers = []
363
+ npcs_count = reader.get_char()
364
+ npcs = []
365
+ for i in range(npcs_count):
366
+ npcs.append(MapNpc.deserialize(reader))
367
+ legacy_door_keys_count = reader.get_char()
368
+ legacy_door_keys = []
369
+ for i in range(legacy_door_keys_count):
370
+ legacy_door_keys.append(MapLegacyDoorKey.deserialize(reader))
371
+ items_count = reader.get_char()
372
+ items = []
373
+ for i in range(items_count):
374
+ items.append(MapItem.deserialize(reader))
375
+ tile_spec_rows_count = reader.get_char()
376
+ tile_spec_rows = []
377
+ for i in range(tile_spec_rows_count):
378
+ tile_spec_rows.append(MapTileSpecRow.deserialize(reader))
379
+ warp_rows_count = reader.get_char()
380
+ warp_rows = []
381
+ for i in range(warp_rows_count):
382
+ warp_rows.append(MapWarpRow.deserialize(reader))
383
+ graphic_layers = []
551
384
  for i in range(9):
552
- data._graphic_layers.append(MapGraphicLayer.deserialize(reader))
553
- data._signs_count = reader.get_char()
554
- data._signs = []
555
- for i in range(data._signs_count):
556
- data._signs.append(MapSign.deserialize(reader))
557
- data._byte_size = reader.position - reader_start_position
558
- return data
385
+ graphic_layers.append(MapGraphicLayer.deserialize(reader))
386
+ signs_count = reader.get_char()
387
+ signs = []
388
+ for i in range(signs_count):
389
+ signs.append(MapSign.deserialize(reader))
390
+ result = Emf(rid=rid, name=name, type=type, timed_effect=timed_effect, music_id=music_id, music_control=music_control, ambient_sound_id=ambient_sound_id, width=width, height=height, fill_tile=fill_tile, map_available=map_available, can_scroll=can_scroll, relog_x=relog_x, relog_y=relog_y, npcs=npcs, legacy_door_keys=legacy_door_keys, items=items, tile_spec_rows=tile_spec_rows, warp_rows=warp_rows, graphic_layers=graphic_layers, signs=signs)
391
+ result._byte_size = reader.position - reader_start_position
392
+ return result
559
393
  finally:
560
394
  reader.chunked_reading_mode = old_chunked_reading_mode
561
395