Ticket #3303: trickle.diff

File trickle.diff, 3.7 KB (added by s0600204, 9 years ago)

Proposed patch

  • simulation/components/ResourceTrickle.js

    function ResourceTrickle() {}  
    22
    33ResourceTrickle.prototype.Schema =
    44    "<a:help>Controls the resource trickle ability of the unit.</a:help>" +
    5     "<element name='FoodRate' a:help='Food given to the player every interval'>" +
    6         "<ref name='nonNegativeDecimal'/>" +
    7     "</element>" +
    8     "<element name='WoodRate' a:help='Wood given to the player every interval'>" +
    9         "<ref name='nonNegativeDecimal'/>" +
    10     "</element>" +
    11     "<element name='StoneRate' a:help='Stone given to the player every interval'>" +
    12         "<ref name='nonNegativeDecimal'/>" +
    13     "</element>" +
    14     "<element name='MetalRate' a:help='Metal given to the player every interval'>" +
    15         "<ref name='nonNegativeDecimal'/>" +
     5    "<element name='Rates' a:help='Trickle Rates'>" +
     6        "<optional><element name='food' a:help='Food given to the player every interval'><ref name='nonNegativeDecimal'/></element></optional>" +
     7        "<optional><element name='wood' a:help='Wood given to the player every interval'><ref name='nonNegativeDecimal'/></element></optional>" +
     8        "<optional><element name='stone' a:help='Stone given to the player every interval'><ref name='nonNegativeDecimal'/></element></optional>" +
     9        "<optional><element name='metal' a:help='Metal given to the player every interval'><ref name='nonNegativeDecimal'/></element></optional>" +
    1610    "</element>" +
    1711    "<element name='Interval' a:help='Number of miliseconds must pass for the player to gain the next trickle.'>" +
    1812        "<ref name='nonNegativeDecimal'/>" +
    ResourceTrickle.prototype.GetTimer = function()  
    3327
    3428ResourceTrickle.prototype.GetRates = function()
    3529{
    36     var foodrate = +this.template.FoodRate;
    37     var woodrate = +this.template.WoodRate;
    38     var stonerate = +this.template.StoneRate;
    39     var metalrate = +this.template.MetalRate;
     30    var foodrate = +this.template.Rates.food;
     31    var woodrate = +this.template.Rates.wood;
     32    var stonerate = +this.template.Rates.stone;
     33    var metalrate = +this.template.Rates.metal;
    4034
    41     foodrate = ApplyValueModificationsToEntity("ResourceTrickle/FoodRate", foodrate, this.entity);
    42     woodrate = ApplyValueModificationsToEntity("ResourceTrickle/WoodRate", woodrate, this.entity);
    43     stonerate = ApplyValueModificationsToEntity("ResourceTrickle/StoneRate", stonerate, this.entity);
    44     metalrate = ApplyValueModificationsToEntity("ResourceTrickle/MetalRate", metalrate, this.entity);
     35    foodrate = ApplyValueModificationsToEntity("ResourceTrickle/Rates/food", foodrate, this.entity);
     36    woodrate = ApplyValueModificationsToEntity("ResourceTrickle/Rates/wood", woodrate, this.entity);
     37    stonerate = ApplyValueModificationsToEntity("ResourceTrickle/Rates/stone", stonerate, this.entity);
     38    metalrate = ApplyValueModificationsToEntity("ResourceTrickle/Rates/metal", metalrate, this.entity);
    4539   
    4640    return {"food": foodrate, "wood": woodrate, "stone": stonerate, "metal": metalrate };
    4741};
  • simulation/templates/structures/pers_apadana.xml

     
    5353    </Technologies>
    5454  </ProductionQueue>
    5555  <ResourceTrickle>
    56     <FoodRate>1.0</FoodRate>
    57     <WoodRate>1.0</WoodRate>
    58     <StoneRate>0.75</StoneRate>
    59     <MetalRate>0.75</MetalRate>
    60     <Interval>1000</Interval>
     56    <Rates>
     57      <food>1.0</food>
     58      <wood>1.0</wood>
     59      <stone>0.75</stone>
     60      <metal>0.75</metal>
     61    </Rates>
     62    <Interval>1000</Interval>
    6163  </ResourceTrickle>
    6264  <VisualActor>
    6365    <Actor>structures/persians/sb1_new.xml</Actor>