Changeset View
Changeset View
Standalone View
Standalone View
ps/trunk/binaries/data/mods/public/simulation/helpers/Commands.js
Show First 20 Lines • Show All 727 Lines • ▼ Show 20 Lines | for (let ent of data.entities) | ||||
var cmpEntityLimits = QueryPlayerIDInterface(player, IID_EntityLimits); | var cmpEntityLimits = QueryPlayerIDInterface(player, IID_EntityLimits); | ||||
if (cmpEntityLimits && !cmpEntityLimits.AllowedToReplace(ent, cmd.template)) | if (cmpEntityLimits && !cmpEntityLimits.AllowedToReplace(ent, cmd.template)) | ||||
{ | { | ||||
if (g_DebugCommands) | if (g_DebugCommands) | ||||
warn("Invalid command: build limits check failed for player " + player + ": " + uneval(cmd)); | warn("Invalid command: build limits check failed for player " + player + ": " + uneval(cmd)); | ||||
continue; | continue; | ||||
} | } | ||||
var cmpTechnologyManager = QueryOwnerInterface(ent, IID_TechnologyManager); | let cmpTechnologyManager = QueryOwnerInterface(ent, IID_TechnologyManager); | ||||
if (cmpUpgrade.GetRequiredTechnology(cmd.template) && !cmpTechnologyManager.IsTechnologyResearched(cmpUpgrade.GetRequiredTechnology(cmd.template))) | let requiredTechnology = cmpUpgrade.GetRequiredTechnology(cmd.template); | ||||
if (requiredTechnology && (!cmpTechnologyManager || !cmpTechnologyManager.IsTechnologyResearched(requiredTechnology))) | |||||
{ | { | ||||
if (g_DebugCommands) | if (g_DebugCommands) | ||||
warn("Invalid command: upgrading requires unresearched technology: " + uneval(cmd)); | warn("Invalid command: upgrading is not possible for this player or requires unresearched technology: " + uneval(cmd)); | ||||
continue; | continue; | ||||
} | } | ||||
cmpUpgrade.Upgrade(cmd.template, data.cmpPlayer); | cmpUpgrade.Upgrade(cmd.template, data.cmpPlayer); | ||||
} | } | ||||
}, | }, | ||||
"cancel-upgrade": function(player, cmd, data) | "cancel-upgrade": function(player, cmd, data) | ||||
▲ Show 20 Lines • Show All 968 Lines • Show Last 20 Lines |
Wildfire Games · Phabricator