• 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!

Action Script for Qeust

sonny11

New Member
Joined
Dec 22, 2007
Messages
137
Reaction score
0
i made this script which is custom in my ot but i wanted to know how to make the monsters die if the players die too :confused:

Code:
-- Killa Qeust Scripted by NiTrO.
--
-- 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.
--
-- UniqueIDs used:
--
-- 5005 = The switch.
-- 5006 = Rock chest.
-- 5007 = Rune chest.

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

 	player1pos = {x=75, y=934, z=7, stackpos=253}
 	player1 = getThingfromPos(player1pos)

 	player2pos = {x=76, y=934, z=7, stackpos=253}
 	player2 = getThingfromPos(player2pos)

 	if player1.itemid > 0 and player2.itemid > 0 then

  player1level = getPlayerLevel(player1.uid)
  player2level = getPlayerLevel(player2.uid)

  questlevel = 95

  if player1level >= questlevel and player2level >= questlevel then

  	queststatus10 = getPlayerStorageValue(player1.uid,5005)
  	queststatus11 = getPlayerStorageValue(player2.uid,5005)

  	if queststatus10 == -1 and queststatus11 == -1 then
	
   demon1pos = {x=96, y=936, z=7}
   demon2pos = {x=86, y=912, z=7}
   demon3pos = {x=96, y=912, z=7}
   demon4pos = {x=106, y=919, z=7}
   demon5pos = {x=86, y=919, z=7}
   demon6pos = {x=97, y=919, z=7}
   demon7pos = {x=109, y=928, z=7}
   demon8pos = {x=109, y=934, z=7}
   demon9pos = {x=103, y=941, z=7}
   demon10pos = {x=114, y=919, z=7}
   demon11pos = {x=119, y=925, z=7}
   demon12pos = {x=128, y=927, z=7}
   demon13pos = {x=128, y=929, z=7}
   demon14pos = {x=128, y=919, z=7}
   demon15pos = {x=136, y=926, z=7}
   demon16pos = {x=142, y=936, z=7}
   demon17pos = {x=140, y=936, z=7}
   demon18pos = {x=128, y=946, z=7}
   demon19pos = {x=124, y=936, z=7}
 
   doSummonCreature("Hellfire Fighter", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Juggernaut", demon3pos)
   doSummonCreature("Ferumbras", demon4pos)
   doSummonCreature("Juggernaut", demon5pos)
   doSummonCreature("Demon", demon6pos)
   doSummonCreature("Energy Dragon", demon7pos)
   doSummonCreature("Energy Dragon", demon8pos)
   doSummonCreature("Hand Of Cursed Fate", demon9pos)
   doSummonCreature("Demon", demon10pos)
   doSummonCreature("Hellhound", demon11pos)
   doSummonCreature("Ferumbras", demon12pos)
   doSummonCreature("Hellfire Fighter", demon13pos)
   doSummonCreature("Demon", demon14pos)
   doSummonCreature("Juggernaut", demon15pos)
   doSummonCreature("Ferumbras", demon16pos)
   doSummonCreature("Ferumbras", demon17pos)
   doSummonCreature("Apocalypse", demon18pos)
   doSummonCreature("Apocalypse", demon19pos)

   nplayer1pos = {x=89, y=936, z=7}
   nplayer2pos = {x=90, y=936, z=7}

   doSendMagicEffect(player1pos,2)
   doSendMagicEffect(player2pos,2)

   doTeleportThing(player1.uid,nplayer1pos)
   doTeleportThing(player2.uid,nplayer2pos)

   doSendMagicEffect(nplayer1pos,10)
   doSendMagicEffect(nplayer2pos,10)

   doTransformItem(item.uid,item.itemid+1)

  	else
   doPlayerSendCancel(cid,"Sorry, not possible.")
  	end
  else
  	doPlayerSendCancel(cid,"Sorry, not possible.")
  end
 	else
  doPlayerSendCancel(cid,"Sorry, not possible.")
 	end
 elseif item.itemid == 1946 then
 	if getPlayerAccess(cid) == 0 then
  doTransformItem(item.uid,item.itemid-1)
 	else
  doPlayerSendCancel(cid,"Sorry, not possible.")
 	end
 end
	elseif item.uid == 5006 then
 queststatus = getPlayerStorageValue(cid,5000)
 if queststatus == -1 then
 	doPlayerSendTextMessage(cid,22,"You have found a Killa rock.")
 	doPlayerAddItem(cid,2271,1)
 	setPlayerStorageValue(cid,5000,1)
 else
 	doPlayerSendTextMessage(cid,22,"It is empty.")
 end
	elseif item.uid == 5008 then
 queststatus = getPlayerStorageValue(cid,5000)
 if queststatus == -1 then
 	doPlayerSendTextMessage(cid,22,"You have found a Killa kross.")
 	doPlayerAddItem(cid,2298,1)
 	setPlayerStorageValue(cid,5000,1)
 else
 	doPlayerSendTextMessage(cid,22,"It is empty.")
 end
	end
return 1
end

is it possible????????????
 
Yes, it is.
Code:
 -- 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=1635, y=425, z=13, stackpos=253}
 player1 = getThingfromPos(player1pos)

 player2pos = {x=1634, y=425, z=13, stackpos=253}
 player2 = getThingfromPos(player2pos)

 player3pos = {x=1633, y=425, z=13, stackpos=253}
 player3 = getThingfromPos(player3pos)

 player4pos = {x=1632, y=425, 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,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=1632, y=423, z=14}
    demon2pos = {x=1634, y=423, z=14}
    demon3pos = {x=1633, y=427, z=14}
    demon4pos = {x=1635, y=427, z=14}
    demon5pos = {x=1636, y=425, z=14}
    
 
   doSummonCreature("Demon", demon1pos)
   doSummonCreature("Demon", demon2pos)
   doSummonCreature("Demon", demon3pos)
   doSummonCreature("Demon", demon4pos)
   doSummonCreature("Demon", demon5pos)
  

    nplayer1pos = {x=1635, y=425, z=14}
    nplayer2pos = {x=1634, y=425, z=14}
    nplayer3pos = {x=1633, y=425, z=14}
    nplayer4pos = {x=1632, y=425, z=14}

   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=1631, 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=1671, y=470, z=14}
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
Here is where the monsters will be teleported when other players will try to do annihilator.
Code:
[B]trash= {x=1671, y=470, z=14}[/B]
You just have to add more monsters and then make a hidden place where monsters should be teleported.

Btw, you gotta make like a square from where are the monsters that should be removed.

Code:
 starting={x=1631, y=423, z=14, stackpos=253}
Code:
 ending={x=1638, y=428, z=14, stackpos=253}

Like this :
asthis.png
 
Last edited:
Back
Top