Enable technologies on captured buildings. Allow a negation on the civ selection in the technology json files. Patch by fatherbushido

This was SVN commit r18021.
This commit is contained in:
sanderd17
2016-04-11 19:40:53 +00:00
parent 8c870f8633
commit e0cfcbd806
2 changed files with 11 additions and 3 deletions
@@ -152,7 +152,7 @@ ProductionQueue.prototype.GetTechnologiesList = function()
var cmpPlayer = QueryOwnerInterface(this.entity);
var cmpIdentity = Engine.QueryInterface(this.entity, IID_Identity);
if (!cmpPlayer || !cmpIdentity || cmpPlayer.GetCiv() != cmpIdentity.GetCiv())
if (!cmpPlayer || !cmpIdentity)
return [];
var techs = string.split(/\s+/);
@@ -170,14 +170,22 @@ TechnologyManager.prototype.CheckTechnologyRequirements = function(reqs)
return false;
}
}
else if (reqs.civ)
else if (reqs.civ)
{
var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player);
if (cmpPlayer && cmpPlayer.GetCiv() == reqs.civ)
if (cmpPlayer && cmpPlayer.GetCiv() == reqs.civ)
return true;
else
return false;
}
else if (reqs.notciv)
{
var cmpPlayer = Engine.QueryInterface(this.entity, IID_Player);
if (cmpPlayer && cmpPlayer.GetCiv() == reqs.notciv)
return false;
else
return true;
}
// The technologies requirements are not a recognised format
error("Bad requirements " + uneval(reqs));