• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

annihilator

Teddy

SweStream.se
Joined
Oct 2, 2008
Messages
3,797
Reaction score
10
Location
Sweden 172
my anni script work great but 1 think i cant only make it 1 time , afte that time i need to restart

HTML:
 -- 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.


function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
 if item.itemid == 1946 then

 player1pos = {x=105, y=366, z=6, stackpos=253}
 player1 = getThingfromPos(player1pos)

 player2pos = {x=106, y=366, z=6, stackpos=253}
 player2 = getThingfromPos(player2pos)

 player3pos = {x=107, y=366, z=6, stackpos=253}
 player3 = getThingfromPos(player3pos)

 player4pos = {x=108, y=366, z=6, 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 = 60

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

	  queststatus1 = getPlayerStorageValue(player1.uid,7000)
	  queststatus2 = getPlayerStorageValue(player2.uid,7000)
	  queststatus3 = getPlayerStorageValue(player3.uid,7000)
	  queststatus4 = getPlayerStorageValue(player4.uid,7000)

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

	--if 1==1 then
	demon1pos = {x=61, y=406, z=8}
	demon2pos = {x=63, y=406, z=8}
	demon3pos = {x=65, y=408, z=8}
	demon4pos = {x=66, y=408, z=8}
	demon5pos = {x=62, y=410, z=8}
	demon6pos = {x=64, y=410, z=8}
	
 
   doSummonCreature("Demon", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Demon", demon3pos)
   doSummonCreature("Demon", demon4pos)
   doSummonCreature("Demon", demon5pos)
   doSummonCreature("Demon", demon6pos)
  

	nplayer1pos = {x=61, y=408, z=8}
	nplayer2pos = {x=62, y=408, z=8}
	nplayer3pos = {x=63, y=408, z=8}
	nplayer4pos = {x=64, y=408, z=8}

   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,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
	end
   else
	doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
   end
  else
  doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
  end
  end
 if item.itemid == 1945 then
-- Here is the code start:
starting={x=60, y=405, z=8, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x=65, y=411, z=8, stackpos=253}
players=4
totalmonsters=6
monster = {Demon}
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=15, y=15, z=7}
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
 return 1
end
 
PHP:
 -- 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.


function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
 if item.itemid == 1946 then

 player1pos = {x=105, y=366, z=6, stackpos=253}
 player1 = getThingfromPos(player1pos)

 player2pos = {x=106, y=366, z=6, stackpos=253}
 player2 = getThingfromPos(player2pos)

 player3pos = {x=107, y=366, z=6, stackpos=253}
 player3 = getThingfromPos(player3pos)

 player4pos = {x=108, y=366, z=6, 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 = 60

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

	  queststatus1 = getPlayerStorageValue(player1.uid,7000)
	  queststatus2 = getPlayerStorageValue(player2.uid,7000)
	  queststatus3 = getPlayerStorageValue(player3.uid,7000)
	  queststatus4 = getPlayerStorageValue(player4.uid,7000)

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

	--if 1==1 then
	demon1pos = {x=61, y=406, z=8}
	demon2pos = {x=63, y=406, z=8}
	demon3pos = {x=65, y=408, z=8}
	demon4pos = {x=66, y=408, z=8}
	demon5pos = {x=62, y=410, z=8}
	demon6pos = {x=64, y=410, z=8}
	
 
   doSummonCreature("Demon", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Demon", demon3pos)
   doSummonCreature("Demon", demon4pos)
   doSummonCreature("Demon", demon5pos)
   doSummonCreature("Demon", demon6pos)
  

	nplayer1pos = {x=61, y=408, z=8}
	nplayer2pos = {x=62, y=408, z=8}
	nplayer3pos = {x=63, y=408, z=8}
	nplayer4pos = {x=64, y=408, z=8}

   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,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
	end
   else
	doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
   end
  else
  doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
  end
  end
 if item.itemid == 1945 then
-- Here is the code start:
starting={x=60, y=405, z=8, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x=65, y=411, z=8, stackpos=253}
players=4
totalmonsters=6
monster = {Demon}
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=15, y=15, z=7}
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
elseif item.itemid == 1946 then
doTransformItem(item.uid,1945)
end
end
 return 1
end

I've just inserted this at the end of script:
PHP:
elseif item.itemid == 1946 then
doTransformItem(item.uid,1945)
end
 
Dont work
-- 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.


function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
if item.itemid == 1946 then

player1pos = {x=105, y=366, z=6, stackpos=253}
player1 = getThingfromPos(player1pos)

player2pos = {x=106, y=366, z=6, stackpos=253}
player2 = getThingfromPos(player2pos)

player3pos = {x=107, y=366, z=6, stackpos=253}
player3 = getThingfromPos(player3pos)

player4pos = {x=108, y=366, z=6, 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 = 60

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

queststatus1 = getPlayerStorageValue(player1.uid,7000)
queststatus2 = getPlayerStorageValue(player2.uid,7000)
queststatus3 = getPlayerStorageValue(player3.uid,7000)
queststatus4 = getPlayerStorageValue(player4.uid,7000)

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

--if 1==1 then
demon1pos = {x=61, y=406, z=8}
demon2pos = {x=63, y=406, z=8}
demon3pos = {x=65, y=408, z=8}
demon4pos = {x=66, y=408, z=8}
demon5pos = {x=62, y=410, z=8}
demon6pos = {x=64, y=410, z=8}


doSummonCreature("Demon", demon1pos)
doSummonCreature("Demon", demon2pos)
doSummonCreature("Demon", demon3pos)
doSummonCreature("Demon", demon4pos)
doSummonCreature("Demon", demon5pos)
doSummonCreature("Demon", demon6pos)


nplayer1pos = {x=61, y=408, z=8}
nplayer2pos = {x=62, y=408, z=8}
nplayer3pos = {x=63, y=408, z=8}
nplayer4pos = {x=64, y=408, z=8}

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,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
end
else
doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
end
else
doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
end
end
if item.itemid == 1945 then
-- Here is the code start:
starting={x=60, y=405, z=8, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x=65, y=411, z=8, stackpos=253}
players=4
totalmonsters=6
monster = {Demon}
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=15, y=15, z=7}
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
elseif item.itemid == 1946 then
doTransformItem(item.uid,1945)
end
end
return 1
end
Dont work at all now
ERROR
[08/01/2009 09:58:44] Warning: [Event::loadScript] Can not load script. data/actions/scripts/annihilator.lua
[08/01/2009 09:58:44] data/actions/scripts/annihilator.lua:148: '<eof>' expected near 'end'
[08/01/2009 09:58:44] Warning: [Event::loadScript] Can not load script. data/actions/scripts/annihilator.lua
[08/01/2009 09:58:44] data/actions/scripts/annihilator.lua:148: '<eof>' expected near 'end'
[08/01/2009 09:58:44] [Warning - Actions::registerEvent] Duplicate registered item with uniqueid: 30015
[08/01/2009 09:58:45] Warning: [Event::loadScript] Can not load script. data/talkactions/scripts/rf.lua
 
Make sure you're using a lever of the item id 1945 from the beginning.
PHP:
 -- 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.


function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
 if item.itemid == 1945 then

 player1pos = {x=105, y=366, z=6, stackpos=253}
 player1 = getThingfromPos(player1pos)

 player2pos = {x=106, y=366, z=6, stackpos=253}
 player2 = getThingfromPos(player2pos)

 player3pos = {x=107, y=366, z=6, stackpos=253}
 player3 = getThingfromPos(player3pos)

 player4pos = {x=108, y=366, z=6, 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 = 60

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

      queststatus1 = getPlayerStorageValue(player1.uid,7000)
      queststatus2 = getPlayerStorageValue(player2.uid,7000)
      queststatus3 = getPlayerStorageValue(player3.uid,7000)
      queststatus4 = getPlayerStorageValue(player4.uid,7000)

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

    --if 1==1 then
    demon1pos = {x=61, y=406, z=8}
    demon2pos = {x=63, y=406, z=8}
    demon3pos = {x=65, y=408, z=8}
    demon4pos = {x=66, y=408, z=8}
    demon5pos = {x=62, y=410, z=8}
    demon6pos = {x=64, y=410, z=8}
    
 
   doSummonCreature("Demon", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Demon", demon3pos)
   doSummonCreature("Demon", demon4pos)
   doSummonCreature("Demon", demon5pos)
   doSummonCreature("Demon", demon6pos)
  

    nplayer1pos = {x=61, y=408, z=8}
    nplayer2pos = {x=62, y=408, z=8}
    nplayer3pos = {x=63, y=408, z=8}
    nplayer4pos = {x=64, y=408, z=8}

   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,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
    end
   else
    doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
   end
  else
  doPlayerSendCancel(cid,"Somthing Is Wrong : Some in your team are to low,you most be 4 player")
  end
  end
 if item.itemid == 1945 then
-- Here is the code start:
starting={x=60, y=405, z=8, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x=65, y=411, z=8, stackpos=253}
players=4
totalmonsters=6
monster = {Demon}
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=15, y=15, z=7}
current=0
repeat
current=current+1
doTeleportThing(monster[current],trash)
until current>=totalmonsters
doTransformItem(item.uid,1946)
elseif item.itemid == 1946 then
doTransformItem(item.uid, 1945)
end
-- Here is the end of it

end
end
 return 1
end
 
Try this one I have:
PHP:
-- 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=541, y=502, z=8, stackpos=253} 
 player1 = getThingfromPos(player1pos) 

 player2pos = {x=542, y=502, z=8, stackpos=253} 
 player2 = getThingfromPos(player2pos) 

 player3pos = {x=543, y=502, z=8, stackpos=253} 
 player3 = getThingfromPos(player3pos) 

 player4pos = {x=544, y=502, z=8, 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=548, y=479, z=8} 
    demon2pos = {x=550, y=479, z=8} 
    demon3pos = {x=547, y=483, z=8} 
    demon4pos = {x=549, y=483, z=8} 
    demon5pos = {x=551, y=481, z=8} 
    demon6pos = {x=552, y=481, z=8} 
  
   doSummonCreature("Demon", demon1pos) 
   doSummonCreature("Demon", demon2pos) 
   doSummonCreature("Demon", demon3pos) 
   doSummonCreature("Demon", demon4pos) 
   doSummonCreature("Juggernaut", demon5pos) 
   doSummonCreature("Juggernaut", demon6pos) 

    nplayer1pos = {x=547, y=481, z=8} 
    nplayer2pos = {x=548, y=481, z=8} 
    nplayer3pos = {x=549, y=481, z=8} 
    nplayer4pos = {x=550, y=481, z=8} 

   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,"Someone has already done this quest") 
    end 
   else 
    doPlayerSendCancel(cid,"Your level is too low") 
   end 
  else 
  doPlayerSendCancel(cid,"You need 4 players in your team.") 
  end 
 end 
 if item.itemid == 1945 then 
-- Here is the code start: 
starting={x=1632, y=423, z=14, stackpos=253} 
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos} 
ending={x=1638, y=428, z=14, 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=1715, y=678, z=5} 
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 == 5001 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 == 5002 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 == 5003 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 == 5004 then 
 queststatus = getPlayerStorageValue(cid,100) 
 if queststatus ~= 1 then 
  doPlayerSendTextMessage(cid,22,"You have found a thunder hammer.") 
  doPlayerAddItem(cid,2421,1) 
  setPlayerStorageValue(cid,100,1) 
 else 
  doPlayerSendTextMessage(cid,22,"It is empty.") 
 end 
 end 
 return 1 
end
 

Hey mate, I saw this thread and thought I chould help you little...

But this in Actions/scripts.
Code:
 -- 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=33225, y=31671, z=13, stackpos=253}
 player1 = getThingfromPos(player1pos)

 player2pos = {x=33224, y=31671, z=13, stackpos=253}
 player2 = getThingfromPos(player2pos)

 player3pos = {x=33223, y=31671, z=13, stackpos=253}
 player3 = getThingfromPos(player3pos)

 player4pos = {x=33222, y=31671, 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=33219, y=31657, z=13}
	demon2pos = {x=33221, y=31657, z=13}
	demon3pos = {x=33220, y=31661, z=13}
	demon4pos = {x=33222, y=31661, z=13}
	demon5pos = {x=33223, y=31659, z=13}
	demon6pos = {x=33224, y=31659, z=13}
 
   doSummonCreature("Demon", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Demon", demon3pos)
   doSummonCreature("Demon", demon4pos)
   doSummonCreature("Demon", demon5pos)
   doSummonCreature("Demon", demon6pos)

	nplayer1pos = {x=33222, y=31659, z=13}
	nplayer2pos = {x=33221, y=31659, z=13}
	nplayer3pos = {x=33220, y=31659, z=13}
	nplayer4pos = {x=33219, y=31659, 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,"Someone has already done this quest")
	end
   else
	doPlayerSendCancel(cid,"Your level is too low")
   end
  else
  doPlayerSendCancel(cid,"You need 4 players in your team.")
  end
 end
 if item.itemid == 1945 then
-- Here is the code start:
starting={x=1632, y=423, z=14, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x=1638, y=428, z=14, 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=1715, y=678, z=5}
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 == 5001 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 == 5002 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 == 5003 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 == 5004 then
 queststatus = getPlayerStorageValue(cid,100)
 if queststatus ~= 1 then
  doPlayerSendTextMessage(cid,22,"You have found a present.")
  doPlayerAddItem(cid,2326,1)
  setPlayerStorageValue(cid,100,1)
 else
  doPlayerSendTextMessage(cid,22,"It is empty.")
 end
 end
 return 1
end

Put this in Actions.xml
Code:
<action uniqueid="5000" script="quest/annihilator.lua" />
<action uniqueid="5001" script="quest/annihilator.lua" />
<action uniqueid="5002" script="quest/annihilator.lua" />
<action uniqueid="5003" script="quest/annihilator.lua" />
<action uniqueid="5004" script="quest/annihilator.lua" />


Go in mapeditor and change the switch so it have id 1946.. and Unid: 5000. check that all player possitons is corrects, include demons..

Change unid on all chest to 5001, 5002, 5003, 5004... check its correct whats items will be looted..


now it should work perfect... ;D
 
oki think it's work . BUt can the player make anni 2 time `? i wanna have it so the player can make it so many time's they wanna

I mabey can rescript this quest, so you can enter again even you allready done the quest.. but you can't loot the quest again...


Should I made that for you?
 
Back
Top