Maybe you can start by posting if there's any errors and post you script.
local playerPosition =
{
{x = 33222, y = 31671, z = 13, stackpos = STACKPOS_TOP_CREATURE},
{x = 33223, y = 31671, z = 13, stackpos = STACKPOS_TOP_CREATURE},
{x = 33224, y = 31671, z = 13, stackpos = STACKPOS_TOP_CREATURE},
{x = 33225, y = 31671, z = 13, stackpos = STACKPOS_TOP_CREATURE}
}
local newPosition =
{
{x = 33219, y = 31659, z = 13},
{x = 33220, y = 31659, z = 13},
{x = 33221, y = 31659, z = 13},
{x = 33222, y = 31659, z = 13}
}
-- Do not modify the declaration lines below.
local player = {0, 0, 0, 0}
local failed = FALSE
function onUse(cid, item, fromPosition, itemEx, toPosition)
if item.itemid == 1945 then
for i = 1, 4 do
failed = TRUE
player[i] = getThingfromPos(playerPosition[i])
if player[i].itemid > 0 then
if isPlayer(player[i].uid) == TRUE then
if getPlayerStorageValue(player[i].uid, 30015) == -1 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
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
Here is my annihilator script.
You are welcome to use it. :thumbup:
It should be exactly like Tibia.
(Teddy Bear in the Box included)
Regards.![]()
I would say, try Xalas's script or try another one...
It's easy to find, just use the search function![]()
@Odd,
Open the map in the mapeditor.
- Anni Lever = Unique ID - 5000
- Demon Armor Chest = Unique ID - 5001
- Sword of Valor Chest = Unique ID - 5002
- Stonecutter Axe Chest = Unique ID - 5003
- Present Box Chest = Unique ID - 5004
They should work,
Good Luck. :thumbup:
Regards.
function onUse(cid, item, fromPosition, itemEx, toPosition)
if item.uid == 2000 then
queststatus = getPlayerStorageValue(cid,6076)
if queststatus == -1 then
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a demon armor.")
doPlayerAddItem(cid,2494,1)
setPlayerStorageValue(cid,6076,1)
else
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
end
elseif item.uid == 2001 then
queststatus = getPlayerStorageValue(cid,6076)
if queststatus == -1 then
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a magic sword.")
doPlayerAddItem(cid,2400,1)
setPlayerStorageValue(cid,6076,1)
else
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
end
elseif item.uid == 2002 then
queststatus = getPlayerStorageValue(cid,6076)
if queststatus == -1 then
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a stonecutter axe.")
doPlayerAddItem(cid,2431,1)
setPlayerStorageValue(cid,6076,1)
else
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
end
elseif item.uid == 2003 then
queststatus = getPlayerStorageValue(cid,6076)
if queststatus == -1 then
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a present.")
doPlayerAddItem(cid,1990,1)
setPlayerStorageValue(cid,6076,1)
else
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
end
end
return 1
end
-- 5000 = The switch.
-- 5001 = Demon Armor chest.
-- 5002 = Magic Sword chest.
-- 5003 = Stonecutter Axe chest.
-- 5004 = Present Box.
--
function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
if item.itemid == 1945 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
demon1pos = {x=33224, y=31659, z=13}
demon2pos = {x=33223, y=31659, z=13}
demon3pos = {x=33222, y=31661, z=13}
demon4pos = {x=33221, y=31657, z=13}
demon5pos = {x=33220, y=31661, z=13}
demon5pos = {x=33219, y=31657, 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,item.itemid+1)
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
elseif item.itemid == 1946 then
doTransformItem(item.uid,item.itemid-1)
end
elseif item.uid == 5001 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
doPlayerSendTextMessage(cid,24,"You have chosen the Demon Armor.")
doPlayerAddItem(cid,2494,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
elseif item.uid == 5002 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
doPlayerSendTextMessage(cid,24,"You have chosen the Sword of Valor.")
doPlayerAddItem(cid,2400,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
elseif item.uid == 5003 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
doPlayerSendTextMessage(cid,24,"You have chosen the Stonecutter Axe.")
doPlayerAddItem(cid,2431,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
elseif item.uid == 5004 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
local bag = doCreateItemEx(1990, 1)
doAddContainerItemEx(bag, doCreateItemEx(2326, 1))
if doPlayerAddItemEx(cid, bag, FALSE) ~= -1 then
doPlayerSendTextMessage(cid,22,"You have chosen the Present Box.")
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"You don\'t have enough capacity or space to carry this item.")
end
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
end
return 1
end
-- 5000 = The switch.
-- 5001 = Demon Armor chest.
-- 5002 = Magic Sword chest.
-- 5003 = Stonecutter Axe chest.
-- 5004 = Present Box.
--
function onUse(cid, item, frompos, item2, topos)
if item.uid == 5000 then
if item.itemid == 1945 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
demon1pos = {x=33224, y=31659, z=13}
demon2pos = {x=33223, y=31659, z=13}
demon3pos = {x=33222, y=31661, z=13}
demon4pos = {x=33221, y=31657, z=13}
demon5pos = {x=33220, y=31661, z=13}
demon5pos = {x=33219, y=31657, 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,item.itemid+1)
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
else
doPlayerSendCancel(cid,"Sorry, not possible.")
end
elseif item.itemid == 1946 then
doTransformItem(item.uid,item.itemid-1)
end
elseif item.uid == 5001 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
doPlayerSendTextMessage(cid,24,"You have chosen the Demon Armor.")
doPlayerAddItem(cid,2494,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
elseif item.uid == 5002 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
doPlayerSendTextMessage(cid,24,"You have chosen the Sword of Valor.")
doPlayerAddItem(cid,2400,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
elseif item.uid == 5003 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
doPlayerSendTextMessage(cid,24,"You have chosen the Stonecutter Axe.")
doPlayerAddItem(cid,2431,1)
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
elseif item.uid == 5004 then
queststatus = getPlayerStorageValue(cid,5001)
if queststatus == -1 then
local bag = doCreateItemEx(1990, 1)
doAddContainerItemEx(bag, doCreateItemEx(2326, 1))
if doPlayerAddItemEx(cid, bag, FALSE) ~= -1 then
doPlayerSendTextMessage(cid,22,"You have chosen the Present Box.")
setPlayerStorageValue(cid,5001,1)
else
doPlayerSendTextMessage(cid,22,"You don\'t have enough capacity or space to carry this item.")
end
else
doPlayerSendTextMessage(cid,22,"The chest is empty.")
end
end
return 1
end