IterElements

From Multi Theft Auto: Wiki

Jump to: navigation, search

This function is useful for for loops. You don't have to type ipairs( getElementsByType( "player" ) ) but simply iterElements( "player" ). It's very useful if you have many for loops in your code. doForAllElements has to iterate through elements every time you call 1 function per call but this iterates through elements and what you do to/with the elements is up to you.

Syntax

iterator iterElements( string elementType )

Required Arguments

  • elementType: Type of the elements that you want to iterate through.

Code

function iterElements( elementType )
	local i = 0;
	local tab = getElementsByType( elementType );
	return function( )
		i = i + 1;
		if tab[ i ] then
			return i, tab[ i ];
		end
	end
end


Example

This example will iterate through all players and vehicles. It will heal the players, give them $1000, send them a message informing them about the action and fix all vehicles when the resource starts.

addEventHandler( "onResourceStart", getResourceRootElement( ),
    function( )
        for _, plr in iterElements( "player" ) do
            setElementHealth( plr, 100 );
            givePlayerMoney( plr, 1000 );
            outputChatBox( "You've just been healed and given $1000!", plr );
        end
 
        for _, veh in iterElements( "vehicle" ) do
            fixVehicle( veh );
        end
    end
)

See Also

  • callClientFunction » This function allows you to call any clientside function from the server's side.
  • callServerFunction » This function allows you to call any server-side function from the client's side.
  • Check » This function checks if it's arguments are of the right types and calls the error-function if one isn't.
  • doForAllElements » This function can be used to execute a specified function for all elements of a specified type.
  • iterElements » Returns an iterator for your for loops saving time typing ipairs( getElementsByType( type ) ), instead you type: iterElements( type ).
  • findRotation » Takes two points and returns the direction from point A to point B.
  • FormatDate » Formats a date on the basis of a format string and returns it.
  • getAge » This function calculates the age of a birthday.
  • IfElse » Returns one of two values based on a boolean expression.
  • isLeapYear » Checks if the given year is a leap year.
  • math.round » Rounds a number whereas the number of decimals to keep and the method may be set.
  • setVehicleGravityPoint » This clientside function sets a vehicle's gravity in the direction of a 3 dimensional coordinate with the strength specified.
  • string.explode » This function splits a string at a given separator pattern and returns a table with the pieces.
  • table.copy » This function copies a whole table and all the tables in that table.
  • table.map » This function goes through a table and replaces every field with the return of the passed function, where the field's value is passed as first argument and optionally more arguments.
  • table.size » Finds the absolute size of a table.
  • var_dump »This function outputs information about one or more variables using outputConsole().
  • RGBToHex » This function returns a string representing the color in hexadecimal.
  • onVehicleWeaponFire » This code implements an event that is triggered when a player in a vehicle fires a vehicles weapon.
  • toHex » This function converts a decimal number to a hexadecimal number, as a fix to be used clientside.
  • getElementSpeed » This function allows you to get element speed in kph or mph units.
  • setElementSpeed » This function allows you to set moving element speed in kph or mph units.
  • centerWindow » This function center the window in any resolution.
Personal tools