function Player.addSkillLevel(self, skillId, value)
local currentSkillLevel = self:getSkillLevel(skillId)
local sum = 0
if value > 0 then
while value > 0 do
sum = sum + self:getVocation():getRequiredSkillTries(skillId, currentSkillLevel + value)
value = value - 1
end
return self:addSkillTries(skillId, sum - self:getSkillTries(skillId))
else
value = math.min(currentSkillLevel, math.abs(value))
while value > 0 do
sum = sum + self:getVocation():getRequiredSkillTries(skillId, currentSkillLevel - value + 1)
value = value - 1
end
return...
function Player.addSkillLevel(self, skillId, value)
local currentSkillLevel = self:getSkillLevel(skillId)
local sum = 0
if value > 0 then
while value > 0 do
sum = sum + self:getVocation():getRequiredSkillTries(skillId, currentSkillLevel + value)
value = value - 1
end
return self:addSkillTries(skillId, sum - self:getSkillTries(skillId))
else
value = math.min(currentSkillLevel, math.abs(value))
while value > 0 do
sum = sum + self:getVocation():getRequiredSkillTries(skillId, currentSkillLevel - value + 1)
value = value - 1
end
return self:removeSkillTries(skillId, sum + self:getSkillTries(skillId), true)
end
end
player:addSkillLevel(skillId, -10)
Seems like my source was too old, it didn't include that. Thanks, now it'll be easier. =)looks like there is a function in player.lua#297 that does that
seems like you can pass a negative value,LUA:function Player.addSkillLevel(self, skillId, value) local currentSkillLevel = self:getSkillLevel(skillId) local sum = 0 if value > 0 then while value > 0 do sum = sum + self:getVocation():getRequiredSkillTries(skillId, currentSkillLevel + value) value = value - 1 end return self:addSkillTries(skillId, sum - self:getSkillTries(skillId)) else value = math.min(currentSkillLevel, math.abs(value)) while value > 0 do sum = sum + self:getVocation():getRequiredSkillTries(skillId, currentSkillLevel - value + 1) value = value - 1 end return self:removeSkillTries(skillId, sum + self:getSkillTries(skillId), true) end end
so:should workLUA:player:addSkillLevel(skillId, -10)