Kael
Deity
Us th1s thred 2 rep0rt cosmedic isues
CvPlot* pLoopPlot;
int iImprovement = pPlot->getImprovementType();
if (iImprovement != NO_IMPROVEMENT)
{
if (GC.getImprovementInfo((ImprovementTypes)iImprovement).getSpawnUnitType() != NO_UNIT)
{
if (!isHuman() || GC.getImprovementInfo((ImprovementTypes)iImprovement).isPermanent() == false)
{
if (atWar(getTeam(), GET_PLAYER(BARBARIAN_PLAYER).getTeam()))
{
if (isHuman())
{
gDLL->getInterfaceIFace()->addMessage(getOwner(), false, GC.getDefineINT("EVENT_MESSAGE_TIME"), gDLL->getText("TXT_KEY_MESSAGE_LAIR_DESTROYED"), "AS2D_CITYRAZE", MESSAGE_TYPE_MAJOR_EVENT, GC.getImprovementInfo((ImprovementTypes)iImprovement).getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), getX_INLINE(), getY_INLINE(), true, true);
}
pPlot->setImprovementType(NO_IMPROVEMENT);
}
}
}
}
I am confused on this part in the DLL:
Code:CvPlot* pLoopPlot; int iImprovement = pPlot->getImprovementType(); if (iImprovement != NO_IMPROVEMENT) { if (GC.getImprovementInfo((ImprovementTypes)iImprovement).getSpawnUnitType() != NO_UNIT) { if (!isHuman() || GC.getImprovementInfo((ImprovementTypes)iImprovement).isPermanent() == false) { if (atWar(getTeam(), GET_PLAYER(BARBARIAN_PLAYER).getTeam())) { if (isHuman()) { gDLL->getInterfaceIFace()->addMessage(getOwner(), false, GC.getDefineINT("EVENT_MESSAGE_TIME"), gDLL->getText("TXT_KEY_MESSAGE_LAIR_DESTROYED"), "AS2D_CITYRAZE", MESSAGE_TYPE_MAJOR_EVENT, GC.getImprovementInfo((ImprovementTypes)iImprovement).getButton(), (ColorTypes)GC.getInfoTypeForString("COLOR_GREEN"), getX_INLINE(), getY_INLINE(), true, true); } pPlot->setImprovementType(NO_IMPROVEMENT); } } } }
The way it is written, an AI unit moving onto a PERMANENT Lair which happens to spawn units (none exist anymore, but anyway..) will destroy the Lair, even though it is permanent.
Is that intentional?