DgsGetPosition: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(DGS (OOP Syntax)/(Template Organization) Mission)
Line 6: Line 6:
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
float, float dgsGetPosition ( element dgsElement, bool relative [, bool includeParent = false ] )
float, float dgsGetPosition ( element dgsElement, bool relative [, bool includeParent = false ] )
</syntaxhighlight>  
</syntaxhighlight>
{{DGS/OOP|The variable is a conjunction: '''position.x''' (get X position) and '''position.y''' (get Y position)|DGSElement:'''getPosition'''||position|dgsSetPosition}}


===Required Arguments===  
===Required Arguments===  
Line 45: Line 46:


==See Also==
==See Also==
{{DGSFUNCTIONS}}
 
===<span style="color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;">General Functions</span>===
{{DGS General Functions}}
 
===<span style="color:#eb3f00;text-shadow:0.05em 0.05em 0.2em #00000099;">General Events</span>===
{{DGS Events/General}}

Revision as of 16:48, 16 April 2021

This function allows retrieval of a DGS element's current position, relative to its parent.

Syntax

float, float dgsGetPosition ( element dgsElement, bool relative [, bool includeParent = false ] )

DGS OOP Syntax Help! I don't understand this!

Required Arguments

  • guiElement: The dgs element of which you wish to retrieve the position.
  • relative: This is whether sizes and positioning are relative. If this is true, then all x,y,width,height floats must be between 0 and 1, representing sizes relative to the parent.

Optional Arguments

  • includeParent A boolean representing whether the position is relative to the screen rather than the parent.

Returns

Returns floats representing the x and y position of the element, or false if the position could not be retrieved.

Example

This example checks which corner a dgs element exists in

DGS = exports.dgs

function positionCheck ( dgsElement )
	local x,y = DGS:dgsGetPosition ( dgsElement, true ) --get the position
	local position --define the position
	if ( x == 0.5 ) and ( y == 0.5 ) then --if its bang in the middle
		position = "middle" --set position to middle
	elseif ( x > 0.5 ) and ( y > 0.5 ) then --if its in the right bottom
		position = "right-bottom" 
	elseif ( x < 0.5 ) and ( y < 0.5 ) then --if its in the left top
		position = "left-top"
	elseif ( x < 0.5 ) and ( y > 0.5 ) then --if its in the left bottom
		position = "left-bottom"
	elseif ( x > 0.5 ) and ( y < 0.5 ) then --if its in the right top
		position = "right-top" 
	else --if it couldnt be retrieved
		position = "unknown"
	end
	--announce this into the chatbox
	outputChatBox ( "The dgs element's position is "..position.."!" )
end

See Also

General Functions

General Events