• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

setTicks (NIL VALUE)

jededias

Member
Joined
Jan 21, 2019
Messages
66
Solutions
1
Reaction score
12
Lua:
attempt to call method 'setTicks' (a nil value)
stack traceback:
        [C]: in function 'setTicks'

I got this error in my script in TFS 1.3

Code:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_LIGHT)
condition:setParameter(CONDITION_PARAM_LIGHT_LEVEL, 6)
condition:setParameter(CONDITION_PARAM_LIGHT_COLOR, 215)
condition:setParameter(CONDITION_PARAM_TICKS, (6*60+10)*1000)
combat:setCondition(condition)

local spellOutfit = Condition(CONDITION_OUTFIT, CONDITIONID_COMBAT)
local outfitConfig = {
    newOutfit = 100,
    outfitInterval = 3
}

function onCastSpell(creature, var)
        creature:setOutfit({lookType = outfitConfig.newOutfit})
        creature:setTicks(outfitConfig.outfitInterval * 1000)
    creature:addCondition(spellOutfit)
    return combat:execute(creature, var)
end
 
Solution
E
Lua:
local outfitConfig = {
    newOutfit = 100,
    outfitInterval = 5
}

local condition = Condition(CONDITION_OUTFIT)
condition:setTicks(outfitConfig.outfitInterval * 1000)

function onCastSpell(creature, variant)
    condition:setOutfit(outfitConfig.newOutfit)
    creature:addCondition(condition)
    creature:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
    return true
end

I don't know if that utevo lux code part was needed but you can still add it if you want to
you need to set ticks to the condition, not to the creature...

if you want to set a monster outfit just use this:

creature:setMonsterOutfit(outfitConfig.newOutfit, outfitConfig.outfitInterval * 1000)

look this for example:
Now it remove outfit, show the blue bright and back the outfit
But it don't show the new outfit


Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_LIGHT)
condition:setParameter(CONDITION_PARAM_LIGHT_LEVEL, 6)
condition:setParameter(CONDITION_PARAM_LIGHT_COLOR, 215)
condition:setParameter(CONDITION_PARAM_TICKS, (6*60+10)*1000)
combat:addCondition(condition)

local spellOutfit = Condition(CONDITION_OUTFIT, CONDITIONID_COMBAT)
local outfitConfig = {
    newOutfit = 100,
    outfitInterval = 5
}

function onCastSpell(creature, var)
creature:setMonsterOutfit(outfitConfig.newOutfit, outfitConfig.outfitInterval * 1000)
    creature:addCondition(spellOutfit)
    return combat:execute(creature, var)
end
 
Try this one
Lua:
local combat = Combat()
combat:setParameter(COMBAT_PARAM_EFFECT, CONST_ME_MAGIC_BLUE)
combat:setParameter(COMBAT_PARAM_AGGRESSIVE, 0)

local condition = Condition(CONDITION_LIGHT)
condition:setParameter(CONDITION_PARAM_LIGHT_LEVEL, 6)
condition:setParameter(CONDITION_PARAM_LIGHT_COLOR, 215)
condition:setParameter(CONDITION_PARAM_TICKS, (6*60+10)*1000)
combat:addCondition(condition)

local spellOutfit = Condition(CONDITION_OUTFIT, CONDITIONID_COMBAT)
local outfitConfig = {
    newOutfit = 100,
    outfitInterval = 3
}

function onCastSpell(creature, var)
        spellOutfit:setOutfit({lookType = outfitConfig.newOutfit})
        spellOutfit:setTicks(outfitConfig.outfitInterval * 1000)
        creature:addCondition(spellOutfit)
    return combat:execute(creature, var)
end
 
Last edited:
Lua:
local outfitConfig = {
    newOutfit = 100,
    outfitInterval = 5
}

local condition = Condition(CONDITION_OUTFIT)
condition:setTicks(outfitConfig.outfitInterval * 1000)

function onCastSpell(creature, variant)
    condition:setOutfit(outfitConfig.newOutfit)
    creature:addCondition(condition)
    creature:getPosition():sendMagicEffect(CONST_ME_MAGIC_BLUE)
    return true
end

I don't know if that utevo lux code part was needed but you can still add it if you want to
 
Solution
Back
Top