forked from mirrors/0ad
Fix eslint rule 'prefer-const' in maps/scripts
eslint --no-config-lookup --fix --rule '"prefer-const": 1' \
binaries/data/mods/public/maps/scripts
Ref: #7812
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com>
This commit is contained in:
@@ -1,18 +1,18 @@
|
||||
Trigger.prototype.InitCaptureTheRelic = function()
|
||||
{
|
||||
let cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
let catafalqueTemplates = shuffleArray(cmpTemplateManager.FindAllTemplates(false).filter(
|
||||
const cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
const catafalqueTemplates = shuffleArray(cmpTemplateManager.FindAllTemplates(false).filter(
|
||||
name => GetIdentityClasses(cmpTemplateManager.GetTemplate(name).Identity || {}).indexOf("Relic") != -1));
|
||||
|
||||
let potentialSpawnPoints = TriggerHelper.GetLandSpawnPoints();
|
||||
const potentialSpawnPoints = TriggerHelper.GetLandSpawnPoints();
|
||||
if (!potentialSpawnPoints.length)
|
||||
{
|
||||
error("No gaia entities found on this map that could be used as spawn points!");
|
||||
return;
|
||||
}
|
||||
|
||||
let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
let numSpawnedRelics = cmpEndGameManager.GetGameSettings().relicCount;
|
||||
const cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
const numSpawnedRelics = cmpEndGameManager.GetGameSettings().relicCount;
|
||||
this.playerRelicsCount = new Array(TriggerHelper.GetNumberOfPlayers()).fill(0, 1);
|
||||
this.playerRelicsCount[0] = numSpawnedRelics;
|
||||
|
||||
@@ -20,14 +20,14 @@ Trigger.prototype.InitCaptureTheRelic = function()
|
||||
{
|
||||
this.relics[i] = TriggerHelper.SpawnUnits(pickRandom(potentialSpawnPoints), catafalqueTemplates[i], 1, 0)[0];
|
||||
|
||||
let cmpPositionRelic = Engine.QueryInterface(this.relics[i], IID_Position);
|
||||
const cmpPositionRelic = Engine.QueryInterface(this.relics[i], IID_Position);
|
||||
cmpPositionRelic.SetYRotation(randomAngle());
|
||||
}
|
||||
};
|
||||
|
||||
Trigger.prototype.CheckCaptureTheRelicVictory = function(data)
|
||||
{
|
||||
let cmpIdentity = Engine.QueryInterface(data.entity, IID_Identity);
|
||||
const cmpIdentity = Engine.QueryInterface(data.entity, IID_Identity);
|
||||
if (!cmpIdentity || !cmpIdentity.HasClass("Relic") || data.from == INVALID_PLAYER)
|
||||
return;
|
||||
|
||||
@@ -58,15 +58,15 @@ Trigger.prototype.CheckCaptureTheRelicCountdown = function()
|
||||
return;
|
||||
}
|
||||
|
||||
let activePlayers = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager).GetActivePlayers();
|
||||
let relicOwners = activePlayers.filter(playerID => this.playerRelicsCount[playerID]);
|
||||
const activePlayers = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager).GetActivePlayers();
|
||||
const relicOwners = activePlayers.filter(playerID => this.playerRelicsCount[playerID]);
|
||||
if (!relicOwners.length)
|
||||
{
|
||||
this.DeleteCaptureTheRelicVictoryMessages();
|
||||
return;
|
||||
}
|
||||
|
||||
let winningPlayers = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager).GetAlliedVictory() ?
|
||||
const winningPlayers = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager).GetAlliedVictory() ?
|
||||
activePlayers.filter(playerID => relicOwners.every(owner => QueryPlayerIDInterface(playerID, IID_Diplomacy).IsMutualAlly(owner))) :
|
||||
[relicOwners[0]];
|
||||
|
||||
@@ -94,7 +94,7 @@ Trigger.prototype.DeleteCaptureTheRelicVictoryMessages = function()
|
||||
Engine.QueryInterface(SYSTEM_ENTITY, IID_Timer).CancelTimer(this.relicsVictoryTimer);
|
||||
this.relicsVictoryTimer = undefined;
|
||||
|
||||
let cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
cmpGuiInterface.DeleteTimeNotification(this.ownRelicsVictoryMessage);
|
||||
cmpGuiInterface.DeleteTimeNotification(this.othersRelicsVictoryMessage);
|
||||
this.relicsVictoryCountdownPlayers = [];
|
||||
@@ -102,8 +102,8 @@ Trigger.prototype.DeleteCaptureTheRelicVictoryMessages = function()
|
||||
|
||||
Trigger.prototype.StartCaptureTheRelicCountdown = function(winningPlayers)
|
||||
{
|
||||
let cmpTimer = Engine.QueryInterface(SYSTEM_ENTITY, IID_Timer);
|
||||
let cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpTimer = Engine.QueryInterface(SYSTEM_ENTITY, IID_Timer);
|
||||
const cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
|
||||
if (this.relicsVictoryTimer)
|
||||
{
|
||||
@@ -115,10 +115,10 @@ Trigger.prototype.StartCaptureTheRelicCountdown = function(winningPlayers)
|
||||
if (!this.relics.length)
|
||||
return;
|
||||
|
||||
let others = [-1];
|
||||
const others = [-1];
|
||||
for (let playerID = 1; playerID < TriggerHelper.GetNumberOfPlayers(); ++playerID)
|
||||
{
|
||||
let cmpPlayer = QueryPlayerIDInterface(playerID);
|
||||
const cmpPlayer = QueryPlayerIDInterface(playerID);
|
||||
if (cmpPlayer.GetState() == "won")
|
||||
return;
|
||||
|
||||
@@ -126,7 +126,7 @@ Trigger.prototype.StartCaptureTheRelicCountdown = function(winningPlayers)
|
||||
others.push(playerID);
|
||||
}
|
||||
|
||||
let cmpPlayer = QueryOwnerInterface(this.relics[0], IID_Player);
|
||||
const cmpPlayer = QueryOwnerInterface(this.relics[0], IID_Player);
|
||||
if (!cmpPlayer)
|
||||
{
|
||||
warn("Relic entity " + this.relics[0] + " has no owner.");
|
||||
@@ -135,10 +135,10 @@ Trigger.prototype.StartCaptureTheRelicCountdown = function(winningPlayers)
|
||||
this.CheckCaptureTheRelicCountdown();
|
||||
return;
|
||||
}
|
||||
let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
let captureTheRelicDuration = cmpEndGameManager.GetGameSettings().relicDuration;
|
||||
const cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
const captureTheRelicDuration = cmpEndGameManager.GetGameSettings().relicDuration;
|
||||
|
||||
let isTeam = winningPlayers.length > 1;
|
||||
const isTeam = winningPlayers.length > 1;
|
||||
this.ownRelicsVictoryMessage = cmpGuiInterface.AddTimeNotification({
|
||||
"message": isTeam ?
|
||||
markForTranslation("%(_player_)s and their allies have captured all relics and will win in %(time)s.") :
|
||||
@@ -165,7 +165,7 @@ Trigger.prototype.StartCaptureTheRelicCountdown = function(winningPlayers)
|
||||
|
||||
Trigger.prototype.CaptureTheRelicVictorySetWinner = function(winningPlayers)
|
||||
{
|
||||
let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
const cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
cmpEndGameManager.MarkPlayersAsWon(
|
||||
winningPlayers,
|
||||
n => markForPluralTranslation(
|
||||
@@ -179,7 +179,7 @@ Trigger.prototype.CaptureTheRelicVictorySetWinner = function(winningPlayers)
|
||||
};
|
||||
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.relics = [];
|
||||
cmpTrigger.playerRelicsCount = [];
|
||||
cmpTrigger.relicsVictoryTimer = undefined;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.ConquestAddVictoryCondition({
|
||||
"classFilter": "ConquestCritical+!Foundation",
|
||||
"defeatReason": markForTranslation("%(player)s has been defeated (lost all critical units and structures).")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.ConquestAddVictoryCondition({
|
||||
"classFilter": "CivilCentre+!Foundation",
|
||||
"defeatReason": markForTranslation("%(player)s has been defeated (lost all civic centers).")
|
||||
|
||||
@@ -3,7 +3,7 @@ Trigger.prototype.ConquestOwnershipChanged = function(msg)
|
||||
if (!this.conquestDataInit)
|
||||
return;
|
||||
|
||||
for (let query of this.conquestQueries)
|
||||
for (const query of this.conquestQueries)
|
||||
{
|
||||
if (!TriggerHelper.EntityMatchesClassList(msg.entity, query.classFilter))
|
||||
continue;
|
||||
@@ -14,14 +14,14 @@ Trigger.prototype.ConquestOwnershipChanged = function(msg)
|
||||
if (msg.from <= 0)
|
||||
continue;
|
||||
|
||||
let entities = query.entitiesByPlayer[msg.from];
|
||||
let index = entities.indexOf(msg.entity);
|
||||
const entities = query.entitiesByPlayer[msg.from];
|
||||
const index = entities.indexOf(msg.entity);
|
||||
if (index != -1)
|
||||
entities.splice(index, 1);
|
||||
|
||||
if (!entities.length)
|
||||
{
|
||||
let cmpPlayer = QueryPlayerIDInterface(msg.from);
|
||||
const cmpPlayer = QueryPlayerIDInterface(msg.from);
|
||||
if (cmpPlayer)
|
||||
cmpPlayer.SetState("defeated", query.defeatReason);
|
||||
}
|
||||
@@ -36,11 +36,11 @@ Trigger.prototype.ConquestStartGameCount = function()
|
||||
return;
|
||||
}
|
||||
|
||||
let cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
let entitiesByPlayer = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager).GetAllPlayers().map(playerID =>
|
||||
const cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
const entitiesByPlayer = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager).GetAllPlayers().map(playerID =>
|
||||
cmpRangeManager.GetEntitiesByPlayer(playerID));
|
||||
|
||||
for (let query of this.conquestQueries)
|
||||
for (const query of this.conquestQueries)
|
||||
query.entitiesByPlayer = entitiesByPlayer.map(
|
||||
ents => ents.filter(
|
||||
ent => TriggerHelper.EntityMatchesClassList(ent, query.classFilter)));
|
||||
@@ -54,7 +54,7 @@ Trigger.prototype.ConquestAddVictoryCondition = function(data)
|
||||
};
|
||||
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.conquestDataInit = false;
|
||||
cmpTrigger.conquestQueries = [];
|
||||
cmpTrigger.RegisterTrigger("OnOwnershipChanged", "ConquestOwnershipChanged", { "enabled": true });
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.ConquestAddVictoryCondition({
|
||||
"classFilter": "Structure",
|
||||
"defeatReason": markForTranslation("%(player)s has been defeated (lost all structures).")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.ConquestAddVictoryCondition({
|
||||
"classFilter": "Unit+!Animal",
|
||||
"defeatReason": markForTranslation("%(player)s has been defeated (lost all units).")
|
||||
|
||||
@@ -9,16 +9,16 @@ Trigger.prototype.EndGameAction = function()
|
||||
|
||||
this.once = false;
|
||||
|
||||
for (let player of Engine.GetEntitiesWithInterface(IID_StatisticsTracker))
|
||||
for (const player of Engine.GetEntitiesWithInterface(IID_StatisticsTracker))
|
||||
{
|
||||
let cmpStatisticsTracker = Engine.QueryInterface(player, IID_StatisticsTracker);
|
||||
const cmpStatisticsTracker = Engine.QueryInterface(player, IID_StatisticsTracker);
|
||||
if (cmpStatisticsTracker)
|
||||
print(cmpStatisticsTracker.GetStatisticsJSON() + "\n");
|
||||
}
|
||||
};
|
||||
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.RegisterTrigger("OnPlayerWon", "EndGameAction", { "enabled": true });
|
||||
cmpTrigger.RegisterTrigger("OnPlayerDefeated", "EndGameAction", { "enabled": true });
|
||||
cmpTrigger.once = true;
|
||||
|
||||
@@ -1,22 +1,22 @@
|
||||
Trigger.prototype.InitRegicideGame = function(msg)
|
||||
{
|
||||
let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
let regicideGarrison = cmpEndGameManager.GetGameSettings().regicideGarrison;
|
||||
const cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
const regicideGarrison = cmpEndGameManager.GetGameSettings().regicideGarrison;
|
||||
|
||||
let playersCivs = [];
|
||||
const playersCivs = [];
|
||||
for (let playerID = 1; playerID < TriggerHelper.GetNumberOfPlayers(); ++playerID)
|
||||
playersCivs[playerID] = QueryPlayerIDInterface(playerID, IID_Identity).GetCiv();
|
||||
|
||||
// Get all hero templates of these civs
|
||||
let heroTemplates = {};
|
||||
let cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
for (let templateName of cmpTemplateManager.FindAllTemplates(false))
|
||||
const heroTemplates = {};
|
||||
const cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
for (const templateName of cmpTemplateManager.FindAllTemplates(false))
|
||||
{
|
||||
if (!templateName.startsWith("units/"))
|
||||
continue;
|
||||
|
||||
let identity = cmpTemplateManager.GetTemplate(templateName).Identity;
|
||||
let classes = GetIdentityClasses(identity);
|
||||
const identity = cmpTemplateManager.GetTemplate(templateName).Identity;
|
||||
const classes = GetIdentityClasses(identity);
|
||||
|
||||
if (classes.indexOf("Hero") == -1 ||
|
||||
playersCivs.every(civ => civ != identity.Civ))
|
||||
@@ -33,23 +33,23 @@ Trigger.prototype.InitRegicideGame = function(msg)
|
||||
}
|
||||
|
||||
// Sort available spawn points by preference
|
||||
let spawnPreferences = ["CivilCentre", "Structure", "Ship"];
|
||||
let getSpawnPreference = entity => {
|
||||
const spawnPreferences = ["CivilCentre", "Structure", "Ship"];
|
||||
const getSpawnPreference = entity => {
|
||||
|
||||
let cmpIdentity = Engine.QueryInterface(entity, IID_Identity);
|
||||
const cmpIdentity = Engine.QueryInterface(entity, IID_Identity);
|
||||
if (!cmpIdentity)
|
||||
return -1;
|
||||
|
||||
let classes = cmpIdentity.GetClassesList();
|
||||
const classes = cmpIdentity.GetClassesList();
|
||||
|
||||
for (let i in spawnPreferences)
|
||||
for (const i in spawnPreferences)
|
||||
if (classes.indexOf(spawnPreferences[i]) != -1)
|
||||
return spawnPreferences.length - i;
|
||||
return 0;
|
||||
};
|
||||
|
||||
// Attempt to spawn one hero per player
|
||||
let cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
const cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
for (let playerID = 1; playerID < TriggerHelper.GetNumberOfPlayers(); ++playerID)
|
||||
{
|
||||
let spawnPoints = cmpRangeManager.GetEntitiesByPlayer(playerID).sort((entity1, entity2) =>
|
||||
@@ -58,9 +58,9 @@ Trigger.prototype.InitRegicideGame = function(msg)
|
||||
// Spawn the hero on land as close as possible
|
||||
if (!regicideGarrison && TriggerHelper.EntityMatchesClassList(spawnPoints[0], "Ship"))
|
||||
{
|
||||
let shipPosition = Engine.QueryInterface(spawnPoints[0], IID_Position).GetPosition2D();
|
||||
const shipPosition = Engine.QueryInterface(spawnPoints[0], IID_Position).GetPosition2D();
|
||||
|
||||
let distanceToShip = entity =>
|
||||
const distanceToShip = entity =>
|
||||
Engine.QueryInterface(entity, IID_Position).GetPosition2D().distanceToSquared(shipPosition);
|
||||
|
||||
spawnPoints = TriggerHelper.GetLandSpawnPoints().sort((entity1, entity2) =>
|
||||
@@ -79,18 +79,18 @@ Trigger.prototype.InitRegicideGame = function(msg)
|
||||
*/
|
||||
Trigger.prototype.SpawnRegicideHero = function(playerID, heroTemplates, spawnPoints)
|
||||
{
|
||||
for (let heroTemplate of shuffleArray(heroTemplates))
|
||||
for (let spawnPoint of spawnPoints)
|
||||
for (const heroTemplate of shuffleArray(heroTemplates))
|
||||
for (const spawnPoint of spawnPoints)
|
||||
{
|
||||
let cmpPosition = Engine.QueryInterface(spawnPoint, IID_Position);
|
||||
const cmpPosition = Engine.QueryInterface(spawnPoint, IID_Position);
|
||||
if (!cmpPosition || !cmpPosition.IsInWorld())
|
||||
continue;
|
||||
|
||||
// Consider nomad maps where units start on a ship
|
||||
let isShip = TriggerHelper.EntityMatchesClassList(spawnPoint, "Ship");
|
||||
const isShip = TriggerHelper.EntityMatchesClassList(spawnPoint, "Ship");
|
||||
if (isShip)
|
||||
{
|
||||
let cmpGarrisonHolder = Engine.QueryInterface(spawnPoint, IID_GarrisonHolder);
|
||||
const cmpGarrisonHolder = Engine.QueryInterface(spawnPoint, IID_GarrisonHolder);
|
||||
if (cmpGarrisonHolder.IsFull() ||
|
||||
!MatchesClassList(heroTemplate.classes, cmpGarrisonHolder.GetAllowedClasses()))
|
||||
continue;
|
||||
@@ -104,7 +104,7 @@ Trigger.prototype.SpawnRegicideHero = function(playerID, heroTemplates, spawnPoi
|
||||
|
||||
if (isShip)
|
||||
{
|
||||
let cmpUnitAI = Engine.QueryInterface(hero, IID_UnitAI);
|
||||
const cmpUnitAI = Engine.QueryInterface(hero, IID_UnitAI);
|
||||
cmpUnitAI.Garrison(spawnPoint);
|
||||
}
|
||||
|
||||
@@ -117,7 +117,7 @@ Trigger.prototype.SpawnRegicideHero = function(playerID, heroTemplates, spawnPoi
|
||||
|
||||
Trigger.prototype.RenameRegicideHero = function(data)
|
||||
{
|
||||
let index = this.regicideHeroes.indexOf(data.entity);
|
||||
const index = this.regicideHeroes.indexOf(data.entity);
|
||||
if (index != -1)
|
||||
this.regicideHeroes[index] = data.newentity;
|
||||
};
|
||||
@@ -131,7 +131,7 @@ Trigger.prototype.CheckRegicideDefeat = function(data)
|
||||
};
|
||||
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.regicideHeroes = [];
|
||||
cmpTrigger.DoAfterDelay(0, "InitRegicideGame", {});
|
||||
cmpTrigger.RegisterTrigger("OnOwnershipChanged", "CheckRegicideDefeat", { "enabled": true });
|
||||
|
||||
@@ -5,7 +5,7 @@ var TriggerHelper = {};
|
||||
|
||||
TriggerHelper.GetPlayerIDFromEntity = function(ent)
|
||||
{
|
||||
let cmpPlayer = Engine.QueryInterface(ent, IID_Player);
|
||||
const cmpPlayer = Engine.QueryInterface(ent, IID_Player);
|
||||
if (cmpPlayer)
|
||||
return cmpPlayer.GetPlayerID();
|
||||
|
||||
@@ -14,13 +14,13 @@ TriggerHelper.GetPlayerIDFromEntity = function(ent)
|
||||
|
||||
TriggerHelper.IsInWorld = function(ent)
|
||||
{
|
||||
let cmpPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
const cmpPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
return cmpPosition && cmpPosition.IsInWorld();
|
||||
};
|
||||
|
||||
TriggerHelper.GetEntityPosition2D = function(ent)
|
||||
{
|
||||
let cmpPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
const cmpPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
|
||||
if (!cmpPosition || !cmpPosition.IsInWorld())
|
||||
return undefined;
|
||||
@@ -30,7 +30,7 @@ TriggerHelper.GetEntityPosition2D = function(ent)
|
||||
|
||||
TriggerHelper.GetOwner = function(ent)
|
||||
{
|
||||
let cmpOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
const cmpOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
if (cmpOwnership)
|
||||
return cmpOwnership.GetOwner();
|
||||
|
||||
@@ -81,7 +81,7 @@ TriggerHelper.GetAllPlayersEntities = function()
|
||||
|
||||
TriggerHelper.SetUnitStance = function(ent, stance)
|
||||
{
|
||||
let cmpUnitAI = Engine.QueryInterface(ent, IID_UnitAI);
|
||||
const cmpUnitAI = Engine.QueryInterface(ent, IID_UnitAI);
|
||||
if (cmpUnitAI)
|
||||
cmpUnitAI.SwitchToStance(stance);
|
||||
};
|
||||
@@ -121,9 +121,9 @@ TriggerHelper.AddUpgradeTemplate = function(owner, template)
|
||||
*/
|
||||
TriggerHelper.SpawnUnits = function(source, template, count, owner)
|
||||
{
|
||||
let entities = [];
|
||||
let cmpFootprint = Engine.QueryInterface(source, IID_Footprint);
|
||||
let cmpPosition = Engine.QueryInterface(source, IID_Position);
|
||||
const entities = [];
|
||||
const cmpFootprint = Engine.QueryInterface(source, IID_Footprint);
|
||||
const cmpPosition = Engine.QueryInterface(source, IID_Position);
|
||||
|
||||
if (!cmpPosition || !cmpPosition.IsInWorld())
|
||||
{
|
||||
@@ -138,7 +138,7 @@ TriggerHelper.SpawnUnits = function(source, template, count, owner)
|
||||
{
|
||||
const ent = this.AddUpgradeTemplate(owner, template);
|
||||
|
||||
let cmpEntPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
const cmpEntPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
if (!cmpEntPosition)
|
||||
{
|
||||
Engine.DestroyEntity(ent);
|
||||
@@ -146,7 +146,7 @@ TriggerHelper.SpawnUnits = function(source, template, count, owner)
|
||||
continue;
|
||||
}
|
||||
|
||||
let cmpEntOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
const cmpEntOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
if (cmpEntOwnership)
|
||||
cmpEntOwnership.SetOwner(owner);
|
||||
|
||||
@@ -180,9 +180,9 @@ TriggerHelper.SpawnUnits = function(source, template, count, owner)
|
||||
*/
|
||||
TriggerHelper.SpawnGarrisonedUnits = function(entity, template, count, owner)
|
||||
{
|
||||
let entities = [];
|
||||
const entities = [];
|
||||
|
||||
let cmpGarrisonHolder = Engine.QueryInterface(entity, IID_GarrisonHolder);
|
||||
const cmpGarrisonHolder = Engine.QueryInterface(entity, IID_GarrisonHolder);
|
||||
if (!cmpGarrisonHolder)
|
||||
{
|
||||
error("tried to create garrisoned entities inside a non-garrisonholder");
|
||||
@@ -196,11 +196,11 @@ TriggerHelper.SpawnGarrisonedUnits = function(entity, template, count, owner)
|
||||
{
|
||||
const ent = this.AddUpgradeTemplate(owner, template);
|
||||
|
||||
let cmpOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
const cmpOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
if (cmpOwnership)
|
||||
cmpOwnership.SetOwner(owner);
|
||||
|
||||
let cmpGarrisonable = Engine.QueryInterface(ent, IID_Garrisonable);
|
||||
const cmpGarrisonable = Engine.QueryInterface(ent, IID_Garrisonable);
|
||||
if (cmpGarrisonable && cmpGarrisonable.Garrison(entity))
|
||||
entities.push(ent);
|
||||
else
|
||||
@@ -221,9 +221,9 @@ TriggerHelper.SpawnGarrisonedUnits = function(entity, template, count, owner)
|
||||
*/
|
||||
TriggerHelper.SpawnTurretedUnits = function(entity, template, count, owner)
|
||||
{
|
||||
let entities = [];
|
||||
const entities = [];
|
||||
|
||||
let cmpTurretHolder = Engine.QueryInterface(entity, IID_TurretHolder);
|
||||
const cmpTurretHolder = Engine.QueryInterface(entity, IID_TurretHolder);
|
||||
if (!cmpTurretHolder)
|
||||
{
|
||||
error("tried to create turreted entities inside a non-turretholder");
|
||||
@@ -237,11 +237,11 @@ TriggerHelper.SpawnTurretedUnits = function(entity, template, count, owner)
|
||||
{
|
||||
const ent = this.AddUpgradeTemplate(owner, template);
|
||||
|
||||
let cmpOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
const cmpOwnership = Engine.QueryInterface(ent, IID_Ownership);
|
||||
if (cmpOwnership)
|
||||
cmpOwnership.SetOwner(owner);
|
||||
|
||||
let cmpTurretable = Engine.QueryInterface(ent, IID_Turretable);
|
||||
const cmpTurretable = Engine.QueryInterface(ent, IID_Turretable);
|
||||
if (cmpTurretable && cmpTurretable.OccupyTurret(entity))
|
||||
entities.push(ent);
|
||||
else
|
||||
@@ -264,11 +264,11 @@ TriggerHelper.SpawnTurretedUnits = function(entity, template, count, owner)
|
||||
*/
|
||||
TriggerHelper.SpawnUnitsFromTriggerPoints = function(ref, template, count, owner = null)
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
let triggerPoints = cmpTrigger.GetTriggerPoints(ref);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const triggerPoints = cmpTrigger.GetTriggerPoints(ref);
|
||||
|
||||
let entities = {};
|
||||
for (let point of triggerPoints)
|
||||
const entities = {};
|
||||
for (const point of triggerPoints)
|
||||
entities[point] = TriggerHelper.SpawnUnits(point, template, count, owner);
|
||||
|
||||
return entities;
|
||||
@@ -279,7 +279,7 @@ TriggerHelper.SpawnUnitsFromTriggerPoints = function(ref, template, count, owner
|
||||
*/
|
||||
TriggerHelper.GetResourceType = function(entity)
|
||||
{
|
||||
let cmpResourceSupply = Engine.QueryInterface(entity, IID_ResourceSupply);
|
||||
const cmpResourceSupply = Engine.QueryInterface(entity, IID_ResourceSupply);
|
||||
if (!cmpResourceSupply)
|
||||
return undefined;
|
||||
|
||||
@@ -300,7 +300,7 @@ TriggerHelper.GetResourceType = function(entity)
|
||||
*/
|
||||
TriggerHelper.SetPlayerWon = function(playerID, victoryReason, defeatReason)
|
||||
{
|
||||
let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
const cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
cmpEndGameManager.MarkPlayerAndAlliesAsWon(playerID, victoryReason, defeatReason);
|
||||
};
|
||||
|
||||
@@ -313,7 +313,7 @@ TriggerHelper.SetPlayerWon = function(playerID, victoryReason, defeatReason)
|
||||
*/
|
||||
TriggerHelper.DefeatPlayer = function(playerID, defeatReason)
|
||||
{
|
||||
let cmpPlayer = QueryPlayerIDInterface(playerID);
|
||||
const cmpPlayer = QueryPlayerIDInterface(playerID);
|
||||
if (cmpPlayer)
|
||||
cmpPlayer.SetState("defeated", defeatReason);
|
||||
};
|
||||
@@ -335,7 +335,7 @@ TriggerHelper.GetNumberOfPlayers = function()
|
||||
*/
|
||||
TriggerHelper.EntityMatchesClassList = function(entity, classes)
|
||||
{
|
||||
let cmpIdentity = Engine.QueryInterface(entity, IID_Identity);
|
||||
const cmpIdentity = Engine.QueryInterface(entity, IID_Identity);
|
||||
return cmpIdentity && MatchesClassList(cmpIdentity.GetClassesList(), classes);
|
||||
};
|
||||
|
||||
@@ -360,30 +360,30 @@ TriggerHelper.GetAllPlayersEntitiesByClass = function(classes)
|
||||
*/
|
||||
TriggerHelper.GetLandSpawnPoints = function()
|
||||
{
|
||||
let cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
let cmpWaterManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_WaterManager);
|
||||
let cmpTerritoryManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TerritoryManager);
|
||||
let cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
const cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
const cmpWaterManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_WaterManager);
|
||||
const cmpTerritoryManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TerritoryManager);
|
||||
const cmpRangeManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager);
|
||||
|
||||
let neutralSpawnPoints = [];
|
||||
let nonNeutralSpawnPoints = [];
|
||||
const neutralSpawnPoints = [];
|
||||
const nonNeutralSpawnPoints = [];
|
||||
|
||||
for (let ent of cmpRangeManager.GetEntitiesByPlayer(0))
|
||||
for (const ent of cmpRangeManager.GetEntitiesByPlayer(0))
|
||||
{
|
||||
let cmpIdentity = Engine.QueryInterface(ent, IID_Identity);
|
||||
let cmpPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
const cmpIdentity = Engine.QueryInterface(ent, IID_Identity);
|
||||
const cmpPosition = Engine.QueryInterface(ent, IID_Position);
|
||||
if (!cmpIdentity || !cmpPosition || !cmpPosition.IsInWorld())
|
||||
continue;
|
||||
|
||||
let templateName = cmpTemplateManager.GetCurrentTemplateName(ent);
|
||||
const templateName = cmpTemplateManager.GetCurrentTemplateName(ent);
|
||||
if (!templateName)
|
||||
continue;
|
||||
|
||||
let template = cmpTemplateManager.GetTemplate(templateName);
|
||||
const template = cmpTemplateManager.GetTemplate(templateName);
|
||||
if (!template || template.UnitMotionFlying)
|
||||
continue;
|
||||
|
||||
let pos = cmpPosition.GetPosition();
|
||||
const pos = cmpPosition.GetPosition();
|
||||
if (pos.y <= cmpWaterManager.GetWaterLevel(pos.x, pos.z))
|
||||
continue;
|
||||
|
||||
@@ -398,9 +398,9 @@ TriggerHelper.GetLandSpawnPoints = function()
|
||||
|
||||
TriggerHelper.HasDealtWithTech = function(playerID, techName)
|
||||
{
|
||||
let cmpPlayerManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager);
|
||||
let playerEnt = cmpPlayerManager.GetPlayerByID(playerID);
|
||||
let cmpTechnologyManager = Engine.QueryInterface(playerEnt, IID_TechnologyManager);
|
||||
const cmpPlayerManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_PlayerManager);
|
||||
const playerEnt = cmpPlayerManager.GetPlayerByID(playerID);
|
||||
const cmpTechnologyManager = Engine.QueryInterface(playerEnt, IID_TechnologyManager);
|
||||
return cmpTechnologyManager && (cmpTechnologyManager.IsTechnologyQueued(techName) ||
|
||||
cmpTechnologyManager.IsTechnologyResearched(techName));
|
||||
};
|
||||
@@ -416,9 +416,9 @@ TriggerHelper.HasDealtWithTech = function(playerID, techName)
|
||||
*/
|
||||
TriggerHelper.GetTemplateNamesByClasses = function(classes, civ, packedState, rank, excludeBarracksVariants)
|
||||
{
|
||||
let templateNames = [];
|
||||
let cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
for (let templateName of cmpTemplateManager.FindAllTemplates(false))
|
||||
const templateNames = [];
|
||||
const cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
for (const templateName of cmpTemplateManager.FindAllTemplates(false))
|
||||
{
|
||||
if (templateName.startsWith("campaigns/army_"))
|
||||
continue;
|
||||
@@ -426,7 +426,7 @@ TriggerHelper.GetTemplateNamesByClasses = function(classes, civ, packedState, ra
|
||||
if (excludeBarracksVariants && templateName.endsWith("_barracks"))
|
||||
continue;
|
||||
|
||||
let template = cmpTemplateManager.GetTemplate(templateName);
|
||||
const template = cmpTemplateManager.GetTemplate(templateName);
|
||||
|
||||
if (civ && (!template.Identity || template.Identity.Civ != civ))
|
||||
continue;
|
||||
@@ -455,15 +455,15 @@ TriggerHelper.GetTemplateNamesByClasses = function(classes, civ, packedState, ra
|
||||
*/
|
||||
TriggerHelper.RandomTemplateComposition = function(templateNames, totalCount)
|
||||
{
|
||||
let frequencies = templateNames.map(() => randFloat(0, 1));
|
||||
let frequencySum = frequencies.reduce((sum, frequency) => sum + frequency, 0);
|
||||
const frequencies = templateNames.map(() => randFloat(0, 1));
|
||||
const frequencySum = frequencies.reduce((sum, frequency) => sum + frequency, 0);
|
||||
|
||||
let remainder = totalCount;
|
||||
let templateCounts = {};
|
||||
const templateCounts = {};
|
||||
|
||||
for (let i = 0; i < templateNames.length; ++i)
|
||||
{
|
||||
let count = i == templateNames.length - 1 ? remainder : Math.min(remainder, Math.round(frequencies[i] / frequencySum * totalCount));
|
||||
const count = i == templateNames.length - 1 ? remainder : Math.min(remainder, Math.round(frequencies[i] / frequencySum * totalCount));
|
||||
if (!count)
|
||||
continue;
|
||||
|
||||
@@ -495,11 +495,11 @@ TriggerHelper.RandomTemplateComposition = function(templateNames, totalCount)
|
||||
TriggerHelper.BalancedTemplateComposition = function(templateBalancing, totalCount)
|
||||
{
|
||||
// Remove all unavailable unique templates (heroes) and empty template arrays
|
||||
let cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
let templateBalancingFiltered = [];
|
||||
for (let templateBalance of templateBalancing)
|
||||
const cmpTemplateManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_TemplateManager);
|
||||
const templateBalancingFiltered = [];
|
||||
for (const templateBalance of templateBalancing)
|
||||
{
|
||||
let templateBalanceNew = clone(templateBalance);
|
||||
const templateBalanceNew = clone(templateBalance);
|
||||
|
||||
if (templateBalanceNew.unique_entities)
|
||||
templateBalanceNew.templates = templateBalanceNew.templates.filter(templateName =>
|
||||
@@ -511,10 +511,10 @@ TriggerHelper.BalancedTemplateComposition = function(templateBalancing, totalCou
|
||||
|
||||
// Helper function to add randomized templates to the result
|
||||
let remainder = totalCount;
|
||||
let results = {};
|
||||
let addTemplates = (templateNames, count) => {
|
||||
let templateCounts = TriggerHelper.RandomTemplateComposition(templateNames, count);
|
||||
for (let templateName in templateCounts)
|
||||
const results = {};
|
||||
const addTemplates = (templateNames, count) => {
|
||||
const templateCounts = TriggerHelper.RandomTemplateComposition(templateNames, count);
|
||||
for (const templateName in templateCounts)
|
||||
{
|
||||
if (!results[templateName])
|
||||
results[templateName] = 0;
|
||||
@@ -525,13 +525,13 @@ TriggerHelper.BalancedTemplateComposition = function(templateBalancing, totalCou
|
||||
};
|
||||
|
||||
// Add template groups with fixed counts
|
||||
for (let templateBalance of templateBalancingFiltered)
|
||||
for (const templateBalance of templateBalancingFiltered)
|
||||
if (templateBalance.count)
|
||||
addTemplates(templateBalance.templates, Math.min(remainder, templateBalance.count));
|
||||
|
||||
// Add template groups with frequency weights
|
||||
let templateBalancingFrequencies = templateBalancingFiltered.filter(templateBalance => !!templateBalance.frequency);
|
||||
let templateBalancingFrequencySum = templateBalancingFrequencies.reduce((sum, templateBalance) => sum + templateBalance.frequency, 0);
|
||||
const templateBalancingFrequencies = templateBalancingFiltered.filter(templateBalance => !!templateBalance.frequency);
|
||||
const templateBalancingFrequencySum = templateBalancingFrequencies.reduce((sum, templateBalance) => sum + templateBalance.frequency, 0);
|
||||
for (let i = 0; i < templateBalancingFrequencies.length; ++i)
|
||||
addTemplates(
|
||||
templateBalancingFrequencies[i].templates,
|
||||
@@ -552,22 +552,22 @@ TriggerHelper.BalancedTemplateComposition = function(templateBalancing, totalCou
|
||||
*/
|
||||
TriggerHelper.SpawnAndGarrisonAtClasses = function(playerID, classes, templates, capacityPercent)
|
||||
{
|
||||
let results = {};
|
||||
const results = {};
|
||||
|
||||
for (let entGarrisonHolder of Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager).GetEntitiesByPlayer(playerID))
|
||||
for (const entGarrisonHolder of Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager).GetEntitiesByPlayer(playerID))
|
||||
{
|
||||
let cmpGarrisonHolder = Engine.QueryInterface(entGarrisonHolder, IID_GarrisonHolder);
|
||||
const cmpGarrisonHolder = Engine.QueryInterface(entGarrisonHolder, IID_GarrisonHolder);
|
||||
if (!cmpGarrisonHolder)
|
||||
continue;
|
||||
|
||||
let cmpIdentity = Engine.QueryInterface(entGarrisonHolder, IID_Identity);
|
||||
const cmpIdentity = Engine.QueryInterface(entGarrisonHolder, IID_Identity);
|
||||
if (!cmpIdentity || !MatchesClassList(cmpIdentity.GetClassesList(), classes))
|
||||
continue;
|
||||
|
||||
// TODO: account for already garrisoned entities and garrison size.
|
||||
results[entGarrisonHolder] = this.RandomTemplateComposition(templates, Math.floor(cmpGarrisonHolder.GetCapacity() * capacityPercent));
|
||||
|
||||
for (let template in results[entGarrisonHolder])
|
||||
for (const template in results[entGarrisonHolder])
|
||||
TriggerHelper.SpawnGarrisonedUnits(entGarrisonHolder, template, results[entGarrisonHolder][template], playerID);
|
||||
}
|
||||
|
||||
@@ -581,21 +581,21 @@ TriggerHelper.SpawnAndGarrisonAtClasses = function(playerID, classes, templates,
|
||||
*/
|
||||
TriggerHelper.SpawnAndTurretAtClasses = function(playerID, classes, templates, capacityPercent)
|
||||
{
|
||||
let results = {};
|
||||
const results = {};
|
||||
|
||||
for (let entTurretHolder of Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager).GetEntitiesByPlayer(playerID))
|
||||
for (const entTurretHolder of Engine.QueryInterface(SYSTEM_ENTITY, IID_RangeManager).GetEntitiesByPlayer(playerID))
|
||||
{
|
||||
let cmpTurretHolder = Engine.QueryInterface(entTurretHolder, IID_TurretHolder);
|
||||
const cmpTurretHolder = Engine.QueryInterface(entTurretHolder, IID_TurretHolder);
|
||||
if (!cmpTurretHolder)
|
||||
continue;
|
||||
|
||||
let cmpIdentity = Engine.QueryInterface(entTurretHolder, IID_Identity);
|
||||
const cmpIdentity = Engine.QueryInterface(entTurretHolder, IID_Identity);
|
||||
if (!cmpIdentity || !MatchesClassList(cmpIdentity.GetClassesList(), classes))
|
||||
continue;
|
||||
|
||||
results[entTurretHolder] = this.RandomTemplateComposition(templates, Math.max(Math.floor(cmpTurretHolder.GetTurretPoints().length * capacityPercent - cmpTurretHolder.GetEntities().length), 0));
|
||||
|
||||
for (let template in results[entTurretHolder])
|
||||
for (const template in results[entTurretHolder])
|
||||
TriggerHelper.SpawnTurretedUnits(entTurretHolder, template, results[entTurretHolder][template], playerID);
|
||||
}
|
||||
|
||||
|
||||
@@ -9,9 +9,9 @@ Trigger.prototype.InitTutorial = function(data)
|
||||
this.RegisterTrigger("OnPlayerCommand", "OnPlayerCommandTrigger", { "enabled": false });
|
||||
this.tutorialEvents.push("OnPlayerCommand");
|
||||
|
||||
for (let goal of this.tutorialGoals)
|
||||
for (const goal of this.tutorialGoals)
|
||||
{
|
||||
for (let key in goal)
|
||||
for (const key in goal)
|
||||
{
|
||||
if (typeof goal[key] != "function" || this.tutorialEvents.indexOf(key) != -1)
|
||||
continue;
|
||||
@@ -19,7 +19,7 @@ Trigger.prototype.InitTutorial = function(data)
|
||||
continue;
|
||||
if (key == "IsDone")
|
||||
continue;
|
||||
let action = key + "Trigger";
|
||||
const action = key + "Trigger";
|
||||
this.RegisterTrigger(key, action, { "enabled": false });
|
||||
this.tutorialEvents.push(key);
|
||||
}
|
||||
@@ -32,7 +32,7 @@ Trigger.prototype.NextGoal = function(deserializing = false)
|
||||
{
|
||||
if (this.index > this.tutorialGoals.length)
|
||||
return;
|
||||
let goal = this.tutorialGoals[this.index];
|
||||
const goal = this.tutorialGoals[this.index];
|
||||
let needDelay = true;
|
||||
let readyButton = false;
|
||||
|
||||
@@ -41,11 +41,11 @@ Trigger.prototype.NextGoal = function(deserializing = false)
|
||||
this.Init();
|
||||
|
||||
Trigger.prototype.IsDone = goal.IsDone || (() => false);
|
||||
let goalAlreadyDone = this.IsDone();
|
||||
const goalAlreadyDone = this.IsDone();
|
||||
|
||||
for (let event of this.tutorialEvents)
|
||||
for (const event of this.tutorialEvents)
|
||||
{
|
||||
let action = event + "Trigger";
|
||||
const action = event + "Trigger";
|
||||
if (goal[event])
|
||||
{
|
||||
Trigger.prototype[action] = goal[event];
|
||||
@@ -81,7 +81,7 @@ Trigger.prototype.NextGoal = function(deserializing = false)
|
||||
|
||||
Trigger.prototype.GoalMessage = function(instructions, readyButton=false, leave=false)
|
||||
{
|
||||
let cmpGUIInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpGUIInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
cmpGUIInterface.PushNotification({
|
||||
"type": "tutorial",
|
||||
"players": [1],
|
||||
@@ -93,7 +93,7 @@ Trigger.prototype.GoalMessage = function(instructions, readyButton=false, leave=
|
||||
|
||||
Trigger.prototype.WarningMessage = function(warning)
|
||||
{
|
||||
let cmpGUIInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpGUIInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
cmpGUIInterface.PushNotification({
|
||||
"type": "tutorial",
|
||||
"players": [1],
|
||||
|
||||
@@ -29,14 +29,14 @@ Trigger.prototype.WonderVictoryDiplomacyChanged = function(data)
|
||||
if (!Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager).GetAlliedVictory())
|
||||
return;
|
||||
|
||||
for (let ent in this.wonderVictoryMessages)
|
||||
for (const ent in this.wonderVictoryMessages)
|
||||
{
|
||||
if (this.wonderVictoryMessages[ent].playerID != data.player && this.wonderVictoryMessages[ent].playerID != data.otherPlayer)
|
||||
continue;
|
||||
|
||||
let owner = this.wonderVictoryMessages[ent].playerID;
|
||||
let otherPlayer = owner == data.player ? data.otherPlayer : data.player;
|
||||
let newAllies = new Set(QueryPlayerIDInterface(owner, IID_Diplomacy).GetPlayersByDiplomacy("IsExclusiveMutualAlly"));
|
||||
const owner = this.wonderVictoryMessages[ent].playerID;
|
||||
const otherPlayer = owner == data.player ? data.otherPlayer : data.player;
|
||||
const newAllies = new Set(QueryPlayerIDInterface(owner, IID_Diplomacy).GetPlayersByDiplomacy("IsExclusiveMutualAlly"));
|
||||
if (newAllies.has(otherPlayer) && !this.wonderVictoryMessages[ent].allies.has(otherPlayer) ||
|
||||
!newAllies.has(otherPlayer) && this.wonderVictoryMessages[ent].allies.has(otherPlayer))
|
||||
{
|
||||
@@ -51,24 +51,24 @@ Trigger.prototype.WonderVictoryDiplomacyChanged = function(data)
|
||||
*/
|
||||
Trigger.prototype.WonderVictoryStartTimer = function(ent, player)
|
||||
{
|
||||
let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
let allies = cmpEndGameManager.GetAlliedVictory() ?
|
||||
const cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
const allies = cmpEndGameManager.GetAlliedVictory() ?
|
||||
QueryPlayerIDInterface(player, IID_Diplomacy).GetPlayersByDiplomacy("IsExclusiveMutualAlly") : [];
|
||||
|
||||
let others = [-1];
|
||||
const others = [-1];
|
||||
for (let playerID = 1; playerID < TriggerHelper.GetNumberOfPlayers(); ++playerID)
|
||||
{
|
||||
let cmpPlayer = QueryPlayerIDInterface(playerID);
|
||||
const cmpPlayer = QueryPlayerIDInterface(playerID);
|
||||
if (cmpPlayer.GetState() == "won")
|
||||
return;
|
||||
if (allies.indexOf(playerID) == -1 && playerID != player)
|
||||
others.push(playerID);
|
||||
}
|
||||
|
||||
let cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
let cmpTimer = Engine.QueryInterface(SYSTEM_ENTITY, IID_Timer);
|
||||
const cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpTimer = Engine.QueryInterface(SYSTEM_ENTITY, IID_Timer);
|
||||
|
||||
let wonderDuration = cmpEndGameManager.GetGameSettings().wonderDuration;
|
||||
const wonderDuration = cmpEndGameManager.GetGameSettings().wonderDuration;
|
||||
this.wonderVictoryMessages[ent] = {
|
||||
"playerID": player,
|
||||
"allies": new Set(allies),
|
||||
@@ -116,10 +116,10 @@ Trigger.prototype.WonderVictoryDeleteTimer = function(ent)
|
||||
if (!this.wonderVictoryMessages[ent])
|
||||
return;
|
||||
|
||||
let cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
let cmpTimer = Engine.QueryInterface(SYSTEM_ENTITY, IID_Timer);
|
||||
const cmpGuiInterface = Engine.QueryInterface(SYSTEM_ENTITY, IID_GuiInterface);
|
||||
const cmpTimer = Engine.QueryInterface(SYSTEM_ENTITY, IID_Timer);
|
||||
|
||||
for (let message of this.wonderVictoryMessages[ent].messages)
|
||||
for (const message of this.wonderVictoryMessages[ent].messages)
|
||||
cmpGuiInterface.DeleteTimeNotification(message);
|
||||
cmpTimer.CancelTimer(this.wonderVictoryMessages[ent].timer);
|
||||
delete this.wonderVictoryMessages[ent];
|
||||
@@ -127,13 +127,13 @@ Trigger.prototype.WonderVictoryDeleteTimer = function(ent)
|
||||
|
||||
Trigger.prototype.WonderVictoryPlayerWon = function(data)
|
||||
{
|
||||
for (let ent in this.wonderVictoryMessages)
|
||||
for (const ent in this.wonderVictoryMessages)
|
||||
this.WonderVictoryDeleteTimer(ent);
|
||||
};
|
||||
|
||||
Trigger.prototype.WonderVictorySetWinner = function(playerID)
|
||||
{
|
||||
let cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
const cmpEndGameManager = Engine.QueryInterface(SYSTEM_ENTITY, IID_EndGameManager);
|
||||
cmpEndGameManager.MarkPlayerAndAlliesAsWon(
|
||||
playerID,
|
||||
n => markForPluralTranslation(
|
||||
@@ -147,7 +147,7 @@ Trigger.prototype.WonderVictorySetWinner = function(playerID)
|
||||
};
|
||||
|
||||
{
|
||||
let cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
const cmpTrigger = Engine.QueryInterface(SYSTEM_ENTITY, IID_Trigger);
|
||||
cmpTrigger.RegisterTrigger("OnEntityRenamed", "WonderVictoryEntityRenamed", { "enabled": true });
|
||||
cmpTrigger.RegisterTrigger("OnOwnershipChanged", "WonderVictoryOwnershipChanged", { "enabled": true });
|
||||
cmpTrigger.RegisterTrigger("OnDiplomacyChanged", "WonderVictoryDiplomacyChanged", { "enabled": true });
|
||||
|
||||
Reference in New Issue
Block a user