• 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!

TFS 1.X+ [TFS 1.5]Could anyone help me make this script work in tfs 1.5? it is a reset script, with attributes for each vocation

Shoorkill

Member
Joined
Dec 17, 2018
Messages
126
Reaction score
21
Lua:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
 
function onCreatureAppear(cid) npcHandler:eek:nCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:eek:nCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:eek:nCreatureSay(cid, type, msg) end
function onThink() npcHandler:eek:nThink() end
 
function creatureSayCallback(cid, type, msg)
    if not npcHandler:isFocused(cid) then
        return false
    end

    local function Kick(cid)
        if isPlayer(cid) then
            doRemoveCreature(cid)
        end
    end

    if npcHandler.focus ~= cid then
        return false
    end

    if msgcontains(msg, 'reset') then
        local vezes = getResets(cid)
        local rubys = (getPlayerLevel(cid) * 4000) * (vezes * 30 * 5) / 1000000
        local dmspirits, shessences

        if vezes == 0 then
            dmspirits = 15
            shessences = 10
        else
            dmspirits = (15 + (20 * vezes))
            shessences = (10 + (20 * vezes))
        end

        if vezes == -1 or vezes == 0 then
            selfSay('Deseja resetar seu personagem? Precisarei de ' .. dmspirits .. ' Shadow Herbs, ' .. shessences .. ' Blood Herbs e ' .. rubys .. 'kk\'s, aceita?')
            talk_state = 6
        else
            selfSay('Deseja resetar seu personagem? Precisarei de ' .. dmspirits .. ' Shadow Herbs, ' .. shessences .. ' Blood Herbs e ' .. rubys .. 'kk\'s, aceita?')
            talk_state = 6
        end
    end

    if talk_state == 6 then
        if isPremium(cid) and getPlayerLevel(cid) >= 800 then
            if getPlayerVocation(cid) == 17 then
                if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
                    selfSay('Reset!')
                    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

                    local health = getPlayerMaxHealth(cid)
                    local mana = getPlayerMaxMana(cid)
                    doResetLevel(cid)
                    setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
                    doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
                    setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
                    doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
                    setPlayerMaxCapacity(cid, 360)
                    doPlayerAddMagicLevel(cid, 25)
                    doSendMagicEffect(getCreaturePosition(cid), 12)
                    doPlayerAddResets(cid, 1)
                    doPlayerRemoveItem(cid, 13685, rubys)
                    doPlayerRemoveItem(cid, 2804, dmspirits)
                    doPlayerRemoveItem(cid, 2798, shessences)
                    addEvent(Kick, 2000, cid)
                    talk_state = 0
                else
                    selfSay('Você não trouxe o que eu pedi...')
                    talk_state = 0
                end
                 elseif getPlayerVocation(cid) == 18 then
                  if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
                    selfSay('Reset!')
                    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

                    local health = getPlayerMaxHealth(cid)
                    local mana = getPlayerMaxMana(cid)
                    doResetLevel(cid)
                    setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
                    doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
                    setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
                    doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
                    setPlayerMaxCapacity(cid, 360)
                    doPlayerAddMagicLevel(cid, 25)
                    doSendMagicEffect(getCreaturePosition(cid), 12)
                    doPlayerAddResets(cid, 1)
                    doPlayerRemoveItem(cid, 13685, rubys)
                    doPlayerRemoveItem(cid, 2804, dmspirits)
                    doPlayerRemoveItem(cid, 2798, shessences)
                    addEvent(Kick, 2000, cid)
                    talk_state = 0
                      else
                    selfSay('Você não trouxe o que eu pedi...')
                    talk_state = 0
                end
            elseif getPlayerVocation(cid) == 19 then
              if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
                    selfSay('Reset!')
                    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

                    local health = getPlayerMaxHealth(cid)
                    local mana = getPlayerMaxMana(cid)
                    doResetLevel(cid)
                    setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
                    doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
                    setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
                    doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
                    setPlayerMaxCapacity(cid, 360)
                    doPlayerAddMagicLevel(cid, 25)
                    doSendMagicEffect(getCreaturePosition(cid), 12)
                    doPlayerAddResets(cid, 1)
                    doPlayerRemoveItem(cid, 13685, rubys)
                    doPlayerRemoveItem(cid, 2804, dmspirits)
                    doPlayerRemoveItem(cid, 2798, shessences)
                    addEvent(Kick, 2000, cid)
                    talk_state = 0
                      else
                    selfSay('Você não trouxe o que eu pedi...')
                    talk_state = 0
                end
            elseif getPlayerVocation(cid) == 20 then
              if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
                    selfSay('Reset!')
                    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

                    local health = getPlayerMaxHealth(cid)
                    local mana = getPlayerMaxMana(cid)
                    doResetLevel(cid)
                    setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
                    doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
                    setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
                    doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
                    setPlayerMaxCapacity(cid, 360)
                    doPlayerAddMagicLevel(cid, 25)
                    doSendMagicEffect(getCreaturePosition(cid), 12)
                    doPlayerAddResets(cid, 1)
                    doPlayerRemoveItem(cid, 13685, rubys)
                    doPlayerRemoveItem(cid, 2804, dmspirits)
                    doPlayerRemoveItem(cid, 2798, shessences)
                    addEvent(Kick, 2000, cid)
                    talk_state = 0
                      else
                    selfSay('Você não trouxe o que eu pedi...')
                    talk_state = 0
                end
            end
        else
            selfSay('Volte aqui quando estiver mais forte, jovem aprendiz.')
            talk_state = 0
        end
    end

    return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
 
Last edited:
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)

function onCreatureAppear(cid) npcHandler:eek:nCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:eek:nCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:eek:nCreatureSay(cid, type, msg) end
function onThink() npcHandler:eek:nThink() end

function creatureSayCallback(cid, type, msg)
if not npcHandler:isFocused(cid) then
return false
end

local function Kick(cid)
if isPlayer(cid) then
doRemoveCreature(cid)
end
end

if npcHandler.focus ~= cid then
return false
end

if msgcontains(msg, 'reset') then
local vezes = getResets(cid)
local rubys = (getPlayerLevel(cid) * 4000) * (vezes * 30 * 5) / 1000000
local dmspirits, shessences

if vezes == 0 then
dmspirits = 15
shessences = 10
else
dmspirits = (15 + (20 * vezes))
shessences = (10 + (20 * vezes))
end

if vezes == -1 or vezes == 0 then
selfSay('Deseja resetar seu personagem? Precisarei de ' .. dmspirits .. ' Shadow Herbs, ' .. shessences .. ' Blood Herbs e ' .. rubys .. 'kk\'s, aceita?')
talk_state = 6
else
selfSay('Deseja resetar seu personagem? Precisarei de ' .. dmspirits .. ' Shadow Herbs, ' .. shessences .. ' Blood Herbs e ' .. rubys .. 'kk\'s, aceita?')
talk_state = 6
end
end

if talk_state == 6 then
if isPremium(cid) and getPlayerLevel(cid) >= 800 then
if getPlayerVocation(cid) == 17 then
if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
selfSay('Reset!')
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

local health = getPlayerMaxHealth(cid)
local mana = getPlayerMaxMana(cid)
doResetLevel(cid)
setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
setPlayerMaxCapacity(cid, 360)
doPlayerAddMagicLevel(cid, 25)
doSendMagicEffect(getCreaturePosition(cid), 12)
doPlayerAddResets(cid, 1)
doPlayerRemoveItem(cid, 13685, rubys)
doPlayerRemoveItem(cid, 2804, dmspirits)
doPlayerRemoveItem(cid, 2798, shessences)
addEvent(Kick, 2000, cid)
talk_state = 0
else
selfSay('Você não trouxe o que eu pedi...')
talk_state = 0
end
elseif getPlayerVocation(cid) == 18 then
if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
selfSay('Reset!')
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

local health = getPlayerMaxHealth(cid)
local mana = getPlayerMaxMana(cid)
doResetLevel(cid)
setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
setPlayerMaxCapacity(cid, 360)
doPlayerAddMagicLevel(cid, 25)
doSendMagicEffect(getCreaturePosition(cid), 12)
doPlayerAddResets(cid, 1)
doPlayerRemoveItem(cid, 13685, rubys)
doPlayerRemoveItem(cid, 2804, dmspirits)
doPlayerRemoveItem(cid, 2798, shessences)
addEvent(Kick, 2000, cid)
talk_state = 0
else
selfSay('Você não trouxe o que eu pedi...')
talk_state = 0
end
elseif getPlayerVocation(cid) == 19 then
if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
selfSay('Reset!')
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

local health = getPlayerMaxHealth(cid)
local mana = getPlayerMaxMana(cid)
doResetLevel(cid)
setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
setPlayerMaxCapacity(cid, 360)
doPlayerAddMagicLevel(cid, 25)
doSendMagicEffect(getCreaturePosition(cid), 12)
doPlayerAddResets(cid, 1)
doPlayerRemoveItem(cid, 13685, rubys)
doPlayerRemoveItem(cid, 2804, dmspirits)
doPlayerRemoveItem(cid, 2798, shessences)
addEvent(Kick, 2000, cid)
talk_state = 0
else
selfSay('Você não trouxe o que eu pedi...')
talk_state = 0
end
elseif getPlayerVocation(cid) == 20 then
if getPlayerItemCount(cid, 13685) >= rubys and getPlayerItemCount(cid, 2804) >= dmspirits and getPlayerItemCount(cid, 2798) >= shessences then
selfSay('Reset!')
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você resetou seu personagem.")

local health = getPlayerMaxHealth(cid)
local mana = getPlayerMaxMana(cid)
doResetLevel(cid)
setPlayerMaxHealth(cid, (health / 10) * (vezes + 1))
doPlayerAddHealth(cid, (health / 10) * (vezes + 1))
setPlayerMaxMana(cid, (mana / 15) * (vezes + 1))
doPlayerAddMana(cid, (mana / 15) * (vezes + 1))
setPlayerMaxCapacity(cid, 360)
doPlayerAddMagicLevel(cid, 25)
doSendMagicEffect(getCreaturePosition(cid), 12)
doPlayerAddResets(cid, 1)
doPlayerRemoveItem(cid, 13685, rubys)
doPlayerRemoveItem(cid, 2804, dmspirits)
doPlayerRemoveItem(cid, 2798, shessences)
addEvent(Kick, 2000, cid)
talk_state = 0
else
selfSay('Você não trouxe o que eu pedi...')
talk_state = 0
end
end
else
selfSay('Volte aqui quando estiver mais forte, jovem aprendiz.')
talk_state = 0
end
end

return true
end

npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())
1700795201070.png

 
It would be interesting for you to talk about errors in the console, they are probably missing functions and need to be added or the script logic changed.
 
Back
Top