-
Total de itens
2553 -
Registro em
-
Última visita
-
Dias Ganhos
72
Tudo que zipter98 postou
-
Tenta assim (gambiarra rs):
-
poketibia [Encerrado] Catch de Pokemons
tópico respondeu ao Geraldoida de zipter98 em Tópicos Sem Resposta
Opa, área incorreta. Pelo fato de seu pedido estar relacionado à um servidor derivado (Pokémon), a correta seria: Pedidos e dúvidas - Servidores derivados. Mais cuidado da próxima vez. Tópico movido. Poderia postar seu catch.lua, localizado em data/actions/scripts? -
Tópico movido para a seção de dúvidas e pedidos resolvidos.
-
Em data/npc/scripts, crie um arquivo com extensão .lua, nomeie-o travelnpc, e coloque nele o seguinte conteúdo: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid local cfg = { storage = 13500, --Storage. pos = {x = x, y = y, z = z}, --Para onde o jogador será teleportado. } if msgcontains(msg, "travel") or msgcontains(msg, "viajar") then selfSay("Você gostaria de viajar? Para isso, você precisa ser VIP.", cid) talkState[talkUser] = 1 return true elseif msgcontains(msg, "yes") and talkState[talkUser] == 1 then if getPlayerStorageValue(cid, cfg.storage) >= 1 then selfSay("Boa viajem!", cid) doTeleportThing(cid, cfg.pos) talkState[talkUser] = 0 return true else selfSay("Desculpe, você não é VIP.", cid) talkState[talkUser] = 0 return true end elseif msgcontains(msg, "no") and talkState[talkUser] == 1 then selfSay("Tudo bem, então...", cid) talkState[talkUser] = 0 return true end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Depois, em data/npc, crie um arquivo com extensão .xml, e adicione neste o seguinte conteúdo: <?xml version="1.0" encoding="UTF-8"?> <npc name="Nome do NPC" script="travelnpc.lua" walkinterval="0" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="523" head="114" body="119" legs="114" feet="114" corpse="2212"/> <parameters> <parameter key="message_greet" value="Hello |PLAYERNAME|, would you like to {travel}?"/> </parameters> </npc> OBS: Não se esqueça de alterar o nome e a outfit do NPC no arquivo acima.
-
Vou entender isso como dúvida sanada. Sanado, movido.
-
pedido [Encerrado] Novo elemento (pokemon)
tópico respondeu ao Jardeson de zipter98 em Tópicos Sem Resposta
Tópico movido para a seção de dúvidas e pedidos resolvidos. -
Hm, agora realmente complicou. Não tenho a mínima ideia do quê está fazendo seu servidor cair. Aparentemente, está tudo certinho (como eu disse, funcionou aqui). O jeito vai ser ir testando de linha em linha. Talvez seja uma única função usada que está causando isso. Se esta for descoberta, ficará mais fácil resolver. Se não se importar, poderia ir testando cada vez com uma função diferente após o else? Por exemplo, function onStatsChange(cid, attacker, type, combat, value) local artigo = getPlayerSex(cid) == 0 and "comida" or "comido" local max_hits = 3 --Quantos hits o jogador irá levar, no máximo. 3 = 3 hits do Zombie. if getCreatureName(attacker) == "Event Zombie" and isInArea(getCreaturePosition(cid), amoebaZombie.fromPosition, amoebaZombie.toPosition) then if type == STATSCHANGE_HEALTHLOSS then if getPlayerStorageValue(cid, 834412) <= (max_hits - 2) then setPlayerStorageValue(cid, 834412, getPlayerStorageValue(cid, 834412) + 1) else setGlobalStorageValue(amoebaZombie.playerStorage, getGlobalStorageValue(amoebaZombie.playerStorage)-1) end end end return true end Depois, se o anterior funcionar, function onStatsChange(cid, attacker, type, combat, value) local artigo = getPlayerSex(cid) == 0 and "comida" or "comido" local max_hits = 3 --Quantos hits o jogador irá levar, no máximo. 3 = 3 hits do Zombie. if getCreatureName(attacker) == "Event Zombie" and isInArea(getCreaturePosition(cid), amoebaZombie.fromPosition, amoebaZombie.toPosition) then if type == STATSCHANGE_HEALTHLOSS then if getPlayerStorageValue(cid, 834412) <= (max_hits - 2) then setPlayerStorageValue(cid, 834412, getPlayerStorageValue(cid, 834412) + 1) else setGlobalStorageValue(amoebaZombie.playerStorage, getGlobalStorageValue(amoebaZombie.playerStorage)-1) local corpse = doCreateItem(3058, 1, getPlayerPosition(cid)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".") end end end return true end E assim vai. Ou, se o primeiro não funcionar, function onStatsChange(cid, attacker, type, combat, value) local artigo = getPlayerSex(cid) == 0 and "comida" or "comido" local max_hits = 3 --Quantos hits o jogador irá levar, no máximo. 3 = 3 hits do Zombie. if getCreatureName(attacker) == "Event Zombie" and isInArea(getCreaturePosition(cid), amoebaZombie.fromPosition, amoebaZombie.toPosition) then if type == STATSCHANGE_HEALTHLOSS then if getPlayerStorageValue(cid, 834412) <= (max_hits - 2) then setPlayerStorageValue(cid, 834412, getPlayerStorageValue(cid, 834412) + 1) else local corpse = doCreateItem(3058, 1, getPlayerPosition(cid)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".") end end end return true end aí depois, se funcionar function onStatsChange(cid, attacker, type, combat, value) local artigo = getPlayerSex(cid) == 0 and "comida" or "comido" local max_hits = 3 --Quantos hits o jogador irá levar, no máximo. 3 = 3 hits do Zombie. if getCreatureName(attacker) == "Event Zombie" and isInArea(getCreaturePosition(cid), amoebaZombie.fromPosition, amoebaZombie.toPosition) then if type == STATSCHANGE_HEALTHLOSS then if getPlayerStorageValue(cid, 834412) <= (max_hits - 2) then setPlayerStorageValue(cid, 834412, getPlayerStorageValue(cid, 834412) + 1) else local corpse = doCreateItem(3058, 1, getPlayerPosition(cid)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".") doBroadcastMessage(getPlayerName(cid) .." foi " .. artigo .. " pelos zombies!") end end end return true end e assim vai ._.
-
poketibia (Ajuda)OT Client muito importante !
pergunta respondeu ao Tarsis2658 de zipter98 em Clients
Como já informado pelo Ikarus, área incorreta. Pelo fato de seu pedido ser relacionado ao OTClient, a correta seria Dúvidas e Pedidos - Mods/Modules. Mais cuidado da próxima vez. Tópico movido. -
resolvido [Encerrado] Look nas pokeballs e Revive:
tópico respondeu ao xmaster0 de zipter98 em Tópicos Sem Resposta
Tópicos que estão sem atividade do autor e da comunidade por mais de 7 dias são movidos para a seção de resolvidos. -
pedido [Encerrado] Novo elemento (pokemon)
tópico respondeu ao Jardeson de zipter98 em Tópicos Sem Resposta
Opa, área incorreta. Pelo fato do seu pedido ser relacionado à um servidor derivado (no caso, Pokémon), a correta seria: Pedidos e dúvidas - Servidores derivados. Mais cuidado da próxima vez. -
Tópico movido para a seção de dúvidas e pedidos resolvidos.
- 3 respostas
-
- ajuda npc +rep
- resolvido
-
(e 2 mais)
Tags:
-
Hm, dessas duas seguintes maneiras, o servidor fecha, ou ocorre certinho o quê está escrito no código? function onStatsChange(cid, attacker, type, combat, value) local artigo = getPlayerSex(cid) == 0 and "comida" or "comido" local max_hits = 3 --Quantos hits o jogador irá levar, no máximo. 3 = 3 hits do Zombie. if getCreatureName(attacker) == "Event Zombie" and isInArea(getCreaturePosition(cid), amoebaZombie.fromPosition, amoebaZombie.toPosition) then if type == STATSCHANGE_HEALTHLOSS then if getPlayerStorageValue(cid, 834412) <= (max_hits - 2) then setPlayerStorageValue(cid, 834412, getPlayerStorageValue(cid, 834412) + 1) else setGlobalStorageValue(amoebaZombie.playerStorage, getGlobalStorageValue(amoebaZombie.playerStorage)-1) local corpse = doCreateItem(3058, 1, getPlayerPosition(cid)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".") doBroadcastMessage(getPlayerName(cid) .." foi " .. artigo .. " pelos zombies!") doPlayerAddItem(cid, amoebaZombie.consolo[1], amoebaZombie.consolo[2]) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) setPlayerStorageValue(cid, 834412, 0) addEvent(winZombieEvent, 1000) addEvent(removeZombies, 1000) end end end return true end function onStatsChange(cid, attacker, type, combat, value) local artigo = getPlayerSex(cid) == 0 and "comida" or "comido" local max_hits = 3 --Quantos hits o jogador irá levar, no máximo. 3 = 3 hits do Zombie. if getCreatureName(attacker) == "Event Zombie" and isInArea(getCreaturePosition(cid), amoebaZombie.fromPosition, amoebaZombie.toPosition) then if type == STATSCHANGE_HEALTHLOSS then if getPlayerStorageValue(cid, 834412) <= (max_hits - 2) then setPlayerStorageValue(cid, 834412, getPlayerStorageValue(cid, 834412) + 1) else setGlobalStorageValue(amoebaZombie.playerStorage, getGlobalStorageValue(amoebaZombie.playerStorage)-1) local corpse = doCreateItem(3058, 1, getPlayerPosition(cid)) doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".") doBroadcastMessage(getPlayerName(cid) .." foi " .. artigo .. " pelos zombies!") doPlayerAddItem(cid, amoebaZombie.consolo[1], amoebaZombie.consolo[2]) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) setPlayerStorageValue(cid, 834412, 0) end end end return true end
-
Sanado, movido.
-
pedido Não consigo cria uma vocação ajudem
pergunta respondeu ao KlebesonXDesigner de zipter98 em Scripts
Tópico movido para a seção de dúvidas e pedidos resolvidos. -
Tópico movido para a seção de dúvidas e pedidos resolvidos.
-
Só pra confirmar uma coisa: retire tudo que está abaixo do else, e coloque um simples print("test") O server continua fechando, ou imprime o "test"?
-
function onSay(cid, words, param) maximum = { player = getPlayerGUID(cid), lvlmax = 717218, -- Level que o player vai ficar apos usar o comando. resets = 10, --Quantos resets são necessários, no mínimo, para usar o comando. } if getPlayerStorageValue(cid, 2310) >= maximum.resets then if getPlayerLevel(cid) == 717217 then doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `level` = "..maximum.lvlmax..", `experience` = 10000 WHERE `id` = "..maximum.player) else doPlayerSendCancel(cid, 'You do not have the level max 717217.') doSendMagicEffect(getPlayerPosition(cid),37) end else return doPlayerSendCancel(cid, "Sorry, not possible.") end return true end
- 3 respostas
-
- talkctions
- ajuda na talkaction maxlvl
- (e 2 mais)
-
Estranho, testei aqui e tá funcionando direitinho (claro, tive que editar algumas coisas pra funcionar: criar as funções e a tabela) Seu servidor tá fechando em ambas as ocasiões (storage global maior que 2 e igual a 2)?
-
Tópico movido para a seção de dúvidas e pedidos resolvidos.
-
Área incorreta, e título fora das regras. Sobre o primeiro: a área que você postou é direcionada à códigos prontos, e não à pedidos e/ou dúvidas. Para isso, poste na devida área: Pedidos e dúvidas - Scripting. Já sobre o segundo: o título do tópico deve conter, resumidamente, o seu objetivo/conteúdo. Tópico movido, e título alterado. Caso não esteja satisfeito com o que coloquei, basta alterá-lo usando a ferramente "Usar Editor Completo". Mais cuidado da próxima vez.
-
Tópico movido para a seção de dúvidas e pedidos resolvidos.
-
Tópico fechado à pedido do autor.
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.