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