0ad/binaries/data/mods/public/simulation/components/Loot.js
bb 0a6d78ddd5 Allow loot to be modified by technologies and auras
Patch By: Grugnas
Commented on By: fatherbushido, elexis
Differential Revision: https://code.wildfiregames.com/D408
This was SVN commit r20462.
2017-11-15 22:56:04 +00:00

26 lines
749 B
JavaScript

function Loot() {}
Loot.prototype.Schema =
"<a:help>Specifies the loot credited when this entity is killed.</a:help>" +
"<a:example>" +
"<xp>35</xp>" +
"<metal>10</metal>" +
"</a:example>" +
Resources.BuildSchema("nonNegativeInteger", ["xp"]);
Loot.prototype.Serialize = null; // we have no dynamic state to save
Loot.prototype.GetXp = function()
{
return Math.floor(ApplyValueModificationsToEntity("Loot/xp", +(this.template.xp || 0), this.entity));
};
Loot.prototype.GetResources = function()
{
let ret = {};
for (let res of Resources.GetCodes())
ret[res] = Math.floor(ApplyValueModificationsToEntity("Loot/" + res, +(this.template[res] || 0), this.entity));
return ret;
};
Engine.RegisterComponentType(IID_Loot, "Loot", Loot);