xXMADEXx Posted November 30, 2012 Share Posted November 30, 2012 Hey guys, im trying to make my command linked to the staff team, but it will not work. Please help. -- server -- Spawns a Leviathan and makes it a magnet helicopter function magnet_func ( player ) local team = getElementTeam ( player) if ( team == "staff" ) then local x, y, z = getElementPosition ( player ) local veh = createVehicle ( 520, x + 5, y, z ) setVehicleAsMagnetHelicopter ( veh ) end end addCommandHandler ( "magnet", magnet_func ) -- Attaches a magnet to it if its a Leviathan function setVehicleAsMagnetHelicopter ( veh, player ) if getElementModel ( veh ) == 520 then local team = getElementTeam ( player) if ( team == "staff" ) then local x, y, z = getElementPosition ( veh ) local magnet = createObject ( 1301, x, y, z-1.5) --1301 attachElements ( magnet, veh, 0, 0, -1.8 ) setElementData ( veh, "magpos", -1.5 ) setElementData ( veh, "magnet", magnet ) setElementData ( veh, "magnetic", true ) setElementData ( veh, "hasmagnetactivated", false ) end end end -- When the helicopter is destroyed, kill the magnet function destroyMagnet ( veh ) if veh then source = veh end if getElementData ( source, "magnetic" ) then local magnet = getElementData ( veh, "magnet" ) destroyElement ( magnet ) end end addEventHandler ( "onVehicleExplode", getRootElement(), destroyMagnet ) -- Moves the magnet up/down function magnetUp ( player ) local veh = getPedOccupiedVehicle ( player ) if veh then local magpos = getElementData ( veh, "magpos" ) if magpos < -1.5 then local magnet = getElementData ( veh, "magnet" ) detachElements ( magnet ) local magpos = magpos+0.1 attachElements ( magnet, veh, 0, 0, magpos, 0, 0, 0 ) setElementData ( veh, "magpos", magpos ) end end end function magnetDown ( player ) local veh = getPedOccupiedVehicle ( player ) if veh then local magpos = getElementData ( veh, "magpos" ) if magpos > -15 then local magnet = getElementData ( veh, "magnet" ) detachElements ( magnet ) local magpos = magpos-0.1 attachElements ( magnet, veh, 0, 0, magpos, 0, 0, 0 ) setElementData ( veh, "magpos", magpos ) end end end -- (un)Bind the keys function bindTrigger () if not isKeyBound ( source, "lctrl", "down", magnetVehicleCheck ) then bindKey ( source, "lctrl", "down", magnetVehicleCheck ) bindKey ( source, "rctrl", "down", magnetVehicleCheck ) bindKey ( source, "pgdn", "down", magnetUp ) bindKey ( source, "pgup", "down", magnetDown ) end end function unbindTrigger () if isKeyBound ( source, "lctrl", "down", magnetVehicleCheck ) then unbindKey ( source, "lctrl", "down", magnetVehicleCheck ) unbindKey ( source, "rctrl", "down", magnetVehicleCheck ) unbindKey ( source, "pgup", "down", magnetUp ) unbindKey ( source, "pgdn", "down", magnetDown ) end end addEventHandler ( "onPlayerVehicleEnter", getRootElement(), bindTrigger ) addEventHandler ( "onPlayerVehicleExit", getRootElement(), unbindTrigger ) addEventHandler ( "onPlayerWasted", getRootElement(), unbindTrigger ) -- When Ctrl is pressed, attach / detatch the helicopter function magnetVehicleCheck ( player ) local veh = getPedOccupiedVehicle ( player ) if veh then if getElementData ( veh, "magnetic" ) then if getElementData ( veh, "hasmagnetactivated" ) then setElementData ( veh, "hasmagnetactivated", false ) detachElements ( getElementData ( veh, "magneticVeh" ) ) else local magnet = getElementData ( veh, "magnet" ) local x, y, z = getElementPosition ( magnet ) local magpos = getElementData ( veh, "magpos" ) local marker = createColSphere ( x , y , z, 2 ) local vehs = getElementsWithinColShape ( marker, "vehicle" ) destroyElement ( marker ) grabveh = false for key, vehitem in ipairs(vehs) do if vehitem ~= veh then local grabveh = vehitem attachElements ( grabveh, magnet, 0, 0, -1, 0, 0, getVehicleRotation(grabveh) ) setElementData ( veh, "hasmagnetactivated", true ) setElementData ( veh, "magneticVeh", grabveh ) break end end end end end end Link to comment
Castillo Posted December 1, 2012 Share Posted December 1, 2012 getElementTeam That function does not exist, you must use: getPlayerTeam getTeamName Link to comment
AhmadQTR Posted December 1, 2012 Share Posted December 1, 2012 setVehicleAsMagnetHelicopter This function does not exist. Link to comment
Guest Guest4401 Posted December 1, 2012 Share Posted December 1, 2012 setVehicleAsMagnetHelicopter This function does not exist. He has made it, see line 14. Link to comment
AhmadQTR Posted December 1, 2012 Share Posted December 1, 2012 setVehicleAsMagnetHelicopter This function does not exist. He has made it, see line 14. Oh didn't notice it lol Link to comment
deltamta Posted December 5, 2012 Share Posted December 5, 2012 If your team named 'Staff' has an ACL group then its more safe to use something like : if ( isObjectInACLGroup( "user." .. getAccountName( getPlayerAccount( player ) ), aclGetGroup( "Staff" ) ) ) then Link to comment
Anderl Posted December 5, 2012 Share Posted December 5, 2012 Why would it be "more safe"? Checking an object in ACL group is one thing, checking whether the player is in a TEAM is other. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now