[1.0] Found bug permanently reducing accuracy, with code fix

Where bugs go to lie down and rest

Moderator: Moderator

Post Reply
Message
Author
Hirumakai
Thalore
Posts: 192
Joined: Wed Aug 11, 2010 2:39 pm

[1.0] Found bug permanently reducing accuracy, with code fix

#1 Post by Hirumakai »

Scounrel's Strategies is currently bugged. It reduces accuracy, but then never removes the accuracy debuff due to a typo in the removal line:

eff.atkid = self:addTemporaryValue("combat_atk", -eff.atk)

self:removeTemporaryValue("combat_atk", eff.atk)

It should be atkid, not atk.

The correct code for the entire effect should be:

Code: Select all

newEffect{
	name = "DISABLE", image = "talents/cripple.png",
	desc = "Disable",
	long_desc = function(self, eff) return ("The target is disabled, reducing movement speed by %d%% and physical power by %d."):format(eff.speed * 100, eff.atk) end,
	type = "physical",
	subtype = { wound=true },
	status = "detrimental",
	parameters = { speed=0.15, atk=10 },
	on_gain = function(self, err) return "#Target# is disabled.", "+Disabled" end,
	on_lose = function(self, err) return "#Target# is not disabled anymore.", "-Disabled" end,
	activate = function(self, eff)
		eff.speedid = self:addTemporaryValue("movement_speed", -eff.speed)
		eff.atkid = self:addTemporaryValue("combat_atk", -eff.atk)
	end,
	deactivate = function(self, eff)
		self:removeTemporaryValue("movement_speed", eff.speedid)
		self:removeTemporaryValue("combat_atk", eff.atkid)
	end,
}

Post Reply