123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831 |
- /*
- * NetPacksLib.cpp, part of VCMI engine
- *
- * Authors: listed in file AUTHORS in main folder
- *
- * License: GNU General Public License v2.0 or later
- * Full text of license available in license.txt file, in main folder
- *
- */
- #include "StdInc.h"
- #include "PacksForClient.h"
- #include "PacksForClientBattle.h"
- #include "PacksForServer.h"
- #include "SaveLocalState.h"
- #include "SetRewardableConfiguration.h"
- #include "PacksForLobby.h"
- #include "SetStackEffect.h"
- #include "NetPackVisitor.h"
- VCMI_LIB_NAMESPACE_BEGIN
- void CPack::visit(ICPackVisitor & visitor)
- {
- visitBasic(visitor);
- // visitBasic may destroy this and in such cases we do not want to call visitTyped
- if(visitor.callTyped())
- {
- visitTyped(visitor);
- }
- }
- void CPack::visitBasic(ICPackVisitor & visitor)
- {
- }
- void CPack::visitTyped(ICPackVisitor & visitor)
- {
- throw std::runtime_error(std::string("CPack::visitTyped called for class ") + typeid(*this).name());
- }
- void CPackForClient::visitBasic(ICPackVisitor & visitor)
- {
- visitor.visitForClient(*this);
- }
- void CPackForServer::visitBasic(ICPackVisitor & visitor)
- {
- visitor.visitForServer(*this);
- }
- void CPackForLobby::visitBasic(ICPackVisitor & visitor)
- {
- visitor.visitForLobby(*this);
- }
- bool CPackForLobby::isForServer() const
- {
- return false;
- }
- bool CLobbyPackToServer::isForServer() const
- {
- return true;
- }
- void SaveLocalState::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSaveLocalState(*this);
- }
- void PackageApplied::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPackageApplied(*this);
- }
- void SystemMessage::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSystemMessage(*this);
- }
- void PlayerBlocked::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerBlocked(*this);
- }
- void PlayerCheated::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerCheated(*this);
- }
- void PlayerStartsTurn::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerStartsTurn(*this);
- }
- void DaysWithoutTown::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitDaysWithoutTown(*this);
- }
- void EntitiesChanged::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitEntitiesChanged(*this);
- }
- void SetRewardableConfiguration::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetRewardableConfiguration(*this);
- }
- void SetResources::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetResources(*this);
- }
- void SetPrimSkill::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetPrimSkill(*this);
- }
- void SetSecSkill::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetSecSkill(*this);
- }
- void HeroVisitCastle::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitHeroVisitCastle(*this);
- }
- void ChangeSpells::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitChangeSpells(*this);
- }
- void SetResearchedSpells::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetResearchedSpells(*this);
- }
- void SetMana::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetMana(*this);
- }
- void SetMovePoints::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetMovePoints(*this);
- }
- void FoWChange::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitFoWChange(*this);
- }
- void SetAvailableHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetAvailableHero(*this);
- }
- void GiveBonus::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitGiveBonus(*this);
- }
- void ChangeObjPos::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitChangeObjPos(*this);
- }
- void PlayerEndsTurn::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerEndsTurn(*this);
- }
- void PlayerEndsGame::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerEndsGame(*this);
- }
- void PlayerReinitInterface::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerReinitInterface(*this);
- }
- void RemoveBonus::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitRemoveBonus(*this);
- }
- void SetCommanderProperty::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetCommanderProperty(*this);
- }
- void AddQuest::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitAddQuest(*this);
- }
- void UpdateArtHandlerLists::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitUpdateArtHandlerLists(*this);
- }
- void ChangeFormation::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitChangeFormation(*this);
- }
- void RemoveObject::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitRemoveObject(*this);
- }
- void TryMoveHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitTryMoveHero(*this);
- }
- void NewStructures::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitNewStructures(*this);
- }
- void RazeStructures::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitRazeStructures(*this);
- }
- void SetAvailableCreatures::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetAvailableCreatures(*this);
- }
- void SetHeroesInTown::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetHeroesInTown(*this);
- }
- void HeroRecruited::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitHeroRecruited(*this);
- }
- void GiveHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitGiveHero(*this);
- }
- void OpenWindow::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitOpenWindow(*this);
- }
- void NewObject::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitNewObject(*this);
- }
- void SetAvailableArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetAvailableArtifacts(*this);
- }
- void NewArtifact::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitNewArtifact(*this);
- }
- void ChangeStackCount::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitChangeStackCount(*this);
- }
- void SetStackType::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetStackType(*this);
- }
- void EraseStack::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitEraseStack(*this);
- }
- void SwapStacks::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSwapStacks(*this);
- }
- void InsertNewStack::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitInsertNewStack(*this);
- }
- void RebalanceStacks::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitRebalanceStacks(*this);
- }
- void BulkRebalanceStacks::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkRebalanceStacks(*this);
- }
- void PutArtifact::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPutArtifact(*this);
- }
- void BulkEraseArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkEraseArtifacts(*this);
- }
- void BulkMoveArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkMoveArtifacts(*this);
- }
- void AssembledArtifact::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitAssembledArtifact(*this);
- }
- void DisassembledArtifact::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitDisassembledArtifact(*this);
- }
- void HeroVisit::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitHeroVisit(*this);
- }
- void NewTurn::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitNewTurn(*this);
- }
- void InfoWindow::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitInfoWindow(*this);
- }
- void SetObjectProperty::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetObjectProperty(*this);
- }
- void ChangeObjectVisitors::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitChangeObjectVisitors(*this);
- }
- void ChangeArtifactsCostume::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitChangeArtifactsCostume(*this);
- }
- void HeroLevelUp::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitHeroLevelUp(*this);
- }
- void CommanderLevelUp::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitCommanderLevelUp(*this);
- }
- void BlockingDialog::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBlockingDialog(*this);
- }
- void GarrisonDialog::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitGarrisonDialog(*this);
- }
- void ExchangeDialog::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitExchangeDialog(*this);
- }
- void TeleportDialog::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitTeleportDialog(*this);
- }
- void MapObjectSelectDialog::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitMapObjectSelectDialog(*this);
- }
- void BattleStart::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleStart(*this);
- }
- void BattleNextRound::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleNextRound(*this);
- }
- void BattleSetActiveStack::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleSetActiveStack(*this);
- }
- void BattleResult::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleResult(*this);
- }
- void BattleLogMessage::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleLogMessage(*this);
- }
- void BattleStackMoved::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleStackMoved(*this);
- }
- void BattleUnitsChanged::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleUnitsChanged(*this);
- }
- void BattleAttack::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleAttack(*this);
- }
- void StartAction::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitStartAction(*this);
- }
- void EndAction::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitEndAction(*this);
- }
- void BattleSpellCast::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleSpellCast(*this);
- }
- void SetStackEffect::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetStackEffect(*this);
- }
- void StacksInjured::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitStacksInjured(*this);
- }
- void BattleResultsApplied::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleResultsApplied(*this);
- }
- void BattleObstaclesChanged::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleObstaclesChanged(*this);
- }
- void BattleSetStackProperty::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleSetStackProperty(*this);
- }
- void BattleTriggerEffect::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleTriggerEffect(*this);
- }
- void BattleUpdateGateState::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleUpdateGateState(*this);
- }
- void AdvmapSpellCast::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitAdvmapSpellCast(*this);
- }
- void ShowWorldViewEx::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitShowWorldViewEx(*this);
- }
- void EndTurn::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitEndTurn(*this);
- }
- void GamePause::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitGamePause(*this);
- }
- void DismissHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitDismissHero(*this);
- }
- void MoveHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitMoveHero(*this);
- }
- void CastleTeleportHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitCastleTeleportHero(*this);
- }
- void ArrangeStacks::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitArrangeStacks(*this);
- }
- void BulkMoveArmy::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkMoveArmy(*this);
- }
- void BulkSplitStack::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkSplitStack(*this);
- }
- void BulkMergeStacks::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkMergeStacks(*this);
- }
- void BulkSplitAndRebalanceStack::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkSplitAndRebalanceStack(*this);
- }
- void DisbandCreature::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitDisbandCreature(*this);
- }
- void BuildStructure::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBuildStructure(*this);
- }
- void VisitTownBuilding::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitVisitTownBuilding(*this);
- }
- void RazeStructure::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitRazeStructure(*this);
- }
- void SpellResearch::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSpellResearch(*this);
- }
- void RecruitCreatures::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitRecruitCreatures(*this);
- }
- void UpgradeCreature::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitUpgradeCreature(*this);
- }
- void GarrisonHeroSwap::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitGarrisonHeroSwap(*this);
- }
- void ExchangeArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitExchangeArtifacts(*this);
- }
- void BulkExchangeArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBulkExchangeArtifacts(*this);
- }
- void ManageBackpackArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitManageBackpackArtifacts(*this);
- }
- void ManageEquippedArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitManageEquippedArtifacts(*this);
- }
- void AssembleArtifacts::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitAssembleArtifacts(*this);
- }
- void EraseArtifactByClient::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitEraseArtifactByClient(*this);
- }
- void BuyArtifact::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBuyArtifact(*this);
- }
- void TradeOnMarketplace::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitTradeOnMarketplace(*this);
- }
- void SetFormation::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSetFormation(*this);
- }
- void HireHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitHireHero(*this);
- }
- void BuildBoat::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBuildBoat(*this);
- }
- void QueryReply::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitQueryReply(*this);
- }
- void MakeAction::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitMakeAction(*this);
- }
- void DigWithHero::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitDigWithHero(*this);
- }
- void CastAdvSpell::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitCastAdvSpell(*this);
- }
- void SaveGame::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitSaveGame(*this);
- }
- void PlayerMessage::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerMessage(*this);
- }
- void PlayerMessageClient::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitPlayerMessageClient(*this);
- }
- void CenterView::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitCenterView(*this);
- }
- void LobbyClientConnected::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyClientConnected(*this);
- }
- void LobbyClientDisconnected::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyClientDisconnected(*this);
- }
- void LobbyChatMessage::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyChatMessage(*this);
- }
- void LobbyGuiAction::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyGuiAction(*this);
- }
- void LobbyLoadProgress::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyLoadProgress(*this);
- }
- void LobbyRestartGame::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyRestartGame(*this);
- }
- void LobbyStartGame::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyStartGame(*this);
- }
- void LobbyPrepareStartGame::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyPrepareStartGame(*this);
- }
- void LobbyChangeHost::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyChangeHost(*this);
- }
- void LobbyUpdateState::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyUpdateState(*this);
- }
- void LobbySetMap::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetMap(*this);
- }
- void LobbySetCampaign::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetCampaign(*this);
- }
- void LobbySetCampaignMap::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetCampaignMap(*this);
- }
- void LobbySetCampaignBonus::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetCampaignBonus(*this);
- }
- void LobbyChangePlayerOption::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyChangePlayerOption(*this);
- }
- void LobbySetPlayer::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetPlayer(*this);
- }
- void LobbySetPlayerName::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetPlayerName(*this);
- }
- void LobbySetPlayerHandicap::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetPlayerHandicap(*this);
- }
- void LobbySetSimturns::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetSimturns(*this);
- }
- void LobbySetTurnTime::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetTurnTime(*this);
- }
- void LobbySetExtraOptions::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetExtraOptions(*this);
- }
- void LobbySetDifficulty::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbySetDifficulty(*this);
- }
- void LobbyForceSetPlayer::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyForceSetPlayer(*this);
- }
- void LobbyShowMessage::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyShowMessage(*this);
- }
- void LobbyPvPAction::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyPvPAction(*this);
- }
- void LobbyDelete::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitLobbyDelete(*this);
- }
- void CatapultAttack::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitCatapultAttack(*this);
- }
- void BattleResultAccepted::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleResultAccepted(*this);
- }
- void BattleCancelled::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitBattleCancelled(*this);
- }
- void TurnTimeUpdate::visitTyped(ICPackVisitor & visitor)
- {
- visitor.visitTurnTimeUpdate(*this);
- }
- VCMI_LIB_NAMESPACE_END
|