Ir para conteúdo

Frenesy

Membro
  • Registro em

  • Última visita

Tudo que Frenesy postou

  1. Não tenho pra Porta. Mas tenho algo pra Tile. --==-- by Frenesy --==-- function onStepIn(cid, item, position, fromPosition) local fromPos,toPos = {x = 000, y = 000, z = 00},{x = 000, y = 000, z = 00} --- Começo e Final da Área. local Trainer = {x = 000, y = 000, z = 00} -- Local pra onde vai se tiver vazio. if (item.actionid == 10000) then for x = fromPos.x, toPos.x do for y = fromPos.y, toPos.y do local pos = {x=x, y=y, z=fromPos.z} local m = getTopCreature(pos).uid if m ~= 0 and isPlayer(m) then doTeleportThing(cid,fromPosition) doSendMagicEffect(getPlayerPosition(cid), 2) doPlayerSendCancel(cid, "Full!") else doTeleportThing(cid,Trainer) doSendMagicEffect(getPlayerPosition(cid), 2) end end end end end Movements.xml <movevent type="StepIn" actionid="10000" event="script" value="NomeDoArquivo.lua"/> No Map Editor, coloque ActionID 10000 no Tile.
  2. Ta tudo bem xWhiteWolf, ajudou muito! Muito Obrigado pela atenção!
  3. <movevent type="Equip" itemid="2463" slot="armor" event="script" value="Slot_Teste.lua"/> <movevent type="DeEquip" itemid="2463" slot="armor" event="script" value="Slot_Teste.lua"/> Estou usando a Plate Armor pra testar. Quando eu dropo ela nos monstros eu ganho ela em uma Quest, ela funciona legal. O problema está apenas quando eu crio ela no GOD.
  4. function onStepIn(cid) --==================================================================-- ItemPos = {x=416, y=513, z=14, stackpos= 1} -- Local Alavanca 1 ItemPos2 = {x=418, y=513, z=14, stackpos= 1} -- Local Alavanca 2 ItemPos3 = {x=420, y=513, z=14, stackpos= 1} -- Local Alavanca 3 ItemPos4 = {x=422, y=513, z=14, stackpos= 1} -- Local Alavanca 4 ItemPos5 = {x=422, y=513, z=14, stackpos= 1} -- Local Alavanca 5 ItemUm = getThingfromPos(ItemPos) ItemDois = getThingfromPos(ItemPos2) ItemTres = getThingfromPos(ItemPos3) ItemQuatro = getThingfromPos(ItemPos4) ItemCinco = getThingfromPos(ItemPos5) posUm = {x=000,y=000,z=00} -- Position Certa posDois = {x=000,y=000,z=00} -- Position Errada --==================================================================-- if ItemUm.itemid == 1945 and ItemDois.itemid == 1945 and ItemTres.itemid == 1945 and ItemQuatro.itemid == 1945 and ItemCinco.itemid == 1945 then doTeleportThing(cid, posUm) -- se tiver tudo pra esquerda, teleporta pra k. doSendMagicEffect(posUm, 10) doTransformItem(ItemUm.uid, 1946) -- Nao sei colocar aleatoria. Deixei tudo direita doTransformItem(ItemDois.uid, 1946) doTransformItem(ItemTres.uid, 1946) doTransformItem(ItemQuatro.uid, 1946) doTransformItem(ItemCinco.uid, 1946) else doTeleportThing(cid, posDois) -- Se nao tiver tudo esquerda, teleporta pra k. doSendMagicEffect(posDois, 10) doTransformItem(ItemUm.uid, 1946) -- Nao sei colocar aleatoria. Deixei tudo direita doTransformItem(ItemDois.uid, 1946) doTransformItem(ItemTres.uid, 1946) doTransformItem(ItemQuatro.uid, 1946) doTransformItem(ItemCinco.uid, 1946) return TRUE end Não sei como colocar as alavancas pra ficarem em posições aleatórias. Você pode coloca-las em posições diferentes pelo Map Editor ou pode pedir pro pessoal aí em cima da um jeitinho pra você. Eles são fera! Abraços !!
  5. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Clique AQUI!
  6. Só pra deixar registrado, o Config.lua tem um Critical System. criticalHitChance = 7 criticalHitMultiplier = 1 displayCriticalHitNotify = false
  7. OQueÉIssuMestre! Você foi 10 agora. REP+ #Edit Ta aparecendo duas vezes sempre que Equipo o Item: 22:00 Now that you're using this item you'll receive a special bonus... 22:00 Now that you're using this item you'll receive a special bonus... Ao criar o Item com o GOD e tentar mover ele (o item), o OT fecha. Mas o item funciona legal quando dropado nos monstros ou conseguido de outra forma sem ser feita pelo GOD. O Desequipar funciona legal.
  8. Erro Bobo. Qualquer coisa só avisar! Abraços!
  9. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Queria que todos os problemas fosse resolvidos assim Te daria um REP+ por ter resolvido seu próprio problema ... SQN!
  10. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    -- < Script by Frenesy > -- 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 doCreatureSayWithDelay(cid,text,type,delay,e) if delay<=0 then doCreatureSay(cid,text,type) else local func=function(pars) doCreatureSay(pars.cid,pars.text,pars.type) pars.e.done=TRUE end e.done=FALSE e.event=addEvent(func,delay,{cid=cid, text=text, type=type, e=e}) end end function cancelNPCTalk(events) local ret=1 for aux=1,table.getn(events) do if events[aux].done==FALSE then stopEvent(events[aux].event) else ret=ret+1 end end events=nil return(ret) end function doNPCTalkALot(msgs,interval) local e={} local ret={} if interval==nil then interval=3000 end --3 seconds is default time between messages for aux=1,table.getn(msgs) do e[aux]={} doCreatureSayWithDelay(getNpcCid(),msgs[aux],TALKTYPE_PRIVATE_NP,(aux-1)*interval,e[aux]) table.insert(ret,e[aux]) end return(ret) end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local Saffron = {x=000,y=000,z=00} -- Configurar Aqui local Cerulean = {x=000,y=000,z=00} -- Configurar Aqui local Cinnabar = {x=000,y=000,z=00} -- Configurar Aqui local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid if(msgcontains(msg, 'Saffron') or msgcontains(msg, 'saffron')) then selfSay('Adeus!', cid) doTeleportThing(cid, Saffron) elseif(msgcontains(msg, 'Cerulean') or msgcontains(msg, 'celurean')) then selfSay('Adeus!', cid) doTeleportThing(cid, Celurean) elseif(msgcontains(msg, 'Cinnabar') or msgcontains(msg, 'cinnabar')) then selfSay('Adeus!', cid) doTeleportThing(cid, Cinnabar) end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Não sei se precisava de dinheiro.
  11. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Clique AQUI!
  12. Deixa eu ver se entendi, se as alavancas tiverem todas pra esquerda, o player vai pra posição UM. Se tiverem todas pra direita OU não estiverem todas pra esquerda (faltando um ou dois), então ele vai pra posição DOIS. Quantas alavancas tem? Precisa de storage pra passar pelo Portal? Eu poderia fazer, mas preciso de detalhes, pois não entendi muito bem. DICA: Você poderia fazer algo tipo, cinco alavancas (todas pro lado esquerdo), você deve posiciona-las em uma ordem certa, tipo: Alavanca 1: esquerda Alavanca 2: direita Alavanca 3: esquerda Alavanca 4: direita Alavanca 5: direita
  13. -- < Script by Frenesy > -- 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 doCreatureSayWithDelay(cid,text,type,delay,e) if delay<=0 then doCreatureSay(cid,text,type) else local func=function(pars) doCreatureSay(pars.cid,pars.text,pars.type) pars.e.done=TRUE end e.done=FALSE e.event=addEvent(func,delay,{cid=cid, text=text, type=type, e=e}) end end function cancelNPCTalk(events) local ret=1 for aux=1,table.getn(events) do if events[aux].done==FALSE then stopEvent(events[aux].event) else ret=ret+1 end end events=nil return(ret) end function doNPCTalkALot(msgs,interval) local e={} local ret={} if interval==nil then interval=3000 end --3 seconds is default time between messages for aux=1,table.getn(msgs) do e[aux]={} doCreatureSayWithDelay(getNpcCid(),msgs[aux],TALKTYPE_PRIVATE_NP,(aux-1)*interval,e[aux]) table.insert(ret,e[aux]) end return(ret) 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 if(msgcontains(msg, 'trocar') or msgcontains(msg, 'changer')) and getPlayerStorageValue(cid,1000) == -1 then -- Configura Storage Aqui selfSay('Deseja trocar uma {Boots of Haster} por uma {Soft Boots}?', cid) talkState[talkUser] = 1 elseif((msgcontains(msg, 'no') or msgcontains(msg, 'nao')) and talkState[talkUser] == 1) then selfSay('Tudo bem entao. Adeus!.', cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim')) and talkState[talkUser] == 1 and getPlayerStorageValue(cid,1000) == -1 and getPlayerItemCount(cid, BootIfHasterID) >= 1 then selfSay('Aqui esta!', cid) doSendMagicEffect(getPlayerPosition(cid), 13) setPlayerStorageValue(cid, 1000, 1) doPlayerAddItem(cid,BootOfHasterID, -1) doPlayerAddItem(cid,SoftBootsID, 1) talkState[talkUser] = 0 elseif(msgcontains(msg, 'yes') or msgcontains(msg, 'sim')) and talkState[talkUser] == 1 and getPlayerStorageValue(cid,1000) == -1 and getPlayerItemCount(cid, BootIfHasterID) < 1 then selfSay('Voce nao possui o item.', cid) talkState[talkUser] = 0 elseif(msgcontains(msg, 'trocar') or msgcontains(msg, 'changer')) and getPlayerStorageValue(cid,1000) == 1 then -- Configura Storage Aqui selfSay('Voce so pode realiazar esta troca apenas uma vez.', cid) end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  14. Continua a mesma coisa =/
  15. kkkkk Pega esse aqui do meu OT. <?xml version="1.0"?> <npc name="Lucca" script="data/npc/scripts/NomeDoArquivo.lua" walkinterval="2000"> <health now="200" max="200" /> <look type="131" head="38" body="38" legs="38" feet="38" addons="3"/> <parameters> <parameter key="message_greet" value="Ola, |PLAYERNAME|. Em que posso ajuda-lo?" /> </parameters> </npc> Só configura ali, colocando o nome do arquivo .lua. apenas isso
  16. Cara, é só colocar um 'end' no final ¬¬ --Made by llucas75 -- local vocreal = getPlayerVocation(cid) local outreal = getCreatureOutfit(cid) local vocvai = 3 -- vocação para qual vai local novaout = {lookType = 1581} --A outfit que ira virar local pausa = 2*60*1000 -- em milésimos o tempo que levará para voltar a outfit normal(ta pra 2 minutos) function onCastSpell(cid, var) function changevoc() if isPlayer(cid) then doPlayerSetVocation(cid, vocreal) doRemoveCondition(cid, CONDITION_OUTFIT) end end if vocreal == 1 then doPlayerSay(cid, 'Transformation', TALKTYPE_ORANGE_1) doPlayerSetVocation(cid, vocvai) doSetCreatureOutfit(cid, novaout, -1) doSendMagicEffect(getPlayerPosition(cid), 8) addEvent(changevoc,pausa,cid) else doPlayerSendCancel(cid, MESSAGE_STATUS_WARNING, "Sorry not posible.") doSendMagicEffect(getPlayerPosition(cid), 10) end end
  17. kkkkkkkkkkkkkk parece um erro bobo. Mas foi erro meu mesmo ao passar aqui pro forum. Na verdade ele ta conf. direitinho, o problema é esse que eu mencionei acima, ele não aumenta apenas 100 de HP. Ele aumenta bem mais ... Tipo, eu to com 1000 de HP, ao usar ele sobe pra 1356 de HP por exemplo
  18. Na verdade, o problema mesmo é que não esta indo 100 corretamente. Ele aumenta, mas aumenta mais do que 100. Como se estivesse em porcentagem ou algo assim. Queria que ele aumentasse 100. Apenas 100.
  19. -- < Script by Frenesy > --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 doCreatureSayWithDelay(cid,text,type,delay,e) if delay<=0 then doCreatureSay(cid,text,type) else local func=function(pars) doCreatureSay(pars.cid,pars.text,pars.type) pars.e.done=TRUE end e.done=FALSE e.event=addEvent(func,delay,{cid=cid, text=text, type=type, e=e}) end end function cancelNPCTalk(events) local ret=1 for aux=1,table.getn(events) do if events[aux].done==FALSE then stopEvent(events[aux].event) else ret=ret+1 end end events=nil return(ret) end function doNPCTalkALot(msgs,interval) local e={} local ret={} if interval==nil then interval=3000 end --3 seconds is default time between messages for aux=1,table.getn(msgs) do e[aux]={} doCreatureSayWithDelay(getNpcCid(),msgs[aux],TALKTYPE_PRIVATE_NP,(aux-1)*interval,e[aux]) table.insert(ret,e[aux]) end return(ret) 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 if(msgcontains(msg, 'Quest') or msgcontains(msg, 'quest')) and getPlayerStorageValue(cid,1000) == -1 then -- Configura Storage Aqui selfSay('Voce pode me ajuda?', cid) talkState[talkUser] = 1 elseif((msgcontains(msg, 'yes') or msgcontains(msg, 'sim')) and talkState[talkUser] == 1) then selfSay('Me traga um item que te dou uma recompensa. Agora vá!', cid) talkState[talkUser] = 0 doSendMagicEffect(getPlayerPosition(cid), 13) setPlayerStorageValue(cid, 1000, 1) -- Nao poder comecar esta quest de novo setPlayerStorageValue(cid, 1001, 1) elseif(msgcontains(msg, 'Quest') or msgcontains(msg, 'quest')) and getPlayerStorageValue(cid,1001) == 1 and getPlayerItemCount(cid, IDDoItem) == 1 then selfSay('Obrigado. Aqui esta sua recompensa!', cid) doSendMagicEffect(getPlayerPosition(cid), 13) doPlayerRemoveItem(cid, IDDoItem, 1) -- Remove os Item doPlayerAddItem(cid,2160, 1) -- Configure a Recompensa. setPlayerStorageValue(cid, 1001, -1) -- Remove Storage end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
  20. function onUse(cid, item, frompos, item2, topos) local konoha = {x=1026, y=910, z=7} -- Posição para onde o player será teleportado. local bag = doPlayerAddItem(cid, 7343, 1) -- Configure a BAG que vc quer doAddContainerItem(bag, 2457, 1) -- Configure o Item que vai pra dentro da bag doAddContainerItem(bag, 2457, 1) -- Configure o Item que vai pra dentro da bag doTeleportThing(cid, konoha) doPlayerSendTextMessage(cid,20,"VOCÊ PEGOU SEU PREMIO E FOI TELEPORTADO PARA KONOHA.") return TRUE end
  21. Fiz rapidinho, não testei. NPC :. -- < Script by Frenesy > -- 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 doCreatureSayWithDelay(cid,text,type,delay,e) if delay<=0 then doCreatureSay(cid,text,type) else local func=function(pars) doCreatureSay(pars.cid,pars.text,pars.type) pars.e.done=TRUE end e.done=FALSE e.event=addEvent(func,delay,{cid=cid, text=text, type=type, e=e}) end end function cancelNPCTalk(events) local ret=1 for aux=1,table.getn(events) do if events[aux].done==FALSE then stopEvent(events[aux].event) else ret=ret+1 end end events=nil return(ret) end function doNPCTalkALot(msgs,interval) local e={} local ret={} if interval==nil then interval=3000 end --3 seconds is default time between messages for aux=1,table.getn(msgs) do e[aux]={} doCreatureSayWithDelay(getNpcCid(),msgs[aux],TALKTYPE_PRIVATE_NP,(aux-1)*interval,e[aux]) table.insert(ret,e[aux]) end return(ret) 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 if(msgcontains(msg, 'Task') or msgcontains(msg, 'task')) and getPlayerStorageValue(cid,1000) == -1 then -- Configura Storage Aqui selfSay('Ola! Ando tendo problemas com esses malditos Dwarf cavando tuneis por ai. Poderia me ajuda?', cid) talkState[talkUser] = 1 elseif((msgcontains(msg, 'yes') or msgcontains(msg, 'sim')) and talkState[talkUser] == 1) then selfSay('Va no subsolo e mate 300 Dwarfs. Eu te pagarei uma boa recompensa.', cid) talkState[talkUser] = 0 doSendMagicEffect(getPlayerPosition(cid), 13) setPlayerStorageValue(cid, 1000, 1) -- Nao poder comecar esta task de novo setPlayerStorageValue(cid, 1001, 0) -- Storage para ganhar Matando o Monstro setPlayerStorageValue(cid, 1002, 1) -- Storage de acesso para matar o Monstro setPlayerStorageValue(cid, 1003, 1) -- Storage de verificacao de quantos matou no NPC elseif(msgcontains(msg, 'Task') or msgcontains(msg, 'task')) and getPlayerStorageValue(cid,1003) == 1 then selfSay('Voce matou ate agora' .. getPlayerStorageValue(cid, 1001) .. ' Dwarfs', cid) elseif(msgcontains(msg, 'Task') or msgcontains(msg, 'task')) and getPlayerStorageValue(cid,1001) == 300 then selfSay('Você voltou vivo. Parabens! Aqui esta sua recompensa!', cid) doSendMagicEffect(getPlayerPosition(cid), 13) doPlayerAddItem(cid,2160, 1) -- Configure seu Item aqui (Basta clonar ele abaixo para adicionar mais itens) doPlayerAddExperience(cid, 200) -- Configurar EXP ganha setPlayerStorageValue(cid, 1001, -300) -- Remover Missão setPlayerStorageValue(cid, 1002, -1) -- Remove Storage para ganhar Matando o Monstro setPlayerStorageValue(cid, 1003, -1) -- Remove Storage de acesso para matar o Monstro end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Em CreatureScript/script adicione: -- < Script by Frenesy > -- function onKill(cid, target) ------------------------- local storage = 1001 local Name = "Dwarfs" -- Configurar nome do monstro aqui. ------------------------- if getPlayerStorageValue(cid, 1002) == 1 and (getCreatureName(target) == Name) then if getPlayerStorageValue(cid, storage) < 300 then setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid, storage)+1) doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Dwarfs Morto: " .. getPlayerStorageValue(cid, storage) .. "/300") if getPlayerStorageValue(cid, storage) == 300 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Todos os Monstros da Quest foram Derrotados!") end return TRUE end end return TRUE end CreatureScript.xml <event type="kill" name="AlterarAqui" script="script/NomeDoScriptAqui.lua"/> Login registerCreatureEvent(cid, "AlterarAqui") Nos Monstros, adicione esta tag: <script> <event name="OMesmoQueNoLogin.lua"/> </script> Qualquer duvida na hora de configurar ... Abraços !!
  22. Como eu faço para adicionar um Item que ao Equipar, ele acrescenta + 100 do HP Máximo do Player. Mas ao desEquipar, o HP do jogador volta ao normal. Eu tentei mas não deu muito certo. Ele não adiciona 100 de HP. function onEquip(cid, item, slot) local hp = 100 doSendMagicEffect(getPlayerPosition(cid), 12) setCreatureMaxHealth(cid,getCreatureMaxHealth(cid)+hp) return true end function onDeEquip(cid, item, slot) local hp = 100 doSendMagicEffect(getPlayerPosition(cid), 13) setCreatureMaxHealth(cid,getCreatureMaxHealth(cid)+hp) return true end
  23. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Éh, deu certo. Eu tentei : doItemSetAttribute(itemEx.uid, 'armor', 10) E funcionou. Mas o que eu realmente queria era algo que desse HP. Algo como maxhitpoints ou maxhealthpoints. Tentei e não deu certo. É uma pena, mas valeu pela ajuda. REP+
  24. Frenesy postou uma resposta no tópico em Suporte Tibia OTServer
    Eu devo ta fazendo alguma coisa errada, eu tentei: doItemSetAttribute(itemEx.uid, 'arm', 10) Mas não deu resultado. Estou fazendo algo de errado?

Informação Importante

Confirmação de Termo