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

0.3.6pl annihi problem.

Boyegas

New Member
Joined
Jan 27, 2009
Messages
159
Reaction score
1
So Im using TFS 0.3.6pl and Im using this script for annihilator

-- Annihilator by Shawak v2.1

-- CONFIG --

local room = { -- room with demons
fromX = 1024,
fromY = 700,
fromZ = 7,
--------------
toX = 1027,
toY = 700,
toZ = 7
}

local monster_pos = {
[1] = {pos = {1024, 698, 7}, monster = "Demon"},
[2] = {pos = {1025, 702, 7}, monster = "Demon"},
[3] = {pos = {1026, 698, 7}, monster = "Demon"},
[4] = {pos = {1027, 702, 7}, monster = "Demon"},
[5] = {pos = {1028, 700, 7}, monster = "Demon"},
[6] = {pos = {1028, 700, 7}, monster = "Demon"}
}

local players_pos = {
{x = 1007, y =700, z = 7, stackpos = 253},
{x = 1008, y =700, z = 7, stackpos = 253},
{x = 1009, y =700, z = 7, stackpos = 253},
{x = 1010, y =700, z = 7, stackpos = 253}
}

local new_player_pos = {
{x = 1024, y = 700, z = 7},
{x = 1025, y = 700, z = 7},
{x = 1026, y = 700, z = 7},
{x = 1027, y = 700, z = 7}
}

local playersOnly = "no"
local questLevel = 20

------------------------------------------------------
--- CONFIG END ---------------------------------------
------------------------------------------------------

function onUse(cid, item, fromPosition, itemEx, toPosition)
local all_ready, monsters, player, level = 0, 0, {}, 0
if item.itemid == 1945 then
for i = 1, #players_pos do
table.insert(player, 0)
end
for i = 1, #players_pos do
player = getThingfromPos(players_pos)
if player.itemid > 0 then
if string.lower(playersOnly) == "yes" then
if isPlayer(player.uid) == TRUE then
all_ready = all_ready+1
else
monsters = monsters+1
end
else
all_ready = all_ready+1
end
end
end
if all_ready == #players_pos then
for i = 1, #players_pos do
player = getThingfromPos(players_pos)
if isPlayer(player.uid) == TRUE then
if getPlayerLevel(player.uid) >= questLevel then
level = level+1
end
else
level = level+1
end
end
if level == #players_pos then
if string.lower(playersOnly) == "yes" and monsters == 0 or string.lower(playersOnly) == "no" then
for _, area in pairs(monster_pos) do
doSummonCreature(area.monster,{x=area.pos[1],y=area.pos[2],z=area.pos[3]})
end
for i = 1, #players_pos do
doSendMagicEffect(players_pos, CONST_ME_POFF)
doTeleportThing(player.uid, new_player_pos, FALSE)
doSendMagicEffect(new_player_pos, CONST_ME_ENERGYAREA)
doTransformItem(item.uid,1946)
end
else
doPlayerSendTextMessage(cid,19,"Only players can do this quest.")
end
else
doPlayerSendTextMessage(cid,19,"All Players have to be level "..questLevel.." to do this quest.")
end
else
doPlayerSendTextMessage(cid,19,"You need "..table.getn(players_pos).." players to do this quest.")
end
elseif item.itemid == 1946 then
local player_room = 0
for x = room.fromX, room.toX do
for y = room.fromY, room.toY do
for z = room.fromZ, room.toZ do
local pos = {x=x, y=y, z=z,stackpos = 253}
local thing = getThingfromPos(pos)
if thing.itemid > 0 then
if isPlayer(thing.uid) == TRUE then
player_room = player_room+1
end
end
end
end
end
if player_room >= 1 then
doPlayerSendTextMessage(cid,19,"There is already a team in the quest room.")
elseif player_room == 0 then
for x = room.fromX, room.toX do
for y = room.fromY, room.toY do
for z = room.fromZ, room.toZ do
local pos = {x=x, y=y, z=z,stackpos = 253}
local thing = getThingfromPos(pos)
if thing.itemid > 0 then
doRemoveCreature(thing.uid)
end
end
end
end
doTransformItem(item.uid,1945)
end
end
return TRUE
end


I dont get any problems in my console, I mapped the anihilator, I used 4 stone tiles and a lever next to the first one. The lever has the the same id in the script. It doesnt work. The lever just goes on and off.
 
The first part like, I didnt use a door I just steped on the tiles, but the lever dosnt work, It dosnt send me anywhere it just moves and nothing happens.
 
Open actions.xml and make sure that you've declared the actionID/uniqueID that is assigned to the lever. You should add a line that looks like this:

<action uniqueid="30015" script="annihilator.lua"/>


Rad
 
One way is to open up your map in a Map Editor and right-click on the item.
Another is to 'look' at the item on your GOD character in-game. It should say 'You see a lever. UniqueID: XXXX ...'. If you don;t see the uniqueID, you have to assign it one using a Map Editor.


Rad
 
Back
Top