Ir para conteúdo

Posts Recomendados

Outro script que fiz e estou disponibilizando: Tile Trainer

O que ele faz? Enquanto o player estiver em um tile que possui determinada action id, ele vai ficar treinando suas habilidades.

Primeiro, em "movements\scripts" crie um arquivo chamado "skill.lua". Feito isso, coloque em seu conteúdo o seguinte texto:

local delay = 200

local FIST = 0
local CLUB = 1
local SWORD = 2
local AXE = 3
local DISTANCE = 4
local SHIELDING = 5
local FISHING = 6


function samePos(pos1, pos2)
    if pos1.x == pos2.x and pos1.y == pos2.y and pos1.z == pos2.z then return true
    else return false end
end

function addSkillFunction(cid, item, position)
    if not isPlayer(cid) == TRUE then return FALSE end
    local playerPos = getCreaturePosition(cid)
    if not samePos(position,playerPos) then return FALSE end
    
    if (isKnight(cid) == TRUE) then
        doPlayerAddSkillTry(cid, FIST, 1)
        doPlayerAddSkillTry(cid, CLUB, 1)
        doPlayerAddSkillTry(cid, SWORD, 1)
        doPlayerAddSkillTry(cid, AXE, 1)
        doPlayerAddSkillTry(cid, SHIELDING, 1)
        doPlayerAddMana(cid,80)
        doPlayerAddSpentMana(cid, 80)
        doSendMagicEffect(position, 2)
        addEvent(addSkillFunction,delay,cid, item, position)
        return TRUE
    end
    if (isPaladin(cid) == TRUE) then
        doPlayerAddSkillTry(cid, DISTANCE, 1)
        doPlayerAddSkillTry(cid, SHIELDING, 1)
        doPlayerAddMana(cid,80)
        doPlayerAddSpentMana(cid, 80)
        doSendMagicEffect(position, 5)
        addEvent(addSkillFunction,delay,cid, item, position)
        return TRUE
    end
    if (isSorcerer(cid) == TRUE or isDruid(cid)) then
        doPlayerAddMana(cid,80)
        doPlayerAddSpentMana(cid, 80)
        addEvent(addSkillFunction,delay,cid, item, position)
        return TRUE
    end
return FALSE
end

function onStepIn(cid, item, position)
    if isPlayer(cid) then
        local playerPos = getCreaturePosition(cid)
        addEvent(addSkillFunction,delay,cid, item, position)
        doPlayerSendTextMessage(cid, 25, "TREINANDO")
    end
    return true
end

depois, em "movements.xml" adicione a seguinte linha:

<movevent type="StepIn" actionid="8585" script="skill.lua"/>

Bom, é isso. Acho que não precisa explicar, está bem fácil de entender e alterar o código.

Espero ter ajudado.

P.S.: Não me importo que roubem meus créditos e/ou postem em outros fórums.

Link para o comentário
https://xtibia.com/forum/topic/221497-tile-trainer/
Compartilhar em outros sites

  • 2 months later...

Boa tarde

Tem como adicionar um contador de SOUL POINTS??

Exemplo: A cada 30 segundos o tile remove do player 1 SOUL POINT, após zerar os soul points o player é teleportado para o templo.

 

Obs.: Versão do servidor que pretendo utilizar é 8.6

 

Muito obrigado desde já =)

Link para o comentário
https://xtibia.com/forum/topic/221497-tile-trainer/#findComment-1590854
Compartilhar em outros sites

×
×
  • Criar Novo...