Skip to content

Commit 53f0163

Browse files
committed
This is probably better, but shouldn't matter for now.
1 parent f6f9ec6 commit 53f0163

1 file changed

Lines changed: 8 additions & 6 deletions

File tree

LuaRules/Gadgets/unit_attributes_generic.lua

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -321,17 +321,19 @@ local function UpdateWeapons(unitID, unitDefID, weaponMods, speedFactor, rangeUp
321321
spSetUnitWeaponState(unitID, i, "sprayAngle", sprayAngle)
322322

323323
spSetUnitWeaponState(unitID, i, "projectiles", moddedProjectiles)
324-
if rangeUpdateRequired and not rangeUpdater[unitID] then
324+
if rangeUpdateRequired then
325325
if w.projectileSpeed and not projectileSpeedLock[unitID] then
326326
-- Changing projectile speed without subsequently setting range causes some weapons to go to zero range. Eg Scorcher
327327
local moddedSpeed = w.projectileSpeed*((weaponMods and weaponMods[i] and weaponMods[i].projSpeedMult) or 1)*projSpeedFactor
328328
spSetUnitWeaponState(unitID, i, "projectileSpeed", moddedSpeed)
329329
end
330-
local moddedRange = w.range*((weaponMods and weaponMods[i] and weaponMods[i].rangeMult) or 1)*rangeFactor
331-
spSetUnitWeaponState(unitID, i, "range", moddedRange)
332-
spSetUnitWeaponDamages(unitID, i, "dynDamageRange", moddedRange)
333-
if maxRangeModified < moddedRange then
334-
maxRangeModified = moddedRange
330+
if not rangeUpdater[unitID] then
331+
local moddedRange = w.range*((weaponMods and weaponMods[i] and weaponMods[i].rangeMult) or 1)*rangeFactor
332+
spSetUnitWeaponState(unitID, i, "range", moddedRange)
333+
spSetUnitWeaponDamages(unitID, i, "dynDamageRange", moddedRange)
334+
if maxRangeModified < moddedRange then
335+
maxRangeModified = moddedRange
336+
end
335337
end
336338
end
337339
if GG.ATT_ENABLE_DAMAGE then

0 commit comments

Comments
 (0)