<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cecer</id>
	<title>Multi Theft Auto: Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.multitheftauto.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Cecer"/>
	<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/wiki/Special:Contributions/Cecer"/>
	<updated>2026-04-30T11:33:31Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.39.3</generator>
	<entry>
		<id>https://wiki.multitheftauto.com/index.php?title=SmoothMoveCamera&amp;diff=35511</id>
		<title>SmoothMoveCamera</title>
		<link rel="alternate" type="text/html" href="https://wiki.multitheftauto.com/index.php?title=SmoothMoveCamera&amp;diff=35511"/>
		<updated>2013-04-21T23:08:25Z</updated>

		<summary type="html">&lt;p&gt;Cecer: Typo correction&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Useful Function}}&lt;br /&gt;
&amp;lt;lowercasetitle/&amp;gt;&lt;br /&gt;
__NOTOC__&lt;br /&gt;
&lt;br /&gt;
This function allows you to create a cinematic-camera-flight, which moves from a specific position to a specific position.&lt;br /&gt;
&lt;br /&gt;
==Syntax==&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;bool smoothMoveCamera ( float x1, float y1, float z1, float x1t, float y1t, float z1t, float x2, float y2, float z2, float x2t, float y2t, float z2t, int time )&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* '''x1, y1, z1''': The camera's start position.&lt;br /&gt;
* '''x1t, y1t, z1t''': The camera's start look at.&lt;br /&gt;
* '''x2, y2, z2''': The camera's end position.&lt;br /&gt;
* '''x2t, y2t, z2t''': The camera's end look at.&lt;br /&gt;
* '''time''': The speed of the camera's movement.&lt;br /&gt;
&lt;br /&gt;
==Code==&lt;br /&gt;
&amp;lt;section name=&amp;quot;Clientside Script&amp;quot; class=&amp;quot;client&amp;quot; show=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;lua&amp;quot;&amp;gt;&lt;br /&gt;
local sm = {}&lt;br /&gt;
sm.moov = 0&lt;br /&gt;
sm.object1, sm.object2 = nil, nil&lt;br /&gt;
&lt;br /&gt;
local function removeCamHandler ()&lt;br /&gt;
	if(sm.moov == 1) then&lt;br /&gt;
		sm.moov = 0&lt;br /&gt;
		removeEventHandler ( &amp;quot;onClientPreRender&amp;quot;, getRootElement(), camRender )&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local function camRender ()&lt;br /&gt;
	local x1, y1, z1 = getElementPosition ( sm.object1 )&lt;br /&gt;
	local x2, y2, z2 = getElementPosition ( sm.object2 )&lt;br /&gt;
	setCameraMatrix ( x1, y1, z1, x2, y2, z2 )&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function smoothMoveCamera ( x1, y1, z1, x1t, y1t, z1t, x2, y2, z2, x2t, y2t, z2t, time )&lt;br /&gt;
	if(sm.moov == 1) then return false end&lt;br /&gt;
	sm.object1 = createObject ( 1337, x1, y1, z1 )&lt;br /&gt;
	sm.object2 = createObject ( 1337, x1t, y1t, z1t )&lt;br /&gt;
	setElementAlpha ( sm.object1, 0 )&lt;br /&gt;
	setElementAlpha ( sm.object2, 0 )&lt;br /&gt;
	setObjectScale(sm.object1, 0.01)&lt;br /&gt;
	setObjectScale(sm.object2, 0.01)&lt;br /&gt;
	moveObject ( sm.object1, time, x2, y2, z2, 0, 0, 0, &amp;quot;InOutQuad&amp;quot; )&lt;br /&gt;
	moveObject ( sm.object2, time, x2t, y2t, z2t, 0, 0, 0, &amp;quot;InOutQuad&amp;quot; )&lt;br /&gt;
	&lt;br /&gt;
	addEventHandler ( &amp;quot;onClientPreRender&amp;quot;, getRootElement(), camRender )&lt;br /&gt;
	sm.moov = 1&lt;br /&gt;
	setTimer ( removeCamHandler, time, 1 )&lt;br /&gt;
	setTimer ( destroyElement, time, 1, sm.object1 )&lt;br /&gt;
	setTimer ( destroyElement, time, 1, sm.object2 )&lt;br /&gt;
	return true&lt;br /&gt;
end&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;/section&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Author: Noneatme(Me)&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
{{Useful_Functions}}&lt;/div&gt;</summary>
		<author><name>Cecer</name></author>
	</entry>
</feed>