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

Script erro

hasbro

Member
Joined
Feb 15, 2009
Messages
286
Reaction score
6
PHP:
13:53:10.304] [Error - TalkAction Interface] 
[13:53:10.304] data/talkactions/scripts/teleporttown.lua:onSay
[13:53:10.304] Description: 
[13:53:10.304] data/talkactions/scripts/teleporttown.lua:33: attempt to concatenate field '?' (a nil value)
[13:53:10.304] stack traceback:
[13:53:10.304] 	data/talkactions/scripts/teleporttown.lua:33: in function <data/talkactions/scripts/teleporttown.lua:1>

Script:

PHP:
function onSay(cid, words, param, channel)
	local master = false
	if(words == '/t') then
		master = true
	elseif(param == '') then
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.")
		return true
	end

	local tid, t = cid, string.explode(param, ",")
	if(t[(master and 1 or 2)]) then
		tid = getPlayerByNameWildcard(t[(master and 1 or 2)])
		if(not tid or (isPlayerGhost(tid) and getPlayerAccess(tid) > getPlayerAccess(cid))) then
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player " .. t[(master and 1 or 2)] .. " not found.")
			return true
		end
	end

	local tmp = getPlayerTown(cid)
	if(not master) then
		tmp = t[1]
		if(not tonumber(tmp)) then
			tmp = getTownId(tmp)
			if(not tmp) then
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Town " .. t[1] .. " does not exists.")
				return true
			end
		end
	end

	local pos = getTownTemplePosition(tmp, false)
	if(type(pos) ~= 'table' or isInArray({pos.x, pos.y}, 0)) then
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Town " .. t[1] .. " does not exists or has invalid temple position.")
		return true
	end

	pos = getClosestFreeTile(tid, pos)
	if(type(pos) ~= 'table' or isInArray({pos.x, pos.y}, 0)) then
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Destination not reachable.")
		return true
	end

	tmp = getCreaturePosition(tid)
	if(doTeleportThing(tid, pos) and not isPlayerGhost(tid)) then
		doSendMagicEffect(tmp, CONST_ME_POFF)
		doSendMagicEffect(pos, CONST_ME_TELEPORT)
	end

	return true
end
 
Back
Top