xmaster0 3 Postado Fevereiro 9, 2014 Share Postado Fevereiro 9, 2014 bem eu queria somente que: se o player tiver a storage 98719 o npc mandasse uma mensagem pra ele dizendo: NPC: Você não pode ir novamente para este local NPC.lua local focus = 0local talk_start = 0local target = 0local following = falselocal attacking = falselocal addon_state = 0function onThingMove(creature, thing, oldpos, oldstackpos)endfunction onCreatureAppear(creature)endfunction onCreatureDisappear(cid, pos) if focus == cid then selfSay('Good bye then.') focus = 0 talk_start = 0 endendfunction onCreatureTurn(creature)endfunction msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))endlocal teleport = {x = 1029, y = 1026, z = 6}function onCreatureSay(cid, type, msg) msg = string.lower(msg) if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then selfSay('Olá ' .. getCreatureName(cid) .. ', posso te {teleportar} para zona da quest!', cid) focus = cid talk_start = os.clock() elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then selfSay('Sorry, ' .. getCreatureName(cid) .. '! I talk to you in a minute.') elseif focus == cid then talk_start = os.clock() if msgcontains(msg, 'teleportar') or msgcontains(msg, 'teleportar') then if getPlayerLevel(cid) < 100 and then selfSay('Você precisa de level 100+!') addon_state = 0 else doTeleportThing(cid, teleport) doPlayerSendCancel(cid, "Você está na zona da missão pré-mega quest!") doSendMagicEffect(getThingPos(cid), 211) doSendMagicEffect(getThingPos(cid), 231) talk_start = 0 end elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then selfSay('Good bye, ' .. getCreatureName(cid) .. '! Come back soon..', cid) focus = 0 talk_start = 0 end endendfunction onCreatureChangeOutfit(creature)endfunction onThink() doNpcSetCreatureFocus(focus) if (os.clock() - talk_start) > 30 then if focus > 0 then selfSay('Next Please...') end focus = 0 end if focus ~= 0 then if getDistanceToCreature(focus) > 5 then selfSay('Good bye then.') focus = 0 end endend ; Link para o comentário Compartilhar em outros sites More sharing options...
Legnus 34 Postado Fevereiro 9, 2014 Share Postado Fevereiro 9, 2014 (editado) local focus = 0 local talk_start = 0 local target = 0 local following = false local attacking = false local addon_state = 0 function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if focus == cid then selfSay('Good bye then.') focus = 0 talk_start = 0 end end function onCreatureTurn(creature) end function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end local teleport = {x = 1029, y = 1026, z = 6} function onCreatureSay(cid, type, msg) msg = string.lower(msg) if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then selfSay('Olá ' .. getCreatureName(cid) .. ', posso te {teleportar} para zona da quest!', cid) focus = cid talk_start = os.clock() elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then selfSay('Sorry, ' .. getCreatureName(cid) .. '! I talk to you in a minute.') elseif focus == cid then talk_start = os.clock() if msgcontains(msg, 'teleportar') or msgcontains(msg, 'teleportar') then if getPlayerStorageValue(cid, 98719) == 1 then selfSay('Você não pode ir novamente pra este local', cid) return true end if getPlayerLevel(cid) < 100 then selfSay('Você precisa de level 100+!') addon_state = 0 else doTeleportThing(cid, teleport) doPlayerSendCancel(cid, "Você está na zona da missão pré-mega quest!") doSendMagicEffect(getThingPos(cid), 211) doSendMagicEffect(getThingPos(cid), 231) setPlayerStorageValue(cid, 98719, 1) talk_start = 0 end elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then selfSay('Good bye, ' .. getCreatureName(cid) .. '! Come back soon..', cid) focus = 0 talk_start = 0 end end end function onCreatureChangeOutfit(creature) end function onThink() doNpcSetCreatureFocus(focus) if (os.clock() - talk_start) > 30 then if focus > 0 then selfSay('Next Please...') end focus = 0 end if focus ~= 0 then if getDistanceToCreature(focus) > 5 then selfSay('Good bye then.') focus = 0 end end end Editado Fevereiro 9, 2014 por Legnus Link para o comentário Compartilhar em outros sites More sharing options...
xmaster0 3 Postado Fevereiro 10, 2014 Autor Share Postado Fevereiro 10, 2014 não deu certo, mesmo com a storage o npc ta teleportando :: verifiquei até no sql e sim ta com a storage aplicada no player Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados