• 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!
  • New resources must be posted under Resources tab. A discussion thread will be created automatically, you can't open threads manually anymore.

Action Annihilator Quest for new tfs

Szakal

Frank Jaeger
Joined
Apr 16, 2008
Messages
1,338
Reaction score
6
Location
Poland, Lubań.
Hello the script its not my but i dont find they on otland.

So i post him:

actions.xml
<action uniqueid="5000" script="annihilator.lua" />


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

 player1pos = [COLOR="Magenta"]{x=32370, y=32242, z=7, stackpos=253}[/COLOR]
 player1 = getThingfromPos(player1pos)

 player2pos = [COLOR="Magenta"]{x=32369, y=32242, z=7, stackpos=253}[/COLOR]
 player2 = getThingfromPos(player2pos)

 player3pos = [COLOR="Magenta"]{x=32368, y=32242, z=7, stackpos=253}[/COLOR]
 player3 = getThingfromPos(player3pos)

 player4pos = [COLOR="Magenta"]{x=32367, y=32242, z=7, stackpos=253}[/COLOR]
 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,5000)
	  queststatus2 = getPlayerStorageValue(player2.uid,5000)
	  queststatus3 = getPlayerStorageValue(player3.uid,5000)
	  queststatus4 = getPlayerStorageValue(player4.uid,5000)

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

	--if 1==1 then
	[COLOR="Magenta"]demon1pos = {x=32368, y=32244, z=7}
	demon2pos = {x=32370, y=32244, z=7}
	demon3pos = {x=32371, y=32246, z=7}
	demon4pos = {x=32372, y=32246, z=7}
	demon5pos = {x=32367, y=32248, z=7}
	demon6pos = {x=32369, y=32248, z=7}[/COLOR]
	
 
   doSummonCreature("Demon", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Demon", demon3pos)
   doSummonCreature("Demon", demon4pos)
   doSummonCreature("Demon", demon5pos)
   doSummonCreature("Demon", demon6pos)
  

	[COLOR="Magenta"]nplayer1pos = {x=32370, y=32246, z=7}
	nplayer2pos = {x=32369, y=32246, z=7}
	nplayer3pos = {x=32368, y=32246, z=7}
	nplayer4pos = {x=32367, y=32246, z=7}[/COLOR]

   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:
[COLOR="Magenta"]starting={x=32367, y=32244, z=7, stackpos=253}[/COLOR]
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
[COLOR="Magenta"]ending={x=32373, y=32248, z=7, stackpos=253}[/COLOR]
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
[COLOR="Magenta"]trash= {x=32368, y=32166, z=7}[/COLOR]
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


-- 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.
 
Last edited:
Yes "he" have "trash" function.
Trash function + only 1 team in room function + summon new demons function.
 
Last edited:
hey please explain what do you mean with -- starting = Upper left point of the annihilator room area.
-- ending = Bottom right point of the annihilator room area.? and the lever is unique id 5000 must i give it uniqueid in my otmapeditor too?
 
Omg kaspertje.. it explains itself :s
Starting = The position in the top left corner in the room where the demons and rewards should be
ending = the same but position in the bottomr right corner
 
cant make 2 rooms side by side with 1 room full of demons and one for reward with a door inbetween? download any frankfarmer map and snatch it...
 
new military rulers swiftly reassured citizens

Reporting from Cairo and Washington —
Egypt's unfamiliar military rulers before you can say 'knife' reassured citizens and critical allies showing of their commitment to civilian guidance and lasting quality, but with exhilarated crowds at rest in the streets it was doubtlessly from firm the generals had the envisaging or will to permute the Arab everyone's most populous domain into a vibrant democracy.
 
Everything works fine except for the "throw them in the trash" code.
 

Similar threads

Back
Top