OnElementStartSync: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Fixed code example header, added additional example)
Line 14: Line 14:


==Example==  
==Example==  
When an element receives a new syncer, this example matches the model of the element to the player.
<section name="Server" class="server" show="true">
This example matches the model of the element to the player, when an element receives a new syncer.
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
function elementStartSync( newSyncer )
function elementStartSync( newSyncer )
Line 29: Line 30:
addEventHandler ('onElementStartSync', root, elementStartSync)
addEventHandler ('onElementStartSync', root, elementStartSync)
</syntaxhighlight>
</syntaxhighlight>
This example will prevent vehicles from entering an area protected by a colshape, by automatically destroying them upon enter.
<syntaxhighlight lang="lua">
local myColShape = createColCuboid(1000, -800, 900, 1000, 1000, 1000)
function checkSyncOfVehicles()
if isElement(source) and getElementType (source) == "vehicle" and isElementWithinColShape(source, myColShape) then
destroyElement (source)
end
end
addEventHandler ("onElementStartSync", root, checkSyncOfVehicles)
</syntaxhighlight>
</section>


{{See also/Server event|Element events}}
{{See also/Server event|Element events}}

Revision as of 14:04, 22 September 2018

This event is triggered when an element becomes synced by a player.

Parameters

player newSyncer
  • newSyncer: a player element representing the player who is now syncing the element.

Source

The source of this event is the element that got synced by a player.

Example

Click to collapse [-]
Server

This example matches the model of the element to the player, when an element receives a new syncer.

function elementStartSync( newSyncer )
    local strElementType = getElementType( source )
    local playerVehicle = getPedOccupiedVehicle( newSyncer )
    if ( strElementType == 'vehicle' ) then
        if ( not playerVehicle ) then return false end
        
        setElementModel( source, getElementModel(playerVehicle) )
    elseif ( strElementType == 'ped' ) then
        setElementModel( source, getElementModel(newSyncer) )
    end
end
addEventHandler ('onElementStartSync', root, elementStartSync)

This example will prevent vehicles from entering an area protected by a colshape, by automatically destroying them upon enter.

local myColShape = createColCuboid(1000, -800, 900, 1000, 1000, 1000)


function checkSyncOfVehicles()
	if isElement(source) and getElementType (source) == "vehicle" and isElementWithinColShape(source, myColShape) then
		destroyElement (source)
	end
end
addEventHandler ("onElementStartSync", root, checkSyncOfVehicles)

See Also

Element events


Event functions