Infra_

Untitled

Apr 15th, 2020
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.17 KB | None | 0 0
  1. --  Example Usage:
  2. --  local reverseControlsMarker = createMarker(X, Y, Z, TYPE, SIZE, R, G, B, A)
  3. --  local normalizeControlsMarker = createMarker(X, Y, Z, TYPE, SIZE, R, G, B, A)
  4. --  addEventHandler("onClientMarkerHit", root, function(playerid)
  5. --      if playerid ~= localPlayer then return end
  6. --      local vehicleid = getPedOccupiedVehicle(playerid)
  7. --      if not vehicleid then return end
  8. --
  9. --      if source == reverseControlsMarker then
  10. --          toggleReverseControls(true)
  11. --      elseif source == normalizeControlsMarker then
  12. --          toggleReverseControls(false)
  13. --      end
  14. -- end)
  15.  
  16.  
  17. addEventHandler("onClientResourceStop", resourceRoot, function()
  18.     toggleControl("accelerate", true)
  19.     toggleControl("forwards", true)
  20.     toggleControl("brake_reverse", true)
  21.     toggleControl("vehicle_left", true)
  22.     toggleControl("vehicle_right", true)
  23.  
  24.     unbindKey("accelerate", "both", controlManagement)
  25.     unbindKey("brake_reverse", "both", controlManagement)
  26.     unbindKey("vehicle_left", "both", controlManagement)
  27.     unbindKey("vehicle_right", "both", controlManagement)
  28. end)
  29.  
  30. local isReverseControlsEnabled = false
  31. function toggleReverseControls(toggle)
  32.     if isReverseControlsEnabled == toggle then return end
  33.     toggleControl("accelerate", not toggle)
  34.     toggleControl("forwards", not toggle)
  35.     toggleControl("brake_reverse", not toggle)
  36.     toggleControl("vehicle_left", not toggle)
  37.     toggleControl("vehicle_right", not toggle)
  38.     isReverseControlsEnabled = toggle
  39.  
  40.     setControlState("accelerate", getControlState("brake_reverse"))
  41.     setControlState("brake_reverse", getControlState("accelerate"))
  42.     setControlState("vehicle_left", getControlState("vehicle_right"))
  43.     setControlState("vehicle_right", getControlState("vehicle_left"))
  44. end
  45.  
  46. local converterToBoolean = {["down"]=true, ["up"]=false}
  47. local controlManagement = function(key, state, replacement)
  48.     if isReverseControlsEnabled then
  49.         setControlState(replacement, converterToBoolean[state])
  50.     end
  51. end
  52.  
  53. bindKey("accelerate", "both", controlManagement, "brake_reverse")
  54. bindKey("brake_reverse", "both", controlManagement, "accelerate")
  55. bindKey("vehicle_left", "both", controlManagement, "vehicle_right")
  56. bindKey("vehicle_right", "both", controlManagement, "vehicle_left")
Advertisement
Add Comment
Please, Sign In to add comment