File: ClientNetPackVisitors.h

package info (click to toggle)
vcmi 1.6.5%2Bdfsg-2
  • links: PTS, VCS
  • area: contrib
  • in suites: forky, sid, trixie
  • size: 32,060 kB
  • sloc: cpp: 238,971; python: 265; sh: 224; xml: 157; ansic: 78; objc: 61; makefile: 49
file content (133 lines) | stat: -rw-r--r-- 5,857 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
/*
 * ClientNetPackVisitors.h, 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
 *
 */
#pragma once

#include "../lib/networkPacks/NetPackVisitor.h"

class CClient;

VCMI_LIB_NAMESPACE_BEGIN

class CGameState;

VCMI_LIB_NAMESPACE_END

class ApplyClientNetPackVisitor : public VCMI_LIB_WRAP_NAMESPACE(ICPackVisitor)
{
private:
	CClient & cl;
	CGameState & gs;

public:
	ApplyClientNetPackVisitor(CClient & cl, CGameState & gs)
		:cl(cl), gs(gs)
	{
	}

	void visitSetResources(SetResources & pack) override;
	void visitSetPrimSkill(SetPrimSkill & pack) override;
	void visitSetSecSkill(SetSecSkill & pack) override;
	void visitHeroVisitCastle(HeroVisitCastle & pack) override;
	void visitSetMana(SetMana & pack) override;
	void visitSetMovePoints(SetMovePoints & pack) override;
	void visitSetResearchedSpells(SetResearchedSpells & pack) override;
	void visitFoWChange(FoWChange & pack) override;
	void visitChangeStackCount(ChangeStackCount & pack) override;
	void visitSetStackType(SetStackType & pack) override;
	void visitEraseStack(EraseStack & pack) override;
	void visitSwapStacks(SwapStacks & pack) override;
	void visitInsertNewStack(InsertNewStack & pack) override;
	void visitRebalanceStacks(RebalanceStacks & pack) override;
	void visitBulkRebalanceStacks(BulkRebalanceStacks & pack) override;
	void visitBulkSmartRebalanceStacks(BulkSmartRebalanceStacks & pack) override;
	void visitPutArtifact(PutArtifact & pack) override;
	void visitEraseArtifact(BulkEraseArtifacts & pack) override;
	void visitBulkMoveArtifacts(BulkMoveArtifacts & pack) override;
	void visitAssembledArtifact(AssembledArtifact & pack) override;
	void visitDisassembledArtifact(DisassembledArtifact & pack) override;
	void visitHeroVisit(HeroVisit & pack) override;
	void visitNewTurn(NewTurn & pack) override;
	void visitGiveBonus(GiveBonus & pack) override;
	void visitChangeObjPos(ChangeObjPos & pack) override;
	void visitPlayerEndsTurn(PlayerEndsTurn & pack) override;
	void visitPlayerEndsGame(PlayerEndsGame & pack) override;
	void visitPlayerReinitInterface(PlayerReinitInterface & pack) override;
	void visitRemoveBonus(RemoveBonus & pack) override;
	void visitRemoveObject(RemoveObject & pack) override;
	void visitTryMoveHero(TryMoveHero & pack) override;
	void visitNewStructures(NewStructures & pack) override;
	void visitRazeStructures(RazeStructures & pack) override;
	void visitSetAvailableCreatures(SetAvailableCreatures & pack) override;
	void visitSetHeroesInTown(SetHeroesInTown & pack) override;
	void visitHeroRecruited(HeroRecruited & pack) override;
	void visitGiveHero(GiveHero & pack) override;
	void visitInfoWindow(InfoWindow & pack) override;
	void visitSetObjectProperty(SetObjectProperty & pack) override;
	void visitHeroLevelUp(HeroLevelUp & pack) override;
	void visitCommanderLevelUp(CommanderLevelUp & pack) override;
	void visitBlockingDialog(BlockingDialog & pack) override;
	void visitGarrisonDialog(GarrisonDialog & pack) override;
	void visitExchangeDialog(ExchangeDialog & pack) override;
	void visitTeleportDialog(TeleportDialog & pack) override;
	void visitMapObjectSelectDialog(MapObjectSelectDialog & pack) override;
	void visitBattleStart(BattleStart & pack) override;
	void visitBattleNextRound(BattleNextRound & pack) override;
	void visitBattleSetActiveStack(BattleSetActiveStack & pack) override;
	void visitBattleLogMessage(BattleLogMessage & pack) override;
	void visitBattleTriggerEffect(BattleTriggerEffect & pack) override;
	void visitBattleAttack(BattleAttack & pack) override;
	void visitBattleSpellCast(BattleSpellCast & pack) override;
	void visitSetStackEffect(SetStackEffect & pack) override;
	void visitStacksInjured(StacksInjured & pack) override;
	void visitBattleResultsApplied(BattleResultsApplied & pack) override;
	void visitBattleUnitsChanged(BattleUnitsChanged & pack) override;
	void visitBattleObstaclesChanged(BattleObstaclesChanged & pack) override;
	void visitCatapultAttack(CatapultAttack & pack) override;
	void visitEndAction(EndAction & pack) override;
	void visitPackageApplied(PackageApplied & pack) override;
	void visitSystemMessage(SystemMessage & pack) override;
	void visitPlayerBlocked(PlayerBlocked & pack) override;
	void visitPlayerStartsTurn(PlayerStartsTurn & pack) override;
	void visitTurnTimeUpdate(TurnTimeUpdate & pack) override;
	void visitPlayerMessageClient(PlayerMessageClient & pack) override;
	void visitAdvmapSpellCast(AdvmapSpellCast & pack) override;
	void visitShowWorldViewEx(ShowWorldViewEx & pack) override;	
	void visitOpenWindow(OpenWindow & pack) override;
	void visitCenterView(CenterView & pack) override;
	void visitNewObject(NewObject & pack) override;
	void visitSetAvailableArtifacts(SetAvailableArtifacts & pack) override;
	void visitEntitiesChanged(EntitiesChanged & pack) override;
};

class ApplyFirstClientNetPackVisitor : public VCMI_LIB_WRAP_NAMESPACE(ICPackVisitor)
{
private:
	CClient & cl;
	CGameState & gs;

public:
	ApplyFirstClientNetPackVisitor(CClient & cl, CGameState & gs)
		:cl(cl), gs(gs)
	{
	}

	void visitChangeObjPos(ChangeObjPos & pack) override;
	void visitRemoveObject(RemoveObject & pack) override;
	void visitTryMoveHero(TryMoveHero & pack) override;
	void visitGiveHero(GiveHero & pack) override;
	void visitBattleStart(BattleStart & pack) override;
	void visitBattleNextRound(BattleNextRound & pack) override;
	void visitBattleUpdateGateState(BattleUpdateGateState & pack) override;
	void visitBattleResult(BattleResult & pack) override;
	void visitBattleStackMoved(BattleStackMoved & pack) override;
	void visitBattleAttack(BattleAttack & pack) override;
	void visitStartAction(StartAction & pack) override;
	void visitSetObjectProperty(SetObjectProperty & pack) override;
};