Ir para conteúdo

Kyle Bellini

Membro
  • Registro em

  • Última visita

Tudo que Kyle Bellini postou

  1. "Evento onTimer não encontrado", tua source tá procurando 'onTimer' no script mas não está encontrando, troca de onTime(interval) pra onTimer(interval) que já deve resolver.
  2. Parabéns, está muito show! Boa sorte, irei acompanhar. ?
  3. Só utilizar /owner 0 Que aí a house fica livre e sem dono.
  4. Mas aí o que seria flexível nesse caso?
  5. Consegue explicar um pouco mais ? Não entendi se o portal seria removido, ou se mais pessoas iriam entrar nesse portal.. Não seria melhor apenas teleportar o jogador ? (caso ninguém fosse entrar no portal) Explica um pouquinho o que pretende fazer.
  6. Estou sem internet, por isso só consegui olhar hoje auhauha Caso não tenha conseguido ainda, eu fiz uma Action (acredito que seja melhor). O jogador irá dar USE no item que tiver a actionid, se não tiver bosses vivos um portal será aberto, senão, uma mensagem aparecerá informando que ainda estão vivos. Eu coloquei alguns comentários no script, pra facilitar o entendimento. As posições você vai pegar uma da ponta superior esquerda, e uma da ponta inferior direita. Utilizando sua imagem de exemplo: https://i.imgur.com/OT8wbks.png Crie um arquivo .lua dentro da pasta (Data > Actions > Scripts) , copie todo o código e cole no arquivo criado. Agora em actions.xml, adicione esta tag: <action actionid="2683" event="script" value="nome do arquivo criado.lua"/> -- Em actionid="2683" coloque um valor que não esteja sendo utilizado Após adicionar, este deve ser o resultado (RIP qualidade): Portal.mp4
  7. Olá, Eu fiz de modo bem simples, como tu não pediu nada de mais ^-^ <globalevent name="BossKing" interval="600" event="script" value="bossking.lua"/> -- interval="aqui é o tempo em segundos(600seg = 10 min)"-->
  8. era só adicionar um end pro if indicado no erro: local balls = getItemsInContainerById(bp.uid, 11829) ------ Ultraball if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.on) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "no") doItemSetAttribute(ball, "Icone", "yes") end end local balls = getItemsInContainerById(bp.uid, 11831) --- Ultraball morta if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.off) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "yes") doItemSetAttribute(ball, "Icone", "yes") end end ------------------------------ local balls = getItemsInContainerById(bp.uid, 11835) ------ Superball if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.on) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "no") doItemSetAttribute(ball, "Icone", "yes") end end local balls = getItemsInContainerById(bp.uid, 11837) --- Superball morta if #balls >= 1 then for _, ball in pairs (balls) do local x = icons[getItemAttribute(ball, "poke")] doTransformItem(ball, x.off) doItemSetAttribute(ball, "ball", "Icone") doItemSetAttribute(ball, "morta", "yes") doItemSetAttribute(ball, "Icone", "yes") end end
  9. Testa desse modo, então.. Aproveitei e dei uma organizada também: local box = { [1] ={msg = "You Open a Box +3",np = "Contains a Ivysaur.",nm= 'Ivysaur'}, [2] ={msg = "You Open a Box +3",np = "Contains a Charmeleon.",nm= 'Charmeleon'}, [3] ={msg = "You Open a Box +3",np = 'Contains a Wartortle.',nm= 'Wartortle'}, [4] ={msg = "You Open a Box +3",np = 'Contains a Raichu.',nm= 'Raichu'}, [5] ={msg = "You Open a Box +3",np = 'Contains a Fearow.',nm= 'Fearow'}, [6] ={msg = "You Open a Box +3",np = 'Contains a Vileplume.',nm= 'Vileplume'}, [7] ={msg = "You Open a Box +3",np = 'Contains a Venomoth.',nm= 'Venomoth'}, [8] ={msg = "You Open a Box +3",np = 'Contains a Parasect.',nm= 'Parasect'}, [9] ={msg = "You Open a Box +3",np = 'Contains a Clefable.',nm= 'Clefable'}, [10] ={msg = "You Open a Box +3",np = 'Contains a Wigglytuff.',nm= 'Wigglytuff'}, [11] ={msg = "You Open a Box +3",np = 'Contains a Sandslash.',nm= 'Sandslash'}, [12] ={msg = "You Open a Box +3",np = 'Contains a Dugtrio.',nm= 'Dugtrio'}, [13] ={msg = "You Open a Box +3",np = 'Contains a Golduck.',nm= 'Golduck'}, [14] ={msg = "You Open a Box +3",np = 'Contains a Rapidash.',nm= 'Rapidash'}, [15] ={msg = "You Open a Box +3",np = 'Contains a Magneton.',nm= 'Magneton'}, [16] ={msg = "You Open a Box +3",np = 'Contains a Hypno.',nm= 'Hypno'}, [17] ={msg = "You Open a Box +3",np = 'Contains a Kingler.',nm= 'Kingler'}, [18] ={msg = "You Open a Box +3",np = 'Contains a Exeggutor.',nm= 'Exeggutor'}, [19] ={msg = "You Open a Box +3",np = 'Contains a Hitmonlee.',nm= 'Hitmonlee'}, [20] ={msg = "You Open a Box +3",np = 'Contains a Hitmonchan.',nm= 'Hitmonchan'}, [21] ={msg = "You Open a Box +3",np = 'Contains a Tangela.',nm= 'Tangela'}, [22] ={msg = "You Open a Box +3",np = 'Contains a Starmie.',nm= 'Starmie'}, [23] ={msg = "You Open a Box +3",np = 'Contains a Mr.Mime.',nm= 'Mr.Mime'}, [24] ={msg = "You Open a Box +3",np = 'Contains a Jolteon.',nm= 'Jolteon'}, [25] ={msg = "You Open a Box +3",np = 'Contains a Porygon.',nm= 'Porygon'} } function onUse(cid, item, fromPosition, itemEx, toPosition) function getTime(s) local n = math.floor(s / 60) s = s - (60 * n) return n, s end local e = box[math.random(1,25)] local incubadora = 7877 -- ID da incubadora local time = 4 -- tempo usado if itemEx.itemid == incubadora then if os.time()-getPlayerStorageValue(cid, 64231) <= 1296*60 then setPlayerStorageValue(cid, 49514, 4) minutes,seconds = getTime(1296*60-(os.time()-getPlayerStorageValue(cid, 64231))) return doPlayerSendCancel(cid, "Você precisa aguardar " .. minutes .. " minutos e " .. seconds .. " segundos.") elseif itemEx.itemid == incubadora and getPlayerStorageValue(cid, 49514) == 4 and os.time()-getPlayerStorageValue(cid, 64231) then setPlayerStorageValue(cid, 46574, 4) setPlayerStorageValue(cid, 64231, -1) setPlayerStorageValue(cid, 49514, -1) doPlayerSendTextMessage(cid, 27, "Este Egg está pronto para ser chocado.") elseif itemEx.itemid == incubadora and getPlayerStorageValue(cid, 46574) == 4 then doPlayerSendTextMessage(cid, 27, "Seu Egg acaba de chocar. Aqui está, cuide muito bem dele!") doRemoveItem(itemEx.uid,1) doPlayerSendTextMessage(cid,22,"Você abriu a incubadora, e recebeu um "..e.nm.."!") addPokeToPlayer(cid, e.nm, 0, nil, "poke") end end end
  10. oie, consegue enviar o script do NPC sem as modificações ?
  11. Caso o do amigo acima não funcione, teste com esse: local voc = {716, 717, 718, 719, 720, 721, 722, 723, 724, 725} -- ID das vocações que poderão usar o Pergaminho. local corpse = {3058} local id = 26684 -- Id do edo pergaminho local edo = { ["[EDO TENSEI] Anbu"] = {hp = 50000, maxhp = 50000, corpse = 3058, chance = 100}, -- Nome do Edo, HP do Edo quando summoned, max hp do edo , corpo do edo, chance de falhar. } function onUse(cid, item, frompos, item2, topos) if(not(isInArray(voc, getPlayerVocation(cid)))) then return doPlayerSendTextMessage(cid, 25, "Voce nao tem a vocacao nescessaria") end if(not(isInArray(corpse, item2.itemid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "voce precisa usar o pergaminho em um corpse") doSendMagicEffect(getThingPos(cid), 21) return true end local perga = doPlayerAddItem(cid, id, 1) for edo_tensei, v in pairs(edo) do if item2.itemid == v.corpse then if math.random(0,100) <= v.chance then doSendMagicEffect(getThingPos(cid), 21) doPlayerSendTextMessage(cid, 27, "".. edo_tensei .. " foi selado nesse pergaminho.") doRemoveItem(item.uid, 1) doRemoveItem(item2.uid, 1) doItemSetAttribute(perga, "namepet", edo_tensei) doItemSetAttribute(perga, "description", "Neste pergaminho foi selado um ".. edo_tensei ..".") doItemSetAttribute(perga, "lifepet", v.hp) doItemSetAttribute(perga, "maxlifepet", v.maxhp) else doPlayerSendTextMessage(cid, 27, "O pergaminho falhou") end end end return true end
  12. oie, testa assim e me fala se deu certo: local config = { tilepos5 = {x=33115, y=31702, z=12}. tilepos3 = {x=33114, y=31700, z=12}. tilepos4 = {x=33115, y=31700, z=12}. tilepos6 = {x=33116, y=31700, z=12}. tilepos7 = {x=33114, y=31701, z=12}. tilepos8 = {x=33115, y=31701, z=12}. tilepos9 = {x=33116, y=31701, z=12} } function onUse(cid, item, fromPosition, itemEx, toPosition) if(itemEx.uid == 6669) and (itemEx.itemid == 8759) then if getPlayerStorageValue(cid, 39000) <= 0 then doPlayerRemoveItem(cid, 7494, 1) doSendMagicEffect(config.tilepos5, 15) doSendMagicEffect(config.tilepos3, 5) doSendMagicEffect(config.tilepos4, 5) doSendMagicEffect(config.tilepos6, 5) doSendMagicEffect(config.tilepos7, 5) doSendMagicEffect(config.tilepos8, 5) doSendMagicEffect(config.tilepos9, 5) setPlayerStorageValue(cid, 39000, 1) doCreatureSay(cid, 'Você destruiu com sucesso o Shadow Nexus!', TALKTYPE_ORANGE_1) doPlayerSendTextMessage(cid, 22, "Seu Questlog foi atualizado!") else doPlayerSendCancel(cid, MESSAGE_INFO_DESCR, "You arent a inquisition member") end return TRUE end end
  13. Deixei alguns comentários no script, mas se sentir dúvida só avisar. Primeiro, crie um arquivo chamado groupEffect.lua e cole isso dentro: function onThink(interval) for _, cid in ipairs(getPlayersOnline()) do if getPlayerGroupId(cid) == 6 then -- Aqui você coloca o GroupID do Cargo (o mesmo nas outras linhas). doSendAnimatedText(getThingPos(cid), "Administrador", 174) -- Nesse número, você escolhe a cor da letra (o mesmo nas outras linhas). elseif getPlayerGroupId(cid) == 5 then doSendAnimatedText(getThingPos(cid), "Community Manager", 155) elseif getPlayerGroupId(cid) == 4 then doSendAnimatedText(getThingPos(cid), "Gamemaster", 181) end end return true end Feito isso, agora no seu globalevents.xml, adicione essa TAG: <globalevent name="GroupEffect" interval="1" event="script" value="groupEffect.lua"/> Caso queira modificar a frequência com que a mensagem aparece, só alterar o valor em 'interval'
  14. Seu servidor tem gender system? Testa assim:
  15. Provavelmente você está modificando e/ou apagando algo de maneira errada.
  16. Posta o script em um spoiler, porque aí o pessoal não precisa baixar o arquivo.
  17. Pelos sistemas de tasks diárias que eu vi, sempre são ligados à alguma lib (no início fala sobre task_func, tente procurar algo parecido). Este script não indica qual o valor da storage, ele está puxando de outro arquivo. Aqui ele usou task_sys[task], como um valor pra verificar se o jogador pode iniciar a diária. if getPlayerStorageValue(cid, task_sys[task].start) <= 0 Aqui ele já atribuiu o valor, para que o jogador consiga executar se tivesse o valor = 1. setPlayerStorageValue(cid, task_sys[task].start, 1) Mais no finalzinho, vemos que ele usou essas daqui (que ficaram zeradas) : setPlayerStorageValue(cid, task_sys_storages[4], 0) setPlayerStorageValue(cid, task_sys_storages[5], 0) setPlayerStorageValue(cid, task_sys_storages[7], 0) Pra acompanhar, é só você ir lendo as frases (se deu recompensa, se iniciou, se não pôde iniciar, se terminou), e em seguida, conferir qual foi a storage responsável por aquela ação. Recomendo que você procure o outro arquivo que esteja relacionado à este script para descobrir os valores das storages, creio que não seja apenas ele em execução. Geralmente isso é usado pra 'facilitar' a vida de quem está montando o script, porque aí não precisa ir lá no meio modificar o número ou algo do tipo, é só modificar o 'local'. Exemplo: O daily_storage se tornou o valor '167943' local daily_storage = 167943 setPlayerStorageValue (cid, daily_storage, 1)
  18. Não entendi muito bem, você quer que seja possível concluir apenas uma única vez ? Ele entrega o prêmio, e fim da task ? Aliás, existe algum outro arquivo relacionado à este ?
  19. Olá, No seu servidor está funcionando normal ? Eu fiz alguns testes aqui e ele coleta apenas 1 tipo de item por vez, sendo no máximo até 2 tipos de itens, mais que isso ele não coleta. Aqui se fez necessário clicar cada vez que desejasse recolher algum item (se o monstro possui 5 itens diferentes no loot, você precisaria clicar 5 vezes) Irei tentar fazer algumas coisas aqui, pra ver no que dá.. Obrigado pela sua contribuição : D

Informação Importante

Confirmação de Termo