00001 #ifndef PACKET_VISITOR_HH_ 00002 # define PACKET_VISITOR_HH_ 00003 00004 # include "packets_fwd.hh" 00005 # include "actions_fwd.hh" 00006 # include "infos_fwd.hh" 00007 00008 namespace packets 00009 { 00010 class PacketVisitor 00011 { 00012 public: 00013 PacketVisitor(); 00014 00015 // Info packets. 00016 virtual void operator ()(infos::UnknownInfo &p); 00017 virtual void operator ()(infos::News &p); 00018 virtual void operator ()(infos::LoggedIn &p); 00019 virtual void operator ()(infos::CharactersAvailable &p); 00020 virtual void operator ()(infos::CharacterStatus &p); 00021 virtual void operator ()(infos::SkillsAvailable &p); 00022 virtual void operator ()(infos::SkillsLevel &p); 00023 virtual void operator ()(infos::Health &p); 00024 virtual void operator ()(infos::Mana &p); 00025 virtual void operator ()(infos::Weight &p); 00026 virtual void operator ()(infos::ItemInfo &p); 00027 virtual void operator ()(infos::MoneyInHand &p); 00028 virtual void operator ()(infos::MoneyInBank &p); 00029 virtual void operator ()(infos::Experience &p); 00030 virtual void operator ()(infos::Chat1 &p); 00031 virtual void operator ()(infos::Chat2 &p); 00032 virtual void operator ()(infos::Chat3 &p); 00033 virtual void operator ()(infos::Chat4 &p); 00034 virtual void operator ()(infos::Chat5 &p); 00035 virtual void operator ()(infos::Chat6 &p); 00036 virtual void operator ()(infos::CharacterEntry &p); 00037 virtual void operator ()(infos::CharacterExit &p); 00038 virtual void operator ()(infos::CharacterPosition &p); 00039 virtual void operator ()(infos::ItemEntry &p); 00040 virtual void operator ()(infos::ItemExit &p); 00041 virtual void operator ()(infos::CharacterProfile &p); 00042 virtual void operator ()(infos::CharacterHealth &p); 00043 virtual void operator ()(infos::CharacterDeath &p); 00044 virtual void operator ()(infos::LevelUp &p); 00045 virtual void operator ()(infos::Attacking &p); 00046 virtual void operator ()(infos::LoadMap &p); 00047 virtual void operator ()(infos::ItemPicking &p); 00048 virtual void operator ()(infos::ItemSelling &p); 00049 virtual void operator ()(infos::ItemUsing &p); 00050 virtual void operator ()(infos::LoadGame &p); 00051 virtual void operator ()(infos::StatusAssigning &p); 00052 virtual void operator ()(infos::ItemRepairing &p); 00053 virtual void operator ()(infos::ItemTrading &p); 00054 virtual void operator ()(infos::SkillAssigning &p); 00055 virtual void operator ()(infos::StatusFlag &p); 00056 virtual void operator ()(infos::SkillUsing &p); 00057 virtual void operator ()(infos::CharacterFinalStatus &p); 00058 virtual void operator ()(infos::TeamInfo &p); 00059 virtual void operator ()(infos::TeamMember &p); 00060 virtual void operator ()(infos::PersonalShopInfo &p); 00061 virtual void operator ()(infos::StatusCheck &p); 00062 00063 // Action packets. 00064 virtual void operator ()(actions::UnknownAction &p); 00065 virtual void operator ()(actions::Hello &p); 00066 virtual void operator ()(actions::Login &p); 00067 virtual void operator ()(actions::SelectCharacter &p); 00068 virtual void operator ()(actions::Move &p); 00069 virtual void operator ()(actions::Say &p); 00070 virtual void operator ()(actions::Attack &p); 00071 virtual void operator ()(actions::PickItem &p); 00072 virtual void operator ()(actions::UseItem &p); 00073 virtual void operator ()(actions::BuyItem &p); 00074 virtual void operator ()(actions::SellItem &p); 00075 virtual void operator ()(actions::Talk &p); 00076 virtual void operator ()(actions::RepairItem &p); 00077 virtual void operator ()(actions::TransferItem &p); 00078 virtual void operator ()(actions::GameLoaded &p); 00079 virtual void operator ()(actions::MapLoaded &p); 00080 virtual void operator ()(actions::Warp &p); 00081 virtual void operator ()(actions::AssignStatus &p); 00082 virtual void operator ()(actions::AssignSkill &p); 00083 virtual void operator ()(actions::UseSkill &p); 00084 virtual void operator ()(actions::SwitchRunning &p); 00085 virtual void operator ()(actions::Restart &p); 00086 virtual void operator ()(actions::TeamAction &p); 00087 virtual void operator ()(actions::PersonalShopAction &p); 00088 virtual void operator ()(actions::SelectServer &p); 00089 }; 00090 } 00091 00092 #endif