mirror of
https://github.com/vcmi/vcmi.git
synced 2025-08-15 20:03:15 +02:00
Fixed AI building only one upgraded dwelling per town. Minor tweaks.
This commit is contained in:
@@ -1287,7 +1287,7 @@ void VCAI::buildStructure(const CGTownInstance * t)
|
|||||||
//try to upgrade dwelling
|
//try to upgrade dwelling
|
||||||
for(int i = 0; i < ARRAY_COUNT(unitsUpgrade); i++)
|
for(int i = 0; i < ARRAY_COUNT(unitsUpgrade); i++)
|
||||||
{
|
{
|
||||||
if (t->hasBuilt(unitsSource[i]))
|
if (t->hasBuilt(unitsSource[i]) && !t->hasBuilt(unitsUpgrade[i]))
|
||||||
{
|
{
|
||||||
if (tryBuildStructure(t, unitsUpgrade[i]))
|
if (tryBuildStructure(t, unitsUpgrade[i]))
|
||||||
return;
|
return;
|
||||||
@@ -3133,8 +3133,9 @@ TSubgoal CGoal::whatToDoToAchieve()
|
|||||||
boost::sort(objs, isCloser);
|
boost::sort(objs, isCloser);
|
||||||
BOOST_FOREACH(const CGObjectInstance *obj, objs)
|
BOOST_FOREACH(const CGObjectInstance *obj, objs)
|
||||||
{ //find safe dwelling
|
{ //find safe dwelling
|
||||||
if (isSafeToVisit(hero, obj->visitablePos())) //TODO: make use of multiple heroes
|
auto pos = obj->visitablePos();
|
||||||
return CGoal(VISIT_TILE).sethero(hero).settile(obj->visitablePos());
|
if (isSafeToVisit(hero, pos) && ai->isAccessibleForHero(pos, hero)) //TODO: make use of multiple heroes
|
||||||
|
return CGoal(VISIT_TILE).sethero(hero).settile(pos);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -76,7 +76,7 @@
|
|||||||
<LibraryPath>$(LibraryPath)</LibraryPath>
|
<LibraryPath>$(LibraryPath)</LibraryPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='RD|Win32'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='RD|Win32'">
|
||||||
<OutDir>$(SolutionDir)$(Configuration)\bin\Scripting\</OutDir>
|
<OutDir>..\..\..\RD\Scripting</OutDir>
|
||||||
<IncludePath>$(IncludePath)</IncludePath>
|
<IncludePath>$(IncludePath)</IncludePath>
|
||||||
<LibraryPath>$(LibraryPath)</LibraryPath>
|
<LibraryPath>$(LibraryPath)</LibraryPath>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
@@ -98,7 +98,7 @@
|
|||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
<AdditionalLibraryDirectories>../../../libs; ../../;</AdditionalLibraryDirectories>
|
<AdditionalLibraryDirectories>G:\Programowanie\VCMI;../../../libs;../..;../../../;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
|
||||||
<AdditionalDependencies>VCMI_lib.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>VCMI_lib.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
@@ -115,7 +115,7 @@
|
|||||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
<OptimizeReferences>true</OptimizeReferences>
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
<AdditionalLibraryDirectories>../../../libs; ../../;</AdditionalLibraryDirectories>
|
<AdditionalLibraryDirectories>G:\Programowanie\VCMI\libs;G:\Programowanie\VCMI\RD</AdditionalLibraryDirectories>
|
||||||
<AdditionalDependencies>VCMI_lib.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
<AdditionalDependencies>VCMI_lib.lib;%(AdditionalDependencies)</AdditionalDependencies>
|
||||||
</Link>
|
</Link>
|
||||||
</ItemDefinitionGroup>
|
</ItemDefinitionGroup>
|
||||||
|
Reference in New Issue
Block a user