Ir para conteúdo
Entre para seguir isso  
Rogui

[N:Fácil] Annihilator Quest

Recommended Posts

Mindigo    0
Mindigo

Eh.

BOm...

 

Ajudah mtO.

biggrin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites
Fridabas    0
Fridabas

WOW este tutorial ta Muito bom, bem explicado, vo testar um dia em meu server. VLWS!

Compartilhar este post


Link para o post
Compartilhar em outros sites
CaioEOMAVF    0
CaioEOMAVF

Cara o tutorial tah bem rox manow...

Aprovado

Compartilhar este post


Link para o post
Compartilhar em outros sites
ughinii    0
ughinii

mt boa mas keria sabe se funciona em yurots??

Compartilhar este post


Link para o post
Compartilhar em outros sites
Jovial    2
Jovial

Ja postei a muito tempo um tutoria lsobre o mesmo script, e a sua posição do starting e do ending estão erradas.

Compartilhar este post


Link para o post
Compartilhar em outros sites
FRED i JOAO    0
FRED i JOAO

:blush::style::style::style:(Y)(Y):bye::bye:

É meio complicado e por isso prestem atenção

 

 

Ele é um script de anihi normal, mas é que se houver um caso de time morrer ou naum matar todos os demon,o proximo iria catar os demon na amarela

o o system faz quando um player clica no alavanca ele checa a area e ve se tem player.

Se tiver ele da sorry,not possible e se naum tiver ele retira os demon de lá manda para a area trash e sumona novos.

Primeiro vou passar o script, depois explico tudo

 

crie um arquivo chamado aniq.lua e adicione

 


-- Annihilator script by GriZzm0

-- Room check and monster removal by Tworn



--Variables used:



-- player?pos ***= The position of the players before teleport.

-- player? ***= Get the thing from playerpos.

--player?level = Get the players levels.

--questslevel ***= The level you have to be to do this quest.

--questtatus? ***= Get the quest status of the players.

--demon?pos ***= The position of the demons.

--nplayer?pos ***= The position where the players should be teleported too.

--trash= position to send the demons to when clearing, 1 sqm in middle of nowhere is enough

-- starting = Upper left point of the annihilator room area.

-- ending = Bottom right point of the annihilator room area.



--UniqueIDs used:



--5000 = The switch.

--5001 = Demon Armor chest.

--5002 = Magic Sword chest.

--5003 = Stonecutter Axe chest.

--5004 = Present chest.





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

if item.uid == 5000 then

if item.itemid == 1946 then



player1pos = {x=738, y=914, z=13, stackpos=253}

player1 = getThingfromPos(player1pos)



player2pos = {x=737, y=914, z=13, stackpos=253}

player2 = getThingfromPos(player2pos)



player3pos = {x=736, y=914, z=13, stackpos=253}

player3 = getThingfromPos(player3pos)



player4pos = {x=735, y=914, z=13, stackpos=253}

player4 = getThingfromPos(player4pos)





***if player1.itemid > 0 and player2.itemid > 0 and player3.itemid > 0 and player4.itemid > 0 then



***player1level = getPlayerLevel(player1.uid)

***player2level = getPlayerLevel(player2.uid)

***player3level = getPlayerLevel(player3.uid)

***player4level = getPlayerLevel(player4.uid)



***questlevel = 100



***if player1level >= questlevel and player2level >= questlevel and player3level >= questlevel and player4level >= questlevel then



*** queststatus1 = getPlayerStorageValue(player1.uid,100)

*** queststatus2 = getPlayerStorageValue(player2.uid,100)

*** queststatus3 = getPlayerStorageValue(player3.uid,100)

*** queststatus4 = getPlayerStorageValue(player4.uid,100)



*** if queststatus1 == -1 and queststatus2 == -1 and queststatus3 == -1 and queststatus4 == -1 then

--if 1==1 then

demon1pos = {x=736, y=902, z=13}

demon2pos = {x=738, y=902, z=13}

demon3pos = {x=740, y=904, z=13}

demon4pos = {x=741, y=904, z=13}

demon5pos = {x=737, y=906, z=13}

demon6pos = {x=739, y=906, z=13}



*** doSummonCreature("Demon", demon1pos)

*** doSummonCreature("Demon", demon2pos)

*** doSummonCreature("Demon", demon3pos)

*** doSummonCreature("Demon", demon4pos)

*** doSummonCreature("Demon", demon5pos)

*** doSummonCreature("Demon", demon6pos)



nplayer1pos = {x=739, y=904, z=13}

nplayer2pos = {x=738, y=904, z=13}

nplayer3pos = {x=737, y=904, z=13}

nplayer4pos = {x=736, y=904, z=13}



*** doSendMagicEffect(player1pos,2)

*** doSendMagicEffect(player2pos,2)

*** doSendMagicEffect(player3pos,2)

*** doSendMagicEffect(player4pos,2)



*** doTeleportThing(player1.uid,nplayer1pos)

*** doTeleportThing(player2.uid,nplayer2pos)

*** doTeleportThing(player3.uid,nplayer3pos)

*** doTeleportThing(player4.uid,nplayer4pos)



***doSendMagicEffect(nplayer1pos,10)

***doSendMagicEffect(nplayer2pos,10)

***doSendMagicEffect(nplayer3pos,10)

***doSendMagicEffect(nplayer4pos,10)



***doTransformItem(item.uid,1945)



else

***doPlayerSendCancel(cid,"Sorry, not possible.")

end

*** else

doPlayerSendCancel(cid,"Sorry, not possible.")

*** end

***else

***doPlayerSendCancel(cid,"Sorry, not possible.")

***end

end

if item.itemid == 1945 then

-- Here is the code start:

starting={x=736, y=902, z=13, stackpos=253}

checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}

ending={x=742, y=907, z=13, stackpos=253}

players=0

totalmonsters=0

monster = {}

repeat

creature= getThingfromPos(checking)

if creature.itemid > 0 then

if getPlayerAccess(creature.uid) == 0 then

players=players+1

end

***if getPlayerAccess(creature.uid) ~= 0 and getPlayerAccess(creature.uid) ~= 3 then

totalmonsters=totalmonsters+1

***monster[totalmonsters]=creature.uid

*** end

end

checking.x=checking.x+1

***if checking.x>ending.x then

***checking.x=starting.x

***checking.y=checking.y+1

end

until checking.y>ending.y

if players==0 then

trash= {x=547, y=407, z=10}

current=0

repeat

current=current+1

doTeleportThing(monster[current],trash)

until current>=totalmonsters

doTransformItem(item.uid,1946)

end

-- Here is the end of it



end

end

if item.uid == 2304 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus == -1 then

***doPlayerSendTextMessage(cid,22,"You have found a demon armor.")

***doPlayerAddItem(cid,2494,1)

***setPlayerStorageValue(cid,100,1)

else

***doPlayerSendTextMessage(cid,22,"It is empty.")

end

end

if item.uid == 2305 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus ~= 1 then

***doPlayerSendTextMessage(cid,22,"You have found a magic sword.")

***doPlayerAddItem(cid,2400,1)

***setPlayerStorageValue(cid,100,1)

else

***doPlayerSendTextMessage(cid,22,"It is empty.")

end

end

if item.uid == 2306 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus ~= 1 then

***doPlayerSendTextMessage(cid,22,"You have found a stonecutter axe.")

***doPlayerAddItem(cid,2431,1)

***setPlayerStorageValue(cid,100,1)

else

***doPlayerSendTextMessage(cid,22,"It is empty.")

end

end

if item.uid == 2303 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus ~= 1 then

***doPlayerSendTextMessage(cid,22,"You have found a present.")

***doPlayerAddItem(cid,1990,1)

***setPlayerStorageValue(cid,100,1)

else

***doPlayerSendTextMessage(cid,22,"It is empty.")

end

end

return 1

end

 

E em actions.xml adicione:


<action uniqueid="5000" script="aniq.lua" />

<action uniqueid="5001" script="aniq.lua" />

<action uniqueid="5002" script="aniq.lua" />

<action uniqueid="5003" script="aniq.lua" />

<action uniqueid="5004" script="aniq.lua" />

 

 

Imagem da sala que será usada como exemplo:

aniqli9.jpg

Ai é a 1º room na alavanca coloque o uniqueid 5000 na alavanca com id 1946

e em

 

 

Você edita com aquelas posições na imagem

e em

 

é onde o player sera teleportado ao puxar a alavanca

Em

 

 

Ficando assim:

aniq2wx5.jpg

em vermelho é onde o player sera teleportado, e em azul onde os demon nascem.

 

A parte da quest foi facil.

Agora é a parte que diferencia o script dos outros

 

 

ai é o script q faz o sistema checar a area se tem demons e players

 

starting você coloca o tile do inicio no caso o numero 1 em azul e em ending

a ponta direita a baixo

de preferecia um sqm abaixo

 

Ficando:

aniq3te8.jpg

assim

 

E em trash Você cria uma area em qualquer lugar de 1 sqm só pros demon serem teletransportados pra lá quando entrar um novo time

 

O resto é a parte da quest.

 

É só adicionar o unique id no bau certo

 

Nesse sistema o player só podera fazer a anihi uma vez, para resolver isso

altere o player storage value do bau de 100 pra kalker outro numero

Mas lembre todos os baus tem que ter o mesmo storage ;)

 

É isso

 

Espero que gostem

 

Créditos: Grizzmo e Twon

 

Cya ;*

Compartilhar este post


Link para o post
Compartilhar em outros sites
skyline3005    0
skyline3005

Muito Bom o tutorial, aprovado

Bem explicado.

^^

Compartilhar este post


Link para o post
Compartilhar em outros sites
Yolyeah    0
Yolyeah

1 - Fiz tudo conforme deve ser mas o ot teve problemas com os simbolos *** antes de algumas linhas entao removi esses asteristicos... gostaria de saber se a anihi funcionara mesmo sem eles.

2 - Eu nao sei qual e a coordenada "stackpos" das coisas como no exemplo abaixo:

player1pos = {x=738, y=914, z=13, stackpos=253}

Por isso deixei todos com o valor 253... isso vai interferir em alguma coisa?

 

Valeu ae :)

Compartilhar este post


Link para o post
Compartilhar em outros sites
xkdull    0
xkdull

Que ótimo, irei usar.

(Y)

Compartilhar este post


Link para o post
Compartilhar em outros sites
Digo Loco    0
Digo Loco

Muito bom tuto adorei =D

Compartilhar este post


Link para o post
Compartilhar em outros sites
ravat    0
ravat

bem legla shussh

gostei

parabens

irei usar

Compartilhar este post


Link para o post
Compartilhar em outros sites
Icepotter    0
Icepotter

Muito bom!

 

testado e APROVADO!

 

seria bom remover os bixos e não teleportar ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites
savity    1
savity

Beleza de tutorial..

>.< + você poderia corrigir duas coisinhas...>.<

tava lendo auqi e notei:

 

--UniqueIDs used:

 

 

 

--5000 = The switch.

 

--5001 = Demon Armor chest.

 

--5002 = Magic Sword chest.

 

--5003 = Stonecutter Axe chest.

 

--5004 = Present chest.

 

Mas na parte principal, de quando o player vai abrir o baú, as uniqueIDs n correspondem, pois estao como

if item.uid == 2304 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus == -1 then

***doPlayerSendTextMessage(cid,22,"You have found a demon armor.")

***doPlayerAddItem(cid,2494,1)

***setPlayerStorageValue(cid,100,1)

else

***doPlayerSendTextMessage(cid,22,"It is empty.")

end

end

if item.uid == 2305 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus ~= 1 then

***doPlayerSendTextMessage(cid,22,"You have found a magic sword.")

***doPlayerAddItem(cid,2400,1)

***setPlayerStorageValue(cid,100,1)

else

***doPlayerSendTextMessage(cid,22,"It is empty.")

end

end

if item.uid == 2306 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus ~= 1 then

***doPlayerSendTextMessage(cid,22,"You have found a stonecutter axe.")

***doPlayerAddItem(cid,2431,1)

***setPlayerStorageValue(cid,100,1)

else

***doPlayerSendTextMessage(cid,22,"It is empty.")

end

end

if item.uid == 2303 then

queststatus = getPlayerStorageValue(cid,100)

if queststatus ~= 1 then

***doPlayerSendTextMessage(cid,22,"You have found a present.")

***doPlayerAddItem(cid,1990,1)

***setPlayerStorageValue(cid,100,1

 

 

Elas estão em2303, 2304, 2305 , 2306, muita gente pode confundir e deixar.. e fazer o resto do tuto certo..

 

Aaaahh, outra coisa..

 

***

 

Da uma atualizada nele, por que "*" em servidor 8.1.. ( não sei se em 8.0 é a mesma coisa) quando começa com "*" a script n é carregada... sem ela funcionou corretamente no 8.1..

 

Mas Sinceramente, ótimo tuto.. muito bem feito..

 

Gostei =D

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
otserv1992    0
otserv1992

eu puz ela no meu ot, mas nunca testei, mas deve ser bom xD

Compartilhar este post


Link para o post
Compartilhar em outros sites
pedroolokox    0
pedroolokox

boa x)

garoto esperto e de lorena..

moro perto de tu rapa x)

aoesoeaskoeas

Compartilhar este post


Link para o post
Compartilhar em outros sites
Soul_Darkness    0
Soul_Darkness

Fiz tudo certo, mas o servidor encontra diversos erros, como o uso do * no script, o server q uso eh ares, 8.1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Crowcked    0
Crowcked

Aprovado testei no meu ot deu certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Wizz237    0
Wizz237

Excelente, precisava muito obrigado (:

 

- Edit

 

Acabei de testar, tive que arrumar algumas coisinhas já citadas, mais funcionou e está muito bom (: !

 

Obrigado!

 

wizz237~

Editado por Wizz237

Compartilhar este post


Link para o post
Compartilhar em outros sites
Dank    0
Dank

Aprovado

 

Muito detalhado, coerente, feito com tranqüilidade ;)

 

Abraçõs ;D

Compartilhar este post


Link para o post
Compartilhar em outros sites
xxdkdosalamexx    0
xxdkdosalamexx

mto bom msmo cara

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
Entre para seguir isso  

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×