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

Lever Remove Wall [REQUEST]

here u are..

name that gate1.lua and save it in data/actions/scripts


Code:
function onUse(cid, item, frompos, item2, topos)

local wallpos1 = {x=420, y=791, z=7, stackpos=1} --- coordinates of the wall to be removed ---
local wallpos2 = {x=421, y=791, z=7, stackpos=1}
local wallpos3 = {x=422, y=791, z=7, stackpos=1}
local wall1 = getThingfromPos(wallpos1)
local wall2 = getThingfromPos(wallpos2)
local wall3 = getThingfromPos(wallpos3)
local wallID = 9485 --- item id of the wall to be removed ---


if item.uid == 30066 and item.itemid == 1945 and wall1.itemid == 9485 and wall2.itemid == 9485 and wall3.itemid == 9485 then

doRemoveItem(wall1.uid, 1)
doRemoveItem(wall2.uid, 1)
doRemoveItem(wall3.uid, 1)
doTransformItem(item.uid,1946)
doPlayerSendTextMessage(cid,22,"Something has moved not too far away.")


elseif item.uid == 30066 and item.itemid == 1946 and wall1.itemid == 0 and wall2.itemid == 0 and wall3.itemid == 0 then

doCreateItem(wall1, 1, wallpos1)
doCreateItem(wall2, 1, wallpos2)
doCreateItem(wall3, 1, wallpos3)
doTransformItem(item.uid,1945)
doPlayerSendTextMessage(cid,22,"Something has moved not too far away.")

end

end


then add in actions.xml

<action uniqueid="30066" script="gate1.lua" />


also go into ur map editor and add that 30066 in the uid of the lever by right clicking on the lever
 
i did find an bug in my script and about the error in the script was that you needed to write "end" at the end of the script but it seems like you got it working
 
100% working


function onUse(cid, item, frompos, item2, topos)

local wallpos1 = {x=599, y=619, z=8, stackpos=1} ---
local wall1 = getThingfromPos(wallpos1)
local wallID = 1028 --- item id of the wall to be removed ---


if item.itemid == 1945 then

doRemoveItem(wall1.uid, 1)
doTransformItem(item.uid, 1946)

elseif item.itemid == 1946 then

doCreateItem(wallID, 1, wallpos1)
doTransformItem(item.uid, 1945)

end

return TRUE
end
 
100% working


function onUse(cid, item, frompos, item2, topos)

local wallpos1 = {x=599, y=619, z=8, stackpos=1} ---
local wall1 = getThingfromPos(wallpos1)
local wallID = 1028 --- item id of the wall to be removed ---


if item.itemid == 1945 then

doRemoveItem(wall1.uid, 1)
doTransformItem(item.uid, 1946)

elseif item.itemid == 1946 then

doCreateItem(wallID, 1, wallpos1)
doTransformItem(item.uid, 1945)

end

return TRUE
end
4 year necro, but thanks for contributing. :p
 
Back
Top