Welcome to xTibia - Sua comunidade de Otserv e Tibia

Registre-se para utilizar nossas ferramentas e baixar conteúdos. Quando registrado e logado em sua conta, lhe garantimos uma experiência incrível em nossa comunidade!

Entre para seguir isso  
Seguidores 0
thedarkhell

Npc Que Vende Rings!

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
Po cara muito util para aqueles ots que nao veem com npc de rings.
Valeu ae

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
[quote name='Sidebone' post='291723' date='14:31 - 30/04/2007 ']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:[/quote]


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
[i][color="#A0522D"]Tópico contendo somente 1 NpC,
essa seção é para DataPacks com 3 ou mais Npcs,
[b]~o{Tópico Movido}o~[/b],
Abraços.[/color][/i]

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  
Seguidores 0

  • Conteúdo Similar

    • Por thiagozika157

      Olá Xtibianos estou trazendo um novo Update do Real Server que eu sempre estou modificando corrigindo erros, adicionando novos sistemas


      entre outras coisas bom ae galera esta ae o novo Update com varios erros corrigidos Real Server modificado.



      O que mudou 1.1 Version- 1.2 Version?


      Bom foram feitas muitas modificações.


      Foi Adicionado System de não falar palavrão em que o char é multado por 1º min sem chat.


      (Créditos pelo Script Doidin)


      Foi Removido o System de Kick dos trainers.


      Nova Area de trainers ficou mais agradavel.


      Foi adicionado tubarões nos barcos de carlin.


      Foi removido o maior bug de mapa do servidor o de "calassa".


      Foi removido varios bug's de mapa.


      Foi adicionado uma mini ilha ao lado no Barco vip de carlin.


      Foi adicionado em carlin o NPC de teletransport VIP ao lado do barco de carlin.


      o NPC de teletransport VIP de thais continua no mesmo lugar até a proxima atualização.


      Foi modificadas as Potions estão healando balanceadamente.


      Itens VIP com os no de VIP mesmo exemplo: VIP Sword.


      Foi modificado o tanto que você ganha de exp de um player quando voce o killa para: 0.1 %


      Foi modificado a Config.lua em alguns lugares como mostra o Spoiler abaixo.



      Registre-se para ver spoiler(s).

    • Por Administrador
      Fala galerinha,
      Estava procurando esse script e achei metade aqui no fórum e a outra metade na Web.
      Aprenda abaixo a colocar um lottery system no seu OT.


      Lottery System WEB + LUA

      Dica: No Script .lua acima coloque "Yes" na variável Website.

      Rode esse código no mysql (Aba SQL se você usa phpmyadmin)

      CREATE TABLE `lottery` ( `id` int(11) NOT NULL auto_increment, `name` varchar(255) NOT NULL, `item` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1; INSERT INTO `lottery`(`id`, `name`, `item`) VALUES (NULL , 'Nobody', 'nothing');

      Como adicionar o Script .Lua (GlobalEvent) no seu OT:
      http://www.xtibia.com/forum/topic/135003-lottery-system/

      Agora vamos ao Website:

      Crie o arquivo em suaPastaDoWebsite/lottery.php

      <?PHP $lottery = $SQL->query('SELECT id, name, item FROM lottery ORDER BY id DESC LIMIT 1;'); foreach($lottery as $result) { $main_content .= '<center><h1>Lottery</h1></center> <center>Every X hours we will choose one player who will win random item!<br/> Last Winner: <a href="?subtopic=characters&name='.urlencode($result['name']).'">'.$result['name'].'</a> Item: <i>'.$result['item'].'</i> Congratulations!</center>'; } ?>

      Abra suaPastaDoWebsite/layouts/tibiacom/layout.php e adicione:

      case "lottery"; $topic = "Lottery System"; $subtopic = "lottery"; include("lottery.php"); break;


      Créditos: BlackTibia
    • Por Omega
      Informações:
      Tasks adquiridas ou canceladas em NPC As tasks podem ser feitas repetidas vezes, mas somente uma vez por dia e apenas uma de cada vez (tempo configurável) Comando para acompanhar o andamento da task Atualização (31/08/13) > agora é possível ganhar itens a cada vez que a task é terminada Atualização (05/09/13) > VÁRIOS bugs corrigidos e algumas novas opções adicionadas Agora você pode escolher se quer que as tasks sejam feitas por level ou na ordem Recomendo a todos os que baixaram alguma versão anterior que atualizem  
      Códigos:
       
      Tags:
      Em creaturescripts.xml, adicione:
      <event type="kill" name="Tasks" script="taskkill.lua"/> Em talkactions.xml, adicione:
      <talkaction words="!countkills" event="script" value="countkills.lua"/> No arquivo creaturescripts/scripts/login.lua, adicione:
      registerCreatureEvent(cid, "Tasks") Scripts:
      Crie um arquivo tasklib.lua em lib
      Registre-se para ver spoiler(s).

      O que aconteceu:
       - Antes até o lvl 20 o jogador recebia a task dos rotworms, até o lvl 50, a task dos cyclops e daí pra frente, task dos dragons.
       - As tasks iniciais são as mesmas, mas até o lvl 80 é a task dos dragons e daí pra frente, o jogador receberá a task das hydras e serpent spawns.
       
      Considerações finais:
       
      O sistema de pontos apenas adiciona e checa a quantidade de pontos: você deve escolher se quer adicionar alguma coisa a partir deles.
      Testei profundamente e corrigi todos os erros que encontrei, postem se encontrarem mais algum, enviem o log do erro que farei o possível para consertar.
    • Por LuckinhaSan
      Script de sistema de leilão foi feito por VDK, mas foi editado para o sistema de mercado. Testado em tfs 0.4 para tibia 8.6.

      Execute o seguinte código na database -

      Registre-se para ver spoiler(s).


      Em talkactions.xml, adicione a seguinte tag -

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

      Comandos:

      !offer buy, itemName, Price, Count, yes ou empty -- !offer buy, Dragon Scale Mail, 6000, 1, yes [YES == anonimo ao postar] (Expor ponto de venda) !offer buy, id offer, count -- !offer buy, 5, 1 (Para comprar um numero x de negocio do item) !offer remove, id offer -- !offer remove, 5 (Removendo ofertas) !offer buyitem, itemName, Price, Count, yes or empty -- !offer buyitem, Dragon Scale Mail, 7000, 3 , yes [YES == anonimo, se você não quer ser anonimo não coloque nada] !offer sell, id offer, count -- !offer sell, 7, 3 (venda x quantidade de oferta de compra do item) !offer canceladd, id offer -- !offer canceladd, 10 (Remoção de uma oferta para comprar item) !offer withdraw (Use essa opção para selecionar o dinheiro para os itens vendidos.)

      Créditos - Szmugross
    • Por LuckinhaSan
      Características atuais:
      * Editar jogador(Nível [experiência sets a começar desse nível, ou seja: o nível 8, exp está definido para 4200], nível mágico, as habilidades, o nome do jogador, nível de grupo [jogador, tutor, professor sênior, cm, gm, god] mundo de jogo que eles estão on)
      * Editar conta (nome da conta, senha, pontos premium e permissões page_access)
      * Ver registros talkaction em um modal popup (para check-up em suas pessoas que estão usando os comandos que são registrados)
      * Crash espectador (utiliza um script python que usa pexpect para obter informações dump de memória e deixa cair para os lixões / diretório que é então analisado e exibe os dados)
      * Página de status que vai mostrar de saúde atual de serviços baseados em TCP tomada de conectividade (usa fsockopen)

      Você pode usar esta página para enviar solicitações de recursos, se quiser. Este projeto está atualmente disponível no Github no link abaixo:

      Registre-se para ver link(s).


      Há uma demonstração, basta clicar Registre-se para ver link(s).
      (Sinta-se livre para ajustar os valores. Se você é incapaz de fazer o login, o nome de usuário e senha para as contas devem ser repostos no prazo de 5 minutos).

      Demo Accounts: Admin - Username: demo_admin Password: demodemo Readonly - Username: demo Password: demodemo

      Créditos - xanitex