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

Magic Wall & Wild Growth Block Ladder

splifus

New Member
Joined
Oct 18, 2007
Messages
122
Reaction score
3
Location
Canada
If someone go up a ladder and magic wall the spot where people usually get up when using the ladder the people down can't get up. It same problem with Wild Growth.

Maybe my screenshot help you a little more.

bugsj.png


If no magic wall people get up on south of ladder hole.
If there is a magic wall on south spot they get on north of ladder hole.
If there is one on both side. Player is stuck down and player higher can mwl until he lose his skull.

Is there anyway I could fix that? Tell me if I should post my scripts (mwl & wg) but I doubt it has something to see with it

Max
 
I think with that bug that its possible to block everyone so they cant get up at all, just use an object that u cant walk over but that u can still push around and rope it up and leave it on the ropespot ~
 
Code:
local UP_FLOORS = {1386, 3678, 5543, 8599, 10035}
local DRAW_WELL = 1369

function onUse(cid, item, fromPosition, itemEx, toPosition)
	if(item.itemid == DRAW_WELL and item.actionid ~= 100) then
		return false
	end

	fromPosition.stackpos = STACKPOS_GROUND
	if(isInArray(UP_FLOORS, item.itemid)) then
		fromPosition.z = fromPosition.z - 1
		fromPosition.y = fromPosition.y + 1
		[COLOR="red"][B]if(doTileQueryAdd(cid, fromPosition, 4, false) ~= RETURNVALUE_NOERROR) then
			fromPosition.y = fromPosition.y - 2
		end[/COLOR][/B]
	else
		fromPosition.z = fromPosition.z + 1
	end

[B][COLOR="red"]	if(doTileQueryAdd(cid, fromPosition, 4, false) ~= RETURNVALUE_NOERROR) then
		return false
	end[/COLOR][/B]

	local pos, dir = getCreaturePosition(cid), SOUTH
	if(pos.x < fromPosition.x) then
		dir = EAST
	elseif(pos.x == fromPosition.x) then
		if(pos.y == fromPosition.y) then
			dir = getCreatureLookDirection(cid)
		elseif(pos.y > fromPosition.y) then
			dir = NORTH
		end
	elseif(pos.x > fromPosition.x) then
		dir = WEST
	end

	doTeleportThing(cid, fromPosition, false)
	doCreatureSetLookDirection(cid, dir)
	return true
end
Those checks should be modified or removed
 
Last edited:
I just had to leave the first red line to run more the character is teleported to the north of the stairs, not the south that is correct.
 
Back
Top