Postado Janeiro 6, 2015 10 anos Olá pessoas do Tibiaking,com! e.e Estou precisando de um Npc de Teleport com level, que ele só teleport players de level 50+, existem alguns no fórum mais os que eu achei não funcionaram no meu servidor. Rep+ Pra quem ajudar >< Atensiosamente, Gabriel L.
Postado Janeiro 6, 2015 10 anos Solução stranger.lua (data\npc\scripts): local level = 50 local pos = {x=123, y=456, z=7} 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 if (msgcontains(msg, 'teleport')) then talkState[talkUser] = 1 selfSay('I can teleport you, but you need at least level '..level..' to go. Are you sure you\'re ready?', cid) elseif (msgcontains(msg, 'yes') and talkState[talkUser] == 1) then if (getPlayerLevel(cid) >= level) then doTeleportThing(cid, pos) doSendMagicEffect(pos, CONST_ME_TELEPORT) selfSay('Be careful!', cid) else talkState[talkUser] = 0 selfSay('I said! You need at least level '..level..' to be teleported. You\'re not ready.', cid) end elseif (msgcontains(msg, 'no') and talkState[talkUser] == 1) then talkState[talkUser] = 0 npcHandler:releaseFocus(cid) selfSay('Sure.', cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Stranger.xml (data\npc): <npc name="Stranger" script="data/npc/scripts/stranger.lua" access="5" lookdir="1"> <health now="1000" max="1000"/> <look type="129" head="115" body="132" legs="114" feet="95" addons="0"/> <parameters> <parameter key="message_greet" value="Hey |PLAYERNAME|, I can {teleport} some mortals." /> </parameters> </npc> The corrupt fear us. The honest support us. The heroic join us.
Postado Janeiro 6, 2015 10 anos Não testei sou novo nesses bang de script ... carlos.lua 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 local cfg = { toPos = {x=1789, y=3667, z=7}, -- Posição level = 50, -- Level necessário price = 30 -- Dinheiro cobrado } 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, 'travel') then selfSay('You are sure you want to go?', cid) talkState[talkUser] = 1 elseif msgcontains(msg, 'yes') and talkState[talkUser] == 1 then if getPlayerLevel(cid) >= cfg.level then if doPlayerRemoveMoney(cid, cfg.price) then doTeleportThing(cid, cfg.toPos) talkState[talkUser] = 0 else selfSay('You don\'t have enough money.', cid) end else selfSay('You need level having above '.. cfg.level ..'.', cid) end elseif msgcontains(msg, 'no') then selfSay('bye', cid) end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) carlos.xml <?xml version="1.0" encoding="UTF-8"?> <npc name="Carlos" script="data/npc/scripts/carlos.lua" walkinterval="25" floorchange="0" access="5" level="1" maglevel="1"> <health now="150" max="150"/> <look type="128" head="114" body="12" legs="57" feet="114" addons="0" /> <parameters> <parameter key="message_greet" value="Hello, |PLAYERNAME|! Would like to {travel} ?"/> <parameter key="message_walkaway" value="Hey, where you go ?"/> <parameter key="message_farewell" value="Bye!"/> </parameters> </npc> #Edit Editado Janeiro 6, 2015 10 anos por Blackmotion (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.