Ir para conteúdo

Npc Que So Teleporta Player Com Promotion!


WaguiinRodriguez

Posts Recomendados

  • 4 weeks later...

Tenta usa esse Aqui:



Em Data/Npc/Script crie um arquivo LUA chamado NpcTeleport e adicione isso dentro:


local keywordHandler = KeywordHandler:new() 
local npcHandler = NpcHandler:new(keywordHandler) 
NpcSystem.parseParameters(npcHandler) 
local talkState = {} 

local poscarlin = {x=139,y=59,z=7} -------------- Pos para onde o player sera levado em Carlin
local posvenore = {x=139,y=59,z=7} -------------- Pos para onde o player sera levado em Venore
local posedron = {x=139,y=59,z=7} -------------- Pos para onde o player sera levado em Edron
local skull = getCreatureSkullType(cid)

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, "Job") or msgcontains(msg, "job") then
   selfSay("Eu realizo viagens para jogadores com Promotion para {Carlin}, {Venore}, {Edron}.", cid)
   elseif(msgcontains(msg, 'Carlin')) or msgcontains(msg, "carlin") then
   selfSay('Uma viagem para Carlin vai te custar {200 R$}.', cid) 
   talkState[talkUser] = 1 
   elseif(msgcontains(msg, 'Venore')) or msgcontains(msg, "venore") then
   selfSay('Uma viagem para Venore vai te custar {200 R$}.', cid) 
   talkState[talkUser] = 2 
   elseif(msgcontains(msg, 'Edron')) or msgcontains(msg, "edron") then
   selfSay('Uma viagem para Edron vai te custar {200 R$}.', cid) 
   talkState[talkUser] = 3 


-- Confirmação da Compra 

elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 1) and getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE then  
if(getPlayerVocation(cid) >= 5) then 
if(doPlayerRemoveMoney(cid, 200)) then  
selfSay('Thanks!', cid) 
doTeleportThing(cid, poscarlin)
talkState[talkUser] = 0 
else  
selfSay('Você não tem dinheiro.', cid) 
end 
else  
selfSay('Soh jogadores com Promotion podem usar esse Barco.', cid) 
talkState[talkUser] = 0  
end  
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 2) and getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE then  
if(getPlayerVocation(cid) >= 5) then 
if(doPlayerRemoveMoney(cid, 200)) then  
selfSay('Thanks!', cid) 
doTeleportThing(cid, posvenore)
talkState[talkUser] = 0 
else  
selfSay('Você não tem dinheiro.', cid) 
end 
else  
selfSay('Soh jogadores com Promotion podem usar esse Barco.', cid) 
talkState[talkUser] = 0  
end
elseif(msgcontains(msg, 'yes') and talkState[talkUser] == 3) and getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE then  
if(getPlayerVocation(cid) >= 5) then 
if(doPlayerRemoveMoney(cid, 200)) then  
selfSay('Thanks!', cid) 
doTeleportThing(cid, posedron)
talkState[talkUser] = 0 
else  
selfSay('Você não tem dinheiro.', cid) 
end 
else  
selfSay('Soh jogadores com Promotion podem usar esse Barco.', cid) 
talkState[talkUser] = 0  
end
else  
selfSay('Soh jogadores sem {Battle} podem usar esse barco.', cid) 
talkState[talkUser] = 0 
end
return TRUE
end


npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())

 

Agora crie 1 Npc em Data/Npc e adicione isso dentro:

<npc name="Edcarlos" script="data/npc/scripts/NpcTeleport.lua" walkinterval="2000" floorchange="0">
   <health now="100" max="100"/>
   <look type="134" head="78" body="88" legs="0" feet="88" addons="3"/>
       <parameters>
               <parameter key="message_greet" value="Ola. Para mais informacoes de meus servicos diga {job}." />
               <parameter key="message_farewell" value="Tchau." />
               <parameter key="message_walkaway" value="Tchau." />
       </parameters>
</npc>

 

Não esqueça de mudar essa parte

local poscarlin = {x=139,y=59,z=7} -------------- Pos para onde o player sera levado em Carlin
local posvenore = {x=139,y=59,z=7} -------------- Pos para onde o player sera levado em Venore
local posedron = {x=139,y=59,z=7} -------------- Pos para onde o player sera levado em Edron

Eu não testei Aqui, então qualquer coisa me avisa.

Editado por DeathAngels
Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

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