SetTrainPosition: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
m (fix typo)
m (add note)
Line 16: Line 16:


==Example==
==Example==
<section name="Example 1" class="server" show="true">
<section name="OOP Example 1" class="server" show="true">
This example adds a command called "/settrainpos", allowing you to set the position of the train.
<syntaxhighlight lang="lua">local function setMyPosition(player, _, position)
<syntaxhighlight lang="lua">local function setMyPosition(player, _, position)
local veh = player.vehicle
local veh = player.vehicle

Revision as of 16:07, 2 January 2016

Sets the position the train is currently on the track

Syntax

bool setTrainPosition ( vehicle train, float position )

OOP Syntax Help! I don't understand this!

Method: vehicle:setTrainPosition(...)
Variable: .trainPosition
Counterpart: getTrainPosition


Required Arguments

  • train: the train of which to set the track
  • position: the position along the track

Returns

Returns true if the train position was set, false otherwise.

Example

Click to collapse [-]
OOP Example 1

This example adds a command called "/settrainpos", allowing you to set the position of the train.

local function setMyPosition(player, _, position)
	local veh = player.vehicle
	if not veh then
		player:outputChat("You are not in a vehicle!")
		return
	end

	if veh.vehicleType ~= "Train" then
		player:outputChat("You are not in a train!")
		return
	end

	-- convert position to a number
	position = tonumber(position)

	-- if position cannot be converted to a number
	if not position then
		player:outputChat("Syntax: /settrainpos <position>")
		player:outputChat("position: number between 0 and 1")
		return
	end

	if (position < 0) or (position > 1) then
		player:outputChat("position must be between 0 and 1!")
	end

	veh.position = position
end
addCommandHandler("settrainpos", setMyPosition)

See Also