Advertisement
Guest User

Tank Fire 1.1

a guest
Nov 24th, 2015
456
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 29.94 KB | None | 0 0
  1. {$CLEO}
  2. 0000: T_FIRE5
  3.  
  4. WHILE 8256: not player $PLAYER_CHAR defined
  5. wait 250
  6. END
  7. wait 2500
  8. 0A8C: write_memory 0x871080 size 4 value 0.0 virtual_protect 0
  9.  
  10. REPEAT
  11. wait 0
  12. IF
  13. 00DD: actor $PLAYER_ACTOR driving_car_with_model #RHINO
  14. THEN
  15. 03C0: 18@ = actor $PLAYER_ACTOR car
  16. 00AA: store_car 18@ position_to 5@ 6@ 7@
  17. 068E: get_camera_target_point_to 8@ 9@ 10@
  18. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 6@
  19. 0174: 7@ = car 18@ Z_angle
  20. 0063: 6@ -= 7@
  21. 0017: 6@ /= 57.295779513082320876798154814105 // rad
  22. 0A97: 5@ = car 18@ struct
  23. 000A: 5@ += 0x94C // HA
  24. 0A8C: write_memory 5@ size 4 value 6@ virtual_protect 0
  25. END
  26. UNTIL 010F: player $PLAYER_CHAR wanted_level > 5
  27. 0247: request_model 1582
  28. 0247: load_model #ARMY
  29. 0247: load_model #GRENADE
  30. 0247: load_model #M4
  31. 0247: load_model #SNIPER
  32. 0247: load_model #NVGOGGLES
  33. 0247: load_model #IRGOGGLES
  34. 0247: load_model #GUN_PARA
  35. 038B: load_requested_models
  36.  
  37. WHILE TRUE
  38. wait 0
  39. IF
  40. 00DD: actor $PLAYER_ACTOR driving_car_with_model #RHINO
  41. THEN
  42. 03C0: 18@ = actor $PLAYER_ACTOR car
  43. 00AA: store_car 18@ position_to 5@ 6@ 7@
  44. 068E: get_camera_target_point_to 8@ 9@ 10@
  45. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 6@
  46. 0174: 7@ = car 18@ Z_angle
  47. 0063: 6@ -= 7@
  48. 0017: 6@ /= 57.295779513082320876798154814105 // rad
  49. 0A97: 5@ = car 18@ struct
  50. 000A: 5@ += 0x94C // HA
  51. 0A8C: write_memory 5@ size 4 value 6@ virtual_protect 0
  52. END
  53.  
  54. IF
  55. 010F: player $PLAYER_CHAR wanted_level > 5
  56. THEN
  57. {$I CLEO\forallpeds}
  58. IF
  59. 056D: actor ped defined
  60. THEN
  61. IF
  62. 8449: NOT actor ped in_a_car
  63. THEN
  64. 089F: get_actor ped pedtype_to 24@
  65. 0A96: 26@ = actor ped struct
  66. 000A: 26@ += 0x484
  67. 0006: 25@ = 0
  68. 0A8D: 25@ = read_memory 26@ size 1 virtual_protect 0
  69. IF AND
  70. 0184: actor ped health >= 97
  71. 8A32: NOT actor ped on_turret_of_car
  72. 8039: NOT 24@ == 0
  73. 8039: NOT 24@ == 6
  74. 0039: 25@ == 1
  75. THEN
  76. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  77. 05DA: AS_actor ped run_away_in_panic_from 5@ 6@ 7@ away_radius 1000.0 timelimit -1
  78. 0223: set_actor ped health_to 95
  79. END
  80. ELSE
  81. 03C0: 18@ = actor ped car
  82. 089F: get_actor ped pedtype_to 24@
  83. 0A96: 26@ = actor ped struct
  84. 000A: 26@ += 0x484
  85. 0006: 25@ = 0
  86. 0A8D: 25@ = read_memory 26@ size 1 virtual_protect 0
  87. IF AND
  88. 8975: NOT car 18@ emergency_vehicle
  89. 0184: actor ped health >= 97
  90. 8A32: NOT actor ped on_turret_of_car
  91. 8039: NOT 24@ == 0
  92. 8039: NOT 24@ == 6
  93. 0039: 25@ == 1
  94. 0104: actor ped near_actor $PLAYER_ACTOR radius 40.0 40.0 40.0 sphere 0
  95. 02CA: car 18@ bounding_sphere_visible
  96. THEN
  97. 0633: AS_actor ped exit_car
  98. END
  99. END
  100.  
  101. IF AND
  102. 82F2: NOT actor ped model == #LAPD1
  103. 82F2: NOT actor ped model == #SFPD1
  104. 82F2: NOT actor ped model == #LVPD1
  105. 82F2: NOT actor ped model == #CSHER
  106. 82F2: NOT actor ped model == #DSHER
  107. 82F2: NOT actor ped model == #SWAT
  108. 82F2: NOT actor ped model == #FBI
  109. 82F2: NOT actor ped model == #ARMY
  110. THEN
  111. 03C0: 18@ = actor ped car
  112. 089F: get_actor ped pedtype_to 24@
  113. 0A96: 26@ = actor ped struct
  114. 000A: 26@ += 0x484
  115. 0006: 25@ = 0
  116. 0A8D: 25@ = read_memory 26@ size 1 virtual_protect 0
  117. IF AND
  118. 8A32: NOT actor ped on_turret_of_car
  119. 8039: NOT 24@ == 0
  120. 0039: 24@ == 6
  121. 8449: NOT actor ped in_a_car
  122. 0184: actor ped health >= 97
  123. THEN
  124. 060B: set_actor ped decision_maker_to 1
  125. 0223: set_actor ped health_to 95
  126. END
  127. END
  128. END
  129. {$I CLEO\for_end}
  130.  
  131. IF AND
  132. 8449: NOT actor $PLAYER_ACTOR in_a_car
  133. 84AD: NOT actor $PLAYER_ACTOR in_water
  134. 0AB0: key_pressed 0x11
  135. 0AB0: key_pressed 0x53
  136. THEN
  137. 04D7: set_actor $PLAYER_ACTOR locked 1
  138. 05C4: AS_actor $PLAYER_ACTOR hands_up -1 ms
  139. 0A96: 0@ = actor $PLAYER_ACTOR struct
  140. 000A: 0@ += 0x530
  141. 0A8C: write_memory 0@ size 1 value 63 virtual_protect 0
  142. 0006: 32@ = 0
  143. REPEAT
  144. wait 0
  145. UNTIL 0029: 32@ >= 4500
  146. 04D7: set_actor $PLAYER_ACTOR locked 0
  147. 0687: clear_actor $PLAYER_ACTOR task
  148. END
  149.  
  150. {$I CLEO\forallcars}
  151. IF
  152. 056E: car veh defined
  153. THEN
  154. IF
  155. 0137: car veh model == #RHINO
  156. THEN
  157.  
  158. IF OR
  159. 031E: car veh hit_by_weapon 16
  160. 031E: car veh hit_by_weapon 19
  161. 031E: car veh hit_by_weapon 35
  162. 031E: car veh hit_by_weapon 36
  163. 031E: car veh hit_by_weapon 40
  164. THEN
  165. 046C: 4@ = car veh driver
  166. IF
  167. 056D: actor 4@ defined
  168. THEN
  169. 009B: destroy_actor 4@
  170. 020B: explode_car veh
  171. ELSE
  172. 020B: explode_car veh
  173. END
  174. END
  175.  
  176. 00AA: store_car veh position_to 8@ 9@ 10@
  177. 000F: 8@ -= 7.0
  178. 000F: 9@ -= 7.0
  179. 000F: 10@ -= 7.0
  180. 00AA: store_car veh position_to 5@ 6@ 7@
  181. 000F: 5@ -= -7.0
  182. 000F: 6@ -= -7.0
  183. 000F: 7@ -= -7.0
  184. IF
  185. 8119: NOT car veh wrecked
  186. THEN
  187. IF AND
  188. 8356: NOT explosion_type 11 in_cube_cornerA 8@ 9@ 10@ cornerB 5@ 6@ 7@
  189. 0356: explosion_type -1 in_cube_cornerA 8@ 9@ 10@ cornerB 5@ 6@ 7@
  190. 80DB: NOT actor $PLAYER_ACTOR in_car veh
  191. THEN
  192. 020B: explode_car veh
  193. END
  194. END
  195.  
  196. 046C: 4@ = car veh driver
  197. IF AND
  198. 8119: NOT car veh wrecked
  199. 80DB: NOT actor $PLAYER_ACTOR in_car veh
  200. 81F3: NOT car veh in_air
  201. 056D: actor 4@ defined
  202. 010F: player $PLAYER_CHAR wanted_level > 5
  203. 0256: player $PLAYER_CHAR defined
  204. THEN
  205.  
  206. IF
  207. 04AD: actor 4@ in_water
  208. THEN
  209. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  210. 07E1: AS_actor 4@ swim_to 5@ 6@ 7@
  211. END
  212.  
  213. IF AND
  214. 02F2: actor 4@ model == #ARMY
  215. 00DF: actor 4@ driving
  216. 010F: player $PLAYER_CHAR wanted_level > 5
  217. THEN
  218.  
  219. IF
  220. 8491: NOT actor 4@ has_weapon 16
  221. THEN
  222. 054A: set_actor 4@ can_be_shot_in_a_car 1
  223. 04D8: set_actor 4@ drowns_in_water 0
  224. 048F: actor 4@ remove_weapons
  225. 01B2: give_actor 4@ weapon 45 ammo 9999
  226. 01B2: give_actor 4@ weapon 16 ammo 9999
  227. 01B2: give_actor 4@ weapon 31 ammo 9999
  228. IF
  229. 056D: actor 23@ defined
  230. THEN
  231. IF
  232. 8A32: NOT actor 23@ on_turret_of_car
  233. THEN
  234. IF
  235. 00DB: actor $PLAYER_ACTOR in_car veh
  236. THEN
  237. 0464: put_actor 23@ into_turret_on_car veh at_car_offset 0.0 0.0 2.0 position 0 shooting_angle_limit 360.0 with_weapon 31
  238. ELSE
  239. 0464: put_actor 23@ into_turret_on_car veh at_car_offset 0.0 0.0 2.0 position 0 shooting_angle_limit 360.0 with_weapon 34
  240. END
  241. 05E2: AS_actor 23@ kill_actor $PLAYER_ACTOR
  242. 0770: set_actor 23@ target_priority 1
  243. 0337: set_actor 23@ visibility 1
  244. END
  245. ELSE
  246. 00AA: store_car veh position_to 8@ 9@ 10@
  247. 000B: 10@ += 4.0
  248. 009A: 23@ = create_actor_pedtype 24 model #ARMY at 8@ 9@ 10@
  249. 060B: set_actor 23@ decision_maker_to 32
  250. 02E2: set_actor 23@ weapon_accuracy_to 1
  251. 07DD: set_actor 23@ attack_rate 100
  252. 0337: set_actor 23@ visibility 0
  253. 02AB: set_actor 23@ immunities BP 0 FP 0 EP 0 CP 0 MP 0
  254. END
  255. END
  256.  
  257. IF
  258. 056D: actor 23@ defined
  259. THEN
  260. IF
  261. 0118: actor 23@ dead
  262. THEN
  263. 0465: remove_actor 23@ from_turret_mode
  264. 01C2: remove_references_to_actor 23@
  265. ELSE
  266. IF AND
  267. 82CB: NOT actor 23@ bounding_sphere_visible
  268. 8104: NOT actor $PLAYER_ACTOR near_actor 23@ radius 50.0 50.0 50.0 sphere 0
  269. THEN
  270. 009B: destroy_actor 23@
  271. END
  272. END
  273. END
  274.  
  275. IF
  276. 03CA: object 13@ exists
  277. THEN
  278. IF AND
  279. 0137: car veh model == #RHINO
  280. 8119: NOT car veh wrecked
  281. THEN
  282. IF AND
  283. 010F: player $PLAYER_CHAR wanted_level > 6
  284. 0897: car veh collided_with_object 13@
  285. THEN
  286. IF
  287. 056D: actor 4@ defined
  288. THEN
  289. 009B: destroy_actor 4@
  290. 020B: explode_car veh
  291. ELSE
  292. 020B: explode_car veh
  293. END
  294. END
  295. END
  296. END
  297.  
  298. 03C0: 18@ = actor $PLAYER_ACTOR car
  299. IF AND
  300. 056E: car 18@ defined
  301. 03CA: object 13@ exists
  302. THEN
  303. IF
  304. 0449: actor $PLAYER_ACTOR in_a_car
  305. THEN
  306. IF AND
  307. 010F: player $PLAYER_CHAR wanted_level > 6
  308. 00DD: actor $PLAYER_ACTOR driving_car_with_model #RHINO
  309. 0897: car 18@ collided_with_object 13@
  310. THEN
  311. 000A: 19@ += 1
  312. IF
  313. 0029: 19@ >= 50
  314. THEN
  315. 0224: set_car 18@ health_to 100
  316. 0006: 19@ = 0
  317. END
  318. END
  319. END
  320. END
  321.  
  322. 02AA: set_car veh immune_to_nonplayer 1
  323. 00AA: store_car veh position_to 8@ 9@ 10@
  324. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  325. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 6@
  326. 0174: 7@ = car veh Z_angle
  327. 0063: 6@ -= 7@
  328. 0017: 6@ /= 57.295779513082320876798154814105 // rad
  329. 0A97: 5@ = car veh struct
  330. 000A: 5@ += 0x94C // HA
  331. 0A8C: write_memory 5@ size 4 value 6@ virtual_protect 0
  332.  
  333. 00AA: store_car veh position_to 8@ 9@ 10@
  334. 00A0: store_actor $PLAYER_ACTOR position_to 6@ 7@ 12@
  335. 0509: 11@ = distance_between_XY 6@ 7@ and_XY 8@ 9@
  336. IF AND
  337. 0031: 11@ >= 10.0
  338. 0025: 12@ > 10@
  339. THEN
  340. 0A97: 5@ = car veh struct
  341. 000A: 5@ += 0x950 // VA
  342. 0006: 25@ = 0
  343. 0A8D: 25@ = read_memory 5@ size 4 virtual_protect 0
  344. IF
  345. 0021: 25@ > 1.221730476396031
  346. THEN
  347. gosub @getVerticalAngle
  348. 0A97: 5@ = car veh struct
  349. 000A: 5@ += 0x950 // VA
  350. 0A8C: write_memory 5@ size 4 value 1.221730476396031 virtual_protect 0
  351. ELSE
  352. gosub @getVerticalAngle
  353. 0A97: 5@ = car veh struct
  354. 000A: 5@ += 0x950 // VA
  355. 0A8C: write_memory 5@ size 4 value 8@ virtual_protect 0
  356. END
  357. END
  358.  
  359. 00AA: store_car veh position_to 8@ 9@ 10@
  360. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  361. IF
  362. 06BD: no_obstacles_between 5@ 6@ 7@ and 8@ 9@ 10@ solid 1 car 0 actor 0 object 0 particle 0
  363. THEN
  364. IF OR
  365. 02CA: car veh bounding_sphere_visible
  366. 0205: actor $PLAYER_ACTOR near_car veh radius 500.0 500.0 500.0 flag 0
  367. THEN
  368. 00AA: store_car veh position_to 8@ 9@ 10@
  369. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  370. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 6@
  371.  
  372. 02F6: 15@ = cos 6@
  373. 02F7: 16@ = sin 6@
  374. 0013: 15@ *= 225.0
  375. 0013: 16@ *= 225.0
  376. 0013: 15@ *= -1.0
  377.  
  378. gosub @getVerticalAngle
  379. 00AA: store_car veh position_to 9@ 9@ 10@
  380. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  381. IF
  382. 0025: 7@ > 10@
  383. THEN
  384. 0013: 8@ *= 225.0
  385. 0087: 17@ = 8@
  386. ELSE
  387. 0013: 8@ *= -225.0
  388. 0087: 17@ = 8@
  389. END
  390. END
  391.  
  392. IF
  393. 03CA: object 13@ exists
  394. THEN
  395. 05C0: AS_actor $PLAYER_ACTOR look_at_car veh 1000 ms
  396.  
  397. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  398. IF AND
  399. 04E6: object 13@ near_point 5@ 6@ 7@ radius 1.0 1.0 1.0 flag 0
  400. 8449: NOT actor $PLAYER_ACTOR in_a_car
  401. THEN
  402. END
  403.  
  404. IF
  405. 0205: actor $PLAYER_ACTOR near_car veh radius 500.0 500.0 500.0 flag 0
  406. THEN
  407. 0392: make_object 13@ moveable 1
  408. 0381: throw_object 13@ velocity_in_direction 15@ 16@ 17@
  409.  
  410. 00AA: store_car veh position_to 8@ 9@ 10@
  411. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  412. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 6@
  413. 0453: set_object 13@ XY_rotation 0.0 0.0 angle 6@
  414. 0174: 7@ = car veh Z_angle
  415. 0063: 6@ -= 7@
  416. 02F6: 15@ = sine 6@
  417. 02F7: 16@ = cosine 6@
  418. 0013: 15@ *= 7.0
  419. 0013: 16@ *= 7.0
  420. 0013: 15@ *= -1.0
  421.  
  422. 00AA: store_car veh position_to 8@ 9@ 10@
  423. IF
  424. 84E5: NOT object 13@ near_point 8@ 9@ radius 10.0 10.0 sphere 0
  425. THEN
  426. 01BB: store_object 13@ position_to 5@ 6@ 7@
  427. 095C: create_smoke_at 5@ 6@ 7@ velocity 0.0 0.0 0.0 RGBA 1.0 1.0 1.0 1.0 size 0.5 last_factor 0.075
  428. END
  429.  
  430. IF OR
  431. 0019: 32@ > 2000
  432. 04DA: object 13@ collided
  433. THEN
  434. 00AA: store_car veh position_to 8@ 9@ 10@
  435. IF
  436. 04E6: object 13@ near_point 8@ 9@ 10@ radius 20.0 20.0 20.0 flag 0
  437. THEN
  438. 0108: destroy_object 13@
  439. ELSE
  440. IF
  441. 0205: actor $PLAYER_ACTOR near_car veh radius 10.0 10.0 10.0 flag 0
  442. THEN
  443. IF
  444. 0019: 33@ > 0
  445. THEN
  446. 01BB: store_object 13@ position_to 5@ 6@ 7@
  447. 0948: create_explosion_at 5@ 6@ 7@ type 11 camera_shake 0.5
  448. 08EB: create_sparks_at 5@ 6@ 7@ velocity_direction 10.0 10.0 10.0 density 60
  449. 0108: destroy_object 13@
  450. 0006: 33@ = 0
  451. END
  452. ELSE
  453. 01BB: store_object 13@ position_to 5@ 6@ 7@
  454. 0948: create_explosion_at 5@ 6@ 7@ type 11 camera_shake 0.5
  455. 08EB: create_sparks_at 5@ 6@ 7@ velocity_direction 10.0 10.0 10.0 density 60
  456. 0108: destroy_object 13@
  457. 0006: 33@ = 0
  458. END
  459. END
  460. END
  461. END
  462.  
  463. ELSE
  464.  
  465. 00AA: store_car veh position_to 8@ 9@ 10@
  466. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  467. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 6@
  468. 0174: 7@ = car veh Z_angle
  469. 0063: 6@ -= 7@
  470. 02F6: 15@ = sine 6@
  471. 02F7: 16@ = cosine 6@
  472. 0013: 15@ *= 7.0
  473. 0013: 16@ *= 7.0
  474. 0013: 15@ *= -1.0
  475.  
  476. 0407: store_coords_to 8@ 9@ 10@ from_car veh with_offset 15@ 16@ 1.2
  477. 0107: 14@ = create_object 1582 at 8@ 9@ 10@
  478. 050E: set_object 14@ no_collision_with_car veh
  479. 0177: set_object 14@ Z_angle_to 6@
  480.  
  481. 0750: set_object 14@ visibility 0
  482. 04D9: object 14@ set_scripted_collision_check 1
  483. 0382: set_object 14@ collision_detection 0
  484.  
  485.  
  486. 01BB: store_object 14@ position_to 8@ 9@ 10@
  487. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  488. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 11@
  489. 02F6: 20@ = cos 11@ // (float)
  490. 02F7: 21@ = sin 11@ // (float)
  491. 0013: 20@ *= 27.0
  492. 0013: 21@ *= 27.0
  493. 0013: 20@ *= -1.0
  494. gosub @getVerticalAngle
  495. 0087: 22@ = 8@
  496. 00AA: store_car veh position_to 8@ 9@ 10@
  497. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  498. IF
  499. 0025: 10@ > 7@
  500. THEN
  501. 0013: 22@ *= -125.0
  502. ELSE
  503. 0013: 22@ *= 125.0
  504. END
  505.  
  506. 0400: store_coords_to 5@ 6@ 7@ from_object 14@ with_offset 20@ 21@ 22@
  507. 01BB: store_object 14@ position_to 8@ 9@ 10@
  508. IF
  509. 8202: NOT actor $PLAYER_ACTOR near_car veh radius 7.0 7.0 sphere 0
  510. THEN
  511. 0AA5: call 0x4A0FA0 num_params 2 pop 0 20@v 8@v // TriggerTankFire
  512. END
  513. 0108: destroy_object 14@
  514.  
  515. 00AA: store_car veh position_to 8@ 9@ 10@
  516. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  517. 0AB1: call_scm_func @getAngleBetweenPoints 4 from_XY 5@ 6@ and_XY 8@ 9@ store_to 6@
  518. 0174: 7@ = car veh Z_angle
  519. 0063: 6@ -= 7@
  520. 02F6: 15@ = sine 6@
  521. 02F7: 16@ = cosine 6@
  522. 0013: 15@ *= 7.0
  523. 0013: 16@ *= 7.0
  524. 0013: 15@ *= -1.0
  525.  
  526. gosub @getVerticalAngle
  527. 00AA: store_car veh position_to 9@ 9@ 10@
  528. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  529. IF
  530. 0025: 7@ > 10@
  531. THEN
  532. 0013: 8@ *= 1.0
  533. 0087: 17@ = 8@
  534. ELSE
  535. 0013: 8@ *= 1.0
  536. 0087: 17@ = 8@
  537. END
  538. 0407: store_coords_to 8@ 9@ 10@ from_car veh with_offset 15@ 16@ 1.5
  539. 0107: 13@ = create_object 1582 at 8@ 9@ 10@
  540. 050E: set_object 13@ no_collision_with_car veh
  541. 0177: set_object 13@ Z_angle_to 6@
  542.  
  543. 0750: set_object 13@ visibility 0
  544. 04D9: object 13@ set_scripted_collision_check 1
  545. 0382: set_object 13@ collision_detection 1
  546. 0906: set_object 13@ mass_to 1000.0
  547. 0908: set_object 13@ turn_mass_to 1000.0
  548. 0006: 32@ = 0
  549. END
  550. END
  551. END
  552. END
  553. END
  554. END
  555. {$I CLEO\for_end}
  556. ELSE
  557. IF AND
  558. 810F: NOT player $PLAYER_CHAR wanted_level > 1
  559. 056D: actor 23@ defined
  560. THEN
  561. 01C2: remove_references_to_actor 23@
  562. END
  563. END
  564. END
  565.  
  566. :getAngleBetweenPoints
  567. 0063: 0@ -= 2@
  568. 0063: 1@ -= 3@
  569. 0604: get_Z_angle_for_point 0@ 1@ store_to 6@
  570. 0AB2: ret 1 6@
  571.  
  572. :getVerticalAngle
  573. 0407: store_coords_to 8@ 9@ 10@ from_car veh with_offset 0.0 0.0 0.0
  574. 00A0: store_actor $PLAYER_ACTOR position_to 5@ 6@ 7@
  575. 0063: 7@ -= 10@
  576. 0097: make 7@ absolute_float // a
  577. 050A: 11@ = distance_between_XYZ 8@ 9@ 10@ and_XYZ 5@ 6@ 7@ // c
  578. 0073: 7@ /= 11@ // SIN_VA
  579.  
  580. 0087: 8@ = 7@ // X
  581. 0087: 9@ = 7@ // X
  582. 0087: 5@ = 7@ // X
  583. 0087: 6@ = 7@ // X
  584. 0087: 7@ = 7@ // X
  585.  
  586. 006B: 9@ *= 7@ // X^2
  587. 006B: 9@ *= 7@ // X^3
  588. 006B: 5@ *= 7@ // X^4
  589. 006B: 5@ *= 7@ // X^5
  590. 006B: 6@ *= 7@ // X^6
  591. 006B: 6@ *= 7@ // X^7
  592. 006B: 7@ *= 7@ // X^8
  593. 006B: 7@ *= 7@ // X^9
  594.  
  595. 0017: 9@ /= 6.0 // X^3/6
  596.  
  597. 0013: 5@ *= 3.0
  598. 0017: 5@ /= 40.0 // 3X^5/40
  599.  
  600. 0013: 6@ *= 5.0
  601. 0017: 6@ /= 112.0 // 5X^7/112
  602.  
  603. 0013: 7@ *= 35.0
  604. 0017: 7@ /= 1152.0 // 35X^9/1152
  605.  
  606. 005B: 8@ += 9@
  607. 0087: 12@ = 8@
  608. 005B: 8@ += 5@
  609.  
  610. 005B: 8@ += 12@
  611. 0017: 8@ /= 2.0 // ARC SIN(SIN_VA)= VA
  612. return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement