eolib 1.1.0__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.
- eolib/__about__.py +1 -1
- eolib/encrypt/encryption_utils.py +8 -0
- eolib/protocol/_generated/coords.py +10 -6
- eolib/protocol/_generated/emote.py +1 -1
- eolib/protocol/_generated/map/emf.py +113 -109
- eolib/protocol/_generated/map/map_graphic_layer.py +13 -9
- eolib/protocol/_generated/map/map_graphic_row.py +16 -12
- eolib/protocol/_generated/map/map_graphic_row_tile.py +10 -6
- eolib/protocol/_generated/map/map_item.py +22 -18
- eolib/protocol/_generated/map/map_legacy_door_key.py +10 -6
- eolib/protocol/_generated/map/map_npc.py +19 -15
- eolib/protocol/_generated/map/map_sign.py +18 -14
- eolib/protocol/_generated/map/map_tile_spec_row.py +16 -12
- eolib/protocol/_generated/map/map_tile_spec_row_tile.py +10 -6
- eolib/protocol/_generated/map/map_warp.py +16 -12
- eolib/protocol/_generated/map/map_warp_row.py +16 -12
- eolib/protocol/_generated/map/map_warp_row_tile.py +10 -6
- eolib/protocol/_generated/net/char_item.py +10 -6
- eolib/protocol/_generated/net/client/account_agree_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/account_create_client_packet.py +41 -32
- eolib/protocol/_generated/net/client/account_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/admin_interact_report_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/admin_interact_tell_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/attack_use_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/bank_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/bank_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/bank_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/barber_buy_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/barber_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/board_create_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/board_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/board_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/board_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/book_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/byte_coords.py +10 -6
- eolib/protocol/_generated/net/client/chair_request_client_packet.py +24 -14
- eolib/protocol/_generated/net/client/character_create_client_packet.py +29 -20
- eolib/protocol/_generated/net/client/character_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/character_request_client_packet.py +11 -2
- eolib/protocol/_generated/net/client/character_take_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/chest_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/chest_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/chest_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/citizen_accept_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/citizen_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/citizen_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/citizen_reply_client_packet.py +25 -16
- eolib/protocol/_generated/net/client/citizen_request_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/connection_accept_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/connection_ping_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/door_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/emote_report_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/face_player_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/global_close_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/global_open_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/global_player_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/global_remove_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/guild_accept_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/guild_agree_client_packet.py +44 -30
- eolib/protocol/_generated/net/client/guild_buy_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_create_client_packet.py +25 -16
- eolib/protocol/_generated/net/client/guild_junk_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/guild_kick_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/guild_player_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/guild_rank_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/guild_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/guild_report_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_request_client_packet.py +21 -12
- eolib/protocol/_generated/net/client/guild_take_client_packet.py +37 -7
- eolib/protocol/_generated/net/client/guild_tell_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/guild_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/init_init_client_packet.py +23 -15
- eolib/protocol/_generated/net/client/item_drop_client_packet.py +15 -8
- eolib/protocol/_generated/net/client/item_get_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/item_junk_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/item_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/jukebox_msg_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/jukebox_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/jukebox_use_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/locker_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/locker_buy_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/locker_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/locker_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/login_request_client_packet.py +17 -8
- eolib/protocol/_generated/net/client/marriage_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/marriage_request_client_packet.py +19 -10
- eolib/protocol/_generated/net/client/message_ping_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/npc_range_request_client_packet.py +17 -10
- eolib/protocol/_generated/net/client/paperdoll_add_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/paperdoll_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/paperdoll_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/party_accept_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/party_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/party_request_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/party_take_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/player_range_request_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/players_accept_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/players_list_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/players_request_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/priest_accept_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/priest_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/priest_request_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/priest_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/quest_accept_client_packet.py +36 -26
- eolib/protocol/_generated/net/client/quest_list_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/quest_use_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/range_request_client_packet.py +18 -9
- eolib/protocol/_generated/net/client/refresh_request_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/shop_buy_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/shop_create_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/shop_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/shop_sell_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/sit_request_client_packet.py +24 -14
- eolib/protocol/_generated/net/client/spell_request_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/spell_target_group_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/spell_target_other_client_packet.py +22 -15
- eolib/protocol/_generated/net/client/spell_target_self_client_packet.py +16 -9
- eolib/protocol/_generated/net/client/spell_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/stat_skill_add_client_packet.py +35 -21
- eolib/protocol/_generated/net/client/stat_skill_junk_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/stat_skill_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/stat_skill_remove_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/stat_skill_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/talk_admin_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_announce_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_msg_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_open_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_player_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_report_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/talk_tell_client_packet.py +16 -7
- eolib/protocol/_generated/net/client/talk_use_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_accept_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/trade_add_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_agree_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_close_client_packet.py +8 -4
- eolib/protocol/_generated/net/client/trade_remove_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/trade_request_client_packet.py +11 -4
- eolib/protocol/_generated/net/client/walk_action.py +13 -9
- eolib/protocol/_generated/net/client/walk_admin_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/walk_player_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/walk_spec_client_packet.py +10 -3
- eolib/protocol/_generated/net/client/warp_accept_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/warp_take_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/welcome_agree_client_packet.py +71 -45
- eolib/protocol/_generated/net/client/welcome_msg_client_packet.py +13 -6
- eolib/protocol/_generated/net/client/welcome_request_client_packet.py +10 -3
- eolib/protocol/_generated/net/item.py +10 -6
- eolib/protocol/_generated/net/server/account_reply_server_packet.py +91 -57
- eolib/protocol/_generated/net/server/admin_interact_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/admin_interact_list_server_packet.py +30 -21
- eolib/protocol/_generated/net/server/admin_interact_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/admin_interact_reply_server_packet.py +52 -36
- eolib/protocol/_generated/net/server/admin_interact_tell_server_packet.py +36 -27
- eolib/protocol/_generated/net/server/arena_accept_server_packet.py +24 -15
- eolib/protocol/_generated/net/server/arena_drop_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/arena_spec_server_packet.py +28 -19
- eolib/protocol/_generated/net/server/arena_use_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/attack_error_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/attack_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/avatar_admin_server_packet.py +39 -32
- eolib/protocol/_generated/net/server/avatar_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/avatar_change.py +53 -38
- eolib/protocol/_generated/net/server/avatar_change_type.py +1 -1
- eolib/protocol/_generated/net/server/avatar_remove_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/avatar_reply_server_packet.py +25 -18
- eolib/protocol/_generated/net/server/bank_open_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/bank_reply_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/barber_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/barber_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/big_coords.py +10 -6
- eolib/protocol/_generated/net/server/board_open_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/board_player_server_packet.py +15 -6
- eolib/protocol/_generated/net/server/board_post_listing.py +17 -11
- eolib/protocol/_generated/net/server/book_reply_server_packet.py +20 -12
- eolib/protocol/_generated/net/server/cast_accept_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/cast_reply_server_packet.py +31 -24
- eolib/protocol/_generated/net/server/cast_spec_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/chair_close_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/chair_player_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/chair_remove_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/chair_reply_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/character_base_stats.py +22 -18
- eolib/protocol/_generated/net/server/character_base_stats_welcome.py +22 -18
- eolib/protocol/_generated/net/server/character_details.py +42 -36
- eolib/protocol/_generated/net/server/character_elemental_stats.py +22 -18
- eolib/protocol/_generated/net/server/character_map_info.py +70 -64
- eolib/protocol/_generated/net/server/character_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/character_reply_server_packet.py +111 -79
- eolib/protocol/_generated/net/server/character_secondary_stats.py +19 -15
- eolib/protocol/_generated/net/server/character_secondary_stats_info_lookup.py +19 -15
- eolib/protocol/_generated/net/server/character_selection_list_entry.py +34 -28
- eolib/protocol/_generated/net/server/character_stats_equipment_change.py +16 -12
- eolib/protocol/_generated/net/server/character_stats_info_lookup.py +25 -21
- eolib/protocol/_generated/net/server/character_stats_reset.py +31 -27
- eolib/protocol/_generated/net/server/character_stats_update.py +22 -18
- eolib/protocol/_generated/net/server/character_stats_welcome.py +34 -30
- eolib/protocol/_generated/net/server/chest_agree_server_packet.py +11 -4
- eolib/protocol/_generated/net/server/chest_close_server_packet.py +16 -5
- eolib/protocol/_generated/net/server/chest_get_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/chest_open_server_packet.py +14 -7
- eolib/protocol/_generated/net/server/chest_reply_server_packet.py +20 -13
- eolib/protocol/_generated/net/server/chest_spec_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/citizen_accept_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/citizen_open_server_packet.py +27 -18
- eolib/protocol/_generated/net/server/citizen_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/citizen_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/citizen_request_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/connection_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/dialog_entry.py +24 -17
- eolib/protocol/_generated/net/server/dialog_quest_entry.py +10 -6
- eolib/protocol/_generated/net/server/door_close_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/door_open_server_packet.py +11 -4
- eolib/protocol/_generated/net/server/effect_admin_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/effect_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/effect_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/effect_report_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/effect_spec_server_packet.py +47 -33
- eolib/protocol/_generated/net/server/effect_target_other_server_packet.py +20 -13
- eolib/protocol/_generated/net/server/effect_use_server_packet.py +24 -14
- eolib/protocol/_generated/net/server/emote_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/equipment_change.py +20 -16
- eolib/protocol/_generated/net/server/equipment_character_select.py +19 -15
- eolib/protocol/_generated/net/server/equipment_map_info.py +23 -19
- eolib/protocol/_generated/net/server/equipment_paperdoll.py +50 -46
- eolib/protocol/_generated/net/server/equipment_welcome.py +49 -45
- eolib/protocol/_generated/net/server/face_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/global_backfill_message.py +13 -7
- eolib/protocol/_generated/net/server/group_heal_target_player.py +13 -9
- eolib/protocol/_generated/net/server/guild_accept_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_agree_server_packet.py +25 -16
- eolib/protocol/_generated/net/server/guild_buy_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_create_server_packet.py +28 -19
- eolib/protocol/_generated/net/server/guild_kick_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/guild_member.py +17 -11
- eolib/protocol/_generated/net/server/guild_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_rank_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/guild_reply_server_packet.py +49 -31
- eolib/protocol/_generated/net/server/guild_report_server_packet.py +47 -42
- eolib/protocol/_generated/net/server/guild_request_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/guild_sell_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_staff.py +13 -7
- eolib/protocol/_generated/net/server/guild_take_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/guild_tell_server_packet.py +20 -13
- eolib/protocol/_generated/net/server/init_ban_type.py +1 -1
- eolib/protocol/_generated/net/server/init_init_server_packet.py +190 -124
- eolib/protocol/_generated/net/server/init_reply.py +3 -0
- eolib/protocol/_generated/net/server/item_accept_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/item_add_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/item_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/item_drop_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/item_get_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/item_junk_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/item_kick_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/item_map_info.py +16 -12
- eolib/protocol/_generated/net/server/item_obtain_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/item_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/item_reply_server_packet.py +100 -74
- eolib/protocol/_generated/net/server/item_spec_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/jukebox_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/jukebox_msg_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/jukebox_open_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/jukebox_player_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/jukebox_reply_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/jukebox_use_server_packet.py +14 -3
- eolib/protocol/_generated/net/server/level_up_stats.py +22 -18
- eolib/protocol/_generated/net/server/locker_buy_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/locker_get_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/locker_open_server_packet.py +14 -7
- eolib/protocol/_generated/net/server/locker_reply_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/locker_spec_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/login_reply.py +6 -0
- eolib/protocol/_generated/net/server/login_reply_server_packet.py +80 -50
- eolib/protocol/_generated/net/server/map_drain_damage_other.py +13 -9
- eolib/protocol/_generated/net/server/map_file.py +7 -3
- eolib/protocol/_generated/net/server/marriage_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/marriage_reply_server_packet.py +24 -14
- eolib/protocol/_generated/net/server/message_accept_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/message_close_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/message_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/message_pong_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/music_player_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/nearby_info.py +26 -22
- eolib/protocol/_generated/net/server/npc_accept_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/npc_agree_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/npc_dialog_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/npc_junk_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/npc_killed_data.py +28 -24
- eolib/protocol/_generated/net/server/npc_map_info.py +16 -12
- eolib/protocol/_generated/net/server/npc_player_server_packet.py +30 -21
- eolib/protocol/_generated/net/server/npc_reply_server_packet.py +25 -18
- eolib/protocol/_generated/net/server/npc_spec_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/npc_update_attack.py +22 -18
- eolib/protocol/_generated/net/server/npc_update_chat.py +15 -11
- eolib/protocol/_generated/net/server/npc_update_position.py +13 -9
- eolib/protocol/_generated/net/server/online_player.py +26 -20
- eolib/protocol/_generated/net/server/paperdoll_agree_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/paperdoll_ping_server_packet.py +12 -5
- eolib/protocol/_generated/net/server/paperdoll_remove_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/paperdoll_reply_server_packet.py +18 -9
- eolib/protocol/_generated/net/server/party_add_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/party_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/party_close_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/party_create_server_packet.py +13 -5
- eolib/protocol/_generated/net/server/party_exp_share.py +16 -12
- eolib/protocol/_generated/net/server/party_list_server_packet.py +13 -5
- eolib/protocol/_generated/net/server/party_member.py +20 -16
- eolib/protocol/_generated/net/server/party_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/party_reply_server_packet.py +35 -21
- eolib/protocol/_generated/net/server/party_request_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/party_target_group_server_packet.py +11 -4
- eolib/protocol/_generated/net/server/players_agree_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_list.py +17 -13
- eolib/protocol/_generated/net/server/players_list_friends.py +17 -13
- eolib/protocol/_generated/net/server/players_list_server_packet.py +12 -3
- eolib/protocol/_generated/net/server/players_net242_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_ping_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_pong_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/players_reply_server_packet.py +12 -3
- eolib/protocol/_generated/net/server/priest_open_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/priest_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/priest_request_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/pub_file.py +10 -6
- eolib/protocol/_generated/net/server/quest_dialog_server_packet.py +36 -30
- eolib/protocol/_generated/net/server/quest_list_server_packet.py +42 -28
- eolib/protocol/_generated/net/server/quest_progress_entry.py +23 -17
- eolib/protocol/_generated/net/server/quest_report_server_packet.py +17 -9
- eolib/protocol/_generated/net/server/range_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/recover_agree_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/recover_list_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/recover_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/recover_reply_server_packet.py +24 -17
- eolib/protocol/_generated/net/server/recover_target_group_server_packet.py +22 -15
- eolib/protocol/_generated/net/server/refresh_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/server_settings.py +25 -21
- eolib/protocol/_generated/net/server/shop_buy_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/shop_craft_item.py +13 -9
- eolib/protocol/_generated/net/server/shop_create_server_packet.py +19 -12
- eolib/protocol/_generated/net/server/shop_open_server_packet.py +26 -17
- eolib/protocol/_generated/net/server/shop_sell_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/shop_sold_item.py +10 -6
- eolib/protocol/_generated/net/server/shop_trade_item.py +16 -12
- eolib/protocol/_generated/net/server/sit_close_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/sit_player_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/sit_remove_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/sit_reply_server_packet.py +17 -10
- eolib/protocol/_generated/net/server/skill_learn.py +25 -21
- eolib/protocol/_generated/net/server/spell_error_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/spell_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/spell_request_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/spell_target_group_server_packet.py +23 -16
- eolib/protocol/_generated/net/server/spell_target_other_server_packet.py +28 -21
- eolib/protocol/_generated/net/server/spell_target_self_server_packet.py +25 -18
- eolib/protocol/_generated/net/server/stat_skill_accept_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/stat_skill_junk_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/stat_skill_open_server_packet.py +20 -11
- eolib/protocol/_generated/net/server/stat_skill_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/stat_skill_remove_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/stat_skill_reply_server_packet.py +24 -14
- eolib/protocol/_generated/net/server/stat_skill_take_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_admin_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_announce_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_list_server_packet.py +14 -5
- eolib/protocol/_generated/net/server/talk_msg_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_open_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_player_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_reply_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/talk_request_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/talk_server_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/talk_spec_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/talk_tell_server_packet.py +16 -7
- eolib/protocol/_generated/net/server/trade_admin_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_agree_server_packet.py +13 -6
- eolib/protocol/_generated/net/server/trade_close_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_item_data.py +22 -16
- eolib/protocol/_generated/net/server/trade_open_server_packet.py +23 -14
- eolib/protocol/_generated/net/server/trade_reply_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_request_server_packet.py +14 -7
- eolib/protocol/_generated/net/server/trade_spec_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/trade_use_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/walk_close_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/walk_open_server_packet.py +8 -4
- eolib/protocol/_generated/net/server/walk_player_server_packet.py +16 -9
- eolib/protocol/_generated/net/server/walk_reply_server_packet.py +23 -14
- eolib/protocol/_generated/net/server/warp_agree_server_packet.py +32 -20
- eolib/protocol/_generated/net/server/warp_create_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/warp_player_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/warp_request_server_packet.py +36 -26
- eolib/protocol/_generated/net/server/welcome_net242_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_net243_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_net244_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_ping_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_pong_server_packet.py +10 -3
- eolib/protocol/_generated/net/server/welcome_reply_server_packet.py +161 -147
- eolib/protocol/_generated/net/spell.py +10 -6
- eolib/protocol/_generated/net/three_item.py +10 -6
- eolib/protocol/_generated/net/version.py +13 -9
- eolib/protocol/_generated/net/weight.py +10 -6
- eolib/protocol/_generated/pub/ecf.py +21 -17
- eolib/protocol/_generated/pub/ecf_record.py +36 -32
- eolib/protocol/_generated/pub/eif.py +21 -17
- eolib/protocol/_generated/pub/eif_record.py +130 -126
- eolib/protocol/_generated/pub/enf.py +21 -17
- eolib/protocol/_generated/pub/enf_record.py +72 -68
- eolib/protocol/_generated/pub/esf.py +21 -17
- eolib/protocol/_generated/pub/esf_record.py +106 -102
- eolib/protocol/_generated/pub/server/__init__.py +30 -0
- eolib/protocol/_generated/pub/server/drop_file.py +81 -0
- eolib/protocol/_generated/pub/server/drop_npc_record.py +116 -0
- eolib/protocol/_generated/pub/server/drop_record.py +149 -0
- eolib/protocol/_generated/pub/server/inn_file.py +81 -0
- eolib/protocol/_generated/pub/server/inn_question_record.py +119 -0
- eolib/protocol/_generated/pub/server/inn_record.py +383 -0
- eolib/protocol/_generated/pub/server/shop_craft_ingredient_record.py +107 -0
- eolib/protocol/_generated/pub/server/shop_craft_record.py +110 -0
- eolib/protocol/_generated/pub/server/shop_file.py +81 -0
- eolib/protocol/_generated/pub/server/shop_record.py +253 -0
- eolib/protocol/_generated/pub/server/shop_trade_record.py +157 -0
- eolib/protocol/_generated/pub/server/skill_master_file.py +81 -0
- eolib/protocol/_generated/pub/server/skill_master_record.py +224 -0
- eolib/protocol/_generated/pub/server/skill_master_skill_record.py +336 -0
- eolib/protocol/_generated/pub/server/talk_file.py +81 -0
- eolib/protocol/_generated/pub/server/talk_message_record.py +90 -0
- eolib/protocol/_generated/pub/server/talk_record.py +145 -0
- eolib/protocol/protocol_enum_meta.py +1 -3
- eolib/protocol/pub/server/__init__.py +8 -0
- eolib/py.typed +0 -0
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/METADATA +8 -6
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/RECORD +433 -413
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/WHEEL +1 -1
- {eolib-1.1.0.dist-info → eolib-1.2.0.dist-info}/licenses/LICENSE.txt +0 -0
@@ -511,108 +511,112 @@ class EsfRecord:
|
|
511
511
|
writer (EoWriter): The writer that the data will be serialized to.
|
512
512
|
data (EsfRecord): The data to serialize.
|
513
513
|
"""
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
|
546
|
-
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
565
|
-
|
566
|
-
|
567
|
-
|
568
|
-
|
569
|
-
|
570
|
-
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
599
|
-
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
|
514
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
515
|
+
try:
|
516
|
+
if data._name_length is None:
|
517
|
+
raise SerializationError("name_length must be provided.")
|
518
|
+
writer.add_char(data._name_length)
|
519
|
+
if data._chant_length is None:
|
520
|
+
raise SerializationError("chant_length must be provided.")
|
521
|
+
writer.add_char(data._chant_length)
|
522
|
+
if data._name is None:
|
523
|
+
raise SerializationError("name must be provided.")
|
524
|
+
if len(data._name) > 252:
|
525
|
+
raise SerializationError(f"Expected length of name to be 252 or less, got {len(data._name)}.")
|
526
|
+
writer.add_fixed_string(data._name, data._name_length, False)
|
527
|
+
if data._chant is None:
|
528
|
+
raise SerializationError("chant must be provided.")
|
529
|
+
if len(data._chant) > 252:
|
530
|
+
raise SerializationError(f"Expected length of chant to be 252 or less, got {len(data._chant)}.")
|
531
|
+
writer.add_fixed_string(data._chant, data._chant_length, False)
|
532
|
+
if data._icon_id is None:
|
533
|
+
raise SerializationError("icon_id must be provided.")
|
534
|
+
writer.add_short(data._icon_id)
|
535
|
+
if data._graphic_id is None:
|
536
|
+
raise SerializationError("graphic_id must be provided.")
|
537
|
+
writer.add_short(data._graphic_id)
|
538
|
+
if data._tp_cost is None:
|
539
|
+
raise SerializationError("tp_cost must be provided.")
|
540
|
+
writer.add_short(data._tp_cost)
|
541
|
+
if data._sp_cost is None:
|
542
|
+
raise SerializationError("sp_cost must be provided.")
|
543
|
+
writer.add_short(data._sp_cost)
|
544
|
+
if data._cast_time is None:
|
545
|
+
raise SerializationError("cast_time must be provided.")
|
546
|
+
writer.add_char(data._cast_time)
|
547
|
+
if data._nature is None:
|
548
|
+
raise SerializationError("nature must be provided.")
|
549
|
+
writer.add_char(int(data._nature))
|
550
|
+
writer.add_char(1)
|
551
|
+
if data._type is None:
|
552
|
+
raise SerializationError("type must be provided.")
|
553
|
+
writer.add_three(int(data._type))
|
554
|
+
if data._element is None:
|
555
|
+
raise SerializationError("element must be provided.")
|
556
|
+
writer.add_char(int(data._element))
|
557
|
+
if data._element_power is None:
|
558
|
+
raise SerializationError("element_power must be provided.")
|
559
|
+
writer.add_short(data._element_power)
|
560
|
+
if data._target_restrict is None:
|
561
|
+
raise SerializationError("target_restrict must be provided.")
|
562
|
+
writer.add_char(int(data._target_restrict))
|
563
|
+
if data._target_type is None:
|
564
|
+
raise SerializationError("target_type must be provided.")
|
565
|
+
writer.add_char(int(data._target_type))
|
566
|
+
if data._target_time is None:
|
567
|
+
raise SerializationError("target_time must be provided.")
|
568
|
+
writer.add_char(data._target_time)
|
569
|
+
writer.add_char(0)
|
570
|
+
if data._max_skill_level is None:
|
571
|
+
raise SerializationError("max_skill_level must be provided.")
|
572
|
+
writer.add_short(data._max_skill_level)
|
573
|
+
if data._min_damage is None:
|
574
|
+
raise SerializationError("min_damage must be provided.")
|
575
|
+
writer.add_short(data._min_damage)
|
576
|
+
if data._max_damage is None:
|
577
|
+
raise SerializationError("max_damage must be provided.")
|
578
|
+
writer.add_short(data._max_damage)
|
579
|
+
if data._accuracy is None:
|
580
|
+
raise SerializationError("accuracy must be provided.")
|
581
|
+
writer.add_short(data._accuracy)
|
582
|
+
if data._evade is None:
|
583
|
+
raise SerializationError("evade must be provided.")
|
584
|
+
writer.add_short(data._evade)
|
585
|
+
if data._armor is None:
|
586
|
+
raise SerializationError("armor must be provided.")
|
587
|
+
writer.add_short(data._armor)
|
588
|
+
if data._return_damage is None:
|
589
|
+
raise SerializationError("return_damage must be provided.")
|
590
|
+
writer.add_char(data._return_damage)
|
591
|
+
if data._hp_heal is None:
|
592
|
+
raise SerializationError("hp_heal must be provided.")
|
593
|
+
writer.add_short(data._hp_heal)
|
594
|
+
if data._tp_heal is None:
|
595
|
+
raise SerializationError("tp_heal must be provided.")
|
596
|
+
writer.add_short(data._tp_heal)
|
597
|
+
if data._sp_heal is None:
|
598
|
+
raise SerializationError("sp_heal must be provided.")
|
599
|
+
writer.add_char(data._sp_heal)
|
600
|
+
if data._str is None:
|
601
|
+
raise SerializationError("str must be provided.")
|
602
|
+
writer.add_short(data._str)
|
603
|
+
if data._intl is None:
|
604
|
+
raise SerializationError("intl must be provided.")
|
605
|
+
writer.add_short(data._intl)
|
606
|
+
if data._wis is None:
|
607
|
+
raise SerializationError("wis must be provided.")
|
608
|
+
writer.add_short(data._wis)
|
609
|
+
if data._agi is None:
|
610
|
+
raise SerializationError("agi must be provided.")
|
611
|
+
writer.add_short(data._agi)
|
612
|
+
if data._con is None:
|
613
|
+
raise SerializationError("con must be provided.")
|
614
|
+
writer.add_short(data._con)
|
615
|
+
if data._cha is None:
|
616
|
+
raise SerializationError("cha must be provided.")
|
617
|
+
writer.add_short(data._cha)
|
618
|
+
finally:
|
619
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
616
620
|
|
617
621
|
@staticmethod
|
618
622
|
def deserialize(reader: EoReader) -> "EsfRecord":
|
@@ -0,0 +1,30 @@
|
|
1
|
+
# Generated from the eo-protocol XML specification.
|
2
|
+
#
|
3
|
+
# This file should not be modified.
|
4
|
+
# Changes will be lost when code is regenerated.
|
5
|
+
|
6
|
+
"""
|
7
|
+
Data structures generated from the [eo-protocol](https://github.com/cirras/eo-protocol/tree/master/xml/pub/server/protocol.xml){target="_blank"} XML specification.
|
8
|
+
|
9
|
+
Warning:
|
10
|
+
- This subpackage should not be directly imported.
|
11
|
+
- Instead, import [eolib.protocol.pub.server][] (or the top-level `eolib`).
|
12
|
+
"""
|
13
|
+
|
14
|
+
from .talk_record import *
|
15
|
+
from .talk_message_record import *
|
16
|
+
from .talk_file import *
|
17
|
+
from .skill_master_skill_record import *
|
18
|
+
from .skill_master_record import *
|
19
|
+
from .skill_master_file import *
|
20
|
+
from .shop_trade_record import *
|
21
|
+
from .shop_record import *
|
22
|
+
from .shop_file import *
|
23
|
+
from .shop_craft_record import *
|
24
|
+
from .shop_craft_ingredient_record import *
|
25
|
+
from .inn_record import *
|
26
|
+
from .inn_question_record import *
|
27
|
+
from .inn_file import *
|
28
|
+
from .drop_record import *
|
29
|
+
from .drop_npc_record import *
|
30
|
+
from .drop_file import *
|
@@ -0,0 +1,81 @@
|
|
1
|
+
# Generated from the eo-protocol XML specification.
|
2
|
+
#
|
3
|
+
# This file should not be modified.
|
4
|
+
# Changes will be lost when code is regenerated.
|
5
|
+
|
6
|
+
from __future__ import annotations
|
7
|
+
from .drop_npc_record import DropNpcRecord
|
8
|
+
from ....serialization_error import SerializationError
|
9
|
+
from .....data.eo_writer import EoWriter
|
10
|
+
from .....data.eo_reader import EoReader
|
11
|
+
|
12
|
+
class DropFile:
|
13
|
+
"""
|
14
|
+
Endless Drop File
|
15
|
+
"""
|
16
|
+
_byte_size: int = 0
|
17
|
+
_npcs: list[DropNpcRecord] = None # type: ignore [assignment]
|
18
|
+
|
19
|
+
@property
|
20
|
+
def byte_size(self) -> int:
|
21
|
+
"""
|
22
|
+
Returns the size of the data that this was deserialized from.
|
23
|
+
|
24
|
+
Returns:
|
25
|
+
int: The size of the data that this was deserialized from.
|
26
|
+
"""
|
27
|
+
return self._byte_size
|
28
|
+
|
29
|
+
@property
|
30
|
+
def npcs(self) -> list[DropNpcRecord]:
|
31
|
+
return self._npcs
|
32
|
+
|
33
|
+
@npcs.setter
|
34
|
+
def npcs(self, npcs: list[DropNpcRecord]) -> None:
|
35
|
+
self._npcs = npcs
|
36
|
+
|
37
|
+
@staticmethod
|
38
|
+
def serialize(writer: EoWriter, data: "DropFile") -> None:
|
39
|
+
"""
|
40
|
+
Serializes an instance of `DropFile` to the provided `EoWriter`.
|
41
|
+
|
42
|
+
Args:
|
43
|
+
writer (EoWriter): The writer that the data will be serialized to.
|
44
|
+
data (DropFile): The data to serialize.
|
45
|
+
"""
|
46
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
47
|
+
try:
|
48
|
+
writer.add_fixed_string("EDF", 3, False)
|
49
|
+
if data._npcs is None:
|
50
|
+
raise SerializationError("npcs must be provided.")
|
51
|
+
for i in range(len(data._npcs)):
|
52
|
+
DropNpcRecord.serialize(writer, data._npcs[i])
|
53
|
+
finally:
|
54
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
55
|
+
|
56
|
+
@staticmethod
|
57
|
+
def deserialize(reader: EoReader) -> "DropFile":
|
58
|
+
"""
|
59
|
+
Deserializes an instance of `DropFile` from the provided `EoReader`.
|
60
|
+
|
61
|
+
Args:
|
62
|
+
reader (EoReader): The writer that the data will be serialized to.
|
63
|
+
|
64
|
+
Returns:
|
65
|
+
DropFile: The data to serialize.
|
66
|
+
"""
|
67
|
+
data: DropFile = DropFile()
|
68
|
+
old_chunked_reading_mode: bool = reader.chunked_reading_mode
|
69
|
+
try:
|
70
|
+
reader_start_position: int = reader.position
|
71
|
+
reader.get_fixed_string(3, False)
|
72
|
+
data._npcs = []
|
73
|
+
while reader.remaining > 0:
|
74
|
+
data._npcs.append(DropNpcRecord.deserialize(reader))
|
75
|
+
data._byte_size = reader.position - reader_start_position
|
76
|
+
return data
|
77
|
+
finally:
|
78
|
+
reader.chunked_reading_mode = old_chunked_reading_mode
|
79
|
+
|
80
|
+
def __repr__(self):
|
81
|
+
return f"DropFile(byte_size={repr(self._byte_size)}, npcs={repr(self._npcs)})"
|
@@ -0,0 +1,116 @@
|
|
1
|
+
# Generated from the eo-protocol XML specification.
|
2
|
+
#
|
3
|
+
# This file should not be modified.
|
4
|
+
# Changes will be lost when code is regenerated.
|
5
|
+
|
6
|
+
from __future__ import annotations
|
7
|
+
from .drop_record import DropRecord
|
8
|
+
from ....serialization_error import SerializationError
|
9
|
+
from .....data.eo_writer import EoWriter
|
10
|
+
from .....data.eo_reader import EoReader
|
11
|
+
|
12
|
+
class DropNpcRecord:
|
13
|
+
"""
|
14
|
+
Record of potential drops from an NPC
|
15
|
+
"""
|
16
|
+
_byte_size: int = 0
|
17
|
+
_npc_id: int = None # type: ignore [assignment]
|
18
|
+
_drops_count: int = None # type: ignore [assignment]
|
19
|
+
_drops: list[DropRecord] = None # type: ignore [assignment]
|
20
|
+
|
21
|
+
@property
|
22
|
+
def byte_size(self) -> int:
|
23
|
+
"""
|
24
|
+
Returns the size of the data that this was deserialized from.
|
25
|
+
|
26
|
+
Returns:
|
27
|
+
int: The size of the data that this was deserialized from.
|
28
|
+
"""
|
29
|
+
return self._byte_size
|
30
|
+
|
31
|
+
@property
|
32
|
+
def npc_id(self) -> int:
|
33
|
+
"""
|
34
|
+
Note:
|
35
|
+
- Value range is 0-64008.
|
36
|
+
"""
|
37
|
+
return self._npc_id
|
38
|
+
|
39
|
+
@npc_id.setter
|
40
|
+
def npc_id(self, npc_id: int) -> None:
|
41
|
+
"""
|
42
|
+
Note:
|
43
|
+
- Value range is 0-64008.
|
44
|
+
"""
|
45
|
+
self._npc_id = npc_id
|
46
|
+
|
47
|
+
@property
|
48
|
+
def drops(self) -> list[DropRecord]:
|
49
|
+
"""
|
50
|
+
Note:
|
51
|
+
- Length must be 64008 or less.
|
52
|
+
"""
|
53
|
+
return self._drops
|
54
|
+
|
55
|
+
@drops.setter
|
56
|
+
def drops(self, drops: list[DropRecord]) -> None:
|
57
|
+
"""
|
58
|
+
Note:
|
59
|
+
- Length must be 64008 or less.
|
60
|
+
"""
|
61
|
+
self._drops = drops
|
62
|
+
self._drops_count = len(self._drops)
|
63
|
+
|
64
|
+
@staticmethod
|
65
|
+
def serialize(writer: EoWriter, data: "DropNpcRecord") -> None:
|
66
|
+
"""
|
67
|
+
Serializes an instance of `DropNpcRecord` to the provided `EoWriter`.
|
68
|
+
|
69
|
+
Args:
|
70
|
+
writer (EoWriter): The writer that the data will be serialized to.
|
71
|
+
data (DropNpcRecord): The data to serialize.
|
72
|
+
"""
|
73
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
74
|
+
try:
|
75
|
+
if data._npc_id is None:
|
76
|
+
raise SerializationError("npc_id must be provided.")
|
77
|
+
writer.add_short(data._npc_id)
|
78
|
+
if data._drops_count is None:
|
79
|
+
raise SerializationError("drops_count must be provided.")
|
80
|
+
writer.add_short(data._drops_count)
|
81
|
+
if data._drops is None:
|
82
|
+
raise SerializationError("drops must be provided.")
|
83
|
+
if len(data._drops) > 64008:
|
84
|
+
raise SerializationError(f"Expected length of drops to be 64008 or less, got {len(data._drops)}.")
|
85
|
+
for i in range(data._drops_count):
|
86
|
+
DropRecord.serialize(writer, data._drops[i])
|
87
|
+
finally:
|
88
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
89
|
+
|
90
|
+
@staticmethod
|
91
|
+
def deserialize(reader: EoReader) -> "DropNpcRecord":
|
92
|
+
"""
|
93
|
+
Deserializes an instance of `DropNpcRecord` from the provided `EoReader`.
|
94
|
+
|
95
|
+
Args:
|
96
|
+
reader (EoReader): The writer that the data will be serialized to.
|
97
|
+
|
98
|
+
Returns:
|
99
|
+
DropNpcRecord: The data to serialize.
|
100
|
+
"""
|
101
|
+
data: DropNpcRecord = DropNpcRecord()
|
102
|
+
old_chunked_reading_mode: bool = reader.chunked_reading_mode
|
103
|
+
try:
|
104
|
+
reader_start_position: int = reader.position
|
105
|
+
data._npc_id = reader.get_short()
|
106
|
+
data._drops_count = reader.get_short()
|
107
|
+
data._drops = []
|
108
|
+
for i in range(data._drops_count):
|
109
|
+
data._drops.append(DropRecord.deserialize(reader))
|
110
|
+
data._byte_size = reader.position - reader_start_position
|
111
|
+
return data
|
112
|
+
finally:
|
113
|
+
reader.chunked_reading_mode = old_chunked_reading_mode
|
114
|
+
|
115
|
+
def __repr__(self):
|
116
|
+
return f"DropNpcRecord(byte_size={repr(self._byte_size)}, npc_id={repr(self._npc_id)}, drops={repr(self._drops)})"
|
@@ -0,0 +1,149 @@
|
|
1
|
+
# Generated from the eo-protocol XML specification.
|
2
|
+
#
|
3
|
+
# This file should not be modified.
|
4
|
+
# Changes will be lost when code is regenerated.
|
5
|
+
|
6
|
+
from ....serialization_error import SerializationError
|
7
|
+
from .....data.eo_writer import EoWriter
|
8
|
+
from .....data.eo_reader import EoReader
|
9
|
+
|
10
|
+
class DropRecord:
|
11
|
+
"""
|
12
|
+
Record of an item an NPC can drop when killed
|
13
|
+
"""
|
14
|
+
_byte_size: int = 0
|
15
|
+
_item_id: int = None # type: ignore [assignment]
|
16
|
+
_min_amount: int = None # type: ignore [assignment]
|
17
|
+
_max_amount: int = None # type: ignore [assignment]
|
18
|
+
_rate: int = None # type: ignore [assignment]
|
19
|
+
|
20
|
+
@property
|
21
|
+
def byte_size(self) -> int:
|
22
|
+
"""
|
23
|
+
Returns the size of the data that this was deserialized from.
|
24
|
+
|
25
|
+
Returns:
|
26
|
+
int: The size of the data that this was deserialized from.
|
27
|
+
"""
|
28
|
+
return self._byte_size
|
29
|
+
|
30
|
+
@property
|
31
|
+
def item_id(self) -> int:
|
32
|
+
"""
|
33
|
+
Note:
|
34
|
+
- Value range is 0-64008.
|
35
|
+
"""
|
36
|
+
return self._item_id
|
37
|
+
|
38
|
+
@item_id.setter
|
39
|
+
def item_id(self, item_id: int) -> None:
|
40
|
+
"""
|
41
|
+
Note:
|
42
|
+
- Value range is 0-64008.
|
43
|
+
"""
|
44
|
+
self._item_id = item_id
|
45
|
+
|
46
|
+
@property
|
47
|
+
def min_amount(self) -> int:
|
48
|
+
"""
|
49
|
+
Note:
|
50
|
+
- Value range is 0-16194276.
|
51
|
+
"""
|
52
|
+
return self._min_amount
|
53
|
+
|
54
|
+
@min_amount.setter
|
55
|
+
def min_amount(self, min_amount: int) -> None:
|
56
|
+
"""
|
57
|
+
Note:
|
58
|
+
- Value range is 0-16194276.
|
59
|
+
"""
|
60
|
+
self._min_amount = min_amount
|
61
|
+
|
62
|
+
@property
|
63
|
+
def max_amount(self) -> int:
|
64
|
+
"""
|
65
|
+
Note:
|
66
|
+
- Value range is 0-16194276.
|
67
|
+
"""
|
68
|
+
return self._max_amount
|
69
|
+
|
70
|
+
@max_amount.setter
|
71
|
+
def max_amount(self, max_amount: int) -> None:
|
72
|
+
"""
|
73
|
+
Note:
|
74
|
+
- Value range is 0-16194276.
|
75
|
+
"""
|
76
|
+
self._max_amount = max_amount
|
77
|
+
|
78
|
+
@property
|
79
|
+
def rate(self) -> int:
|
80
|
+
"""
|
81
|
+
Chance (x in 64,000) of the item being dropped
|
82
|
+
|
83
|
+
Note:
|
84
|
+
- Value range is 0-64008.
|
85
|
+
"""
|
86
|
+
return self._rate
|
87
|
+
|
88
|
+
@rate.setter
|
89
|
+
def rate(self, rate: int) -> None:
|
90
|
+
"""
|
91
|
+
Chance (x in 64,000) of the item being dropped
|
92
|
+
|
93
|
+
Note:
|
94
|
+
- Value range is 0-64008.
|
95
|
+
"""
|
96
|
+
self._rate = rate
|
97
|
+
|
98
|
+
@staticmethod
|
99
|
+
def serialize(writer: EoWriter, data: "DropRecord") -> None:
|
100
|
+
"""
|
101
|
+
Serializes an instance of `DropRecord` to the provided `EoWriter`.
|
102
|
+
|
103
|
+
Args:
|
104
|
+
writer (EoWriter): The writer that the data will be serialized to.
|
105
|
+
data (DropRecord): The data to serialize.
|
106
|
+
"""
|
107
|
+
old_string_sanitization_mode: bool = writer.string_sanitization_mode
|
108
|
+
try:
|
109
|
+
if data._item_id is None:
|
110
|
+
raise SerializationError("item_id must be provided.")
|
111
|
+
writer.add_short(data._item_id)
|
112
|
+
if data._min_amount is None:
|
113
|
+
raise SerializationError("min_amount must be provided.")
|
114
|
+
writer.add_three(data._min_amount)
|
115
|
+
if data._max_amount is None:
|
116
|
+
raise SerializationError("max_amount must be provided.")
|
117
|
+
writer.add_three(data._max_amount)
|
118
|
+
if data._rate is None:
|
119
|
+
raise SerializationError("rate must be provided.")
|
120
|
+
writer.add_short(data._rate)
|
121
|
+
finally:
|
122
|
+
writer.string_sanitization_mode = old_string_sanitization_mode
|
123
|
+
|
124
|
+
@staticmethod
|
125
|
+
def deserialize(reader: EoReader) -> "DropRecord":
|
126
|
+
"""
|
127
|
+
Deserializes an instance of `DropRecord` from the provided `EoReader`.
|
128
|
+
|
129
|
+
Args:
|
130
|
+
reader (EoReader): The writer that the data will be serialized to.
|
131
|
+
|
132
|
+
Returns:
|
133
|
+
DropRecord: The data to serialize.
|
134
|
+
"""
|
135
|
+
data: DropRecord = DropRecord()
|
136
|
+
old_chunked_reading_mode: bool = reader.chunked_reading_mode
|
137
|
+
try:
|
138
|
+
reader_start_position: int = reader.position
|
139
|
+
data._item_id = reader.get_short()
|
140
|
+
data._min_amount = reader.get_three()
|
141
|
+
data._max_amount = reader.get_three()
|
142
|
+
data._rate = reader.get_short()
|
143
|
+
data._byte_size = reader.position - reader_start_position
|
144
|
+
return data
|
145
|
+
finally:
|
146
|
+
reader.chunked_reading_mode = old_chunked_reading_mode
|
147
|
+
|
148
|
+
def __repr__(self):
|
149
|
+
return f"DropRecord(byte_size={repr(self._byte_size)}, item_id={repr(self._item_id)}, min_amount={repr(self._min_amount)}, max_amount={repr(self._max_amount)}, rate={repr(self._rate)})"
|