Advertisement
HR_Shaft

Leap-Frog v3 for Phasor v2

Oct 11th, 2013
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 10.30 KB | None | 0 0
  1. --[[ ###         Leap-Frog v3         ###]]--
  2. --[[ ###   by H® Shaft, AelitePrime   ###]]--
  3. --[[ ###        for Phasor v2         ###]]--
  4.  
  5. -- Enables drivers to leap hogs into the air by pressing the space bar/jump key and -  also,
  6. -- enables walking players to jump a bit higher to be able to jump over hogs coming at them.
  7. -- 10/2013 added emergency brake by AelitePrime
  8.  
  9. -- do not touch --
  10. enable_vehicle_leap = {}
  11. enable_player_leap = {}
  12. player_velocity = {}
  13. pause_time_players = {}
  14. pause_time_vehicles = {}
  15. vehicle_velocity = {}
  16. emergency_brake = {}
  17. brakes = {}
  18. jumps = {}
  19.  
  20.  -- edit below as you see fit --
  21.  
  22. -- If the boolean is true for the map then leap-frog for vehicles will be enabled for the map
  23. --                      Map:                        Boolean:
  24. enable_vehicle_leap.    beavercreek         =       false       -- battle creek
  25. enable_vehicle_leap.    bloodgulch          =       true
  26. enable_vehicle_leap.    boardingaction      =       true               
  27. enable_vehicle_leap.    carousel            =       false       -- derelict
  28. enable_vehicle_leap.    chillout            =       false              
  29. enable_vehicle_leap.    damnation           =       false              
  30. enable_vehicle_leap.    dangercanyon        =       true               
  31. enable_vehicle_leap.    deathisland         =       true           
  32. enable_vehicle_leap.    gephyrophobia       =       true               
  33. enable_vehicle_leap.    hangemhigh          =       false              
  34. enable_vehicle_leap.    icefields           =       true               
  35. enable_vehicle_leap.    infinity            =       true               
  36. enable_vehicle_leap.    longest             =       false              
  37. enable_vehicle_leap.    prisoner            =       false              
  38. enable_vehicle_leap.    putput              =       false       -- chiron tl34
  39. enable_vehicle_leap.    ratrace             =       false              
  40. enable_vehicle_leap.    sidewinder          =       true               
  41. enable_vehicle_leap.    timberland          =       true               
  42. enable_vehicle_leap.    wizard              =       false
  43.  
  44. -- If the boolean is true for the map then leap-frog for players will be enabled for the map
  45. --                      Map:                        Boolean:
  46. enable_player_leap.     beavercreek         =       false       -- battle creek
  47. enable_player_leap.     bloodgulch          =       false
  48. enable_player_leap.     boardingaction      =       false
  49. enable_player_leap.     carousel            =       true        -- derelict
  50. enable_player_leap.     chillout            =       false
  51. enable_player_leap.     damnation           =       true
  52. enable_player_leap.     dangercanyon        =       false
  53. enable_player_leap.     deathisland         =       false
  54. enable_player_leap.     gephyrophobia       =       false
  55. enable_player_leap.     hangemhigh          =       false              
  56. enable_player_leap.     icefields           =       false
  57. enable_player_leap.     infinity            =       false
  58. enable_player_leap.     longest             =       false
  59. enable_player_leap.     prisoner            =       false
  60. enable_player_leap.     putput              =       false       -- chiron tl34
  61. enable_player_leap.     ratrace             =       false
  62. enable_player_leap.     sidewinder          =       false
  63. enable_player_leap.     timberland          =       false
  64. enable_player_leap.     wizard              =       true
  65.  
  66. -- Specify the velocity that you want leap-frog to go at for vehicles
  67. --                      Map:                        Velocity:
  68. vehicle_velocity.       beavercreek         =       0           -- battle creek
  69. vehicle_velocity.       bloodgulch          =       1.7
  70. vehicle_velocity.       boardingaction      =       0
  71. vehicle_velocity.       carousel            =       0           -- derelict
  72. vehicle_velocity.       chillout            =       0
  73. vehicle_velocity.       damnation           =       0              
  74. vehicle_velocity.       dangercanyon        =       1.5
  75. vehicle_velocity.       deathisland         =       1.8
  76. vehicle_velocity.       gephyrophobia       =       1.83
  77. vehicle_velocity.       hangemhigh          =       0
  78. vehicle_velocity.       icefields           =       1.8
  79. vehicle_velocity.       infinity            =       1.85
  80. vehicle_velocity.       longest             =       0
  81. vehicle_velocity.       prisoner            =       0
  82. vehicle_velocity.       putput              =       0           -- chiron tl34
  83. vehicle_velocity.       ratrace             =       0
  84. vehicle_velocity.       sidewinder          =       1.8
  85. vehicle_velocity.       timberland          =       1.8
  86. vehicle_velocity.       wizard              =       0
  87.  
  88. -- Specify the velocity that you want leap-frog to go at for players
  89. --                      Map:                        Velocity:
  90. player_velocity.        beavercreek         =       0.8             -- battle creek
  91. player_velocity.        bloodgulch          =       1              
  92. player_velocity.        boardingaction      =       0.8            
  93. player_velocity.        carousel            =       0.8             -- derelict
  94. player_velocity.        chillout            =       0.8                
  95. player_velocity.        damnation           =       0.8                
  96. player_velocity.        dangercanyon        =       1              
  97. player_velocity.        deathisland         =       1          
  98. player_velocity.        gephyrophobia       =       1              
  99. player_velocity.        hangemhigh          =       0.8                
  100. player_velocity.        icefields           =       1              
  101. player_velocity.        infinity            =       1              
  102. player_velocity.        longest             =       0.8                
  103. player_velocity.        prisoner            =       0.8                
  104. player_velocity.        putput              =       0.8             -- chiron tl34
  105. player_velocity.        ratrace             =       0.8                
  106. player_velocity.        sidewinder          =       1              
  107. player_velocity.        timberland          =       1              
  108. player_velocity.        wizard              =       0.8
  109.  
  110. -- Specify the amount of time between leap-frogs for players
  111. --                      Map:                        Time(In Seconds):
  112. pause_time_players.     beavercreek         =       4           -- battle creek
  113. pause_time_players.     bloodgulch          =       4              
  114. pause_time_players.     boardingaction      =       2.5            
  115. pause_time_players.     carousel            =       2.5             -- derelict
  116. pause_time_players.     chillout            =       2.5            
  117. pause_time_players.     damnation           =       2.5            
  118. pause_time_players.     dangercanyon        =       4              
  119. pause_time_players.     deathisland         =       4          
  120. pause_time_players.     gephyrophobia       =       4              
  121. pause_time_players.     hangemhigh          =       2.5            
  122. pause_time_players.     icefields           =       4              
  123. pause_time_players.     infinity            =       4              
  124. pause_time_players.     longest             =       2.5            
  125. pause_time_players.     prisoner            =       2.5            
  126. pause_time_players.     putput              =       2.5             -- chiron tl34
  127. pause_time_players.     ratrace             =       2.5            
  128. pause_time_players.     sidewinder          =       4              
  129. pause_time_players.     timberland          =       4              
  130. pause_time_players.     wizard              =       2.5
  131.  
  132. -- Specify the amount of time between leap-frogs for vehicles
  133. --                      Map:                        Time(In Seconds):
  134. pause_time_vehicles.    beavercreek         =       4       -- battle creek
  135. pause_time_vehicles.    bloodgulch          =       4
  136. pause_time_vehicles.    boardingaction      =       4              
  137. pause_time_vehicles.    carousel            =       4       -- derelict
  138. pause_time_vehicles.    chillout            =       4              
  139. pause_time_vehicles.    damnation           =       4              
  140. pause_time_vehicles.    dangercanyon        =       4              
  141. pause_time_vehicles.    deathisland         =       4          
  142. pause_time_vehicles.    gephyrophobia       =       4              
  143. pause_time_vehicles.    hangemhigh          =       4              
  144. pause_time_vehicles.    icefields           =       4              
  145. pause_time_vehicles.    infinity            =       4              
  146. pause_time_vehicles.    longest             =       4              
  147. pause_time_vehicles.    prisoner            =       4              
  148. pause_time_vehicles.    putput              =       4       -- chiron tl34
  149. pause_time_vehicles.    ratrace             =       4              
  150. pause_time_vehicles.    sidewinder          =       4              
  151. pause_time_vehicles.    timberland          =       4              
  152. pause_time_vehicles.    wizard              =       0
  153.  
  154. -- If this is set to true then If the driver clicks their flash light button the vehicle will come to a complete stop.
  155. --                      Map:                        Boolean:
  156. emergency_brake.        beavercreek         =       false -- battle creek
  157. emergency_brake.        bloodgulch          =       true
  158. emergency_brake.        boardingaction      =       false
  159. emergency_brake.        carousel            =       false -- derelict
  160. emergency_brake.        chillout            =       false
  161. emergency_brake.        damnation           =       false
  162. emergency_brake.        dangercanyon        =       true
  163. emergency_brake.        deathisland         =       true
  164. emergency_brake.        gephyrophobia       =       true
  165. emergency_brake.        hangemhigh          =       false
  166. emergency_brake.        icefields           =       true
  167. emergency_brake.        infinity            =       true
  168. emergency_brake.        longest             =       false
  169. emergency_brake.        prisoner            =       false
  170. emergency_brake.        putput              =       false -- chiron tl34
  171. emergency_brake.        ratrace             =       false
  172. emergency_brake.        sidewinder          =       true   
  173. emergency_brake.        timberland          =       true       
  174. emergency_brake.        wizard              =       false
  175.  
  176.  
  177. function GetRequiredVersion()
  178.     return 200
  179. end
  180.  
  181. function OnScriptLoad(process, game, persistent)
  182.     if game == "PC" then
  183.         Map = readstring(0x698F21)
  184.         GAME = game
  185.     else
  186.         Map = readstring(0x61D151)
  187.         GAME = game
  188.     end
  189.     for i=0,15 do
  190.         if getplayer(i) then
  191.             brakes[i] = 0
  192.             jumps[i] = 0
  193.         end
  194.     end    
  195. end
  196.  
  197. function OnNewGame(map)
  198.     if GAME == "PC" then
  199.         Map = readstring(0x698F21)
  200.     else
  201.         Map = readstring(0x61D151)
  202.     end
  203. end
  204.  
  205. function OnPlayerJoin(player)
  206.     brakes[player] = 0
  207.     jumps[player] = 0
  208.     registertimer(6000, "timedannounce", player)
  209. end
  210.  
  211. function OnClientUpdate(player)
  212.     if brakes[player] > 0 then brakes[player] = brakes[player] - 1 end
  213.     if jumps[player] > 0 then jumps[player] = jumps[player] - 1 end
  214.     local m_playerObjId = getplayerobjectid(player)
  215.     if m_playerObjId then
  216.         local m_object = getobject(m_playerObjId)
  217.         if isinvehicle(player) then
  218.             if enable_vehicle_leap[Map] then
  219.                 local m_vehicle = getobject(getplayervehicleid(player))
  220.                 if brakes[player] == 0 and getdriverplayer(m_vehicle) == player and readbit(m_object + 0x208, 1) then
  221.                     sendconsoletext(player, "Leap Frog!")
  222.                     brakes[player] = math.floor(pause_time_vehicles[Map]*30)
  223.                     writebit(m_vehicle + 0x10, 2, 0)
  224.                     writefloat(m_vehicle + 0x70, vehicle_velocity[Map]/10)
  225.                 end
  226.             end
  227.             if emergency_brake[Map] then
  228.                 local m_vehicle = getobject(getplayervehicleid(player))
  229.                 if getdriverplayer(m_vehicle) == player and readbit(m_object + 0x208, 0) then
  230.                     writefloat(m_vehicle + 0x68, 0)
  231.                     writefloat(m_vehicle + 0x6C, 0)
  232.                 end
  233.             end
  234.         else
  235.             if enable_player_leap[Map] then
  236.                 if jumps[player] == 0 and readbyte(m_object + 0x4CC) == 1 and readbit(m_object + 0x208, 1) then
  237.                     sendconsoletext(player, "Leap Frog!")
  238.                     jumps[player] = math.floor(pause_time_players[Map]*30)
  239.                     writebit(m_object + 0x10, 2, 0)
  240.                     writefloat(m_object + 0x70, player_velocity[Map]/10)
  241.                 end
  242.             end
  243.         end
  244.     end
  245. end
  246.  
  247. function getdriverplayer(m_vehicle)
  248.      local obj_id = readdword(m_vehicle + 0x324)
  249.     if obj_id ~= 0xFFFFFFFF then return objectidtoplayer(obj_id) end
  250. end
  251.  
  252. function timedannounce(id, count, player)
  253.     if getplayer(player) then
  254.         if enable_vehicle_leap[Map] then sendconsoletext(player, "Vehicle Leap-Frog is Enabled.") end
  255.         if enable_player_leap[Map] then sendconsoletext(player, "Player Leap-Frog is Enabled.") end
  256.     end
  257.     return false   
  258. end
  259.  
  260. function getplayervehicleid(player)
  261.     return readdword(getobject(getplayerobjectid(player)) + 0x11C)
  262. end
  263.  
  264. -- Created by H® Shaft thank you to Oxide, AelitePrime, Nugget & Wizard.
  265. -- Visit http://halorace.org/forum/index.php?topic=514.0 or
  266. -- Visit http://pastebin.com/u/HR_Shaft for more phasor scripts
  267.  
  268. -- This script, was made by myself H® Shaft and Aelite, but did not duplicate any portion of OUR original script from 5/2012 written by Wizard and H® Shaft.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement