1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-23 22:37:55 +02:00

Reogranize callback-related classes on 1 file = 1 class basis

This commit is contained in:
Ivan Savenko
2025-05-11 11:58:09 +03:00
parent 29207c0b0f
commit 35644da2b7
217 changed files with 1670 additions and 1494 deletions

View File

@@ -0,0 +1,48 @@
/*
* CNonConstInfoCallback.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 "CPrivilegedInfoCallback.h"
#include <vcmi/Metatype.h>
VCMI_LIB_NAMESPACE_BEGIN
class JsonNode;
class DLL_LINKAGE CNonConstInfoCallback : public CPrivilegedInfoCallback
{
public:
//keep const version of callback accessible
using CGameInfoCallback::getPlayerState;
using CGameInfoCallback::getTeam;
using CGameInfoCallback::getPlayerTeam;
using CGameInfoCallback::getHero;
using CGameInfoCallback::getTown;
using CGameInfoCallback::getTile;
using CGameInfoCallback::getArtInstance;
using CGameInfoCallback::getObjInstance;
using CGameInfoCallback::getArtSet;
PlayerState * getPlayerState(const PlayerColor & color, bool verbose = true);
TeamState * getTeam(const TeamID & teamID); //get team by team ID
TeamState * getPlayerTeam(const PlayerColor & color); // get team by player color
CGHeroInstance * getHero(const ObjectInstanceID & objid);
CGTownInstance * getTown(const ObjectInstanceID & objid);
TerrainTile * getTile(const int3 & pos);
CArtifactInstance * getArtInstance(const ArtifactInstanceID & aid);
CGObjectInstance * getObjInstance(const ObjectInstanceID & oid);
CArmedInstance * getArmyInstance(const ObjectInstanceID & oid);
CArtifactSet * getArtSet(const ArtifactLocation & loc);
virtual void updateEntity(Metatype metatype, int32_t index, const JsonNode & data) = 0;
};
VCMI_LIB_NAMESPACE_END