Ir para conteúdo
Entre para seguir isso  
thedarkhell

Npc Que Vende Rings!

Recommended Posts

e um npc comum com addon

fiz ele no map dorion 7.9 do xedegux intao eu n testei em outros servidores

ele vendi roh,tr,lr,sr,ar,cr e uns ae q eu achu q eskeci ^^

 

tomara de ajude lah vai

 

<?xml version="1.0"?>

 

<npc name="Senhor Dos Aneis" script="data/npc/scripts/rings.lua" access="3" lookdir="3">

<health now="1" max="1"/>

<look type="146" head="0" body="40" legs="114" feet="0" corpse="3128"/>

</npc>

 

 

agora o script dele

 

focus = 0

talk_start = 0

target = 0

following = false

attacking = false

 

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

 

 

function onCreatureSay(cid, type, msg)

msg = string.lower(msg)

 

if (msgcontains(msg, 'hi') and focus == 0) and getDistanceToCreature(cid) < 4 then

selfSay('Hello ' .. creatureGetName(cid) .. '! I sell life ring (2k), ring of healing (4k), club ring (2k), axe ring (3k), power ring (3k), energy ring (5k), time ring (6k) and sword ring (3k).')

focus = cid

talk_start = os.clock()

 

elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then

selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.')

 

elseif focus == cid then

talk_start = os.clock()

 

if msgcontains(msg, 'life ring') then

buy(cid,2168,1,3000)

elseif msgcontains(msg, 'sword ring') then

buy(cid,2207,1,2000)

elseif msgcontains(msg, 'ring of healing') then

buy(cid,2214,1,4000)

elseif msgcontains(msg, 'club ring') then

buy(cid,2209,1,2000)

elseif msgcontains(msg, 'axe ring') then

buy(cid,2208,1,3000)

elseif msgcontains(msg, 'power ring') then

buy(cid,2166,1,3000)

elseif msgcontains(msg, 'energy ring') then

buy(cid,2167,1,5000)

elseif msgcontains(msg, 'time ring') then

buy(cid,2169,1,6000)

 

 

elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then

selfSay('Good bye, ' .. creatureGetName(cid) .. '!')

focus = 0

talk_start = 0

end

end

end

 

 

function onCreatureChangeOutfit(creature)

 

end

 

 

function onThink()

 

if focus > 0 then

x, y, z = creatureGetPosition(focus)

myx, myy, myz = selfGetPosition()

if ((myy-y==0) and (myx-x<=0 and myx-x>=-4)) then

selfTurn(0)

end

if ((myy-y==0) and (myx-x>=0 and myx-x<=4)) then

selfTurn(2)

end

if ((myx-x==0) and (myy-y<=0 and myy-y>=-4)) then

selfTurn(1)

end

if ((myx-x==0) and (myy-y>=0 and myy-y<=4)) then

selfTurn(3)

end

if ((myy-y==-2) and (myx-x>=-1 and myx-x<=1)) then

selfTurn(1)

end

if ((myy-y==2) and (myx-x>=-1 and myx-x<=1)) then

selfTurn(3)

end

if ((myx-x==2) and (myy-y>=-1 and myy-y<=1)) then

selfTurn(2)

end

if ((myx-x==-2) and (myy-y>=-1 and myy-y<=1)) then

selfTurn(0)

end

if ((myy-y==-3) and (myx-x>=-2 and myx-x<=2)) then

selfTurn(1)

end

if ((myy-y==3) and (myx-x>=-2 and myx-x<=2)) then

selfTurn(3)

end

if ((myx-x==3) and (myy-y>=-2 and myy-y<=2)) then

selfTurn(2)

end

if ((myx-x==-3) and (myy-y>=-2 and myy-y<=2)) then

selfTurn(0)

end

if ((myy-y==-4) and (myx-x>=-3 and myx-x<=3)) then

selfTurn(1)

end

if ((myy-y==4) and (myx-x>=-3 and myx-x<=3)) then

selfTurn(3)

end

if ((myx-x==4) and (myy-y>=-3 and myy-y<=3)) then

selfTurn(2)

end

if ((myx-x==-4) and (myy-y>=-3 and myy-y<=3)) then

selfTurn(0)

end

end

 

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

 

 

TOMARA Q VC USEM NO SERVE DE VCS ^^

Compartilhar este post


Link para o post
Compartilhar em outros sites

Rox, mas tipo, como faz pra mudar o valor q vende cada um? e como faz pra vender só axe/sword/club e life ring?

Vlw :laughing:

Compartilhar este post


Link para o post
Compartilhar em outros sites
Rox, mas tipo, como faz pra mudar o valor q vende cada um? e como faz pra vender só axe/sword/club e life ring?

Vlw :laughing:

 

 

e simples

 

if msgcontains(msg, 'life ring') then

buy(cid,2168,1,3000)

elseif msgcontains(msg, 'sword ring') then

buy(cid,2207,1,2000)

elseif msgcontains(msg, 'ring of healing') then

buy(cid,2214,1,4000)

elseif msgcontains(msg, 'club ring') then

buy(cid,2209,1,2000)

elseif msgcontains(msg, 'axe ring') then

buy(cid,2208,1,3000)

elseif msgcontains(msg, 'power ring') then

buy(cid,2166,1,3000)

elseif msgcontains(msg, 'energy ring') then

buy(cid,2167,1,5000)

elseif msgcontains(msg, 'time ring') then

buy(cid,2169,1,6000)

 

aki vc muda td q vc ker o cid n muda ,, o premero numero e o id do item tbm n muda o 1 e a quantidade e o 3 numero e o preçu tipow se vc por 10000 vai ser 10k ser por 1000 vai ser um

 

espero ter ajudado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tópico contendo somente 1 NpC,

essa seção é para DataPacks com 3 ou mais Npcs,

~o{Tópico Movido}o~,

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu estava pensando fazer esse npc mas tinha um perguiça enorme de o fazer XD vlw

Compartilhar este post


Link para o post
Compartilhar em outros sites

hey vc sabe como q cria um npc de quests , ex: vc da pra ele 100 carlin sword ai vc ganha uma soft boots se vc souber fala cmg

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

Entre para seguir isso  

  • Conteúdo Similar

    • Por JulioLancetti
      Sistema de Reset por Talkactions com Exhausted para não ser bugado.   Vá em talkaction.xml e adicione : <talkaction words="!resetar;/installreset" event="script" value="resetar.lua"/>   Agora va em talkaction/scripts e crie um arquivo lua chamado resetar.lua e cole dentro do arquivo :   Registre-se para ver spoiler(s).
    • Por PsyMcKenzie
      É um sistema do tipo Ragnarok em que ao usar a talk, o player ficará imóvel e seu life e mana irão subir.

      Vamos ao script!

      Em data/talkactions/scripts, crie um arquivo com o nome de sentar.lua e adicione:




      local sentar = {health = 5, mana = 5}
      local storage = 12345

      function onSay(cid, words)

      if getTilePzInfo(getPlayerPosition(cid)) then
      if getPlayerStorageValue(cid, 12345) == -1 then
      doCreatureSay(cid, "Ahh, vou descansar...", TALKTYPE_MONSTER)
      doSendMagicEffect(getCreaturePosition(cid), 1)
      doPlayerAddHpManaSentar(cid, sentar)
      doCreatureSetNoMove(cid, true)
      setPlayerStorageValue(cid, 12345, 1)
      else
      setPlayerStorageValue(cid, 12345, -1)
      doCreatureSetNoMove(cid, false)
      doCreatureSay(cid, "Já descansei.", TALKTYPE_MONSTER)
      stopEvent(hpmana)
      end
      end
      return true
      end

      function doPlayerAddHpManaSentar(cid, formula)
      if not isCreature(cid) then return true end
      doCreatureAddHealth(cid, formula.health)
      doCreatureAddMana(cid, formula.mana)
      hpmana = addEvent(doPlayerAddHpManaSentar, 5000, cid, formula)
      end[/code]

      [b]Agora em talkactions.xml adicione a tag:[/b]

      <talkaction words="!sentar" event="script" value="sentar.lua"/>

      Imagens:






      É isso ai galera, espero que isso sirva pra alguém.
      Abraços e até semana que vem!




      Créditos: LuckOake por ajudar com storage.
    • Por PokemonBR
      Alguem por favor poderia me passar um script para quest de poketibia que precise passar por tal porta e tal nivel necessario e clicar no bau pra receber premio que no caso e uma stone,e um sem porta tb apenas clicar no bau pra receber o premio ,stone ,pokemon ou hds
        
        base que tou usando e o pokemon dash v6 
       
      desculpe caso eu tenha postado isso em uma area errada,nao entendo muito bem os locais aqui do forum.

      Registre-se para ver attachment(s).
    • Por 300698
       
      Dice System


      Iaae galera suave? Hoje venho trazer á vocês meu novo sistema, é o sistema de Dice (o dado), nele você tem chance de 10%, 30%, 50%, 75% e 100% de cair X itens, tudo configurável.

      Vamos á instalação

      Siga para data/actions/scripts crie um arquivo chamado dice.lua e coloque dentro:


      Registre-se para ver spoiler(s).


      Agora em actions.xml adicione essa tag:


      <action itemid="5792" event="script" value="dice.lua">  
      Configurando:


      local cfg = {listas = {chance100 = {2494, 2492, 2646}, -- Demon Armor, DSA, Golden Bootschance75 = {2400, 2472, 2470}, -- SOV, MPA, Golden Legschance50 = {2466, 2514, 2640}, -- Golden Armor, MMS, Soft Bootschance30 = {2487, 2498, 2491}, -- Crown Armor, RH, Crown Helmetchance10 = {4, 8, 10, 30, 50, 80}, -- Crystal coins (40k, 80k, 100k...)}}

      chance100 você coloca os Item IDS mais difíceis de pegar, os de chance 100%, chance75 os de 75% e assim sucessivamente

      ~~

      É isso galera espero que tenham gostado e façam bom uso, vendam o Dice no Shopping, usem a criatividade rsrs. Dúvidas? Sugestões? Críticas/Bugs? Estou aqui para atendê-los!

      Ideia by vital900
×