Função Buytype() By Colex

colex
Por colex
em Mods, funções e outros
  • 1
  • 2

colex

Serviços Prestados a Comunidade
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 03/10/05Posts: 301Gênero: Masculino

Olá,

venho postar uma função elaborada por mim que serve para vender items de quantidade mais facilmente.

a função é a seguinte:

buytype(uid,txt,id,min,max,price)

uid - variavel do player, normalmente é cid

txt - variavel das falas do player, normalmente é msg

id - id do item que quer vender (função feita para items de quantidade)

min - a quantidade minima que se pode comprar de tal item

max - a quantidade maxima que se pode comprar de tal item

price - preço por cada quantidade

Exemplo: (vendendo hmm por 40gps cada tiro sendo o maximo que se pode comprar 255 e o minimo 5)

buytype(cid,msg,2311,5,255,50)

Exemplo de uma conversa entre o player e o NPC:

player: Hi

NPC: Hi, I sell runes and arrows!

player: 15775 hmm (se o maximo for hmm de 100x, ele só recebe de 100x)

NPC: Here you are.

player: abc50 uh (o player irá comprar uma uh de 50x)

NPC: Here you are.

player: arrow (não colocou nenhum numero, então irá receber o minimo, neste caso poderia ser uma arrow)

NPC: Here you are

Agora vamos ao que interessa,

na pasta data\npc\scripts\lib abra o arquivo npc.lua e adicione o seguinte code no final:

 

-------function buytype by Colex-------function buytype(uid,txt,id,min,max,price)x = string.gsub(txt,"%a","")x = tonumber(x)if x ~= nill and x > min then	if x <= max then  price = x * price  buy(uid,id,x,price)	else  price = max * price  buy(uid,id,max,price)	endelse	buy(uid,id,min,price)endend

 

Agora vou dar um exemplo de um NPC que vende runes, o maximo de cargas que ele vende em cada rune é de 150 e o minimo variado por cada rune:

 

focus = 0talk_start = 0target = 0following = falseattacking = falsefunction 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+)'))endfunction onCreatureSay(cid, type, msg)   msg = string.lower(msg)   -- greeting phrase if string.find(msg, '(%a*)hi(%a*)') and focus == 0 and string.len(msg) == 2 and getDistanceToCreature(cid) < 3 then    selfSay('Hello ' .. creatureGetName(cid) .. '! I sell runes.')    focus = cid  talk_start = os.clock()   	elseif focus == cid then  talk_start = os.clock()  if msgcontains(msg, 'runes') then 	 selfSay('I sell hmm(40gps), uh(90gps), gfb(60gps), explosion(80gps), sd(100gps) and blank runes(5gps).)	  elseif msgcontains(msg, 'hmm') then 	 buytype(cid,msg,2311,5,150,40)    elseif msgcontains(msg, 'uh') then 	 buytype(cid,msg,2273,1,150,90)  elseif msgcontains(msg, 'gfb') then 	 buytype(cid,msg,2304,3,150,60)  elseif msgcontains(msg, 'explosion') then 	 buytype(cid,msg,2313,3,150,80)    elseif msgcontains(msg, 'sd') then 	 buytype(cid,msg,2311,1,150,100)  elseif msgcontains(msg, 'blank') then 	 buy(cid,2260,1,5) ---não usa buytype porque não é item de quantidade      elseif string.find(msg, '(%a*)bye(%a*)') and getDistanceToCreature(cid) < 4 then 	 selfSay('Good bye, ' .. creatureGetName(cid) .. '!') 	 focus = 0 	 talk_start = 0  end	endendfunction onCreatureChangeOutfit(creature)endfunction onThink() end

 

Isto é só um exemplo para mostrar como usar a função!

Alguma dúvida? encontrou algum bug?

deixe aqui sua mensagem!

Atenciosamente,

Colex

DeToNaTiOnS

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/06/06Posts: 56

Pô Colex fico show essa função,quando eu acabar de fazer uma action aqui eu vo testa isso com um npc aqui.

Vlw por tudo :D

Parei com OTServ,
Desejo á todos ótimos projetos e que dê tudo certo com vocês!
Agora vou me dedicar a Projetos de Ragnarök.

Pode ser que eu entre as vezes pra mata a saudade das verdadeiras
amizades que eu fiz aqui dentro.

Abraço á todos!

FireSoul

Alem de Scripter
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 03/04/06Posts: 44

Nossa cara muito masa isso...

facilita muito faser npc...

vlw msm.

-----------------------------------------------LAST---------------------------------------------------

girl22.jpg

------------------------------------------------ADS'--------------------------------------------------

9jnpqg.png

---------------------------------------------------------------------------------------------------

Jvchequer

"Veni, vidi, vici."
avatar
Lenda
Lenda

INFOS

Grupo: LendaRegistrado: 10/10/05Posts: 2161Char no Tibia: Master Chequer

Putz, muito show esta função.

Vai facilitar muito para os scripters ^^

Parabens.

Atenciosamente, Jv

1271330714-U1306.gif

 

~ Fiz parte da Equipe Xtibia em um tempo que Tibia era minha família. Saudades de todos vocês.

R@U£

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/12/05Posts: 51Char no Tibia: Falcler Knight

awe manow ficou muito rox

uhaauhhuauha

flwssss

uchihasasuke

#~ OT Developper ~#
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 26/05/06Posts: 22

@Colez

Fico Show Kra Vlws =D

//Sasuke

Atenciosamente,
°º•Sasuke~

~\/~ | Hail XTibia.com | Hail GV TeaM | ~\/~

Last By : uNdEr²


Jah Te Ajudei? Gosta De Min? É Mulher Bonita? Use A Fan Bar ;)


Galera, cliquem no Link do MyBrute, Joguem e me Ajude, VeryFun ;D
Visite o MyBrute, Crie seu Personagem e Divirta-se !

Angel Of Ilusions

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 11/12/05Posts: 108

aew cara

woooooow xDD

ótimo trabalho cara o.O

realmente surpreendente

isso vai ajudar bastante cara :icon1:

vlwzao :icon1:

flws ae

fuiz!!

Haruya

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 20/05/06Posts: 11

Carulhos mano,muito legau pode ajudar todos os players facilita a vida de todos adorei ja add no meu ot :bigsmile:o.O:bye: :w4:

godpikkeno

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 08/06/06Posts: 72

Nenhuma duvida e nenhum bug, NPC CLX esta funcionando a todo vapor no meu ot.. =P (ot para amigos)

100% dos acidentes domésticos acontecem em casa...

"DESLIGUE SEU CAPS-LOCK AO POSTAR, ISSO DA NOS NERVOS"
"Naum fali com U nu finalzinhu das palavras, eh afeminadu dimais"
"Naum ixkrevah dexii jeituhh, faix cum quih a pexoa quih leiah penxi quih voxe eh retardaduh "
"Naum exagere ^^ nos smiles ;0 isso =X perturba xD a pessoa \o/ que ò.Ó ta =/ lendo x.x"
"N.E.N.A.M.G.N.S.O.Q.V.Q.D ,<<< Nao exagere na abreviação, muita gente nao sabe o que voce quer dizer"
"Cuidado con o anaufabetizmo, ce nun çabe ezcreve, vouta pra ezcola"

Thar

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 09/07/06Posts: 3

Seu sirve para 7.8?

colex

Serviços Prestados a Comunidade
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 03/10/05Posts: 301Gênero: Masculino

serve em qualquer versão com a função buy()

normalmente os 7.8 tem

God Tarzan

Banido
avatar
Banidos
Banidos

INFOS

Grupo: BanidosRegistrado: 25/09/06Posts: 10

Acho elgal..mas creio que o ot fika mto Simples..Qualquer Noob Pode Vim e Comprar itens e aew os leveis Alto Fika meio que Por Fora..sei lá!!

Mas Valeus...rox..testei mas naum vo suar no m eu mas de qualquer forma testei...falows!!

PARABENS

ATT

GOD TARZAN

[ASSINATURA REMOVIDA, FORA DAS REGRAS]

tibiaa4e

Ex amante de Tibia
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 18/12/05Posts: 912Gênero: MasculinoChar no Tibia: Kohzete

da para fazer um função no estilo selltype ?

é só modifica ou tem + coisa

pq seria legal uma selltype

seria posssivel ?

Aposentado de OTserver e Tibia

Meus melhores tutoriais
Enciclopédia Pasta Data
Tutorial de quest

LadyeGata

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/08/06Posts: 18

rox

Kenzo

avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 08/10/06Posts: 131Char no Tibia: Kenzo Phoenix

Legal eu sabia mais ta ajudando o pessoal ai ^^

//Kenzo

Visite a melhor parte do Fórum XTibia! Basta você apenas clicar aqui e deixar sua opinião sobre qualquer um dos assuntos!

Está com dúvidas no Tibia? Quer dicas de como melhorar seu character? Mande uma PM e lhe responderei a medida do possível.

"Tonight
I'm gonna have myself a real good time
I feel alive
And the world is turning inside out
Yeah!
And floating around in ecstasy

So don't stop me now
Don't stop me
'Cause I'm having a good time
I'm having a good time

I'm a shooting star leaping through the sky
Like a tiger defying the laws of gravity
I'm a racing car passing by like Lady Godiva
I'm gonna go go go
There's no stopping me...
"

Dont Stop me Now - McFly
  • 1
  • 2