Jump to content
×
×
  • Create New...

Yan Oliveira

Moderador
  • Posts

    2177
  • Joined

  • Last visited

  • Days Won

    54

Yan Oliveira last won the day on April 4

Yan Oliveira had the most liked content!

About Yan Oliveira

  • Rank
    Yan18

Perfil

  • Gênero
    Masculino

Informações

  • Forma que conheci o xTibia
    Sites de Busca
  • Sou
    Scripter

Recent Profile Visitors

5904 profile views
  1. Deu certo? Conseguiu resolver seu problema?
  2. Sabe dizer se essa base é baseada no Pokémon Dash Advanced ou Pokémon Dash? Porque a maioria dos poketibias usam normalmente um dos três seguintes arquivos para adicionar ataque para pokémon summon (player): Data/Lib/Configuration.lua Data/Lib/Moves.lua Data/Spells/Scripts
  3. Posta o código desses dois arquivos: data/lib/004-database.lua e data/lib/056-SecuritySystem.lua.
  4. @jiuer7845 Usuário banido devido a ser um bot, e fazer somente posts contendo spams e vírus.
  5. Você precisa postar o código do Goback.lua.
  6. Que bom que ajudou! De nada! Sobre reutilizar o código, pelo que você falou da para reutilizar sim, vai precisar alterar as configurações como outro valor de storage, coordenadas e etc, mas a estrutura é a mesma. Mas em caso de dúvida, crie um tópico que iremos te ajudar.
  7. Mas como assim usar esse script em outra quest? Se for um evento similar, da sim, desde que mude o actionid/uniqueid no actions.xml. Mas é melhor fazer uma verificação para cada script, esse negócio de ficar reusando código na maioria das vezes é ruim, porque é um script que faz uma coisa e está sendo usado para outra coisa diferente, e depois para fazer manutenção é ruim. Se for só a verificação, pode usar sim, mas se for usar o script inteiro em outra quest, não recomendo, nesse caso é melhor criar um tópico aqui no fórum. Sobre o código, troque por esse: local storage = 54789 -- STORAGE local storage_time_minutes = 30 -- TEMPO EM MINUTOS PARA PODER CLICAR NA ALAVANCA PARA FAZER NOVAMENTE local text = "There are players doing the quest. You need to wait " .. storage_time_minutes .. " minutes to do this mission again." function onUse(cid, item, frompos, item2, topos) if item.uid == 3054 then if item.itemid == 1945 then player1pos = {x = 1865, y = 1921, z = 9, stackpos = 253} player1 = getThingfromPos(player1pos) player2pos = {x = 1866, y = 1921, z = 9, stackpos = 253} player2 = getThingfromPos(player2pos) player3pos = {x = 1867, y = 1921, z = 9, stackpos = 253} player3 = getThingfromPos(player3pos) player4pos = {x = 1868, y = 1921, z = 9, stackpos = 253} player4 = getThingfromPos(player4pos) if getGlobalStorageValue(storage) > os.time() then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player1.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player2.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player3.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player4.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) return true end if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then player1level = getPlayerLevel(player1.uid) player2level = getPlayerLevel(player2.uid) player3level = getPlayerLevel(player3.uid) player4level = getPlayerLevel(player4.uid) questlevel = 100 if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and player4level >= questlevel then queststatus1 = getPlayerStorageValue(player1.uid, 6026) queststatus2 = getPlayerStorageValue(player2.uid, 6026) queststatus3 = getPlayerStorageValue(player3.uid, 6026) queststatus4 = getPlayerStorageValue(player4.uid, 6026) if queststatus1 == -1 and queststatus2 == -1 and queststatus3 == -1 and queststatus4 == -1 then demon1pos = {x = 1919, y = 1927, z = 12} demon2pos = {x = 1920, y = 1927, z = 12} demon3pos = {x = 1918, y = 1917, z = 12} demon4pos = {x = 1909, y = 1915, z = 12} demon5pos = {x = 1876, y = 1918, z = 11} demon6pos = {x = 1868, y = 1918, z = 12} doSummonCreature("Demon", demon1pos) doSummonCreature("Demon", demon2pos) doSummonCreature("Demon", demon3pos) doSummonCreature("Demon", demon4pos) doSummonCreature("Demon", demon5pos) doSummonCreature("Demon", demon6pos) nplayer1pos = {x = 1879, y = 1944, z = 10} nplayer2pos = {x = 1879, y = 1944, z = 10} nplayer3pos = {x = 1879, y = 1944, z = 10} nplayer4pos = {x = 1879, y = 1944, z = 10} doSendMagicEffect(player1pos, 2) doSendMagicEffect(player2pos, 2) doSendMagicEffect(player3pos, 2) doSendMagicEffect(player4pos, 2) doTeleportThing(player1.uid, nplayer1pos) doTeleportThing(player2.uid, nplayer2pos) doTeleportThing(player3.uid, nplayer3pos) doTeleportThing(player4.uid, nplayer4pos) doSendMagicEffect(nplayer1pos, 10) doSendMagicEffect(nplayer2pos, 10) doSendMagicEffect(nplayer3pos, 10) doSendMagicEffect(nplayer4pos, 10) doTransformItem(item.uid, item.itemid + 0) setGlobalStorageValue(storage, os.time() + (storage_time_minutes * 60)) -- ADICIONA STORAGE GLOBAL PARA NÃO PUXAREM A ALAVANCA ENQUANTO ESTIVEREM FAZENDO A QUEST else doPlayerSendCancel(cid, "Sorry, not possible.") end else doPlayerSendCancel(cid, "Sorry, not possible.") end else doPlayerSendCancel(cid, "Sorry, not possible.") end elseif item.itemid == 1945 then if getPlayerAccess(cid) == 3 then doTransformItem(item.uid, item.itemid - 1) else doPlayerSendCancel(cid, "Sorry, not possible.") end end end return true end Coloquei storage global e mudei o tempo de espera de 15 para 30 miuntos. Teste e veja se é isso que quer.
  8. Entendi, tem duas opções, a primeira é colocar uma storage global porque não tem como colocar storage em itens, apenas em players e monstros. E a segunda opção é fazer uma verificação na área onde acontece esse evento, e se tiver players, não poder puxar a alavanca, pois assim é uma forma de não precisar usar storage global. Sua versão de TFS é 1.0 mesmo? Se for, é mais fácil de trabalhar.
  9. Pelo que entendi, você quer apenas que coloque um tempo para conseguirem fazer novamente essa missão. Não alterei nada no código, apenas formatei porque estava muito mal formatado, e adicionei o exhaust. Troque o código por esse: local storage = 54789 -- STORAGE local storage_time_minutes = 15 -- TEMPO EM MINUTOS PARA PODER CLICAR NA ALAVANCA PARA FAZER NOVAMENTE local text = "There is someone need to wait " .. storage_time_minutes .. " minutes to do this mission again." function onUse(cid, item, frompos, item2, topos) if item.uid == 3054 then if item.itemid == 1945 then player1pos = {x = 1865, y = 1921, z = 9, stackpos = 253} player1 = getThingfromPos(player1pos) player2pos = {x = 1866, y = 1921, z = 9, stackpos = 253} player2 = getThingfromPos(player2pos) player3pos = {x = 1867, y = 1921, z = 9, stackpos = 253} player3 = getThingfromPos(player3pos) player4pos = {x = 1868, y = 1921, z = 9, stackpos = 253} player4 = getThingfromPos(player4pos) if getPlayerStorageValue(cid, storage) > os.time() or getPlayerStorageValue(player1.uid, storage) > os.time() or getPlayerStorageValue(player2.uid, storage) > os.time() or getPlayerStorageValue(player3.uid, storage) > os.time() or getPlayerStorageValue(player4.uid, storage) > os.time() then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player1.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player2.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player3.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) doPlayerSendTextMessage(player4.uid, MESSAGE_STATUS_CONSOLE_BLUE, text) return true end if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then player1level = getPlayerLevel(player1.uid) player2level = getPlayerLevel(player2.uid) player3level = getPlayerLevel(player3.uid) player4level = getPlayerLevel(player4.uid) questlevel = 100 if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and player4level >= questlevel then queststatus1 = getPlayerStorageValue(player1.uid, 6026) queststatus2 = getPlayerStorageValue(player2.uid, 6026) queststatus3 = getPlayerStorageValue(player3.uid, 6026) queststatus4 = getPlayerStorageValue(player4.uid, 6026) if queststatus1 == -1 and queststatus2 == -1 and queststatus3 == -1 and queststatus4 == -1 then demon1pos = {x = 1919, y = 1927, z = 12} demon2pos = {x = 1920, y = 1927, z = 12} demon3pos = {x = 1918, y = 1917, z = 12} demon4pos = {x = 1909, y = 1915, z = 12} demon5pos = {x = 1876, y = 1918, z = 11} demon6pos = {x = 1868, y = 1918, z = 12} doSummonCreature("Demon", demon1pos) doSummonCreature("Demon", demon2pos) doSummonCreature("Demon", demon3pos) doSummonCreature("Demon", demon4pos) doSummonCreature("Demon", demon5pos) doSummonCreature("Demon", demon6pos) nplayer1pos = {x = 1879, y = 1944, z = 10} nplayer2pos = {x = 1879, y = 1944, z = 10} nplayer3pos = {x = 1879, y = 1944, z = 10} nplayer4pos = {x = 1879, y = 1944, z = 10} doSendMagicEffect(player1pos, 2) doSendMagicEffect(player2pos, 2) doSendMagicEffect(player3pos, 2) doSendMagicEffect(player4pos, 2) doTeleportThing(player1.uid, nplayer1pos) doTeleportThing(player2.uid, nplayer2pos) doTeleportThing(player3.uid, nplayer3pos) doTeleportThing(player4.uid, nplayer4pos) doSendMagicEffect(nplayer1pos, 10) doSendMagicEffect(nplayer2pos, 10) doSendMagicEffect(nplayer3pos, 10) doSendMagicEffect(nplayer4pos, 10) doTransformItem(item.uid, item.itemid + 0) setPlayerStorageValue(cid, storage, os.time() + (storage_time_minutes * 60)) -- ADICIONA STORAGE NO PLAYER QUE PUXOU ALAVANCA PARA ADICIONAR UM CONTADOR PARA REFAZER NOVAMENTE setPlayerStorageValue(player1.uid, storage, os.time() + (storage_time_minutes * 60)) -- ADICIONA STORAGE NO PLAYER1 PARA ADICIONAR UM CONTADOR PARA REFAZER NOVAMENTE setPlayerStorageValue(player2.uid, storage, os.time() + (storage_time_minutes * 60)) -- ADICIONA STORAGE NO PLAYER2 PARA ADICIONAR UM CONTADOR PARA REFAZER NOVAMENTE setPlayerStorageValue(player3.uid, storage, os.time() + (storage_time_minutes * 60)) -- ADICIONA STORAGE NO PLAYER3 PARA ADICIONAR UM CONTADOR PARA REFAZER NOVAMENTE setPlayerStorageValue(player4.uid, storage, os.time() + (storage_time_minutes * 60)) -- ADICIONA STORAGE NO PLAYER4 PARA ADICIONAR UM CONTADOR PARA REFAZER NOVAMENTE else doPlayerSendCancel(cid, "Sorry, not possible.") end else doPlayerSendCancel(cid, "Sorry, not possible.") end else doPlayerSendCancel(cid, "Sorry, not possible.") end elseif item.itemid == 1945 then if getPlayerAccess(cid) == 3 then doTransformItem(item.uid, item.itemid - 1) else doPlayerSendCancel(cid, "Sorry, not possible.") end end end return true end Como você não informou o tempo desejado, eu coloquei o tempo em minutos e coloquei um valor genérico, coloquei 15 minutos. Se quiser alterar o tempo, só mudar o valor na variável storage_time_minutes. Eu coloquei para adicionar um exhaust para todos os 5 players (pelo que entendi, são 5, pois um puxa a alavanca e outros 4 ficam posicionados). Então, após concluírem esse evento, os 5 receberão o exhaust. Teste, e veja se é isso que quer.
  10. Muito bom! Obrigado por compartilhar essa informação! Vai ajudar outras pessoas interessadas nesse sistema futuramente.
  11. Esse Quickloot seria um sistema? Se for, precisa postar o código para te ajudar.
  12. Esse erro é porque provavelmente não tem verificação de se o pokémon atacante tem master, e o código deve estar sempre pegando um master. Você precisa postar o código para conseguir te ajudar.
  13. Pelo que você falou em outro tópico, você está usando uma base com TFS 0.3.6, e esse tópico é um pedido para TFS 1.2, por isso não funciona no seu servidor, porque a estrutura do código é diferente. Caso ainda queira um script como esse, crie um tópico para sua dúvida referente a versão correta da sua TFS.
  14. Poste o seu movements.xml, preciso ver se já existe um script para cada um desses dois itens, e se já existir, terei que mexer neles para conseguir fazer o que você pediu, se não, posso fazer um script novo.
  • Recently Browsing   0 members

    • No registered users viewing this page.