Ir para conteúdo

Action Ativada Ao Matar Uma Criatura.


xhoT-BR

Posts Recomendados

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



Action ativada ao matar uma criatura

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

 

onMonsterDeath é uma fução, onde a actino acontece ao matar alguma criatura.

 

OBS.: Você precisa de uma versão com essa função no seu Código Fonte

A única versão que tenho conhecimento com esssa função é o NOTS 7.8

 

Veja o exemplo de uma quest usando onMonsterDeath nas imagems abaixo:

demonquest1we0.jpg

 

demonquest2yd9.jpg

 

demonquest3xj4.jpg

 

demonquest4lp3.jpg

 

Se alguem não conseguiu entender a quest eu explicarei:

O player chega em uma sala onde tem um baú, mas tem uma parede no caminho, e para a parede sumir ele tem que matar o demon, quando o caminho abrir, ele vai pegar seu premio, quando ele pega o premio ele é teletransporato e a parede aparece novamente.

 

Bom, para fazer uma quest dessa primeiro você tem que criar o ambiente da quest, e é claro, colocar o uniqueID no bau (na minha quest usei 2000 como UID)

 

*Agora crie uma arquivo .lua com o nome demonquest. Em demonquest.lua coloque:

function onMonsterDeath(killer, monster, corpse, damage, totaldamage)

 

wallpos = {x=196, y=150, z=8, stackpos=1}

wall = getThingfromPos(wallpos)

 

if wall.itemid == 1497 then

 

doRemoveItem(wall.uid,1)

doSendMagicEffect(wallpos,2)

 

 

end

return 1

end

 

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

telpos = {x=196, y=151, z=8, stackpos=253}

wallpos = {x=196, y=150, z=8, stackpos=1}

wall = getThingfromPos(wallpos)

 

if item.uid == 2000 then

queststatus = getPlayerStorageValue(cid,2000)

 

if queststatus == -1 then

doPlayerSendTextMessage(cid,22,'Você achou um Demon Shield.')

doPlayerAddItem(cid,2520,1)

setPlayerStorageValue(cid,2000,1)

doTeleportThing(cid,telpos)

doCreateItem(1497,1,wallpos)

doSendMagicEffect(telpos,13)

else

doPlayerSendTextMessage(cid,22,"Você ja recebeu seu prêmio.")

doTeleportThing(cid,telpos)

doCreateItem(1497,1,wallpos)

doSendMagicEffect(telpos,13)

end

 

return 1

else

return 0

end

end

 

Explicando:

 

Wallpos: a posição da parede

1497: é o ID do magicwall (se você mudar sua parede mude esse ID também)

telpos: onde o player será teletransportado após pegar seu premio

2000: o UniqueID do baú

 

*Em actions.xml adicione:

<action uniqueid="2000" script="demonquest.lua" />

(se você usou outro UID, mude-o aqui)

 

*Agora o que você deve faze para a nova função funcionar:

1- Abra a pasta data/monster

2- abre o .xml do montro que você tem que matar para ativar a action (meu caso demon)

3- no final da tag <monster name....> adicione script="demonquest.lua"

exemplo:

<monster name="Demon" level="20" maglevel="20" experience="6000" pushable="0" armor="49" defense="51" canpushitems="1" staticattack="40" changetarget="200" speed="210" script="demonquest.lua">

4- Salve

 

_________________

IMPORTANTE

 

Iinha esquecido de falar isso, tipo, adicionamos o script no demon por exemplo, então todo demon que matar ativará a action, estão para que só 1 monstro abre uma porta, voce tera que criar um monstro novo.

Se a pessoa ja tiver um poco de experiencia com action, tambem da para fazer condições na action para que apensa aquele Monstro ative a quest, se não tiver muita facilidade com action, crie seu próprio montro.

_________________

 

Pronto, sua quest está pronta!

 

E como toda action, use a creatividade

com creatividade e um poco de conhecimento, seu server vai longe.

 

Créditos:Vufusuf

Editado por xhoT-BR
Link para o comentário
Compartilhar em outros sites

@Sasky

Não merece ser fixado não kra

 

1º uma action simples de fazer ....

2º não é da autoria dele não viu os créditos...

3º existen muitas action mais dificieis e nãoão fixadas

 

@Topic

Action muito legal

bem creativo

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
  • 1 year later...

Meu deus Oo! Caro lucas-_abc antes de postar verifica a data do topico!

Parabens você acaba de reviver um topico que estaria quase completando 2 anos

de inatividade e provavelmente esta função nem existe mais, ja que o normal

agora seria se usar creaturescripts!

Link para o comentário
Compartilhar em outros sites

Cara muito boa agora n tem como colocar essa função no 8.31? se alguem souber pode ensinar como coloca essa função no ot 8.31? pra q essa action funcione? vlw! abraços! muito boa essa action viu? tava querendo isso msm pro meu ot! so preciso dessa função !

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...