StopObject: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 25: | Line 25: | ||
==Example== | ==Example== | ||
<!-- Explain what the example is in a single sentance --> | <!-- Explain what the example is in a single sentance --> | ||
This | This will allow you to toggle the random movement of a staircase object model and stop it immediately with the stopObject command. | ||
<!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized --> | <!-- Add the code below, an emphasis should be on making it clear, not optimized. You could provide two versions if you wish, one clear and well commented, the other optimized --> | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
--This | addCommandHandler ( "toggleobjectmove", "objectMoveControl" ) | ||
function objectMoveControl ( player, commandName, state ) | |||
-- | --This command handler activate on text "toggleobjectmove" in | ||
--the console. It also asks that the player define the varible | |||
--'state' after the commandname | |||
if state == "on" then | |||
outputChatBox ( "Moving object randomly" ) | |||
mytimer = setTimer ( "randomObjectMovement", 2250, 0 ) | |||
--if player type "on" for state, then we turn on the timer that | |||
--triggers the function randomObjectMovement. It triggers the | |||
--function every 2 1/4 seconds for an infinite amount of times, | |||
--since times is defined as 0. | |||
elseif state == "off" then | |||
outputChatBox ( "Stopping object movement" ) | |||
killTimer ( mytimer ) | |||
stopObject ( myobject ) | |||
--If player typed "off" for state, then stop the object movement | |||
--immediately and kill the random object movement timer, which | |||
--triggers the randomObjectMovement function | |||
else | |||
outputChatBox ( "must define object state as 'on' or 'off'" ) | |||
--If player said something besides "on" or "off" for state, do nothing | |||
end | |||
end | |||
function randomObjectMovement () | |||
curx, cury, curz = getElementPosition ( myobject ) | |||
--Get the xyz position of myobject | |||
xmath = randInt(1,2) | |||
if xmath == 1 then | |||
newx = curx + randInt(1,3) | |||
else | |||
newx = curx - randInt(1,3) | |||
end | |||
ymath = randInt(1,2) | |||
if ymath == 1 then | |||
newy = cury + randInt(1,3) | |||
else | |||
newy = cury - randInt(1,3) | |||
end | |||
zmath = randInt(1,2) | |||
if zmath == 1 then | |||
newz = curz + randInt(1,3) | |||
else | |||
newz = curz - randInt(1,3) | |||
end | |||
--Decide randomly whether to add or subtract from the coordinates, | |||
--and randomly add or subtract 1, 2, or 3 | |||
moveObject ( myobject, 2000, newx, newy, newz ) | |||
--Tell the object to move to our new coordinates in 2 seconds time | |||
end | |||
</syntaxhighlight> | </syntaxhighlight> | ||
==See Also== | ==See Also== | ||
<!-- Change FunctionArea to the area that this function is in on the main function list page, e.g. Server, Player, Vehicle etc --> | <!-- Change FunctionArea to the area that this function is in on the main function list page, e.g. Server, Player, Vehicle etc --> | ||
{{ | {{Object_functions}} | ||
[[Category:Incomplete]] -- leave this unless you complete the function | [[Category:Incomplete]] -- leave this unless you complete the function |
Revision as of 01:50, 12 April 2007
This fake function is for use with blah & blah and does blahblahblabhalbhl
Syntax
bool stopObject ( element theelement )
Required Arguments
- argumentName: description
Optional Arguments
NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.
- argumentName2: description
- argumentName3: description
Returns
Returns true if blah, false otherwise.
Example
This will allow you to toggle the random movement of a staircase object model and stop it immediately with the stopObject command.
addCommandHandler ( "toggleobjectmove", "objectMoveControl" ) function objectMoveControl ( player, commandName, state ) --This command handler activate on text "toggleobjectmove" in --the console. It also asks that the player define the varible --'state' after the commandname if state == "on" then outputChatBox ( "Moving object randomly" ) mytimer = setTimer ( "randomObjectMovement", 2250, 0 ) --if player type "on" for state, then we turn on the timer that --triggers the function randomObjectMovement. It triggers the --function every 2 1/4 seconds for an infinite amount of times, --since times is defined as 0. elseif state == "off" then outputChatBox ( "Stopping object movement" ) killTimer ( mytimer ) stopObject ( myobject ) --If player typed "off" for state, then stop the object movement --immediately and kill the random object movement timer, which --triggers the randomObjectMovement function else outputChatBox ( "must define object state as 'on' or 'off'" ) --If player said something besides "on" or "off" for state, do nothing end end function randomObjectMovement () curx, cury, curz = getElementPosition ( myobject ) --Get the xyz position of myobject xmath = randInt(1,2) if xmath == 1 then newx = curx + randInt(1,3) else newx = curx - randInt(1,3) end ymath = randInt(1,2) if ymath == 1 then newy = cury + randInt(1,3) else newy = cury - randInt(1,3) end zmath = randInt(1,2) if zmath == 1 then newz = curz + randInt(1,3) else newz = curz - randInt(1,3) end --Decide randomly whether to add or subtract from the coordinates, --and randomly add or subtract 1, 2, or 3 moveObject ( myobject, 2000, newx, newy, newz ) --Tell the object to move to our new coordinates in 2 seconds time end
See Also
-- leave this unless you complete the function