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