Noneatme

Untitled

Nov 22nd, 2012
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.12 KB | None | 0 0
  1. ---------------------------------
  2. ------- MADE BY NONEATME --------
  3. ---------------------------------
  4.  
  5. -- Variablen
  6. local cFunc = {}
  7. local cSetting = {}
  8.  
  9.  
  10. -- FUNCTIONS --
  11.  
  12. cSetting["allowed"] = { -- Die Modelle die Erlaubt sind
  13.     [606] = true, -- Trailer #1
  14.                   -- Weiter eintragen
  15. }
  16.  
  17. cFunc["checkTrailer"] = function() -- Die Check Trailer Funktion
  18.     if(isPedInVehicle(localPlayer) == false) then -- Wenn der Client nicht in einem Auto sitzt
  19.         local x, y, z = getElementPosition(localPlayer) -- Erhalte die Position
  20.         local vehicle, dis = getNearestElement(x, y, z, "vehicle") -- Bekomme das naheste Fahrzeug und die Entfernung
  21.         if(vehicle) then -- Wenn ueberhaupt eins exestiert
  22.             if(dis < 10) and (cSetting["allowed"][getElementModel(vehicle)]) then -- Wenn es weniger als 10 Meter entfernt ist und ein zulaessiges Fahrzeug ist
  23.                 triggerServerEvent("doTrailerEinsteigen", localPlayer, vehicle) -- Triggere das Event
  24.             end -- Block zuende
  25.         end -- Block zuende
  26.     end -- Block zuende
  27. end -- Funktion zuende
  28.  
  29. bindKey("enter_exit", "down", cFunc["checkTrailer"]) -- Binde die Funktion auf die Einsteigen Taste
  30.  
  31.  
  32. function getNearestElement(x, y, z, theElement) -- Funktionsname
  33.     if not(theElement) then -- Wenn kein Element angegeben wurde
  34.         theElement = "player" -- Default Player
  35.     end -- Block zuende
  36.     local pos = math.huge -- Erstelle neue Variable die sehr gross ist
  37.     local lastelement = false -- Das Element, bis jetzt False
  38.     for index, element in pairs(getElementsByType(theElement)) do -- Gehe alle Elemente des Types durch
  39.         local x2, y2, z2 = getElementPosition(element) -- Erhalte die Position
  40.         if(getDistanceBetweenPoints3D(x, y, z, x2, y2, z2) < pos) then -- Wenn die Distanz kleiner ist als die Distanz, die schon exestiert
  41.             pos = getDistanceBetweenPoints3D(x, y, z, x2, y2, z2) -- Speichere die neue Distanz
  42.             lastelement = element -- Speichere das neue Element
  43.         end -- Block zuende
  44.     end -- Block zuende
  45.     if(pos == math.huge) then -- Wenn kein Element Gefunden wurde(huge)
  46.         pos = false -- Automatisch false
  47.     end -- Block Zuende
  48.     return lastelement, pos; -- Gibt das Element und die Distance wieder
  49. end
Advertisement
Add Comment
Please, Sign In to add comment