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

Why ain't this script working?

Status
Not open for further replies.

Evan

A splendid one to behold
Senator
Premium User
Joined
May 6, 2009
Messages
7,018
Solutions
1
Reaction score
1,040
Location
United States
LUA:
function onUse(cid, item, fromPosition, itemEx, toPosition)
		
	if isPlayer(cid) then
			doSendMagicEffect(toPosition, 2)
			doTransformItem(itemEx.uid, 6299)
			doDecayItem(itemEx.uid)
			doSendAnimatedText(fromPosition, "BOOM", 210)
			addEvent(count5, 1000)
			return TRUE
end
end

function count5()
doSendMagicEffect(toPosition, 2)
addEvent(count4, 1000)
end

function count4()
doSendMagicEffect(toPosition, 2)
addEvent(count3, 1000)
end

function count3()
doSendMagicEffect(toPosition, 2)
addEvent(count2, 1000)
end

function count2()
doSendMagicEffect(toPosition, 2)
addEvent(count1, 1000)
end

function count1()
doSendMagicEffect(toPosition, 2)
addEvent(count0, 1000)
end

function count0()
doSendMagicEffect(toPosition, 2)
end


Error says it's in line 14, nil value in doSendMagicEffect
 
But I don't know the position, that's the problem.

You place the object on the ground, then CTRL click it, then the script goes from there.
So, the location could be anywhere.
 
LUA:
function onUse(cid, item, fromPosition, itemEx, toPosition)
 
	if isPlayer(cid) then
			doSendMagicEffect(toPosition, 2)
			doTransformItem(itemEx.uid, 6299)
			doDecayItem(itemEx.uid)
			doSendAnimatedText(fromPosition, "BOOM", 210)
			addEvent(count5, 1000)
			return TRUE
end
end
 
local Pos = getThingPosition(uid)

function count5()
doSendMagicEffect(Pos, 2)
addEvent(count4, 1000)
end
 
function count4()
doSendMagicEffect(toPosition, 2)
addEvent(count3, 1000)
end
 
function count3()
doSendMagicEffect(toPosition, 2)
addEvent(count2, 1000)
end
 
function count2()
doSendMagicEffect(toPosition, 2)
addEvent(count1, 1000)
end
 
function count1()
doSendMagicEffect(toPosition, 2)
addEvent(count0, 1000)
end
 
function count0()
doSendMagicEffect(toPosition, 2)
end

try that, change all toPosition to pos.
 
Nevermind, wrong error

This is the error now:
[0:5:19.531] [Error - Action Interface]
[0:5:19.532] data/actions/scripts/tripmine.lua
[0:5:19.533] Description:
[0:5:19.534] (luaGetThingPosition) Thing not found
 
Last edited:
Probably the worst code ever.. Try this one;
LUA:
function onUse(cid, item, fromPosition, itemEx, toPosition)
	doTransformItem(itemEx.uid, 6299)
	doDecayItem(itemEx.uid)
	doSendAnimatedText(fromPosition, "BOOM", 210)
	
	for i = 1, 7 do
		addEvent(doSendMagicEffect, (i-1)*1000, toPosition, 2)
	end
	
	return true
end
 
Okay, Summ, that does somewhat work, but not what I exactly want in the script.
I had the script include different functions so I can change it to my likings.

Is there any way you can make it work like that?
 
try this

Code:
function onUse(cid, item, fromPosition, itemEx, toPosition)
	if isPlayer(cid) then
		doSendMagicEffect(toPosition, 2)
		doTransformItem(itemEx.uid, 6299)
		doDecayItem(itemEx.uid)
		doSendAnimatedText(fromPosition, "BOOM", 210)
		addEvent(count5, 1000, toPosition)
		return TRUE
	end
end

function count5(toPosition)
doSendMagicEffect(toPosition, 2)
addEvent(count4, 1000, toPosition)
end

function count4(toPosition)
doSendMagicEffect(toPosition, 2)
addEvent(count3, 1000, toPosition)
end

function count3(toPosition)
doSendMagicEffect(toPosition, 2)
addEvent(count2, 1000, toPosition)
end

function count2(toPosition)
doSendMagicEffect(toPosition, 2)
addEvent(count1, 1000, toPosition)
end

function count1(toPosition)
doSendMagicEffect(toPosition, 2)
addEvent(count0, 1000, toPosition)
end

function count0(toPosition)
doSendMagicEffect(toPosition, 2)
end

if you use TFS 0.2.8 or less, you should use if isPlayer(cid) == TRUE then
 
Last edited:
lol'd hard. Why you want to check if the user is a player if only players can use items-.-?
Also, local variables aren't global.. If they were their name wouldn't be "local"
 
Ruda

[10:15:17.376] [Error - Action Interface]
[10:15:17.377] In a timer event called from:
[10:15:17.379] data/actions/scripts/test.lua:onUse
[10:15:17.380] Description:
[10:15:17.381] attempt to index a nil value
[10:15:17.382] stack traceback:
[10:15:17.383] [C]: in function 'doSendMagicEffect'
[10:15:17.385] data/actions/scripts/test.lua:13: in function <data/actions/scri
pts/test.lua:12>
 
Status
Not open for further replies.
Back
Top