Advertisement
Guest User

supremeTroll.cs

a guest
Nov 25th, 2014
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 48.92 KB | None | 0 0
  1. {$CLEO}
  2. 0000: NOP
  3. 0B34: samp register_client_command "pos" to_label @savepos
  4. 0B34: samp register_client_command "dpos" to_label @cancel
  5. 0B34: samp register_client_command "r2" to_label @rain
  6. 0B34: samp register_client_command "fw" to_label @fire
  7. 0B34: samp register_client_command "fwh" to_label @fire_h
  8. 0B34: samp register_client_command "ccars" to_label @count
  9. 0B34: samp register_client_command "trollinfo" to_label @info
  10. 0B34: samp register_client_command "hp" to_label @hp
  11. 0B34: samp register_client_command "hpu" to_label @hp_unoccupied
  12. 0B34: samp register_client_command "tp" to_label @tpto
  13. 0B34: samp register_client_command "sm" to_label @smash
  14. 0B34: samp register_client_command "col" to_label @collision
  15. 0B34: samp register_client_command "lag" to_label @lag
  16.  
  17. thread "supremeTroll"
  18. if
  19. 8AF7: get_samp_base_to 0@
  20. then
  21. 0A93: end_custom_thread
  22. end
  23. repeat
  24. wait 400
  25. until 0AFA: is_samp_structures_available
  26.  
  27. 0AB1: @RUN_CLEO 1 AT LINE @CLEO_showID
  28. //0AB1: @RUN_CLEO 1 AT LINE @CLEO_search
  29. 31@ = 0
  30.  
  31. :First
  32. wait 0
  33. if 31@ == 1
  34. then
  35. for 6@ = 0 to 1500
  36. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  37. then
  38. if
  39. 00DB: actor $PLAYER_ACTOR in_car 0@
  40. then
  41. wait 0
  42. else
  43. 046C: 2@ = car 0@ driver
  44. if
  45. 056D: actor 2@ defined
  46. then
  47. 0AB1: @Distance_player_car 2 Player $PLAYER_ACTOR Car 0@ Distance_store_to 1@
  48. if 0023: 50.0 > 1@
  49. then
  50. 099A: set_car 0@ collision_detection 0
  51. end
  52. end
  53. end
  54. end
  55. end
  56. end
  57.  
  58. if 30@ == 3
  59. then
  60. jump @Fireworks
  61. end
  62.  
  63. if 30@ == 4
  64. then
  65. jump @Firework_ID
  66. end
  67.  
  68. if 30@ == 5
  69. then
  70. jump @hp_ID
  71. end
  72.  
  73. if 30@ == 6
  74. then
  75. jump @tpto_ID
  76. end
  77.  
  78. if 30@ == 7
  79. then
  80. jump @rain_ID
  81. end
  82.  
  83. if 30@ == 8
  84. then
  85. jump @smash_ID
  86. end
  87.  
  88. if 30@ == 9
  89. then
  90. jump @Fireworks_h
  91. end
  92.  
  93. if 30@ == 10
  94. then
  95. jump @Firework_ID_h
  96. end
  97.  
  98. if 30@ == 11
  99. then
  100. jump @lagall
  101. end
  102.  
  103. if
  104. 30@ == 2
  105. jf @First
  106. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  107. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  108. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  109. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  110. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  111. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  112. 3@ += 5.000
  113. 5@ += 100.555
  114. 015F: set_camera_position 3@ 4@ 5@ rotation 0.0 0.0 0.0
  115. 3@ -= 5.000
  116. 5@ -= 100.555
  117. 0160: set_camera_point_at 3@ 4@ 5@ switchstyle 2
  118. 5@ += 80.555
  119. for 6@ = 0 to 1500
  120. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  121. then
  122. if
  123. 00DB: actor $PLAYER_ACTOR in_car 0@
  124. then 0@ = 0
  125. end
  126. if
  127. 056E: car 0@ defined
  128. then
  129. 046C: 2@ = car 0@ driver
  130. if
  131. 056D: actor 2@ defined
  132. then
  133. 33@ = 0
  134. repeat
  135. wait 0
  136. 0224: set_car 0@ health_to 0
  137. 00AB: put_car 0@ at 3@ 4@ 5@
  138. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  139. until 33@ > 300
  140. 5@ += 3.000
  141. end
  142. end
  143. end
  144. end
  145.  
  146. 14@ = Actor.CurrentCar($PLAYER_ACTOR)
  147. 0407: store_coords_to 11@ 12@ 13@ from_car 14@ with_offset 0.0 0.0 0.0
  148. 0362: remove_actor $PLAYER_ACTOR from_car_and_place_at 11@ 12@ 13@
  149. for 6@ = 0 to 1500
  150. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  151. then
  152. 046C: 2@ = car 0@ driver
  153. if
  154. 056D: actor 2@ defined
  155. then
  156. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  157. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  158. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  159. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  160. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  161. end
  162. end
  163. end
  164. 036A: put_actor $PLAYER_ACTOR in_car 14@
  165. wait 4700
  166. 015A: restore_camera
  167. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  168. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  169. 0B2D: write samp_memory 0x4830 value 23@ size 1
  170. 30@ = 0
  171. jump @First
  172.  
  173. :Fireworks
  174. wait 0
  175. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  176. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  177. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  178. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  179. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  180. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  181. 3@ += 5.000
  182. 5@ += 5.000
  183. 015F: set_camera_position 3@ 4@ 5@ rotation 0.0 0.0 0.0
  184. 3@ -= 5.000
  185. 5@ += 90.000
  186. 0160: set_camera_point_at 3@ 4@ 5@ switchstyle 2
  187. 5@ -= 85.000
  188. for 6@ = 0 to 1500
  189. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  190. then
  191. if
  192. 00DB: actor $PLAYER_ACTOR in_car 0@
  193. then 0@ = 0
  194. end
  195. if
  196. 056E: car 0@ defined
  197. then
  198. 046C: 2@ = car 0@ driver
  199. if
  200. 056D: actor 2@ defined
  201. then
  202. 33@ = 0
  203. repeat
  204. wait 0
  205. 0224: set_car 0@ health_to 340
  206. 00AB: put_car 0@ at 3@ 4@ 5@
  207. 0175: set_car 0@ Z_angle_to -90.0
  208. 0731: set_car 0@ y_angle_to -90.0
  209. 00AD: set_car 0@ max_speed_to 150.0
  210. 04BA: set_car 0@ speed_to 150.0
  211. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  212. until 33@ > 400
  213. 5@ -= 3.000
  214. end
  215. end
  216. end
  217. end
  218. wait 4700
  219. 015A: restore_camera
  220. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  221. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  222. 0B2D: write samp_memory 0x4830 value 23@ size 1
  223. 30@ = 0
  224. jump @First
  225.  
  226.  
  227. :Firework_ID
  228. wait 0
  229. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  230. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  231. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  232. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  233. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  234. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  235. if
  236. 056D: actor 27@ defined
  237. then
  238. if
  239. 00DF: actor 27@ driving
  240. then
  241. 0@ = Actor.CurrentCar(27@)
  242. 00AA: store_car 0@ position_to 3@ 4@ 5@
  243. 5@ += 5.000
  244. 33@ = 0
  245. repeat
  246. wait 0
  247. 0224: set_car 0@ health_to 340
  248. 00AB: put_car 0@ at 3@ 4@ 5@
  249. 0175: set_car 0@ Z_angle_to -90.0
  250. 0731: set_car 0@ y_angle_to -90.0
  251. 00AD: set_car 0@ max_speed_to 150.0
  252. 04BA: set_car 0@ speed_to 150.0
  253. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  254. until 33@ > 300
  255. else
  256. 0AD1: show_formatted_text_highpriority "Specified player must be driving" time 800
  257. end
  258. else
  259. 0AD1: show_formatted_text_highpriority "Player is out of range or offline" time 800
  260. end
  261.  
  262. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  263. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  264. 0B2D: write samp_memory 0x4830 value 23@ size 1
  265. 30@ = 1
  266. jump @First
  267.  
  268. :Fireworks_h
  269. wait 0
  270. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  271. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  272. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  273. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  274. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  275. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  276. 3@ += 5.000
  277. 5@ += 5.000
  278. 015F: set_camera_position 3@ 4@ 5@ rotation 0.0 0.0 0.0
  279. 3@ -= 5.000
  280. 5@ += 90.000
  281. 0160: set_camera_point_at 3@ 4@ 5@ switchstyle 2
  282. 5@ -= 85.000
  283. for 6@ = 0 to 1500
  284. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  285. then
  286. if
  287. 00DB: actor $PLAYER_ACTOR in_car 0@
  288. then 0@ = 0
  289. end
  290. if
  291. 056E: car 0@ defined
  292. then
  293. 046C: 2@ = car 0@ driver
  294. if
  295. 056D: actor 2@ defined
  296. then
  297. 33@ = 0
  298. repeat
  299. wait 0
  300. 00AB: put_car 0@ at 3@ 4@ 5@
  301. 0175: set_car 0@ Z_angle_to -90.0
  302. 0731: set_car 0@ y_angle_to -90.0
  303. 00AD: set_car 0@ max_speed_to 450.0
  304. 04BA: set_car 0@ speed_to 450.0
  305. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  306. until 33@ > 400
  307. 5@ -= 3.000
  308. end
  309. end
  310. end
  311. end
  312. wait 4700
  313. 015A: restore_camera
  314. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  315. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  316. 0B2D: write samp_memory 0x4830 value 23@ size 1
  317. 30@ = 0
  318. jump @First
  319.  
  320.  
  321. :Firework_ID_h
  322. wait 0
  323. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  324. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  325. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  326. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  327. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  328. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  329. if
  330. 056D: actor 27@ defined
  331. then
  332. if
  333. 00DF: actor 27@ driving
  334. then
  335. 0@ = Actor.CurrentCar(27@)
  336. 00AA: store_car 0@ position_to 3@ 4@ 5@
  337. 5@ += 5.000
  338. 33@ = 0
  339. repeat
  340. wait 0
  341. 00AB: put_car 0@ at 3@ 4@ 5@
  342. 0175: set_car 0@ Z_angle_to -90.0
  343. 0731: set_car 0@ y_angle_to -90.0
  344. 00AD: set_car 0@ max_speed_to 450.0
  345. 04BA: set_car 0@ speed_to 450.0
  346. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  347. until 33@ > 300
  348. else
  349. 0AD1: show_formatted_text_highpriority "Specified player must be driving" time 800
  350. end
  351. else
  352. 0AD1: show_formatted_text_highpriority "Player is out of range or offline" time 800
  353. end
  354. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  355. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  356. 0B2D: write samp_memory 0x4830 value 23@ size 1
  357. 30@ = 1
  358. jump @First
  359.  
  360.  
  361. :hp_ID
  362. wait 0
  363. 33@ = 0
  364. 20@ *= 10
  365. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  366. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  367. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  368. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  369. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  370. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  371. repeat
  372. wait 0
  373. 0224: set_car 0@ health_to 20@
  374. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  375. until 33@ > 300
  376. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  377. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  378. 0B2D: write samp_memory 0x4830 value 23@ size 1
  379. 30@ = 0
  380. jump @First
  381.  
  382. :tpto_ID
  383. wait 0
  384. 33@ = 0
  385. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  386. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  387. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  388. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  389. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  390. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  391. repeat
  392. wait 0
  393. 00AB: put_car 0@ at 3@ 4@ 5@
  394. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  395. until 33@ > 300
  396. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  397. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  398. 0B2D: write samp_memory 0x4830 value 23@ size 1
  399. 30@ = 0
  400. jump @First
  401.  
  402. :smash_ID
  403. wait 0
  404. 33@ = 0
  405. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  406. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  407. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  408. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  409. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  410. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  411. repeat
  412. wait 0
  413. 0175: set_car 0@ Z_angle_to 6@
  414. 00AB: put_car 0@ at 3@ 4@ 5@
  415. 00AD: set_car 0@ max_speed_to 200.0
  416. 04BA: set_car 0@ speed_to 200.0
  417. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  418. until 33@ > 300
  419. wait 500
  420. repeat
  421. wait 0
  422. 04BA: set_car 0@ speed_to 15@
  423. 0175: set_car 0@ Z_angle_to 14@
  424. 00AB: put_car 0@ at 11@ 12@ 13@
  425. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  426. until 33@ > 300
  427. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  428. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  429. 0B2D: write samp_memory 0x4830 value 23@ size 1
  430. 30@ = 0
  431. jump @First
  432.  
  433. :rain_ID
  434. wait 0
  435. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  436. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  437. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  438. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  439. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  440. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  441. 5@ += 80.555
  442. repeat
  443. wait 0
  444. 0224: set_car 0@ health_to 0
  445. 00AB: put_car 0@ at 3@ 4@ 5@
  446. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  447. until 33@ > 300
  448. 14@ = Actor.CurrentCar($PLAYER_ACTOR)
  449. 0407: store_coords_to 11@ 12@ 13@ from_car 14@ with_offset 0.0 0.0 0.0
  450. 0362: remove_actor $PLAYER_ACTOR from_car_and_place_at 11@ 12@ 13@
  451. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  452. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  453. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  454. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  455. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  456. 036A: put_actor $PLAYER_ACTOR in_car 14@
  457. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  458. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  459. 0B2D: write samp_memory 0x4830 value 23@ size 1
  460. 30@ = 0
  461. jump @First
  462.  
  463.  
  464. :lagall
  465. wait 0
  466. 0B2E: 21@ = read_samp_memory 0x12D60 size 2
  467. 0B2D: write samp_memory 0x12D60 value 0xC390 size 2
  468. 0B2E: 22@ = read_samp_memory 0x13FA0 size 2
  469. 0B2D: write samp_memory 0x13FA0 value 0xC390 size 2
  470. 0B2E: 23@ = read_samp_memory 0x4830 size 1
  471. 0B2D: write samp_memory 0x4830 value 0xC3 size 1
  472. for 6@ = 0 to 1500
  473. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  474. then
  475. 00AB: put_car 0@ at 3@ 4@ 5@
  476. 0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  477. end
  478. end
  479.  
  480. 0087: 7@ = 5@ // (float)
  481.  
  482. for 6@ = 0 to 1500
  483. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  484. then
  485. 00AB: put_car 0@ at 3@ 4@ 7@
  486. 7@ += 1.0
  487. end
  488. end
  489. 0B2D: write samp_memory 0x12D60 value 21@ size 2
  490. 0B2D: write samp_memory 0x13FA0 value 22@ size 2
  491. 0B2D: write samp_memory 0x4830 value 23@ size 1
  492. 30@ = 1
  493. jump @First
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501. //commands//commands//commands//commands//commands//commands
  502. //commands//commands//commands//commands//commands//commands
  503. //commands//commands//commands//commands//commands//commands
  504. //commands//commands//commands//commands//commands//commands
  505. //commands//commands//commands//commands//commands//commands
  506.  
  507.  
  508.  
  509. :fire
  510. wait 0
  511. if
  512. 00DF: actor $PLAYER_ACTOR driving
  513. then
  514. 0B35: samp 25@ = get_last_command_params
  515. if
  516. 0AD4: 26@ = scan_string 25@ format "%d" 24@ //IF and SET
  517. then
  518. 30@ = 4
  519. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  520. else
  521. if 30@ == 1
  522. then
  523. 30@ = 3
  524. 03BD: destroy_sphere 7@
  525. else
  526. 0AD1: show_formatted_text_highpriority "Save the position first [/pos])" time 800
  527. end
  528. end
  529. else
  530. 0AD1: show_formatted_text_highpriority "You must be driving" time 800
  531. end
  532. Samp.CmdRet
  533.  
  534. :fire_h
  535. wait 0
  536. if
  537. 00DF: actor $PLAYER_ACTOR driving
  538. then
  539. 0B35: samp 25@ = get_last_command_params
  540. if
  541. 0AD4: 26@ = scan_string 25@ format "%d" 24@ //IF and SET
  542. then
  543. 30@ = 10
  544. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  545. else
  546. if 30@ == 1
  547. then
  548. 30@ = 9
  549. 03BD: destroy_sphere 7@
  550. else
  551. 0AD1: show_formatted_text_highpriority "Save the position first [/pos])" time 800
  552. end
  553. end
  554. else
  555. 0AD1: show_formatted_text_highpriority "You must be driving" time 800
  556. end
  557. Samp.CmdRet
  558.  
  559. :hp
  560. wait 0
  561. if
  562. 00DF: actor $PLAYER_ACTOR driving
  563. then
  564. 0B35: samp 25@ = get_last_command_params
  565. if
  566. 0AD4: 26@ = scan_string 25@ format "%d %d" 24@ 20@ //IF and SET
  567. then
  568. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  569. if
  570. 056D: actor 27@ defined
  571. then
  572. if
  573. 00DF: actor 27@ driving
  574. then
  575. 0@ = Actor.CurrentCar(27@)
  576. 30@ = 5
  577. else
  578. 0AD1: show_formatted_text_highpriority "Specified player must be driving" time 800
  579. end
  580. else
  581. 0AD1: show_formatted_text_highpriority "Specified player is out of range" time 800
  582. end
  583. else
  584. 0AD1: show_formatted_text_highpriority "Wrong format [/hp <driverID> <health>]" time 800
  585. end
  586. else
  587. 0AD1: show_formatted_text_highpriority "You must be driving" time 800
  588. end
  589. Samp.CmdRet
  590.  
  591. :hp_unoccupied
  592. wait 0
  593. if
  594. 00DF: actor $PLAYER_ACTOR driving
  595. then
  596. 0B35: samp 25@ = get_last_command_params
  597. if
  598. 0AD4: 26@ = scan_string 25@ format "%d %d" 24@ 20@ //IF and SET
  599. then
  600. 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 24@
  601. if
  602. 056E: car 0@ defined
  603. then
  604. 30@ = 5
  605. else
  606. 0AD1: show_formatted_text_highpriority "Specified car is out of range" time 800
  607. end
  608. else
  609. 0AD1: show_formatted_text_highpriority "Wrong format [/hpu <car ID> <health>]" time 800
  610. end
  611. else
  612. 0AD1: show_formatted_text_highpriority "You must be driving" time 800
  613. end
  614. Samp.CmdRet
  615.  
  616.  
  617. :tpto
  618. wait 0
  619. if
  620. 00DF: actor $PLAYER_ACTOR driving
  621. then
  622. 0B35: samp 25@ = get_last_command_params
  623. if
  624. 0AD4: 26@ = scan_string 25@ format "%d to %d" 24@ 23@ //IF and SET
  625. then
  626. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@ //victim
  627. 0B20: samp 26@ = actor_handle_by_samp_player_id 23@ //tp to this person
  628. if
  629. 056D: actor 27@ defined
  630. then
  631. if
  632. 056D: actor 26@ defined
  633. then
  634. if
  635. 00DF: actor 27@ driving
  636. then
  637. 0@ = Actor.CurrentCar(27@)
  638. 00A0: store_actor 26@ position_to 3@ 4@ 5@
  639. 0172: 6@ = actor 26@ Z_angle
  640. 0AB1: call_scm_func @get3DXYZInFrontOf 6 XYZ 3@ 4@ 5@ Z_Angle 6@ Y_Angle 0.0 Distance 6.0 Return_XYZ_To 3@ 4@ 5@
  641. 30@ = 6
  642. 03BD: destroy_sphere 7@
  643. else
  644. 0AD1: show_formatted_text_highpriority "Specified player must be driving" time 800
  645. end
  646. else
  647. 0AD1: show_formatted_text_highpriority "1st stage 23@ Specified player is out of range. ID:%d" time 800 23@
  648. end
  649. else
  650. 0AD1: show_formatted_text_highpriority "1st stage 24@ Specified player is out of range. ID:%d" time 800 24@
  651. end
  652. else
  653. if
  654. 0AD4: 26@ = scan_string 25@ format "%d to pos" 24@
  655. then
  656. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  657. if
  658. 056D: actor 27@ defined
  659. then
  660. if
  661. 00DF: actor 27@ driving
  662. then
  663. if
  664. 0C18: 2@ = strstr string1 25@ string2 "pos"
  665. then
  666. if 30@ == 1
  667. then
  668. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  669. 0@ = Actor.CurrentCar(27@)
  670. 30@ = 6
  671. 03BD: destroy_sphere 7@
  672. 04BA: set_car 0@ speed_to 0.0
  673. else
  674. 0AD1: show_formatted_text_highpriority "Save the position first [/pos])" time 800
  675. end
  676. else
  677. if
  678. 0C18: 2@ = strstr string1 25@ string2 "mc"
  679. then
  680. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  681. 0@ = Actor.CurrentCar(27@)
  682. 30@ = 6
  683. 03BD: destroy_sphere 7@
  684. 3@ = -2210.77
  685. 4@ = -1761.75
  686. 5@ = 485.082
  687. 0731: set_car 0@ y_angle_to 0.00
  688. 0175: set_car 0@ Z_angle_to 265.848
  689. 04BA: set_car 0@ speed_to 3.0
  690. else
  691. if
  692. 0C18: 2@ = strstr string1 25@ string2 "tw"
  693. then
  694. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  695. 0@ = Actor.CurrentCar(27@)
  696. 30@ = 6
  697. 03BD: destroy_sphere 7@
  698. 3@ = 1551.4
  699. 4@ = -1371.48
  700. 5@ = 316.938
  701. 0731: set_car 0@ y_angle_to 0.00
  702. 0175: set_car 0@ Z_angle_to 108.440
  703. 04BA: set_car 0@ speed_to 0.0
  704. else
  705. if
  706. 0C18: 2@ = strstr string1 25@ string2 "pd"
  707. then
  708. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  709. 0@ = Actor.CurrentCar(27@)
  710. 30@ = 6
  711. 03BD: destroy_sphere 7@
  712. 3@ = 1536.53
  713. 4@ = -1675.91
  714. 5@ = 5.800
  715. 0731: set_car 0@ y_angle_to 0.00
  716. 04BA: set_car 0@ speed_to 0.0
  717. else
  718. 0AD1: show_formatted_text_highpriority "Wrong format [/r2info]" time 800
  719. end
  720. end
  721. end
  722. end
  723. else
  724. 0AD1: show_formatted_text_highpriority "Specified player must be driving" time 800
  725. end
  726. else
  727. 0AD1: show_formatted_text_highpriority "2. stage Specified player is out of range. ID:%d" time 800 24@
  728. end
  729. end
  730. end
  731. else
  732. 0AD1: show_formatted_text_highpriority "You must be driving" time 800
  733. end
  734. Samp.CmdRet
  735.  
  736. :smash
  737. wait 0
  738. if
  739. 00DF: actor $PLAYER_ACTOR driving
  740. then
  741. 0B35: samp 25@ = get_last_command_params
  742. if
  743. 0AD4: 26@ = scan_string 25@ format "%d %d" 24@ 23@ //IF and SET
  744. then
  745. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@ //victim
  746. 0B20: samp 26@ = actor_handle_by_samp_player_id 23@ //tp to this person
  747. if
  748. 056D: actor 27@ defined
  749. then
  750. if
  751. 056D: actor 26@ defined
  752. then
  753. if
  754. 00DF: actor 27@ driving
  755. then
  756. 0@ = Actor.CurrentCar(27@)
  757. 0172: 14@ = actor 27@ Z_angle
  758. 02E3: 15@ = car 0@ speed
  759. 00A0: store_actor 26@ position_to 3@ 4@ 5@
  760. 0172: 6@ = actor 26@ Z_angle
  761. 0AB1: call_scm_func @get3DXYZInFrontOf 6 XYZ 3@ 4@ 5@ Z_Angle 6@ Y_Angle 0.0 Distance 3.0 Return_XYZ_To 3@ 4@ 5@
  762. 00A0: store_actor 27@ position_to 11@ 12@ 13@
  763. if
  764. 0021: 6@ > 180.0
  765. then
  766. 000F: 6@ -= 180.0
  767. else
  768. 000B: 6@ += 180.0
  769. end
  770. 30@ = 8
  771. 03BD: destroy_sphere 7@
  772. else
  773. 0AD1: show_formatted_text_highpriority "Specified player must be driving" time 800
  774. end
  775. else
  776. 0AD1: show_formatted_text_highpriority "Specified player is out of range. ID:%d" time 800 23@
  777. end
  778. else
  779. 0AD1: show_formatted_text_highpriority "Specified player is out of range. ID:%d" time 800 24@
  780. end
  781. end
  782. else
  783. 0AD1: show_formatted_text_highpriority "You must be driving" time 800
  784. end
  785. Samp.CmdRet
  786.  
  787. :rain
  788. wait 0
  789. if
  790. 00DF: actor $PLAYER_ACTOR driving
  791. then
  792. 0B35: samp 25@ = get_last_command_params
  793. if
  794. 0AD4: 26@ = scan_string 25@ format "%d" 24@ //IF and SET
  795. then
  796. if
  797. 0B20: samp 27@ = actor_handle_by_samp_player_id 24@
  798. then
  799. if
  800. 00DF: actor 27@ driving
  801. then
  802. 30@ = 7
  803. 03BD: destroy_sphere 7@
  804. 00A0: store_actor 27@ position_to 3@ 4@ 5@
  805. 0@ = Actor.CurrentCar(27@)
  806. else
  807. 0AD1: show_formatted_text_highpriority "Specified player must be driving" time 800
  808. end
  809. else
  810. 0AD1: show_formatted_text_highpriority "Specified player is out of range. ID:%d" time 800 24@
  811. end
  812. else
  813. if 30@ == 1
  814. then
  815. 30@ = 2
  816. 03BD: destroy_sphere 7@
  817. else
  818. 0AD1: show_formatted_text_highpriority "Save the position first [/pos])" time 800
  819. end
  820. end
  821. else
  822. 0AD1: show_formatted_text_highpriority "You must be driving" time 800
  823. end
  824. Samp.CmdRet
  825.  
  826.  
  827. :savepos
  828. wait 0
  829. 03BD: destroy_sphere 7@
  830. 00A0: store_actor $PLAYER_ACTOR position_to 3@ 4@ 5@
  831. 03BC: 7@ = create_sphere_at 3@ 4@ 5@ radius 15.0
  832. 018C: play_sound 1052 at 0.0 0.0 0.0
  833. 29@ = 0
  834. for 6@ = 0 to 1500
  835. if 0AFF: samp 28@ = car_handle_by_samp_vehicle_id 6@
  836. then
  837. 046C: 2@ = car 28@ driver
  838. if
  839. 056D: actor 2@ defined
  840. then
  841. 29@++
  842. end
  843. end
  844. end
  845. if
  846. 00DF: actor $PLAYER_ACTOR driving
  847. then
  848. 29@ -= 1
  849. end
  850. 0AD1: show_formatted_text_highpriority "Position saved (~B~%d ~W~occupied vehicles in the area)" time 800 29@
  851. 30@ = 1
  852. Samp.CmdRet
  853.  
  854. :cancel
  855. wait 0
  856. 03BD: destroy_sphere 7@
  857. 018C: play_sound 1053 at 0.0 0.0 0.0
  858. 0AD1: show_formatted_text_highpriority "Position deleted" time 800
  859. 3@ = 0.0
  860. 4@ = 0.0
  861. 5@ = 0.0
  862. 30@ = 0
  863. Samp.CmdRet
  864.  
  865. :count
  866. wait 0
  867. 29@ = 0
  868. for 6@ = 0 to 1500
  869. if 0AFF: samp 28@ = car_handle_by_samp_vehicle_id 6@
  870. then
  871. 046C: 2@ = car 28@ driver
  872. if
  873. 056D: actor 2@ defined
  874. then
  875. 29@++
  876. end
  877. end
  878. end
  879. if
  880. 00DF: actor $PLAYER_ACTOR driving
  881. then
  882. 29@ -= 1
  883. end
  884. 0AD1: "~B~%d ~W~occupied vehicles in the area" 800 29@
  885. Samp.CmdRet
  886.  
  887. :collision
  888. wait 0
  889. if
  890. 00DF: actor $PLAYER_ACTOR driving
  891. then
  892. 0B12: 31@ = 31@ XOR 1
  893. if 31@ == 0
  894. then
  895. for 6@ = 0 to 1500
  896. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  897. then
  898. 099A: set_car 0@ collision_detection 1
  899. 0AD1: "No collision ~R~off" 800
  900. end
  901. end
  902. else
  903. 0AD1: "No collision ~G~on" 800
  904. end
  905. else
  906. 31@ = 0
  907. 0AD1: "You must be driving" 800
  908. end
  909. Samp.CmdRet
  910.  
  911. :lag
  912. wait 0
  913. if 30@ == 1
  914. then
  915. 30@ = 11
  916. 03BD: destroy_sphere 7@
  917. else
  918. 0AD1: show_formatted_text_highpriority "Save the position first [/pos])" time 800
  919. end
  920. Samp.CmdRet
  921.  
  922. :info
  923. wait 0
  924. 0AF8: samp add_message_to_chat "{00A4E6}supremeTroll commands:" color 0xFFFFFFFF
  925. 0AF8: samp add_message_to_chat "{FFFFFF}/pos {F7F694}(save position) " color 0xFFFFFFFF
  926. 0AF8: samp add_message_to_chat "{FFFFFF}/dpos {F7F694}(delete last saved position)" color 0xFFFFFFFF
  927. 0AF8: samp add_message_to_chat "{FFFFFF}/r2 {F7F694}(set rain over your last saved position - occupied vehicles only)[ejects me from the car for a moment]" color 0xFFFFFFFF
  928. 0AF8: samp add_message_to_chat "{FFFFFF}/r2 <driverID> {F7F694}(throw a single raindrop)[ejects me from the car for a moment]" color 0xFFFFFFFF
  929. 0AF8: samp add_message_to_chat "{FFFFFF}/fw {F7F694}(set fireworks over your last saved position - occupied vehicles only)" color 0xFFFFFFFF
  930. 0AF8: samp add_message_to_chat "{FFFFFF}/fw <driverID> {F7F694}(throws a specific player upwards)" color 0xFFFFFFFF
  931. 0AF8: samp add_message_to_chat "{FFFFFF}/fwh {F7F694}(higher speed + no hp change)" color 0xFFFFFFFF
  932. 0AF8: samp add_message_to_chat "{FFFFFF}/fwh <driverID> {F7F694}(higher speed + no hp change)" color 0xFFFFFFFF
  933. 0AF8: samp add_message_to_chat "{FFFFFF}/ccars {F7F694}(counts occupied vehicles in the area)" color 0xFFFFFFFF
  934. 0AF8: samp add_message_to_chat "{FFFFFF}/hp <driverID> <carhp> {F7F694}(set hp of a specific car around you)" color 0xFFFFFFFF
  935. 0AF8: samp add_message_to_chat "{FFFFFF}/hpu <carID> <carhp> {F7F694}(set hp of a specific unoccupied car around you)(use /dl to get carID)" color 0xFFFFFFFF
  936. 0AF8: samp add_message_to_chat "{FFFFFF}/ch {F7F694}(makes your car heavy)" color 0xFFFFFFFF
  937. 0AF8: samp add_message_to_chat "{FFFFFF}/tp <driverID> to <playerID> {F7F694}(teleport a driver to streamed in player)" color 0xFFFFFFFF
  938. 0AF8: samp add_message_to_chat "{FFFFFF}/tp <driverID> to <placename> {F7F694} [mc - Mount Chillad][tw - LS Tower][pd - Police Department]" color 0xFFFFFFFF
  939. 0AF8: samp add_message_to_chat "{FFFFFF}/sm <driverID> <playerID> {F7F694} (smashes the driver into another player)" color 0xFFFFFFFF
  940. 0AF8: samp add_message_to_chat "{FFFFFF}/showid {F7F694} (shows IDs of the streamed players)" color 0xFFFFFFFF
  941. 0AF8: samp add_message_to_chat "{FFFFFF}/showcarid {F7F694} (shows IDs and health of the streamed vehicles)" color 0xFFFFFFFF
  942. 0AF8: samp add_message_to_chat "{FFFFFF}/s1 <Name_Surname> {F7F694} (Player indicator) [from /s1 to /s9]" color 0xFFFFFFFF
  943. 0AF8: samp add_message_to_chat "{F7F694} ({00A4E6}blue {FFFFFF}- in car; white - on foot; {A6A6A6}grey {FFFFFF}- streamed out; {474747}black {FFFFFF}- offline)" color 0xFFFFFFFF
  944. 0AF8: samp add_message_to_chat "{FFFFFF}/sswitch {F7F694} (hides/shows the current search)" color 0xFFFFFFFF
  945. 0AF8: samp add_message_to_chat "{FFFFFF}/col{F7F694} (you can ram a tank with your faggio)" color 0xFFFFFFFF
  946. 0AF8: samp add_message_to_chat "{FFFFFF}/lag {F7F694} (lags the surrounding players by tping all unoccupied vehicles to one spot)" color 0xFFFFFFFF
  947. Samp.CmdRet
  948.  
  949. const
  950. PACKET_VEHICLE_SYNC = 219
  951. BS_TYPE_BYTE = 0
  952. BS_TYPE_ARRAY = 5
  953. end
  954.  
  955. //0AB1: @SYNC_VEHICLE 1 HANDLE 0@
  956. :SYNC_VEHICLE
  957. IF
  958. 0B2C: 1@ = get_vehicle_id_by_car_handle 0@
  959. THEN
  960. 0AC8: 31@ = allocate_memory_size 63 // struct stInCarData ( size = 63 )
  961. 0C0D: struct 31@ offset 0 size 2 = 1@ // sVehicleID;
  962. 0C0D: struct 31@ offset 2 size 2 = 0 // sLeftRightKeys;
  963. 0C0D: struct 31@ offset 4 size 2 = 0 // sUpDownKeys;
  964. 0C0D: struct 31@ offset 6 size 2 = 0 // sKeys;
  965. 0A97: 17@ = car 0@ struct
  966. 17@ += 0x14
  967. 0A8D: 17@ = read_memory 17@ size 4 virtual_protect 0
  968. 0AB1: call_scm_func @Quaternion_get 1 matrix_pointer 17@ Quat_x 18@ Quat_y 19@ Quat_z 20@ Quat_w 21@
  969. 0C0D: struct 31@ offset 8 size 4 = 18@
  970. 0C0D: struct 31@ offset 12 size 4 = 19@
  971. 0C0D: struct 31@ offset 16 size 4 = 20@
  972. 0C0D: struct 31@ offset 20 size 4 = 21@
  973. 0407: store_coords_to 24@ 23@ 22@ from_car 0@ with_offset 0.0 0.0 0.0
  974. 0C0D: struct 31@ offset 24 size 4 = 24@
  975. 0C0D: struct 31@ offset 28 size 4 = 23@
  976. 0C0D: struct 31@ offset 32 size 4 = 22@
  977. 0A97: 22@ = car 0@ struct
  978. 22@ += 68 //Snippet by OpcodeXe
  979. 0A8D: 21@ = read_memory 22@ size 4 virtual_protect 0
  980. 22@ += 0x4
  981. 0A8D: 20@ = read_memory 22@ size 4 virtual_protect 0
  982. 22@ += 0x4
  983. 0A8D: 19@ = read_memory 22@ size 4 virtual_protect 0
  984. 0C0D: struct 31@ offset 36 size 4 = 21@
  985. 0C0D: struct 31@ offset 40 size 4 = 20@
  986. 0C0D: struct 31@ offset 44 size 4 = 19@
  987. 0227: 18@ = car 0@ health
  988. 0093: 17@ = integer 18@ to_float
  989. 0C0D: struct 31@ offset 48 size 4 = 17@ // car hp
  990. 0226: 17@ = actor $PLAYER_ACTOR health
  991. 0C0D: struct 31@ offset 52 size 1 = 17@ // PLAYER
  992. 04DD: 16@ = actor $PLAYER_ACTOR armour
  993. 0C0D: struct 31@ offset 53 size 1 = 16@ // ARMOUR
  994. 0C0D: struct 31@ offset 54 size 1 = 0 // weapon
  995. 0C0D: struct 31@ offset 55 size 1 = 0 // siren
  996. 0C0D: struct 31@ offset 56 size 1 = 0
  997. 0C0D: struct 31@ offset 57 size 2 = 0
  998. 0C0D: struct 31@ offset 59 size 4 = 0.0 // train speed
  999. 0B3D: raknet 29@ = new_bit_stream
  1000. 0B40: raknet bit_stream 29@ write PACKET_VEHICLE_SYNC type BS_TYPE_BYTE size 1
  1001. 0B40: raknet bit_stream 29@ write 31@ type BS_TYPE_ARRAY size 63
  1002. 0B8B: raknet send bit_stream 29@
  1003. 0B3E: raknet delete_bit_stream 29@
  1004. 0AC9: free_allocated_memory 31@
  1005. END
  1006. 0AB2: 0
  1007.  
  1008. :Quaternion_get
  1009. 0C0C: 1@ = struct 0@ offset 0 size 4
  1010. 0C0C: 2@ = struct 0@ offset 4 size 4
  1011. 0C0C: 3@ = struct 0@ offset 8 size 4
  1012. 0C0C: 4@ = struct 0@ offset 16 size 4
  1013. 0C0C: 5@ = struct 0@ offset 20 size 4
  1014. 0C0C: 6@ = struct 0@ offset 24 size 4
  1015. 0C0C: 7@ = struct 0@ offset 32 size 4
  1016. 0C0C: 8@ = struct 0@ offset 36 size 4
  1017. 0C0C: 9@ = struct 0@ offset 40 size 4
  1018.  
  1019. 005B: 10@ = 1@
  1020. 005B: 10@ += 5@
  1021. 005B: 10@ += 9@
  1022.  
  1023. if 0021: 10@ > 0.0
  1024. then
  1025. 0007: 0@ = 0.5
  1026. 000B: 10@ += 1.0
  1027. 01FB: sqrt 10@ store_to 10@
  1028. 0073: 0@ /= 10@ //s
  1029. 0007: 15@ = 0.25
  1030. 0073: 15@ /= 0@ //w
  1031. 005B: 16@ = 8@ //x
  1032. 0063: 16@ -= 6@
  1033. 006B: 16@ *= 0@
  1034. 005B: 17@ = 3@ //y
  1035. 0063: 17@ -= 7@
  1036. 006B: 17@ *= 0@
  1037. 005B: 18@ = 4@ //z
  1038. 0063: 18@ -= 2@
  1039. 006B: 18@ *= 0@
  1040. else if and
  1041. 0025: 1@ > 5@
  1042. 0025: 1@ > 9@
  1043. then
  1044. 0007: 0@ = 2.0
  1045. 0007: 10@ = 1.0
  1046. 005B: 10@ += 1@
  1047. 0063: 10@ -= 5@
  1048. 0063: 10@ -= 9@
  1049. 01FB: sqrt 10@ store_to 10@
  1050. 006B: 0@ *= 10@ //s
  1051. 005B: 15@ = 8@ //w
  1052. 0063: 15@ -= 6@
  1053. 0073: 15@ /= 0@
  1054. 0007: 16@ = 0.25 //x
  1055. 006B: 16@ *= 0@
  1056. 005B: 17@ = 2@
  1057. 005B: 17@ += 4@
  1058. 0073: 17@ /= 0@
  1059. 005B: 18@ = 3@
  1060. 005B: 18@ += 7@
  1061. 0073: 18@ /= 0@
  1062. else if 0025: 5@ > 9@
  1063. then
  1064. 0007: 0@ = 2.0
  1065. 0007: 10@ = 1.0
  1066. 005B: 10@ += 5@
  1067. 0063: 10@ -= 1@
  1068. 0063: 10@ -= 9@
  1069. 01FB: sqrt 10@ store_to 10@
  1070. 006B: 0@ *= 10@ //s
  1071. 005B: 15@ = 3@ //w
  1072. 0063: 15@ -= 7@
  1073. 0073: 15@ /= 0@
  1074. 005B: 16@ = 2@ //x
  1075. 005B: 16@ += 4@
  1076. 0073: 16@ /= 0@
  1077. 0007: 17@ = 0.25 //y
  1078. 006B: 17@ *= 0@
  1079. 005B: 18@ = 6@ //z
  1080. 005B: 18@ += 8@
  1081. 0073: 18@ /= 0@
  1082. else
  1083. 0007: 0@ = 2.0
  1084. 0007: 10@ = 1.0
  1085. 005B: 10@ += 9@
  1086. 0063: 10@ -= 1@
  1087. 0063: 10@ -= 5@
  1088. 01FB: sqrt 10@ store_to 10@
  1089. 006B: 0@ *= 10@ //s
  1090. 005B: 15@ = 4@ //w
  1091. 0063: 15@ -= 2@
  1092. 0073: 15@ /= 0@
  1093. 005B: 16@ = 3@ //x
  1094. 005B: 16@ += 7@
  1095. 0073: 16@ /= 0@
  1096. 005B: 17@ = 6@ //y
  1097. 005B: 17@ += 8@
  1098. 0073: 17@ /= 0@
  1099. 0007: 18@ = 0.25 //z
  1100. 006B: 18@ *= 0@
  1101. end
  1102. end
  1103. end
  1104. 0AB2: ret 4 15@ 16@ 17@ 18@
  1105.  
  1106.  
  1107. //0AB1: call_scm_func @get3DXYZInFrontOf 6 XYZ 1@ 2@ 3@ Z_Angle 4@ Y_Angle 5@ Distance 7.0 Return_XYZ_To 6@ 7@ 8@
  1108. :get3DXYZInFrontOf{X,Y,Z,ZA,YA,Distance}
  1109. 3@ *= -1.0
  1110. 02F6: 6@ = sine 3@
  1111. 006B: 6@ *= 5@
  1112. 005B: 0@ += 6@
  1113. 02F7: 6@ = cosine 3@
  1114. 006B: 6@ *= 5@
  1115. 005B: 1@ += 6@
  1116. 02F7: 6@ = cosine 4@
  1117. 0073: 5@ /= 6@
  1118. 02F6: 6@ = sine 4@
  1119. 006B: 5@ *= 6@
  1120. 005B: 2@ += 5@
  1121. 0AB2: ret 3 0@ 1@ 2@
  1122.  
  1123. //0AB1: @RUN_CLEO 8 AT LINE @Box_Actor_Timed TIME 1000 Actor_handle 1@ RGBA 0 204 0 255 THICKNESS 2.0
  1124. :RUN_CLEO
  1125. 0A9F: 32@ = current_thread_pointer
  1126. 000A: 32@ += 0x10
  1127. 0A8D: 32@ = read_memory 32@ size 4 virtual_protect 0
  1128. 0062: 32@ -= 0@
  1129. 0AA7: call_function 0x464C20 num_params 1 pop 1 32@ 33@
  1130. 005A: 32@ += 0@
  1131. 000A: 33@ += 0x10
  1132. 0A8C: write_memory 33@ size 4 value 32@ virtual_protect 0
  1133. 000A: 33@ += 0x2C
  1134. for 32@ = 0 to 30
  1135. 0A8C: write_memory 33@ size 4 value 1@(32@,30i) virtual_protect 0
  1136. 000A: 33@ += 4
  1137. end
  1138. 0AB2: ret 0
  1139.  
  1140. :Distance_player_car
  1141. 00A0: store_actor 0@ position_to 2@ 3@ 4@
  1142. 00AA: store_car 1@ position_to 5@ 6@ 7@
  1143. 050A: 8@ = distance_between_XYZ 2@ 3@ 4@ and_XYZ 5@ 6@ 7@
  1144. 0AB2: ret 1 8@
  1145.  
  1146.  
  1147.  
  1148. //////////////////////////////////////////////////////////////////////
  1149. //SHOWID
  1150. //////////////////////////////////////////////////////////////////////
  1151. //SHOWID
  1152. //////////////////////////////////////////////////////////////////////
  1153. //SHOWID
  1154. //////////////////////////////////////////////////////////////////////
  1155. //SHOWID
  1156.  
  1157. :CLEO_showID
  1158. 0000: NOP
  1159. 0B34: samp register_client_command "showid" to_label @showID
  1160. 0B34: samp register_client_command "showcarid" to_label @showcarID
  1161. 0B34: samp register_client_command "showobjectid" to_label @showobjectID
  1162. 31@ = 0
  1163. 27@ = 0
  1164. 26@ = 0
  1165.  
  1166. :ID_First
  1167. wait 0
  1168.  
  1169. if 31@ == 1
  1170. then
  1171. for 6@ = 0 to 999
  1172. if 0B23: samp is_player_connected 6@
  1173. then
  1174. if 0B20: samp 0@ = actor_handle_by_samp_player_id 6@
  1175. then
  1176. if
  1177. 02CB: actor 0@ bounding_sphere_visible
  1178. then
  1179. if
  1180. 0449: actor 0@ in_a_car
  1181. then
  1182. 7@ = Actor.CurrentCar(0@)
  1183. 046C: 29@ = car 7@ driver
  1184. if 003B: 29@ == 0@
  1185. then
  1186. 00A0: store_actor 0@ position_to 1@ 2@ 3@
  1187. 0B55: convert_3D_coords 1@ 2@ 3@ to_screen 4@ 5@
  1188. 03F0: enable_text_draw 1
  1189. 0AD3: 30@v = format "%d" 6@
  1190. 0D94: draw_text 30@v pos_xy 4@ 5@ align_xy 0.5 0.0 color 0x00A4E6 shadow 1
  1191. else
  1192. 00A0: store_actor 0@ position_to 1@ 2@ 3@
  1193. 0B55: convert_3D_coords 1@ 2@ 3@ to_screen 4@ 5@
  1194. 5@ -= 13
  1195. 03F0: enable_text_draw 1
  1196. 0AD3: 30@v = format "%d" 6@
  1197. 0D94: draw_text 30@v pos_xy 4@ 5@ align_xy 0.5 0.0 color -1 shadow 1
  1198. end
  1199. else
  1200. 00A0: store_actor 0@ position_to 1@ 2@ 3@
  1201. 0B55: convert_3D_coords 1@ 2@ 3@ to_screen 4@ 5@
  1202. 03F0: enable_text_draw 1
  1203. 0AD3: 30@v = format "%d" 6@
  1204. 0D94: draw_text 30@v pos_xy 4@ 5@ align_xy 0.5 0.0 color -1 shadow 1
  1205. end
  1206. end
  1207. end
  1208. end
  1209. end
  1210. end
  1211.  
  1212.  
  1213. if 27@ == 1
  1214. then
  1215. for 6@ = 0 to 3000
  1216. if 0AFF: samp 0@ = car_handle_by_samp_vehicle_id 6@
  1217. then
  1218. if
  1219. 02CA: car 0@ bounding_sphere_visible
  1220. then
  1221. 00AA: store_car 0@ position_to 1@ 2@ 3@
  1222. 0B55: convert_3D_coords 1@ 2@ 3@ to_screen 4@ 5@
  1223. 03F0: enable_text_draw 1
  1224. 0AD3: 30@v = format "%d" 6@
  1225. 5@ += 17
  1226. 0D94: draw_text 30@v pos_xy 4@ 5@ align_xy 0.5 0.0 color 0xF7F694 shadow 1
  1227. 0227: 26@ = car 0@ health
  1228. 26@ /= 10
  1229. 0AD3: 29@v = format "HP:%d" 26@
  1230. 5@ += 17
  1231. 0D94: draw_text 29@v pos_xy 4@ 5@ align_xy 0.5 0.0 color 0xFF2F00 shadow 1
  1232. end
  1233. end
  1234. end
  1235. end
  1236.  
  1237.  
  1238.  
  1239. if 26@ == 1
  1240. then
  1241. for 6@ = 0 to 10000
  1242. if 0B50: samp 0@ = object_handle_by_id 6@
  1243. then
  1244. if
  1245. 02CC: object 0@ bounding_sphere_visible
  1246. then
  1247. 01BB: store_object 0@ position_to 1@ 2@ 3@
  1248. 0B55: convert_3D_coords 1@ 2@ 3@ to_screen 4@ 5@
  1249. 03F0: enable_text_draw 1
  1250. 0984: 7@ = object 0@ model
  1251. 0AD3: 30@v = format "%d" 7@
  1252. 5@ += 17
  1253. 0D94: draw_text 30@v pos_xy 4@ 5@ align_xy 0.5 0.0 color 0xF7F694 shadow 1
  1254. end
  1255. end
  1256. end
  1257. jump @ID_First
  1258. end
  1259.  
  1260. jump @ID_First
  1261.  
  1262. :showID
  1263. wait 0
  1264. 0B12: 31@ = 31@ XOR 1
  1265. samp.CmdRet
  1266.  
  1267. :showcarID
  1268. wait 0
  1269. 0B12: 27@ = 27@ XOR 1
  1270. samp.CmdRet
  1271.  
  1272. :showobjectID
  1273. wait 0
  1274. 0B12: 26@ = 26@ XOR 1
  1275. samp.CmdRet
  1276.  
  1277.  
  1278.  
  1279. //////////////////////////////////////////////////////////////////////
  1280. //SEARCH
  1281. //////////////////////////////////////////////////////////////////////
  1282. //SEARCH
  1283. //////////////////////////////////////////////////////////////////////
  1284. //SEARCH
  1285.  
  1286. {
  1287.  
  1288. :CLEO_search
  1289. 0000: NOP
  1290. 0AC8: 21@ = 260
  1291. 0AC8: 22@ = 260
  1292. 0AC8: 23@ = 260
  1293. 0AC8: 24@ = 260
  1294. 0AC8: 25@ = 260
  1295. 0AC8: 26@ = 260
  1296. 0AC8: 27@ = 260
  1297. 0AC8: 19@ = 260
  1298. 0AC8: 18@ = 260
  1299. 0B34: samp register_client_command "s1" to_label @search1
  1300. 0B34: samp register_client_command "s2" to_label @search2
  1301. 0B34: samp register_client_command "s3" to_label @search3
  1302. 0B34: samp register_client_command "s4" to_label @search4
  1303. 0B34: samp register_client_command "s5" to_label @search5
  1304. 0B34: samp register_client_command "s6" to_label @search6
  1305. 0B34: samp register_client_command "s7" to_label @search7
  1306. 0B34: samp register_client_command "s8" to_label @search8
  1307. 0B34: samp register_client_command "s9" to_label @search9
  1308. 0B34: samp register_client_command "sswitch" to_label @cancelsearch
  1309. 1@ = 0
  1310. 2@ = 0
  1311. 3@ = 0
  1312. 4@ = 0
  1313. 5@ = 0
  1314. 6@ = 0
  1315. 7@ = 0
  1316. 8@ = 0
  1317. 9@ = 0
  1318. 10@ = 1
  1319.  
  1320. :SE_First
  1321. wait 0
  1322. if 10@ == 0
  1323. then
  1324. jump @SE_First
  1325. end
  1326.  
  1327. if
  1328. 056D: actor $PLAYER_ACTOR defined
  1329. jf @SE_First
  1330. 28@ = 0
  1331.  
  1332. if 1@ == 1
  1333. then
  1334. 0AB1: @Draw_name 2 Name 21@ Display_offset 28@
  1335. end
  1336.  
  1337. if 2@ == 1
  1338. then
  1339. 28@ += 19
  1340. 0AB1: @Draw_name 2 Name 22@ Display_offset 28@
  1341. end
  1342.  
  1343. if 3@ == 1
  1344. then
  1345. 28@ += 19
  1346. 0AB1: @Draw_name 2 Name 23@ Display_offset 28@
  1347. end
  1348.  
  1349. if 4@ == 1
  1350. then
  1351. 28@ += 19
  1352. 0AB1: @Draw_name 2 Name 24@ Display_offset 28@
  1353. end
  1354.  
  1355. if 5@ == 1
  1356. then
  1357. 28@ += 19
  1358. 0AB1: @Draw_name 2 Name 25@ Display_offset 28@
  1359. end
  1360.  
  1361. if 6@ == 1
  1362. then
  1363. 28@ += 19
  1364. 0AB1: @Draw_name 2 Name 26@ Display_offset 28@
  1365. end
  1366.  
  1367. if 7@ == 1
  1368. then
  1369. 28@ += 19
  1370. 0AB1: @Draw_name 2 Name 27@ Display_offset 28@
  1371. end
  1372.  
  1373. if 8@ == 1
  1374. then
  1375. 28@ += 19
  1376. 0AB1: @Draw_name 2 Name 19@ Display_offset 28@
  1377. end
  1378.  
  1379. if 9@ == 1
  1380. then
  1381. 28@ += 19
  1382. 0AB1: @Draw_name 2 Name 18@ Display_offset 28@
  1383. end
  1384. jump @SE_First
  1385.  
  1386.  
  1387.  
  1388.  
  1389. :search1
  1390. wait 0
  1391. 0B35: samp 29@ = get_last_command_params //
  1392. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1393. then
  1394. 0C13: strcpy destination 21@ source 29@
  1395. 1@ = 1
  1396. else
  1397. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1398. 1@ = 0
  1399. end
  1400. samp.CmdRet
  1401.  
  1402. :search2
  1403. wait 0
  1404. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1405. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1406. then
  1407. 0C13: strcpy destination 22@ source 29@
  1408. 2@ = 1
  1409. else
  1410. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1411. 2@ = 0
  1412. end
  1413. samp.CmdRet
  1414.  
  1415. :search3
  1416. wait 0
  1417. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1418. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1419. then
  1420. 0C13: strcpy destination 23@ source 29@
  1421. 3@ = 1
  1422. else
  1423. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1424. 3@ = 0
  1425. end
  1426. samp.CmdRet
  1427.  
  1428. :search4
  1429. wait 0
  1430. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1431. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1432. then
  1433. 0C13: strcpy destination 24@ source 29@
  1434. 4@ = 1
  1435. else
  1436. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1437. 4@ = 0
  1438. end
  1439. samp.CmdRet
  1440.  
  1441. :search5
  1442. wait 0
  1443. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1444. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1445. then
  1446. 0C13: strcpy destination 25@ source 29@
  1447. 5@ = 1
  1448. else
  1449. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1450. 5@ = 0
  1451. end
  1452. samp.CmdRet
  1453.  
  1454. :search6
  1455. wait 0
  1456. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1457. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1458. then
  1459. 0C13: strcpy destination 26@ source 29@
  1460. 6@ = 1
  1461. else
  1462. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1463. 6@ = 0
  1464. end
  1465. samp.CmdRet
  1466.  
  1467. :search7
  1468. wait 0
  1469. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1470. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1471. then
  1472. 0C13: strcpy destination 27@ source 29@
  1473. 7@ = 1
  1474. else
  1475. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1476. 7@ = 0
  1477. end
  1478. samp.CmdRet
  1479.  
  1480.  
  1481. :search8
  1482. wait 0
  1483. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1484. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1485. then
  1486. 0C13: strcpy destination 19@ source 29@
  1487. 8@ = 1
  1488. else
  1489. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1490. 8@ = 0
  1491. end
  1492. samp.CmdRet
  1493.  
  1494. :search9
  1495. wait 0
  1496. 0B35: samp 29@ = get_last_command_params //5 = victim's name
  1497. if 0AD4: $nouse = scan_string 29@ format "%s" $nouse
  1498. then
  1499. 0C13: strcpy destination 18@ source 29@
  1500. 9@ = 1
  1501. else
  1502. //0AF8: samp add_message_to_chat "Wrong format. Make sure to type the command properly [Example: /victim Albert_Einstein]" color 0xFF4800
  1503. 9@ = 0
  1504. end
  1505. samp.CmdRet
  1506.  
  1507. :cancelsearch
  1508. wait 0
  1509. 0B12: 10@ = 10@ XOR 1
  1510. samp.CmdRet
  1511.  
  1512.  
  1513.  
  1514.  
  1515. //0AB1: @Draw_name 2 Name 0@ Display_offset y@ Is_player_near_store_to 1@
  1516. :Draw_name
  1517. 0AC8: 7@ = allocate_memory_size 260
  1518. 5@ = 0
  1519. //0AC8: 0@ = allocate_memory_size 64
  1520. //06D2: 0@v = "EatMySmoke" // @v = string
  1521. //0AD3: 0@ = format "%s" 0@
  1522. 0B5A: get_screen_resolution 30@ 31@ //int
  1523. 30@ /= 10
  1524. 30@ *= 8
  1525. 31@ /= 2
  1526. 005A: 31@ += 1@
  1527.  
  1528. for 3@ = 0 to 300
  1529. if 0B23: samp is_player_connected 3@
  1530. then
  1531. 0B36: samp 4@ = get_player_nickname 3@
  1532. if
  1533. 0C14: strcmp string1 4@ string2 0@
  1534. then
  1535. 5@ = 1
  1536. 03F0: enable_text_draw 1
  1537. 0AD3: 8@v = format "ID:%d" 3@
  1538. if
  1539. 0B20: samp 2@ = actor_handle_by_samp_player_id 3@
  1540. then
  1541. if
  1542. 0B5C: samp is_player 3@ paused
  1543. then
  1544. 0AD3: 8@v = format "ID:%d [AFK]" 3@
  1545. end
  1546.  
  1547. if
  1548. 0449: actor 2@ in_a_car
  1549. then
  1550. 27@ = Actor.CurrentCar(2@)
  1551. 046C: 28@ = car 27@ driver
  1552. if 003B: 28@ == 2@
  1553. then
  1554. 03F0: enable_text_draw 1
  1555. 0D94: draw_text 0@ pos_xy 30@ 31@ align_xy 0.0 0.0 color 0x00A4E6 shadow 1
  1556. 30@ += 170
  1557. 0D94: draw_text 8@v pos_xy 30@ 31@ align_xy 0.0 0.0 color 0x00A4E6 shadow 1
  1558. 30@ -= 170
  1559. if
  1560. 02CB: actor 2@ bounding_sphere_visible
  1561. then
  1562. 00A0: store_actor 2@ position_to 25@ 26@ 27@
  1563. 0B55: convert_3D_coords 25@ 26@ 27@ to_screen 25@ 26@
  1564. 03F0: enable_text_draw 1
  1565. 26@ -= 25
  1566. 25@ -= 70
  1567. 0D94: draw_text 0@ pos_xy 25@ 26@ align_xy 0.0 0.0 color 0x00A4E6 shadow 1
  1568. 25@ += 130
  1569. 0D94: draw_text 8@v pos_xy 25@ 26@ align_xy 0.0 0.0 color 0x00A4E6 shadow 1
  1570. 25@ -= 130
  1571. end
  1572. else
  1573. 03F0: enable_text_draw 1
  1574. 0D94: draw_text 0@ pos_xy 30@ 31@ align_xy 0.0 0.0 color -1 shadow 1
  1575. 30@ += 170
  1576. 0D94: draw_text 8@v pos_xy 30@ 31@ align_xy 0.0 0.0 color -1 shadow 1
  1577. 30@ -= 170
  1578. if
  1579. 02CB: actor 2@ bounding_sphere_visible
  1580. then
  1581. 00A0: store_actor 2@ position_to 25@ 26@ 27@
  1582. 0B55: convert_3D_coords 25@ 26@ 27@ to_screen 25@ 26@
  1583. 03F0: enable_text_draw 1
  1584. 26@ -= 25
  1585. 25@ -= 70
  1586. 0D94: draw_text 0@ pos_xy 25@ 26@ align_xy 0.0 0.0 color -1 shadow 1
  1587. 25@ += 130
  1588. 0D94: draw_text 8@v pos_xy 25@ 26@ align_xy 0.0 0.0 color -1 shadow 1
  1589. 25@ -= 130
  1590. end
  1591. end
  1592. else
  1593. 03F0: enable_text_draw 1
  1594. 0D94: draw_text 0@ pos_xy 30@ 31@ align_xy 0.0 0.0 color -1 shadow 1
  1595. 30@ += 170
  1596. 0D94: draw_text 8@v pos_xy 30@ 31@ align_xy 0.0 0.0 color -1 shadow 1
  1597. 30@ -= 170
  1598. if
  1599. 02CB: actor 2@ bounding_sphere_visible
  1600. then
  1601. 00A0: store_actor 2@ position_to 25@ 26@ 27@
  1602. 0B55: convert_3D_coords 25@ 26@ 27@ to_screen 25@ 26@
  1603. 03F0: enable_text_draw 1
  1604. 25@ -= 70
  1605. 26@ -= 25
  1606. 0D94: draw_text 0@ pos_xy 25@ 26@ align_xy 0.0 0.0 color -1 shadow 1
  1607. 25@ += 130
  1608. 0D94: draw_text 8@v pos_xy 25@ 26@ align_xy 0.0 0.0 color -1 shadow 1
  1609. 25@ -= 130
  1610. end
  1611. end
  1612. else
  1613. //if not streamed in
  1614. 03F0: enable_text_draw 1
  1615. 0D94: draw_text 0@ pos_xy 30@ 31@ align_xy 0.0 0.0 color 0x575757 shadow 1
  1616. 30@ += 170
  1617. 0D94: draw_text 8@v pos_xy 30@ 31@ align_xy 0.0 0.0 color 0x575757 shadow 1
  1618. 30@ -= 170
  1619. end
  1620. end
  1621. end
  1622. end
  1623. if
  1624. 5@ == 0
  1625. then
  1626. //if offline
  1627. 03F0: enable_text_draw 1
  1628. 0D94: draw_text 0@ pos_xy 30@ 31@ align_xy 0.0 0.0 color 0x000000 shadow 1
  1629. end
  1630. 0AC9: free_allocated_memory 7@
  1631. 0AB2: ret 0
  1632.  
  1633.  
  1634. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement