Index: ps/trunk/binaries/data/mods/public/simulation/components/RangeOverlayManager.js
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/components/RangeOverlayManager.js (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/components/RangeOverlayManager.js (revision 24349)
@@ -1,92 +1,95 @@
function RangeOverlayManager() {}
RangeOverlayManager.prototype.Schema = "";
RangeOverlayManager.prototype.Init = function()
{
this.enabled = false;
this.enabledRangeTypes = {
"Attack": false,
"Auras": false,
"Heal": false
};
this.rangeVisualizations = new Map();
};
// The GUI enables visualizations
RangeOverlayManager.prototype.Serialize = null;
RangeOverlayManager.prototype.Deserialize = function(data)
{
this.Init();
};
RangeOverlayManager.prototype.UpdateRangeOverlays = function(componentName)
{
let cmp = Engine.QueryInterface(this.entity, global["IID_" + componentName]);
if (cmp)
this.rangeVisualizations.set(componentName, cmp.GetRangeOverlays());
};
RangeOverlayManager.prototype.SetEnabled = function(enabled, enabledRangeTypes, forceUpdate)
{
this.enabled = enabled;
this.enabledRangeTypes = enabledRangeTypes;
this.RegenerateRangeOverlays(forceUpdate);
};
RangeOverlayManager.prototype.RegenerateRangeOverlays = function(forceUpdate)
{
let cmpRangeOverlayRenderer = Engine.QueryInterface(this.entity, IID_RangeOverlayRenderer);
if (!cmpRangeOverlayRenderer)
return;
cmpRangeOverlayRenderer.ResetRangeOverlays();
if (!this.enabled && !forceUpdate)
return;
+ let cmpObstruction = Engine.QueryInterface(this.entity, IID_Obstruction);
+ let rangeBonus = cmpObstruction ? cmpObstruction.GetSize() : 0;
+
// Only render individual range types that have been enabled
for (let rangeOverlayType of this.rangeVisualizations.keys())
if (this.enabledRangeTypes[rangeOverlayType])
for (let rangeOverlay of this.rangeVisualizations.get(rangeOverlayType))
cmpRangeOverlayRenderer.AddRangeOverlay(
- rangeOverlay.radius,
+ rangeOverlay.radius + rangeBonus,
rangeOverlay.texture,
rangeOverlay.textureMask,
rangeOverlay.thickness);
};
RangeOverlayManager.prototype.OnOwnershipChanged = function(msg)
{
if (msg.to == INVALID_PLAYER)
return;
for (let type in this.enabledRangeTypes)
this.UpdateRangeOverlays(type);
this.RegenerateRangeOverlays(false);
};
RangeOverlayManager.prototype.OnValueModification = function(msg)
{
if (msg.valueNames.indexOf("Heal/Range") == -1 &&
msg.valueNames.indexOf("Attack/Ranged/MinRange") == -1 &&
msg.valueNames.indexOf("Attack/Ranged/MaxRange") == -1)
return;
this.UpdateRangeOverlays(msg.component);
this.RegenerateRangeOverlays(false);
};
/**
* RangeOverlayManager component is deserialized before the TechnologyManager, so need to update the ranges here
*/
RangeOverlayManager.prototype.OnDeserialized = function(msg)
{
for (let type in this.enabledRangeTypes)
this.UpdateRangeOverlays(type);
};
Engine.RegisterComponentType(IID_RangeOverlayManager, "RangeOverlayManager", RangeOverlayManager);
Index: ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/iber_monument.json
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/iber_monument.json (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/iber_monument.json (revision 24349)
@@ -1,16 +1,16 @@
{
"type": "range",
- "radius": 50,
+ "radius": 45,
"affects": ["Soldier"],
"modifications": [
{ "value": "Attack/Melee/Damage/Hack", "multiply": 1.2 },
{ "value": "Attack/Melee/Damage/Pierce", "multiply": 1.2 },
{ "value": "Attack/Melee/Damage/Crush", "multiply": 1.2 },
{ "value": "Attack/Ranged/Damage/Hack", "multiply": 1.2 },
{ "value": "Attack/Ranged/Damage/Pierce", "multiply": 1.2 },
{ "value": "Attack/Ranged/Damage/Crush", "multiply": 1.2 }
],
"auraName": "Religious Fervor",
"auraDescription": "Soldiers +20% melee and ranged attack damage.",
"overlayIcon": "art/textures/ui/session/auras/attack_bonus.png"
}
Index: ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/kush_pyramids_economic.json
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/kush_pyramids_economic.json (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/kush_pyramids_economic.json (revision 24349)
@@ -1,11 +1,11 @@
{
"type": "range",
- "radius": 60,
+ "radius": 50,
"affects": ["Worker"],
"modifications": [
{ "value": "ResourceGatherer/BaseSpeed", "multiply": 1.15 }
],
"auraName": "Patriotism",
"auraDescription": "Workers +15% gather speed.",
"overlayIcon": "art/textures/ui/session/auras/buildgather_bonus.png"
}
Index: ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/kush_pyramids_military.json
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/kush_pyramids_military.json (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/kush_pyramids_military.json (revision 24349)
@@ -1,19 +1,19 @@
{
"type": "range",
- "radius": 70,
+ "radius": 55,
"affects": ["Soldier"],
"modifications": [
{ "value": "Attack/Melee/Damage/Hack", "multiply": 1.1 },
{ "value": "Attack/Melee/Damage/Pierce", "multiply": 1.1 },
{ "value": "Attack/Melee/Damage/Crush", "multiply": 1.1 },
{ "value": "Attack/Ranged/Damage/Hack", "multiply": 1.1 },
{ "value": "Attack/Ranged/Damage/Pierce", "multiply": 1.1 },
{ "value": "Attack/Ranged/Damage/Crush", "multiply": 1.1 },
{ "value": "Resistance/Entity/Damage/Hack", "add": 1 },
{ "value": "Resistance/Entity/Damage/Pierce", "add": 1 },
{ "value": "Resistance/Entity/Damage/Crush", "add": 1 }
],
"auraName": "Exhortative Presence",
"auraDescription": "Soldiers +1 armor level and +10% melee and ranged attack damage.",
"overlayIcon": "art/textures/ui/session/auras/attack_bonus.png"
}
Index: ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/loyalty_regen.json
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/loyalty_regen.json (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/loyalty_regen.json (revision 24349)
@@ -1,11 +1,11 @@
{
"type": "range",
- "radius": 75,
+ "radius": 60,
"affects": ["Structure"],
"modifications": [
{ "value": "Capturable/GarrisonRegenRate", "multiply": 1.5 }
],
"auraName": "Loyalty",
"auraDescription": "Structures +50% capture points garrison regeneration rate.",
"overlayIcon": "art/textures/ui/session/auras/build_bonus.png"
}
Index: ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/maur_pillar.json
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/maur_pillar.json (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/maur_pillar.json (revision 24349)
@@ -1,11 +1,11 @@
{
"type": "range",
- "radius": 75,
+ "radius": 70,
"affects": ["Trader"],
"modifications": [
{ "value": "UnitMotion/WalkSpeed", "multiply": 1.2 }
],
"auraName": "Edict of Ashoka",
"auraDescription": "Traders +20% movement speed.",
"overlayIcon": "art/textures/ui/session/auras/build_bonus.png"
}
Index: ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/rotary_mill.json
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/rotary_mill.json (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/rotary_mill.json (revision 24349)
@@ -1,11 +1,11 @@
{
"type": "range",
- "radius": 60,
+ "radius": 50,
"affects": ["Worker"],
"modifications": [
{ "value": "ResourceGatherer/Rates/food.grain", "multiply": 1.25 }
],
"auraDescription" : "Workers +25% grain gather rate.",
"auraName": "Farming bonus",
"overlayIcon": "art/textures/ui/session/auras/farming.png"
}
Index: ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/temple_heal.json
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/temple_heal.json (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/data/auras/structures/temple_heal.json (revision 24349)
@@ -1,11 +1,11 @@
{
"type": "range",
- "radius": 40,
+ "radius": 20,
"affects": ["Human"],
"modifications": [
{ "value": "Health/RegenRate", "add": 1 }
],
"auraName": "Medical Treatment",
"auraDescription": "Humans +1 health regeneration rate.",
"overlayIcon": "art/textures/ui/session/auras/heal.png"
}
Index: ps/trunk/binaries/data/mods/public/simulation/templates/structures/iber/monument.xml
===================================================================
--- ps/trunk/binaries/data/mods/public/simulation/templates/structures/iber/monument.xml (revision 24348)
+++ ps/trunk/binaries/data/mods/public/simulation/templates/structures/iber/monument.xml (revision 24349)
@@ -1,57 +1,57 @@
structures/iber_monument
Monument
Monument
- 135
+ 145
120
100
100
-
+
8.0
1200
decay|rubble/rubble_stone_2x2
iber
Revered Monument
Gur Oroigarri
Monument
structures/iberian_bull.png
20
20
-
+
interface/complete/building/complete_iber_monument.xml
structures/iberians/sb_1.xml
structures/fndn_2x2.xml