GuiMoveElement
Jump to navigation
Jump to search
This function moves the gui_element by using moveObject
Syntax
guiMoveElement ( element guiElement, int time, float targetx, float targety [, string strEasingType ] )
Required Arguments
- guiElement: the GUI element that will be moved.
- time: the time in milliseconds the GUI element will arrive at the destination.
- targetx: the X value of the target position
- targety: the Y value of the target position
Optional Arguments
NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.
- strEasingType: the easing function to use for the interpolation (default is "Linear")
Code
Click to collapse [-]
Clientfunction guiMoveElement ( element, speed, x, y, type_ ) local type_ = type_ or "Linear" if isElement ( element ) and tonumber ( speed ) and tonumber ( x ) and tonumber ( y ) and tostring ( type_ ) then if isElement ( getElementData ( element, "object" ) ) then local object = getElementData ( element, "object" ) moveObject ( object, speed, x, y, -999, 0, 0, 0, type_ ) local destroy = function ( old_object, old_gui ) if isElement ( old_object ) then destroyElement ( old_object ) end for i, gui_elements in ipairs ( table_ ) do if gui_elements[1] == old_gui then table.remove ( table_, i ) end end end setTimer ( destroy, speed, 1, object, gui_element ) else local p = { guiGetPosition ( element, false ) } local object = createObject ( 902, p[1], p[2], -999 ) setElementData ( element, "object", object ) setElementAlpha ( object, 0 ) table.insert ( table_, (#table_)+1, { element, object } ) guiMoveElement ( element, speed, x, y, type_ ) end end end function r () for i, gui_element in ipairs ( table_ ) do if isElement (gui_element[1]) and isElement (gui_element[2]) then local x, y = getElementPosition ( gui_element[2] ) guiSetPosition ( gui_element[1], x, y, false ) end end end addEventHandler ( "onClientRender", root, r )
Author: killerProject