CO

8 Bichos

Por Conde Sapo, 12 de out. de 2007 em Globalevents e Spells

otserv
tibia
script
48
14.1k
Conde SapoC
12 de outubro de 2007 às 16:41

EXCLUSIVO PARA XTIBIA

Favor denunciar se encontrar em outro forum

 

 

Dúvida do usuário :

Preciso de uma spell que sumone 8 monsters ao redor do player q manda a magia, e que essa magia nao tenha que "DIZER" o nome do monstro que quero sumonar.

 

Incluir esta linha em data\talkactions\talkactions.xml :

<talkaction words="8bichos" script="8bichos.lua" />

 

Agora o script em data\talkactions\scripts\8bichos.lua :

-- Sumona 8 bichos em volta do player (By Conde Sapo)

function onSay(cid, words, param)
PlayerPos = getCreaturePosition(cid)
XX = PlayerPos.x
YY = PlayerPos.y
ZZ = PlayerPos.z
mana = -100   --  (By NeroStell)

Pos1 = {x=XX-1, y=YY-1, z=ZZ}
Pos2 = {x=XX-1, y=YY, z=ZZ}
Pos3 = {x=XX-1, y=YY+1, z=ZZ}
Pos4 = {x=XX, y=YY-1, z=ZZ}
Pos5 = {x=XX, y=YY+1, z=ZZ}
Pos6 = {x=XX+1, y=YY-1, z=ZZ}
Pos7 = {x=XX+1, y=YY, z=ZZ}
Pos8 = {x=XX+1, y=YY+1, z=ZZ}

Bichos = {[1]="slime", [2]="minotaur", [3]="cyclops", [4]="rotworm", [5]="amazon", [6]="dwarf", [7]="scarab", [8]="bandit"}

rand1 = math.random(1, 8)
Bicho1 = Bichos[rand1]
rand2 = math.random(1, 8)
Bicho2 = Bichos[rand2]
rand3 = math.random(1, 8)
Bicho3 = Bichos[rand3]
rand4 = math.random(1, 8)
Bicho4 = Bichos[rand4]
rand5 = math.random(1, 8)
Bicho5 = Bichos[rand5]
rand6 = math.random(1, 8)
Bicho6 = Bichos[rand6]
rand7 = math.random(1, 8)
Bicho7 = Bichos[rand7]
rand8 = math.random(1, 8)
Bicho8 = Bichos[rand8]

doSummonCreature(Bicho1, Pos1)
doSummonCreature(Bicho2, Pos2)
doSummonCreature(Bicho3, Pos3)
doSummonCreature(Bicho4, Pos4)
doSummonCreature(Bicho5, Pos5)
doSummonCreature(Bicho6, Pos6)
doSummonCreature(Bicho7, Pos7)
doSummonCreature(Bicho8, Pos8)

doSendMagicEffect(PlayerPos,2)
doPlayerAddMana(cid,mana)

doSendMagicEffect(Pos1,rand1)
doSendMagicEffect(Pos2,rand2)
doSendMagicEffect(Pos3,rand3)
doSendMagicEffect(Pos4,rand4)
doSendMagicEffect(Pos5,rand5)
doSendMagicEffect(Pos6,rand6)
doSendMagicEffect(Pos7,rand7)
doSendMagicEffect(Pos8,rand8)

return 1
end

 

------------------------ Explicando ------------------------



(mas não muito)

 

A tabela de bichos esta aqui :

Bichos = {[1]="slime", [2]="minotaur", [3]="cyclops", [4]="rotworm", [5]="amazon", [6]="dwarf", [7]="scarab", [8]="bandit"}

Mudar a vontade.

Se errar na escrita vai dar erro.

Ex.: rotworn (com n) vai dar erro

 

 

randX = math.random(1, 8)

Vai pegar um número aleatório entre 1 e 8

 

 

BichoX = Bichos[randX]

Cria um bicho conforme o número randônico e pega da tabela de bichos

 

 

doSendMagicEffect(PosX,randX)

o mesmo número aleatório (randX) vai gerar um EFFECT

 

o X vai de 1 a 8

8 Bichos

8 Posições

8 Effects

8 randônicos

 

 

Muito bom sim, mas tem uma falha... Não têm uma quantidade máxima, o player pode sumonar 500 e continuar sumonando.
Brigadúúúú pela dica.

 

Acho que resolvi o problema gastando MANA

mana = -100 --> Alterar a gosto. (Brigadúúú NeroStell)

doPlayerAddMana(cid,mana)

 

 

Chega de explicar......

Vou no meu OT usar a nova magia.

 

 

smile_bye.gif

Editado Outubro 12 por Conde Sapo

SephyrotSinS
12 de outubro de 2007 às 17:22

Muito bom sim, mas tem uma falha... Não têm uma quantidade máxima, o player pode sumonar 500 e continuar sumonando. Eu coloquei uma magia pro meu OT assim:

 

function onUse(cid, item, frompos, item2, topos)

doSummonCreature("Nome_Do_Monstro",topos)

return

1end

 

O único erro dele é que não pára de sumonar. Ou seja, um player pode, como dito acima, sumonar vários deles.

Eu não to conseguindo consertar isso, hehe...

Mas muito bom esse tutorial, eu vi o cara pedindo ele, vai ajudar ele bastante!

Editado Outubro 12 por NeroStell

Conde SapoC
12 de outubro de 2007 às 17:42
Muito bom sim, mas tem uma falha... Não têm uma quantidade máxima, o player pode sumonar 500 e continuar
Brigadúúúú.

 

Acerto feito.

Créditos By NeroStell

 

 

Bju na (_Y_)

SephyrotSinS
12 de outubro de 2007 às 18:02
Bju na (_Y_)

LOL!!

 

Voltando ao assunto... Será que você também consegueria adicionar um level máximo para a Talk Action?

Se já foi colocado, desculpe, não li atentamente...

 

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

Pelo visto não tem level máximo =]

Editado Outubro 12 por NeroStell

thayamT
12 de outubro de 2007 às 19:23

Bom Para o Conde nao sei nem o que falar cara!!!

Nao seria presciso nem testar de tanto confiança que tenhu nesse mlk!!

Mas por Via das Duvidas..

Testado e Aprovado!!

Editado Outubro 12 por thayam

spot123123S
12 de outubro de 2007 às 19:57
O único erro dele é que não pára de sumonar. Ou seja, um player pode, como dito acima, sumonar vários deles.

Eu não to conseguindo consertar isso, hehe...

Mas muito bom esse tutorial, eu vi o cara pedindo ele, vai ajudar ele bastante!

 

Quem Vai Quere Usa Uma rune Que Nao para de Fase bicho

 

Eu nunca Usaria Pq Daria Lag

So Se for Invasao Antes de fechar o Serv xP

 

//Spot

jeff of hellJ
12 de outubro de 2007 às 20:06

manúúú

meior q vc soh o chuck norris mesmo!!

 

vo usa sua fan bar!

teresT
12 de outubro de 2007 às 21:10

Muito baum..

 

fico muiittooo bom ( como sempre )

 

:D

 

Teres

Conde SapoC
12 de outubro de 2007 às 22:24
Será que você também consegueria adicionar um level máximo para a Talk Action?

 

 

Logo nas primeiras linhas do script ,

No lugar de :

function onSay(cid, words, param)
PlayerPos = getCreaturePosition(cid)

Substituir por :

function onSay(cid, words, param)
if getPlayerLevel(cid) >= LEVEL_DESEJADO then

	PlayerPos = getCreaturePosition(cid)

 

=====================================================================

 

e nas linhas finais ,

No lugar de :

	doSendMagicEffect(Pos8,rand8)

return 1
end

Substituir por :

		doSendMagicEffect(Pos8,rand8)
else
	doPlayerSendCancel(cid,"Você não tem o LeVeL necessário.")
end
return 1
end

 

867b220a.gif

42912264
12 de outubro de 2007 às 23:42

Boa Conde :)

 

xD

 

 

Cya

jeff of hellJ
13 de outubro de 2007 às 08:46

manow, queria uma magia pra players sumonar pros monstros ajudar ele, mas esse ai q vc mandou eh "suicidio" e tbm queria pra uma determinada vocação

 

se puder ajudar, agradeço

thayamT
13 de outubro de 2007 às 09:30

 	manow, queria uma magia pra players sumonar pros monstros ajudar ele, mas esse ai q vc mandou eh "suicidio" e tbm queria pra uma determinada vocação

Dexa eu te dar uma dica:

UTEVO RES !!!

Abraços!

MagodasabedoriaM
13 de outubro de 2007 às 09:34

Muito boa, inventam cada coisa que eu não podia nem imaginar.

 

Parabens pela action cara, gostei muito.

 

Abraços.

jeff of hellJ
13 de outubro de 2007 às 09:42

pow, mas era issu mesmo q eu disse no pedido!

 

utevo res massive!

 

eh issu q eu keria!!!

Conde SapoC
13 de outubro de 2007 às 14:54
meior q vc soh o chuck norris mesmo!!
Chuck não faz scripts

ele dita as regras do tibia.

(Coitado do Guido se não aceitar)

 

 

=========================================================

 

 

utevo res massive!
Alguém ae conhece o comando pra criar Monstro aliado ???

só conheço o comando DoSummonCreature

 

 

=========================================================

 

 

queria pra uma determinada vocação
No meu post de alteração do script pra testar LVL

 

Substitua esta linha

if getPlayerLevel(cid) >= LEVEL_DESEJADO then

por esta

if getPlayerVocation(cid) == VOC_DESEJADA then