Advertisement
Guest User

Untitled

a guest
Jan 2nd, 2013
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 2.92 KB | None | 0 0
  1. function abseilStart()
  2.     if getElementData(source,"abseiling") == "" then
  3.         local veh = getPedOccupiedVehicle(source)
  4.         if veh then
  5.             if getVehicleType(veh) == "Helicopter" then
  6.                 local seat = getPedOccupiedVehicleSeat(source)
  7.                 setElementData(source,"abseiling",tostring(seat))
  8.                 setElementData(source,"abseilspeed",-0.25)
  9.                
  10.                 removePedFromVehicle(source)
  11.                
  12.                 --setVehicleDoorState(veh,seat+2,4)
  13.                 setVehicleDoorOpenRatio(veh,seat+2,1,500)
  14.                
  15.                 local ped = createPed(0,0,0,0)
  16.                 warpPedIntoVehicle(ped,veh,seat)
  17.                
  18.                 setElementData(source,"abseilped",ped)
  19.                 setElementData(ped,"isabseilped",true)
  20.                
  21.                 triggerClientEvent("doStartAbseil",source,veh,seat,ped)
  22.                
  23.                 setTimer(abseil,3400,1,source,veh,seat,ped)
  24.             end
  25.         end
  26.     end
  27. end
  28. addEvent("doStartPlayerAbseil",true)
  29. addEventHandler("doStartPlayerAbseil",getRootElement(),abseilStart)
  30.  
  31. function abseilCancel()
  32.     if getElementData(source,"abseiling") == "true" then
  33.         local ped = getElementData(source,"abseilped")
  34.         triggerClientEvent("doCancelAbseil",source)
  35.         if getPedOccupiedVehicleSeat(ped) == 0 then
  36.             triggerClientEvent("doAddVehicleToWatch",getPedOccupiedVehicle(ped))
  37.         else
  38.             if getElementData(ped,"isabseilped") == true then
  39.                 destroyElement(ped)
  40.             end
  41.         end
  42.     end
  43. end
  44. addEvent("doCancelPlayerAbseil",true)
  45. addEventHandler("doCancelPlayerAbseil",getRootElement(),abseilCancel)
  46.  
  47. function abseil(player,veh,seat,ped)
  48.     setElementData(player,"abseiling","true")
  49.     detachElements(player,ped)
  50. end
  51.  
  52. function possetting(x,y,z)
  53.     setElementPosition(source,x,y,z)
  54.     setPedAnimation(source,"ped","abseil",-1,false,false,false)
  55.     local x,y,z = getElementVelocity(source)
  56.     setElementVelocity(source,x,y,-0.25)
  57. end
  58. addEvent("doSetPos",true)
  59. addEventHandler("doSetPos",getRootElement(),possetting)
  60.  
  61. function stopAbseilAnimation(ped)
  62.     setPedAnimation(source)
  63.     if getPedOccupiedVehicleSeat(ped) == 0 then
  64.         if getElementData(ped,"isabseilped") == true then
  65.             triggerClientEvent("doAddVehicleToWatch",getPedOccupiedVehicle(ped))
  66.         end
  67.     else
  68.         if getElementData(ped,"isabseilped") == true then
  69.             destroyElement(ped)
  70.         end
  71.     end
  72. end
  73. addEvent("doForceStopAbseiling",true)
  74. addEventHandler("doForceStopAbseiling",getRootElement(),stopAbseilAnimation)
  75.  
  76. function deletePiltoDummy()
  77.     local ped = getVehicleOccupant(source,0)
  78.     if ped then
  79.         if getElementData(ped,"isabseilped") == true then
  80.             destroyElement(getVehicleOccupant(source,0))
  81.             triggerClientEvent("doRemoveVehicleToWatch",source)
  82.         end
  83.     end
  84. end
  85. addEvent("doRemovePilotDummy",true)
  86. addEventHandler("doRemovePilotDummy",getRootElement(),deletePiltoDummy)
  87.  
  88. function checkForDummiesToDelete()
  89.     local ped = getVehicleOccupant(source,0)
  90.     if ped then
  91.         if getElementType(ped) == "ped" then
  92.             if getElementData(ped,"isabseilped") == true then
  93.                 destroyElement(ped)
  94.             end
  95.         end
  96.     end
  97. end
  98. addEventHandler("onVehicleExplode",getRootElement(),checkForDummiesToDelete)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement