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

Demon helmet quest

Mikelon

New Member
Joined
Feb 25, 2008
Messages
42
Reaction score
0
i need the demon helmet quest
i used all the scripts here in the forum but all of them
dont work
:S it gives me some bugs :(
if can someone post one
that works properly for TFS 0.3.3 or .4

PLEASE TY :)
 
You just need the switch that removes the wall, correct?


Code:
local stonepos = {x = xx, y = yy, Z = zz, STACKPOS = 1}

function onUse(cid, item, fromPosition, itemEx, toPosition)
    doRemoveItem(getThingfromPos(stonepos).uid)
    return TRUE
end

Rep if it helped you =)
 
ya ty
but now i have a problem with other script
the anihilator script =S

when i press the switch and get to the right it gives me this error
[05/05/2009 05:48:49] Lua Script Error: [Action Interface]
[05/05/2009 05:48:49] data/actions/scripts/quests/anihi.luanUse

[05/05/2009 05:48:49] luaDoTeleportThing(). Thing not found

and when i press again it gives me this error

[05/05/2009 05:49:23] Lua Script Error: [Action Interface]
[05/05/2009 05:49:23] data/actions/scripts/quests/anihi.luanUse

[05/05/2009 05:49:23] data/actions/scripts/quests/anihi.lua:27: attempt to compare number with boolean
[05/05/2009 05:49:23] stack traceback:
[05/05/2009 05:49:23] data/actions/scripts/quests/anihi.lua:27: in function <data/actions/scripts/quests/anihi.lua:1>
heres my script
Code:
function onUse(cid, item, frompos, item2, topos)
if item.uid == 7000 then
if item.itemid == 1946 then

player1pos = {x=2269, y=2619, z=9, stackpos=253}
player1 = getThingfromPos(player1pos)

player2pos = {x=2268, y=2619, z=9, stackpos=253}
player2 = getThingfromPos(player2pos)

player3pos = {x=2267, y=2619, z=9, stackpos=253}
player3 = getThingfromPos(player3pos)

player4pos = {x=2266, y=2619, z=9, 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

demon1pos = {x=2251, y=2592, z=9}
demon2pos = {x=2253, y=2592, z=9}
demon3pos = {x=2252, y=2596, z=9}
demon4pos = {x=2254, y=2596, z=9}
demon5pos = {x=2255, y=2594, z=9}
demon6pos = {x=2256, y=2594, z=9}

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

nplayer1pos = {x=2254, y=2594, z=9}
nplayer2pos = {x=2253, y=2594, z=9}
nplayer3pos = {x=2252, y=2594, z=9}
nplayer4pos = {x=2251, y=2594, z=9}


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,"All players must have level 100 to enter.")
end
else
doPlayerSendCancel(cid,"You need 4 players in your team.")
end
end
if item.itemid == 1945 then

starting={x=2250, y=2591, z=9, stackpos=253}
checking={x=starting.x, y=starting.y, z=starting.z, stackpos=starting.stackpos}
ending={x=2257, y=2597, z=9, 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=182, y=240, z=11}
current=0
repeat
current=current+1
doTeleportThing(monster[current],trash)
until current>=totalmonsters
doTransformItem(item.uid,1946)
end


end
end
if item.uid == 5006 then
queststatus = getPlayerStorageValue(cid,100)
if queststatus == -1 then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"You have found a demon armor.")
doPlayerAddItem(cid,2494,1)
setPlayerStorageValue(cid,100,1)
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"It is empty.")
end
end
if item.uid == 5007 then
queststatus = getPlayerStorageValue(cid,100)
if queststatus ~= 1 then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"You have found a magic sword.")
doPlayerAddItem(cid,2400,1)
setPlayerStorageValue(cid,100,1)
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"It is empty.")
end
end
if item.uid == 5008 then
queststatus = getPlayerStorageValue(cid,100)
if queststatus ~= 1 then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"You have found a stonecutter axe.")
doPlayerAddItem(cid,2431,1)
setPlayerStorageValue(cid,100,1)
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"It is empty.")
end
end
if item.uid == 5009 then
queststatus = getPlayerStorageValue(cid,100)
if queststatus ~= 1 then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"You have found a Thunder Hammer.")
doPlayerAddItem(cid,2421,1)
setPlayerStorageValue(cid,100,1)
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR,"It is empty.")
end
end
return 1
end
PLEASE HELP ME :S
 
Last edited:
I don't have one that spawns demons, so make them spawn down below, and set the spawn rate really high.

Code:
local playerPosition =
{
	{x = 247, y = 659, z = 13, stackpos = STACKPOS_TOP_CREATURE},
	{x = 247, y = 660, z = 13, stackpos = STACKPOS_TOP_CREATURE},
	{x = 247, y = 661, z = 13, stackpos = STACKPOS_TOP_CREATURE},
	{x = 247, y = 662, z = 13, stackpos = STACKPOS_TOP_CREATURE}
}

local newPosition =
{
	{x = 189, y = 650, z = 13},
 	{x = 189, y = 651, z = 13},
	{x = 189, y = 652, z = 13},
	{x = 189, y = 653, z = 13}
}

-- Do not modify the declaration lines below.
local player = {0, 0, 0, 0}
local failed = TRUE

function onUse(cid, item, fromPosition, itemEx, toPosition)
	if item.itemid == 1945 then
		for i = 1, 4 do
			player[i] = getThingfromPos(playerPosition[i])
			if player[i].itemid > 0 then
				if isPlayer(player[i].uid) == TRUE then
					if getPlayerStorageValue(player[i].uid, 30015) == nil then
						if getPlayerLevel(player[i].uid) >= 100 then
							failed = FALSE
						end
					end
				end
			end

			if failed == TRUE then
				doPlayerSendCancel(cid, "Sorry, not possible.")
				return TRUE
			end

			failed = TRUE
		end

		for i = 1, 4 do
			doSendMagicEffect(playerPosition[i], CONST_ME_POFF)
			doTeleportThing(player[i].uid, newPosition[i], FALSE)
			doSendMagicEffect(newPosition[i], CONST_ME_ENERGYAREA)
		end
		doTransformItem(item.uid, item.itemid + 1)
	elseif item.itemid == 1946 then
		doPlayerSendCancel(cid, "Sorry, not possible.")
	end

	return TRUE
end


And use code brackets instead of quotes, it allows the script to be tabbed :)
 
Back
Top