mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-25 22:42:04 +02:00
Support for configurable town fortifications
Removed most of hardcoded checks for fort level or for presence of fort/ citadel/castle buildings. It is now possible to define which parts of town fortifications are provided by town buildings Configuration for H3-like fortifications is provided in buildingsLibrary.json and will be used automatically by mods as long as mods have buidings named "fort", "citadel" and "castle". Alternatively, mods can separately define: - hitpoints of walls (shared value for all sections) - hitpoints of central, upper and lower towers (separate values) - presence of moat - shooters for each tower (separate values)
This commit is contained in:
@@ -33,6 +33,7 @@
|
||||
#include "CPlayerState.h"
|
||||
#include "TerrainHandler.h"
|
||||
#include "entities/building/CBuilding.h"
|
||||
#include "entities/building/TownFortifications.h"
|
||||
#include "mapObjects/CBank.h"
|
||||
#include "mapObjects/CGCreature.h"
|
||||
#include "mapObjects/CGMarket.h"
|
||||
@@ -2328,7 +2329,7 @@ void CatapultAttack::applyBattle(IBattleState * battleState)
|
||||
if(!town)
|
||||
return;
|
||||
|
||||
if(town->fortLevel() == CGTownInstance::NONE)
|
||||
if(town->fortificationsLevel().wallsHealth == 0)
|
||||
return;
|
||||
|
||||
for(const auto & part : attackedParts)
|
||||
|
||||
Reference in New Issue
Block a user