<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/wiki/AR/setElementPosition?action=history&amp;feed=atom</id>
	<title>AR/setElementPosition - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/wiki/AR/setElementPosition?action=history&amp;feed=atom"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=AR/setElementPosition&amp;action=history"/>
	<updated>2026-05-11T11:52:52Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=AR/setElementPosition&amp;diff=47398&amp;oldid=prev</id>
		<title>Jaber at 16:20, 17 April 2016</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=AR/setElementPosition&amp;diff=47398&amp;oldid=prev"/>
		<updated>2016-04-17T16:20:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 16:20, 17 April 2016&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l111&quot;&gt;Line 111:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 111:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br/&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==See Also==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==See Also==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{Element functions}}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{{&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;AR/&lt;/ins&gt;Element functions}}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki-wiki_dev_:diff::1.12:old-47397:rev-47398 --&gt;
&lt;/table&gt;</summary>
		<author><name>Jaber</name></author>
	</entry>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=AR/setElementPosition&amp;diff=47397&amp;oldid=prev</id>
		<title>Jaber: Created page with &quot;__NOTOC__ {{Server client function}} هذه الوظيفة تستخدم لنقل الالمنت او الشيئ لاحداثيات محددة.  &lt;div style=&quot;background: #FF7070...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=AR/setElementPosition&amp;diff=47397&amp;oldid=prev"/>
		<updated>2016-04-17T16:18:45Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;__NOTOC__ {{Server client function}} هذه الوظيفة تستخدم لنقل الالمنت او الشيئ لاحداثيات محددة.  &amp;lt;div style=&amp;quot;background: #FF7070...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;__NOTOC__&lt;br /&gt;
{{Server client function}}&lt;br /&gt;
هذه الوظيفة تستخدم لنقل الالمنت او الشيئ لاحداثيات محددة.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;background: #FF7070; border: 3px solid #FF0000;&amp;quot;&amp;gt;&lt;br /&gt;
'''Attention:''' Do not use this function to spawn a [[player]]. It will cause problems with other functions like [[warpPedIntoVehicle]]. &amp;lt;br&amp;gt;&lt;br /&gt;
Use [[spawnPlayer]] instead.&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Syntax== &lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
bool setElementPosition ( element theElement, float x, float y, float z [, bool warp = true ] )  &lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt; &lt;br /&gt;
{{OOP||[[element]]:setPosition|position|getElementPosition}}&lt;br /&gt;
&lt;br /&gt;
===شرح الارقمنتات=== &lt;br /&gt;
*'''theElement:''' الالمنت الذي تريد جلب احداثيات.&lt;br /&gt;
*'''x:''' الاحداثيات x.&lt;br /&gt;
*'''y:''' الاحداثيات y.&lt;br /&gt;
*'''z:''' الاحداثيات z.&lt;br /&gt;
&lt;br /&gt;
===Optional Arguments===&lt;br /&gt;
*'''warp:''' ان كنت تريد نقل الاعب.&lt;br /&gt;
&lt;br /&gt;
===Returns===&lt;br /&gt;
Returns ''true'' if the function was successful, ''false'' otherwise.&lt;br /&gt;
&lt;br /&gt;
==Example== &lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 1&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
هذه الوظيفة عند كتابة امر باف8 تقوم بنقل الاعب.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function consoleSetPlayerPosition ( source, commandName, posX, posY, posZ )&lt;br /&gt;
	setElementPosition ( source, posX, posY, posZ )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;setpos&amp;quot;, consoleSetPlayerPosition  )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 2&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function consoleSetPlayerPosition ( commandName, posX, posY, posZ )&lt;br /&gt;
	setElementPosition ( localPlayer, posX, posY, posZ )&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;setpos&amp;quot;, consoleSetPlayerPosition  )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&amp;lt;section name=&amp;quot;Example 3&amp;quot; class=&amp;quot;server&amp;quot; show=&amp;quot;false&amp;quot;&amp;gt;&lt;br /&gt;
This example enables a player to type /warpto &amp;lt;playername&amp;gt; to warp to them. If the player being warped to is in a vehicle with a free passenger seat, it will warp into the vehicle.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
function consoleWarpTo ( sourcePlayer, commandName, player2nick )&lt;br /&gt;
	-- Make sure required parameters are set&lt;br /&gt;
	if ( not sourcePlayer or not player2nick ) then return end&lt;br /&gt;
	-- Setup the variables we will be using for teleportation&lt;br /&gt;
	local x, y, z, r, d = 0, 0, 0, 0, 2.5&lt;br /&gt;
	-- Grab the element identifier of the player we are trying to warp to&lt;br /&gt;
	local player2 = getPlayerFromNick ( player2nick )&lt;br /&gt;
	-- Make sure it exists!&lt;br /&gt;
	if ( player2 ) then&lt;br /&gt;
		-- Is the player we're warping to in a vehicle?&lt;br /&gt;
		if ( isPlayerInVehicle ( player2 ) ) then&lt;br /&gt;
			-- Indeed they are, let's get the vehicle information such as the vehicle element itself, and the seats it's got.&lt;br /&gt;
			local player2vehicle = getPlayerOccupiedVehicle ( player2 )&lt;br /&gt;
			local numseats = getVehicleMaxPassengers ( player2vehicle )&lt;br /&gt;
			local i = 0&lt;br /&gt;
			-- Loop over the seats to see if there's a free one&lt;br /&gt;
			while ( i &amp;lt; numseats ) do&lt;br /&gt;
				if ( getVehicleOccupant ( player2vehicle, i ) ) then&lt;br /&gt;
					-- This seat isn't free, go ahead and check the next one&lt;br /&gt;
					i = i + 1&lt;br /&gt;
				else&lt;br /&gt;
					-- This seat is free, get out of the loop&lt;br /&gt;
					break&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
			-- Check if 'i' is lower than the number of seats. If it is, it means it's the number of a free seat&lt;br /&gt;
			if ( i &amp;lt; numseats ) then&lt;br /&gt;
				-- Teleport the player into the seat&lt;br /&gt;
				warpPlayerIntoVehicle ( sourcePlayer, player2vehicle, i )&lt;br /&gt;
			else&lt;br /&gt;
				-- There are no free seats, tell the player that.&lt;br /&gt;
				outputChatBox ( &amp;quot;Sorry, the player's vehicle is full (&amp;quot; .. getVehicleName ( player2vehicle ) .. &amp;quot; &amp;quot; .. i .. &amp;quot;/&amp;quot; .. numseats .. &amp;quot;)&amp;quot;, sourcePlayer )&lt;br /&gt;
			end&lt;br /&gt;
		else&lt;br /&gt;
			-- The player isn't in a vehicle, let's get the player's position and warp to them.&lt;br /&gt;
			x, y, z = getElementPosition ( player2 )&lt;br /&gt;
			r = getPlayerRotation ( player2 )&lt;br /&gt;
			-- Make sure we get interior data, they might be inside one!&lt;br /&gt;
			interior = getElementInterior ( player2 )&lt;br /&gt;
			dimension = getElementDimension ( player2 )&lt;br /&gt;
			-- Do some funky math to make sure that we dont teleport inside of them (get us both stuck inside each other)&lt;br /&gt;
			x = x - ( ( math.cos ( math.rad ( r + 90 ) ) ) * d )&lt;br /&gt;
			y = y - ( ( math.sin ( math.rad ( r + 90 ) ) ) * d )&lt;br /&gt;
			-- Set a few timers for setting interiors, dimensions and positions&lt;br /&gt;
			setTimer ( setElementInterior, 800, 1, sourcePlayer, interior )&lt;br /&gt;
			setTimer ( setElementDimension, 900, 1, sourcePlayer, dimension )&lt;br /&gt;
			setTimer ( setElementPosition, 1000, 1, sourcePlayer, x, y, z )&lt;br /&gt;
			setTimer ( setPlayerRotation, 1000, 1, sourcePlayer, r )&lt;br /&gt;
			-- Fade the camera to make it look nicer&lt;br /&gt;
			fadeCamera ( sourcePlayer, false, 1, 0, 0, 0 )&lt;br /&gt;
			-- Fade it back once it's all complete!&lt;br /&gt;
			setTimer ( fadeCamera, 1000, 1, sourcePlayer, true, 1 )&lt;br /&gt;
		end&lt;br /&gt;
	else&lt;br /&gt;
		-- No player by the specified name was found, tell the warper this.&lt;br /&gt;
		outputChatBox ( &amp;quot;No such player.&amp;quot;, sourcePlayer )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
addCommandHandler ( &amp;quot;warpto&amp;quot;, consoleWarpTo )&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Element functions}}&lt;/div&gt;</summary>
		<author><name>Jaber</name></author>
	</entry>
</feed>