Ir para conteúdo

zipter98

Herói
  • Total de itens

    2553
  • Registro em

  • Última visita

  • Dias Ganhos

    73

Tudo que zipter98 postou

  1. Opa, esta área é para postagem de códigos prontos. Quando você quiser fazer algum pedido, ou dúvida, opte por postar na área de Pedidos e dúvidas - Scripting. Já quando for relacionado à servidores derivados (naruto, pokémon, etc), Pedidos e dúvidas - Servidores derivados.
  2. data/creaturescripts/scripts, exp2.0.lua. Procure por essa parte: doPlayerSendTextMessage(cid, 20, "You are the last survivor of the golden arena! Take your reward!") doPlayerAddItem(cid, 2152, getPlayerStorageValue(cid, 22551)*2) Altere em doPlayerAddItem. Atualmente, está dando o item de ID 2152, sendo a quantidade, o valor da storage 22551 do jogador multiplicado por 2.
  3. Teoricamente, não.
  4. Nunca mexi com onCombat, então não tenho certeza se dessa maneira irá funcionar. data/creaturescripts/scripts, crie um arquivo com extensão .lua, nomeie-o monsterattack, e coloque o seguinte conteúdo: function onCombat(cid, target) local pos = {x = xxx, y = yyy, z = zzz} --Posição que o player terá que estar. local name = "nome" --Nome do monstro. if isPlayer(cid) and getCreatureName(target) == name then if getThingPos(cid) ~= pos then doPlayerSendCancel(cid, "Você não pode atacar esse monstro na posição que se encontra...") return false end end return true end Adicione isso em login.lua: registerCreatureEvent(cid, "AttackPos") Tag: <event type="combat" name="AttackPos" event="script" value="monsterattack.lua" />
  5. zipter98

    Como Mudar a cor do nome

    Acesse esse link para saber mais.
  6. local target = getCreatureTarget(cid) if target ~= 0 and target ~= nill then if isPlayer(target) == true then elseif isMonster(target) == true then doCreatureSetNoMove(target, true) addEvent(function() if not isCreature(cid) then return true end doCreatureSetNoMove(target, false) end, 4500) else return false end end
  7. Sobre o fishing, tenta fazer uma proteção ao logar, como, por exemplo function onLogin(cid) if getPlayerStorageValue(cid, 154585) >= 1 then setPlayerStorageValue(cid, 154585, -1) end return true end
  8. Há também uma parte do tvsys.lua (data/creaturescripts/scripts) relacionado ao duel system.
  9. As configurações estão indicadas logo no início do script (variáveis id_win, id_lose e bonus). Já configurei para o jogador que vence o duelo, ganhar 1 level da skill sword, e o jogador perdedor, 1 level da skill club.
  10. Pode postar seu Duel System.lua, localizado em data/lib?
  11. zipter98

    Spell 3x

    Tenta assim: function onUse(cid, item, fromPosition, itemEx, toPosition) local color = 221 if isDruid(cid) or isSorcerer(cid) then setCreatureMaxMana(cid, getCreatureMaxMana(cid) + 2000) doCreatureAddMana(cid,mana) doSendMagicEffect(getCreaturePosition(cid), 30) doRemoveItem(item.uid, 1) doSendAnimatedText(fromPosition, "+2000", 221) else doPlayerSendTextMessage(cid, 27, "Apenas Mages podem usar este item.") end return true end
  12. edit: uhahuauhshuahus, de boa. De resto, o script está funcionando como você queria?
  13. Lol, que estranho Vou testar essa talkaction aqui, logo edito meu comentário. EDIT: Aqui funcionou perfeitamente, só tutores e GODs podendo usar o comando. Talvez você tenha adicionado alguma parte desse script erroneamente, ou, em seu servidor, não há determinada função usada nessa talkaction.
  14. data/creaturescripts/scripts/spaw.lua, basta procurar por if isInArray(shinys, getCreatureName(cid)) then --pokémons da tabela shinys, localizada no início do arquivo. chance = 1 --1% chance elseif isInArray(raros, getCreatureName(cid)) then --Não coloque valores menores que 0.1 pokémons da tabela raros, localizada no início do arquivo. chance = 1 --1% chance else Edite a portentagem à seu gosto.
  15. Tenta assim:
  16. Resumindo: você quer apenas que pessoas do group id 3 em diante, possam realizar o comando? Ou que apenas tutores e GODs possam? E qual dos comandos? !quiz ou !respquiz?
  17. Tenta usar algo como if isCreature(cid) then ... end. (dependendo da estrutura da spell, como um addEvent, não daria mais erros no console de player not found.)
  18. zipter98

    sobre otclient

    Há uma seção própria para OTClient, com uma área para pedidos e dúvidas. Então, quando seu pedido/dúvida for relacionado ao OTClient, opte por postar lá. Agora, versão google tradutor: Hay una sección separada para OTClient, con un área para pedidos y consultas. Así que cuando su petición / pregunta está relacionada con OTClient, optar por correos allí. Aqui a área de pedidos e dúvidas do OTClient.
  19. Primeiramente, para tirar este taunt system, vá em data/talkactions. Abra o arquivo .xml, e procure pela tag do taunt system. Retire-a. Agora, em data/talkactions/scripts, procure pelo arquivo .lua do taunt system. Delete-o. Pronto, o taunt system está eliminado do seu servidor. Já sobre as outfits, vá em data/lib. Abra o arquivo clan system.lua. Procure pela tabela clansName. Nesta, você verá algo assim: local clansName = { [1] = {'Volcanic', 181613, 181625}, [2] = {'Seavell', 181619, 181622}, [3] = {'Orebound', 181620, 181627}, [4] = {'Wingeon', 181616, 181626}, [5] = {'Malefic', 181615, 181624}, [6] = {'Gardestrike', 181614, 181628}, [7] = {'Psycraft', 181618, 181629}, [8] = {'Naturia', 181612, 181623}, [9] = {'Raibolt', 181617, 181621}, } O terceiro valor, é a storage da outfit. Basta mudá-lo, de acordo com os valores que você encontra em data/xml/outfits.xml. Por exemplo, você procura, neste último arquivo .xml, a outfit rank 5 Orebound. Suponhamos que você encontre algo assim: <outfit id="38" quest="181636"> <list gender="0" lookType="1436" name="Orebound Master"/> <list gender="1" lookType="1427" name="Orebound Master"/> </outfit> Assim, o terceiro valor da linha referente à Orebound naquela tabela, será 181636. Se as outfits desejadas não possuírem storage, como, por exemplo: <outfit id="38"> <list gender="0" lookType="1436" name="Orebound Master"/> <list gender="1" lookType="1427" name="Orebound Master"/> </outfit> basta adicionar uma storage que não esteja em uso em seu servidor nessa tag. Suponhamos que você queira que a storage seja 1029. Então, ficaria assim: <outfit id="38" quest="1029"> <list gender="0" lookType="1436" name="Orebound Master"/> <list gender="1" lookType="1427" name="Orebound Master"/> </outfit> Adicionando, então, quest="1029". (é isso que determina a storage da outfit.) Aí, você procuraria pela linha referente à Orebound na tabela clansName, e colocaria o terceiro valor igual ao que você configurou no arquivo .xml. No caso do exemplo, ficaria assim a linha: [3] = {'Orebound', 181620, 1029},
  20. Opa, como seu pedido é relacionado à pokémon, a área correta seria Pedidos e dúvidas - Servidores derivados. Como o próprio nome sugere, é lá que se deve fazer pedidos sobre pokémon, naruto, etc. edit: que isso hein omega, tá rápido @topic: poderia dar mais informações sobre? Você gostaria apenas de remover o taunt system, e que quando o jogador chegar ao rank 5, ganhe aquelas outfits antigas do respectivo rank?
  21. zipter98

    Npc Outfit

    Você simplesmente copiou o script e colou? Testei aqui, e tá funcionando perfeitamente. 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 = { qnt = 5, --Quantidade de diamonds necessários. diamond_id = 2145, } if(msgcontains(msg, 'diamond')) then selfSay("Olá, eu vendo outfits por diamonds. Você gostaria de comprar uma Assasin outfit, por uma quantia de "..cfg.qnt.." "..getItemNameById(cfg.diamond_id)..".", cid) talkState[talkUser] = 1 return true elseif(msgcontains(msg, 'yes')) and talkState[talkUser] == 1 then if getPlayerStorageValue(cid, 158790) < 1 then if getPlayerItemCount(cid, cfg.diamond_id) >= cfg.qnt then selfSay('Sua roupa esta pronta, pode vestir!', cid) setPlayerStorageValue(cid, 158790,1) doPlayerRemoveItem(cid, cfg.diamond_id, cfg.qnt) talkState[talkUser] = 0 return true else selfSay("Você não tem "..cfg.qnt.." "..getItemNameById(cfg.diamond_id).."...", cid) talkState[talkUser] = 0 return true end else selfSay("Você já tem essa roupa.", cid) talkState[talkUser] = 0 return true end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  22. É como comentaram. Basta colocar chaves entre a(s) palavra(s) desejadas. Porém, só funcionará (este caso que vou mencionar, é no arquivo .lua), se a mensagem do NPC estiver configurada pra mandar pro player, no canal NPCs. Como você mencionou que as frases vem em amarelo, suponho que esteja assim nas falas: selfSay("mensagem"). Mude para selfSay("mensagem", cid). Um exemplo: selfSay("Olá, {tudo} bem?", cid). A mensagem será enviada ao jogador no canal NPCs (em azul), sendo que a palavra tudo estará num tom mais forte de azul.
  23. Ops, foi erro meu mesmo. function onUse(cid, item, frompos, item2, topos) local config = { pz = "yes", -- players precisam estar em protection zone para usar? ("yes" or "no"). battle = "yes", -- players deve estar sem battle ("yes" or "no") pos = {x=1053, y=1049, z=7}, tempo = 10, } if(config.pz == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder teleportar.") return TRUE end if(config.battle == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder teleportar.") return TRUE end if item.itemid == 5957 then if getPlayerStorageValue(cid, 102911) > os.time() then return doPlayerSendCancel(cid, "Aguarde "..getPlayerStorageValue(cid, 102911) - os.time().." segundo(s) para teleportar novamente.") end doPlayerSendTextMessage(cid,25,"Você foi teleportado para o CP de Saffron!") doPlayerRemoveItem(cid, 13691, 1) doTeleportThing(cid,config.pos) doSendMagicEffect(getCreaturePosition(cid), 6) setPlayerStorageValue(cid, 102911, os.time() + config.tempo * 60 * 1000) end return 1 end Ou function onUse(cid, item, frompos, item2, topos) local config = { pz = "yes", -- players precisam estar em protection zone para usar? ("yes" or "no"). battle = "yes", -- players deve estar sem battle ("yes" or "no") pos = {x=1053, y=1049, z=7}, tempo = 10, } if(config.pz == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder teleportar.") return TRUE end if getPlayerStorageValue(cid, 102911) > os.time() then return doPlayerSendCancel(cid, "Aguarde "..getPlayerStorageValue(cid, 102911) - os.time().." segundo(s) para teleportar novamente.") end if(config.battle == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder teleportar.") return TRUE end if item.itemid == 5957 then doPlayerSendTextMessage(cid,25,"Você foi teleportado para o CP de Saffron!") doPlayerRemoveItem(cid, 13691, 1) doTeleportThing(cid,config.pos) doSendMagicEffect(getCreaturePosition(cid), 6) setPlayerStorageValue(cid, 102911, os.time() + config.tempo * 60 * 1000) end return 1 end O sendcancel vai aparecer em segundos, não se assuste com o número que aparecerá.
  24. Como assim? Você quer mudar a cor das falas dos NPCs, pra qualquer uma desejada? Ou que seja tipo um whisper, como na print?
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...