Ir para conteúdo

Featured Replies

Postado

Gostaria de um script que quando um player passar por um tile ira nascer um montro em uma certa position(configuravel), porem ele so podera pisar no tile novamente dps de 5 minutos.

Obs: TFS 3.6, 8,6

Postado

Em "Data/movements/scripts", nome_desejado.lua:

local config = {
    gStorage = 34349,
    monster = "Demodras",
    time = 5,
    pos = {x = 158, y = 57, z = 7}
}

function onStepIn(cid, item, position, fromPosition)
    if not isPlayer(cid) then return true end
        
    if getGlobalStorageValue(config.gStorage) < os.time() then
        doCreateMonster(config.monster, config.pos)
        setGlobalStorageValue(config.gStorage, config.time * 60 + os.time())
        doCreatureSay(cid, ''..config.monster ..' apareceu!', TALKTYPE_MONSTER)
        doSendMagicEffect(config.pos, CONST_ME_TELEPORT)
        doSendMagicEffect(position, 13)
    else
        doTeleportThing(cid, fromPosition)
        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Aguarde '.. math.ceil((getGlobalStorageValue(config.gStorage) - os.time())/60) ..' minutos para summonar o '.. config.monster ..' novamente.')
    end
   return true
end

Em "Data/movements", no arquivo movements.xml adicione:

<movevent type="StepIn" actionid="XXX" event="script" value="nome_desejado.lua" />

Em XXX coloque a actionID desejada e depois coloque-a no RME.

Se tiver errado ou der alguma problema, me avise.

Postado
  • Autor

Em "Data/movements/scripts", nome_desejado.lua:

local config = {
    gStorage = 34349,
    monster = "Demodras",
    time = 5,
    pos = {x = 158, y = 57, z = 7}
}

function onStepIn(cid, item, position, fromPosition)
    if not isPlayer(cid) then return true end
        
    if getGlobalStorageValue(config.gStorage) < os.time() then
        doCreateMonster(config.monster, config.pos)
        setGlobalStorageValue(config.gStorage, config.time * 60 + os.time())
        doCreatureSay(cid, ''..config.monster ..' apareceu!', TALKTYPE_MONSTER)
        doSendMagicEffect(config.pos, CONST_ME_TELEPORT)
        doSendMagicEffect(position, 13)
    else
        doTeleportThing(cid, fromPosition)
        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Aguarde '.. math.ceil((getGlobalStorageValue(config.gStorage) - os.time())/60) ..' minutos para summonar o '.. config.monster ..' novamente.')
    end
   return true
end

Em "Data/movements", no arquivo movements.xml adicione:

<movevent type="StepIn" actionid="XXX" event="script" value="nome_desejado.lua" />

Em XXX coloque a actionID desejada e depois coloque-a no RME.

Se tiver errado ou der alguma problema, me avise.

o script funciona perfeitamente, so que se o montro ja estiver vivo e o player subir no tile novamente ira nascer 1 , 2, 3 ,4 ...( quantas vezes o player pissar) e gostaria que ficase somente 1 no determinado lugar marcado no script ! se for posivel.

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo