Advertisement
Guest User

DESYNCAA

a guest
Apr 22nd, 2019
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 31.23 KB | None | 0 0
  1. require "bit"
  2. require "Vector3"
  3.  
  4. -- Local variables
  5. local client, ui, client_set_event_callback, client_get_cvar, client_draw_indicator, client_draw_text, client_screensize = client, ui, client.set_event_callback, client.get_cvar, client.draw_indicator, client.draw_text, client.screen_size
  6. local ui_get, ui_set, ui_set_visible, ui_ref = ui.get, ui.set, ui.set_visible, ui.reference
  7. local entity_get_local_player, entity_get_prop, entity_is_alive = entity.get_local_player, entity.get_prop, entity.is_alive
  8. local next_update = 0
  9. local last_value = 0
  10. enemyclosesttocrosshair = nil
  11. lowestfov = math.huge
  12. lowestdmg = math.huge
  13.  
  14. -- Anti-aim references
  15. local pitch = ui_ref("AA", "Anti-aimbot angles", "Pitch")
  16. local base = ui_ref("AA", "Anti-aimbot angles", "Yaw base")
  17. local yaw, yaw_slider = ui_ref("AA", "Anti-aimbot angles", "Yaw")
  18. local yawjitter, yawjitter_slider = ui_ref("AA", "Anti-aimbot angles", "Yaw jitter")
  19. local bodyyaw, bodyyaw_slider = ui_ref("AA", "Anti-aimbot angles", "Body yaw")
  20. local limit = ui_ref("AA", "Anti-aimbot angles", "Fake yaw limit")
  21. local edgeyaw = ui_ref("AA", "Anti-aimbot angles", "Edge yaw")
  22. local freestanding = ui_ref("AA", "Anti-aimbot angles", "Freestanding")
  23. local twist = ui_ref("AA", "Anti-aimbot angles", "Twist")
  24. local lby = ui_ref("AA", "Anti-aimbot angles", "Lower body yaw")
  25.  
  26. -- New UI elements
  27. local desync = ui.new_checkbox("AA", "Other", "Desync anti-aim")
  28. local color = ui.new_color_picker("AA", "Other", "Arrow color", 124, 195, 13, 220)
  29. local desyncmode = ui.new_combobox("AA", "Other", "Desync mode", "Off", "Static", "Break LBY")
  30. local desyncstyle = ui.new_combobox("AA", "Other", "Desync behaviour", "Off", "Static", "Jitter", "Adaptive")
  31. local slider = ui.new_slider("AA", "Other", "Lower body yaw offset", 0, 90, 59, true, "°")
  32. local desynckey = ui.new_hotkey("AA", "Other", "Switch key")
  33. local indmulti = ui.new_multiselect("AA", "Other", "Anti-aim angle indicator", "Text", "Arrows")
  34. local autod = ui.new_checkbox("AA", "Other", "Freestanding")
  35. ui_set_visible(desynckey, false)
  36. ui_set_visible(slider, false)
  37. ui_set_visible(indmulti, false)
  38. ui_set(yaw, "180")
  39. -- End of local variables
  40.  
  41. -----------------------------------
  42. ---- Freestanding calculations ----
  43. -----------------------------------
  44. function Angle_Vector(angle_x, angle_y)
  45. sp, sy, cp, cy = nil
  46. sy = math.sin(math.rad(angle_y));
  47. cy = math.cos(math.rad(angle_y));
  48. sp = math.sin(math.rad(angle_x));
  49. cp = math.cos(math.rad(angle_x));
  50. return cp * cy, cp * sy, -sp;
  51. end
  52.  
  53. function EnemyToCrosshair(index)
  54. fov = get_FOV(Vector3(client.camera_angles()), Vector3(client.eye_position()), Vector3(entity.hitbox_position(index, 0)))
  55. if(fov < lowestfov) then
  56. lowestfov = fov
  57. enemyclosesttocrosshair = index
  58. end
  59. end
  60.  
  61. function CalcAngle(localplayerxpos, localplayerypos, enemyxpos, enemyypos)
  62. relativeyaw = math.atan( (localplayerypos - enemyypos) / (localplayerxpos - enemyxpos) )
  63. return relativeyaw * 180 / math.pi
  64. end
  65.  
  66. function calculateBestAngle(enemy, ...)
  67. lx, ly, lz = entity_get_prop(entity_get_local_player(), "m_vecOrigin")
  68. viewangle_x, viewangle_y, roll = client.camera_angles()
  69. headx, heady, headz = entity.hitbox_position(entity.get_local_player(), 0)
  70. enemyx, enemyy, enemyz = entity_get_prop(enemy, "m_vecOrigin")
  71. mypos = Vector3(client.eye_position())
  72. bestangle = nil
  73.  
  74. if (entity.is_alive(enemy)) then
  75. yaw = CalcAngle(lx, ly, enemyx, enemyy)
  76. for i,v in pairs({...}) do
  77.  
  78. dir_x, dir_y, dir_z = Angle_Vector(0, (yaw + v))
  79. end_x = lx + dir_x * 55
  80. end_y = ly + dir_y * 55
  81. end_z = lz + 80
  82.  
  83. index, damage = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x, end_y, end_z)
  84. index2, damage2 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x + 12, end_y, end_z)
  85. index3, damage3 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x - 12, end_y, end_z)
  86. index4, damage4 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x + 22, end_y, end_z)
  87. index5, damage5 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x - 22, end_y, end_z)
  88. index6, damage6 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x + 32, end_y, end_z)
  89. index7, damage7 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x - 32, end_y, end_z)
  90. index8, damage8 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x + 42, end_y, end_z)
  91. index9, damage9 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x - 42, end_y, end_z)
  92. index10, damage10 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x + 52, end_y, end_z)
  93. index11, damage11 = client.trace_bullet(enemy, enemyx, enemyy, enemyz + 35, end_x - 52, end_y, end_z)
  94.  
  95. if (damage < lowestdmg) then
  96. lowestdmg = damage
  97. if (damage2 > damage) then
  98. lowestdmg = damage2
  99. end
  100. if (damage3 > damage) then
  101. lowestdmg = damage3
  102. end
  103. if (damage4 > damage) then
  104. lowestdmg = damage4
  105. end
  106. if (damage5 > damage) then
  107. lowestdmg = damage5
  108. end
  109. if (damage6 > damage) then
  110. lowestdmg = damage6
  111. end
  112. if (damage7 > damage) then
  113. lowestdmg = damage7
  114. end
  115. if (damage8 > damage) then
  116. lowestdmg = damage8
  117. end
  118. if (damage9 > damage) then
  119. lowestdmg = damage9
  120. end
  121. if (damage10 > damage) then
  122. lowestdmg = damage10
  123. end
  124. if (damage11 > damage) then
  125. lowestdamage = damage11
  126. end
  127. if (lx - enemyx > 0) then
  128. bestangle = v
  129. else
  130. bestangle = v * -1
  131. end
  132. else if (damage == lowestdmg) then
  133. return 0
  134. end
  135. end
  136. end
  137. end
  138. return bestangle
  139. end
  140. -----------------------------------
  141. -----------------------------------
  142.  
  143. local function aa_setup()
  144. ui_set(pitch, "Default")
  145. ui_set(base, "Local view")
  146. ui_set(limit, "60")
  147. ui_set(edgeyaw, "Off")
  148. ui_set(freestanding, "-")
  149. ui_set(lby, false)
  150. end
  151.  
  152. -- UI elements on "Static" mode
  153. local function combo_st()
  154. local enabled_st = ui_get(desyncmode) == "Static" or ui_get(desyncmode) == "Break LBY"
  155. ui_set_visible(desynckey, enabled_st)
  156. ui_set_visible(indmulti, enabled_st)
  157. ui_set_visible(color, enabled_st)
  158. if ui_get(desyncmode) == "Break LBY" then
  159. ui_set_visible(slider, true)
  160. else
  161. ui_set_visible(slider, false)
  162. end
  163. if ui_get(desyncmode) == "Off" or ui_get(desyncstyle) == "Off" then
  164. ui_set(indmulti, "-")
  165. end
  166. end
  167. ui.set_callback(desyncmode, combo_st)
  168.  
  169. -- Multiselect table
  170. local function contains(table, val)
  171. for i=1, #table do
  172. if table[i] == val then
  173. return true
  174. end
  175. end
  176. return false
  177. end
  178.  
  179. -- Manual anti-aims
  180. client_set_event_callback("paint", function()
  181. if not ui_get(desync) or ui_get(desyncmode) == "Off" or ui_get(desyncstyle) == "Off" or entity_get_local_player() == nil or not entity_is_alive(entity_get_local_player()) then
  182. return
  183. end
  184.  
  185. local value = ui_get(indmulti)
  186. if #value == 0 then
  187. return
  188. end
  189.  
  190. if entity_get_local_player() == nil or entity_get_prop(entity_get_local_player(), "m_lifeState") ~= 0 then return end
  191. local bFreezeTime = entity_get_prop(entity.get_game_rules(), "m_bFreezePeriod")
  192. if (bFreezeTime) == 1 then return end
  193.  
  194. local scrsize_x, scrsize_y = client_screensize()
  195. local center_x, center_y = scrsize_x / 2, scrsize_y / 2
  196. local ind_r, ind_g, ind_b, ind_a = ui_get(color)
  197.  
  198. local vel_x, vel_y = entity_get_prop(entity_get_local_player(), "m_vecVelocity")
  199. local vel = math.sqrt(vel_x^2 + vel_y^2)
  200.  
  201.  
  202. if ui_get(desyncmode) == "Static" then
  203. if ui_get(desyncstyle) == "Static" then
  204. if ui_get(desynckey) then
  205. aa_setup()
  206. ui_set(yaw_slider, "-33")
  207. ui_set(yawjitter, "Offset")
  208. ui_set(yawjitter_slider, "0")
  209. ui_set(bodyyaw, "Static")
  210. ui_set(bodyyaw_slider, "-180")
  211. ui_set(twist, true)
  212. if contains(value, "Text") then
  213. client_draw_indicator(ctx, 124, 195, 13, 237, "LEFT")
  214. end
  215. if contains(value, "Arrows") then
  216. client_draw_text(c, center_x - 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "◄")
  217. client_draw_text(c, center_x + 40, center_y, 255, 255, 255, 220, "c+", 0, "►")
  218. end
  219. else
  220. aa_setup()
  221. ui_set(yaw_slider, "8")
  222. ui_set(yawjitter, "Offset")
  223. ui_set(yawjitter_slider, "0")
  224. ui_set(bodyyaw, "Static")
  225. ui_set(bodyyaw_slider, "180")
  226. ui_set(twist, true)
  227. if contains(value, "Text") then
  228. client_draw_indicator(ctx, 124, 195, 13, 237, "RIGHT")
  229. end
  230. if contains(value, "Arrows") then
  231. client_draw_text(c, center_x + 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "►")
  232. client_draw_text(c, center_x - 40, center_y, 255, 255, 255, 220, "c+", 0, "◄")
  233. end
  234. end
  235. end
  236. if ui_get(desyncstyle) == "Jitter" then
  237. if ui_get(desynckey) then
  238. aa_setup()
  239. ui_set(yaw_slider, "0")
  240. ui_set(yawjitter, "Offset")
  241. ui_set(yawjitter_slider, "5")
  242. ui_set(bodyyaw, "Static")
  243. ui_set(bodyyaw_slider, "-90")
  244. ui_set(twist, true)
  245. if contains(value, "Text") then
  246. client_draw_indicator(ctx, 124, 195, 13, 237, "LEFT")
  247. end
  248. if contains(value, "Arrows") then
  249. client_draw_text(c, center_x - 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "◄")
  250. client_draw_text(c, center_x + 40, center_y, 255, 255, 255, 220, "c+", 0, "►")
  251. end
  252. else
  253. aa_setup()
  254. ui_set(yaw_slider, "0")
  255. ui_set(yawjitter, "Offset")
  256. ui_set(yawjitter_slider, "5")
  257. ui_set(bodyyaw, "Static")
  258. ui_set(bodyyaw_slider, "90")
  259. ui_set(twist, true)
  260. if contains(value, "Text") then
  261. client_draw_indicator(ctx, 124, 195, 13, 237, "RIGHT")
  262. end
  263. if contains(value, "Arrows") then
  264. client_draw_text(c, center_x + 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "►")
  265. client_draw_text(c, center_x - 40, center_y, 255, 255, 255, 220, "c+", 0, "◄")
  266. end
  267. end
  268. end
  269. if ui_get(desyncstyle) == "Adaptive" then
  270. local desync_value = (59 - 58 * vel / 580)
  271. if ui_get(desynckey) then
  272. aa_setup()
  273. ui_set(yaw_slider, "-28")
  274. ui_set(yawjitter, "Off")
  275. ui_set(bodyyaw, "Static")
  276. ui_set(bodyyaw_slider, -desync_value)
  277. ui_set(twist, true)
  278. if contains(value, "Text") then
  279. client_draw_indicator(ctx, 124, 195, 13, 237, "LEFT")
  280. end
  281. if contains(value, "Arrows") then
  282. client_draw_text(c, center_x - 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "◄")
  283. client_draw_text(c, center_x + 40, center_y, 255, 255, 255, 220, "c+", 0, "►")
  284. end
  285. else
  286. aa_setup()
  287. ui_set(yaw_slider, "28")
  288. ui_set(yawjitter, "Off")
  289. ui_set(bodyyaw, "Static")
  290. ui_set(bodyyaw_slider, desync_value)
  291. ui_set(twist, true)
  292. if contains(value, "Text") then
  293. client_draw_indicator(ctx, 124, 195, 13, 237, "RIGHT")
  294. end
  295. if contains(value, "Arrows") then
  296. client_draw_text(c, center_x + 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "►")
  297. client_draw_text(c, center_x - 40, center_y, 255, 255, 255, 220, "c+", 0, "◄")
  298. end
  299. end
  300. end
  301. else if ui_get(desyncmode) == "Break LBY" then
  302. if ui_get(desyncstyle) == "Static" then
  303. if ui_get(desynckey) then
  304. check_yaw = false
  305. aa_setup()
  306. ui_set(yaw_slider, "0")
  307. ui_set(yawjitter, "Off")
  308. ui_set(bodyyaw, "Static")
  309. ui_set(bodyyaw_slider, "-90")
  310. ui_set(twist, false)
  311. if contains(value, "Text") then
  312. client_draw_indicator(ctx, 124, 195, 13, 237, "LEFT")
  313. end
  314. if contains(value, "Arrows") then
  315. client_draw_text(c, center_x - 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "◄")
  316. client_draw_text(c, center_x + 40, center_y, 255, 255, 255, 220, "c+", 0, "►")
  317. end
  318. else
  319. check_yaw = true
  320. aa_setup()
  321. ui_set(yaw_slider, "0")
  322. ui_set(yawjitter, "Off")
  323. ui_set(bodyyaw, "Static")
  324. ui_set(bodyyaw_slider, "90")
  325. ui_set(twist, false)
  326. if contains(value, "Text") then
  327. client_draw_indicator(ctx, 124, 195, 13, 237, "RIGHT")
  328. end
  329. if contains(value, "Arrows") then
  330. client_draw_text(c, center_x + 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "►")
  331. client_draw_text(c, center_x - 40, center_y, 255, 255, 255, 220, "c+", 0, "◄")
  332. end
  333. end
  334. end
  335. if ui_get(desyncstyle) == "Jitter" then
  336. if ui_get(desynckey) then
  337. check_yaw = false
  338. aa_setup()
  339. ui_set(yaw_slider, "0")
  340. ui_set(yawjitter, "Offset")
  341. ui_set(yawjitter_slider, "-10")
  342. ui_set(bodyyaw, "Static")
  343. ui_set(bodyyaw_slider, "-90")
  344. ui_set(twist, false)
  345. if contains(value, "Text") then
  346. client_draw_indicator(ctx, 124, 195, 13, 237, "LEFT")
  347. end
  348. if contains(value, "Arrows") then
  349. client_draw_text(c, center_x - 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "◄")
  350. client_draw_text(c, center_x + 40, center_y, 255, 255, 255, 220, "c+", 0, "►")
  351. end
  352. else
  353. check_yaw = true
  354. aa_setup()
  355. ui_set(yaw_slider, "0")
  356. ui_set(yawjitter, "Offset")
  357. ui_set(yawjitter_slider, "10")
  358. ui_set(bodyyaw, "Static")
  359. ui_set(bodyyaw_slider, "90")
  360. ui_set(twist, false)
  361. if contains(value, "Text") then
  362. client_draw_indicator(ctx, 124, 195, 13, 237, "RIGHT")
  363. end
  364. if contains(value, "Arrows") then
  365. client_draw_text(c, center_x + 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "►")
  366. client_draw_text(c, center_x - 40, center_y, 255, 255, 255, 220, "c+", 0, "◄")
  367. end
  368. end
  369. end
  370. if ui_get(desyncstyle) == "Adaptive" then
  371. local desync_value = (59 - 58 * vel / 580)
  372. if ui_get(desynckey) then
  373. check_yaw = false
  374. aa_setup()
  375. ui_set(yaw_slider, "-28")
  376. ui_set(yawjitter, "Off")
  377. ui_set(bodyyaw, "Static")
  378. ui_set(bodyyaw_slider, -desync_value)
  379. ui_set(twist, false)
  380. if contains(value, "Text") then
  381. client_draw_indicator(ctx, 124, 195, 13, 237, "LEFT")
  382. end
  383. if contains(value, "Arrows") then
  384. client_draw_text(c, center_x - 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "◄")
  385. client_draw_text(c, center_x + 40, center_y, 255, 255, 255, 220, "c+", 0, "►")
  386. end
  387. else
  388. check_yaw = true
  389. aa_setup()
  390. ui_set(yaw_slider, "28")
  391. ui_set(yawjitter, "Off")
  392. ui_set(bodyyaw, "Static")
  393. ui_set(bodyyaw_slider, desync_value)
  394. ui_set(twist, false)
  395. if contains(value, "Text") then
  396. client_draw_indicator(ctx, 124, 195, 13, 237, "RIGHT")
  397. end
  398. if contains(value, "Arrows") then
  399. client_draw_text(c, center_x + 40, center_y, ind_r, ind_g, ind_b, ind_a, "c+", 0, "►")
  400. client_draw_text(c, center_x - 40, center_y, 255, 255, 255, 220, "c+", 0, "◄")
  401. end
  402. end
  403. end
  404. end
  405. end
  406. end)
  407.  
  408. -- Freestanding anti-aims
  409. client_set_event_callback("setup_command", function()
  410. if not ui_get(desync) or ui_get(desyncmode) == "Off" or ui_get(desyncstyle) == "Off" or entity_get_local_player() == nil or not entity_is_alive(entity_get_local_player()) then
  411. return
  412. end
  413.  
  414. for i,v in pairs(entity.get_players(true)) do
  415. EnemyToCrosshair(v)
  416. end
  417.  
  418. local vel_x, vel_y = entity_get_prop(entity_get_local_player(), "m_vecVelocity")
  419. local vel = math.sqrt(vel_x^2 + vel_y^2)
  420.  
  421. if ui_get(autod) then
  422. ui_set(indmulti, "-")
  423. ui_set_visible(desynckey, false)
  424. ui_set_visible(indmulti, false)
  425. ui_set_visible(color, false)
  426. if ui_get(desyncmode) == "Static" then
  427. if ui_get(desyncstyle) == "Static" then
  428. if (enemyclosesttocrosshair ~= nil) then
  429. yaw = calculateBestAngle(enemyclosesttocrosshair, -90, 90)
  430. if (yaw == -90) then
  431. cached_angle = false
  432. aa_setup()
  433. ui_set(yaw_slider, "8")
  434. ui_set(yawjitter, "Offset")
  435. ui_set(yawjitter_slider, "0")
  436. ui_set(bodyyaw, "Static")
  437. ui_set(bodyyaw_slider, "180")
  438. ui_set(twist, true)
  439. else if (yaw == 90) then
  440. cached_angle = true
  441. aa_setup()
  442. ui_set(yaw_slider, "-33")
  443. ui_set(yawjitter, "Offset")
  444. ui_set(yawjitter_slider, "0")
  445. ui_set(bodyyaw, "Static")
  446. ui_set(bodyyaw_slider, "-180")
  447. ui_set(twist, true)
  448. else if not (yaw == -90) and not (yaw == 90) then
  449. if (cached_angle == false) then
  450. aa_setup()
  451. ui_set(yaw_slider, "8")
  452. ui_set(yawjitter, "Offset")
  453. ui_set(yawjitter_slider, "0")
  454. ui_set(bodyyaw, "Static")
  455. ui_set(bodyyaw_slider, "180")
  456. ui_set(twist, true)
  457. else if (cached_angle == true) then
  458. aa_setup()
  459. ui_set(yaw_slider, "-33")
  460. ui_set(yawjitter, "Offset")
  461. ui_set(yawjitter_slider, "0")
  462. ui_set(bodyyaw, "Static")
  463. ui_set(bodyyaw_slider, "-180")
  464. ui_set(twist, true)
  465. end
  466. end
  467. end
  468. end
  469. end
  470. end
  471. end
  472. if ui_get(desyncstyle) == "Jitter" then
  473. if (enemyclosesttocrosshair ~= nil) then
  474. yaw = calculateBestAngle(enemyclosesttocrosshair, -90, 90)
  475. if (yaw == -90) then
  476. cached_angle = false
  477. aa_setup()
  478. ui_set(yaw_slider, "0")
  479. ui_set(yawjitter, "Offset")
  480. ui_set(yawjitter_slider, "5")
  481. ui_set(bodyyaw, "Static")
  482. ui_set(bodyyaw_slider, "90")
  483. ui_set(twist, true)
  484. else if (yaw == 90) then
  485. cached_angle = true
  486. aa_setup()
  487. ui_set(yaw_slider, "0")
  488. ui_set(yawjitter, "Offset")
  489. ui_set(yawjitter_slider, "5")
  490. ui_set(bodyyaw, "Static")
  491. ui_set(bodyyaw_slider, "-90")
  492. ui_set(twist, true)
  493. else if not (yaw == -90) and not (yaw == 90) then
  494. if (cached_angle == false) then
  495. ui_set(yaw_slider, "0")
  496. ui_set(yawjitter, "Offset")
  497. ui_set(yawjitter_slider, "5")
  498. ui_set(bodyyaw, "Static")
  499. ui_set(bodyyaw_slider, "90")
  500. ui_set(twist, true)
  501. else if (cached_angle == true) then
  502. aa_setup()
  503. ui_set(yaw_slider, "0")
  504. ui_set(yawjitter, "Offset")
  505. ui_set(yawjitter_slider, "5")
  506. ui_set(bodyyaw, "Static")
  507. ui_set(bodyyaw_slider, "-90")
  508. ui_set(twist, true)
  509. end
  510. end
  511. end
  512. end
  513. end
  514. end
  515. end
  516. if ui_get(desyncstyle) == "Adaptive" then
  517. local desync_value = (59 - 58 * vel / 580)
  518. if (enemyclosesttocrosshair ~= nil) then
  519. yaw = calculateBestAngle(enemyclosesttocrosshair, -90, 90)
  520. if (yaw == -90) then
  521. cached_angle = false
  522. aa_setup()
  523. ui_set(yaw_slider, "28")
  524. ui_set(yawjitter, "Off")
  525. ui_set(bodyyaw, "Static")
  526. ui_set(bodyyaw_slider, desync_value)
  527. ui_set(twist, true)
  528. else if (yaw == 90) then
  529. cached_angle = true
  530. aa_setup()
  531. ui_set(yaw_slider, "-28")
  532. ui_set(yawjitter, "Off")
  533. ui_set(bodyyaw, "Static")
  534. ui_set(bodyyaw_slider, -desync_value)
  535. ui_set(twist, true)
  536. else if not (yaw == -90) and not (yaw == 90) then
  537. if (cached_angle == false) then
  538. aa_setup()
  539. ui_set(yaw_slider, "28")
  540. ui_set(yawjitter, "Off")
  541. ui_set(bodyyaw, "Static")
  542. ui_set(bodyyaw_slider, desync_value)
  543. ui_set(twist, true)
  544. else if (cached_angle == true) then
  545. aa_setup()
  546. ui_set(yaw_slider, "-28")
  547. ui_set(yawjitter, "Off")
  548. ui_set(bodyyaw, "Static")
  549. ui_set(bodyyaw_slider, -desync_value)
  550. ui_set(twist, true)
  551. end
  552. end
  553. end
  554. end
  555. end
  556. end
  557. end
  558. end
  559. if ui_get(desyncmode) == "Break LBY" then
  560. if ui_get(desyncstyle) == "Static" then
  561. if (enemyclosesttocrosshair ~= nil) then
  562. yaw = calculateBestAngle(enemyclosesttocrosshair, -90, 90)
  563. if (yaw == -90) then
  564. check_yaw = false
  565. cached_angle = false
  566. aa_setup()
  567. ui_set(yaw_slider, "0")
  568. ui_set(yawjitter, "Off")
  569. ui_set(bodyyaw, "Static")
  570. ui_set(bodyyaw_slider, "90")
  571. ui_set(twist, false)
  572. else if (yaw == 90) then
  573. check_yaw = true
  574. cached_angle = true
  575. aa_setup()
  576. ui_set(yaw_slider, "0")
  577. ui_set(yawjitter, "Off")
  578. ui_set(bodyyaw, "Static")
  579. ui_set(bodyyaw_slider, "-90")
  580. ui_set(twist, false)
  581. else if not (yaw == -90) and not (yaw == 90) then
  582. if (cached_angle == false) then
  583. check_yaw = false
  584. aa_setup()
  585. ui_set(yaw_slider, "0")
  586. ui_set(yawjitter, "Off")
  587. ui_set(bodyyaw, "Static")
  588. ui_set(bodyyaw_slider, "90")
  589. ui_set(twist, false)
  590. else if (cached_angle == true) then
  591. aa_setup()
  592. check_yaw = true
  593. ui_set(yaw_slider, "0")
  594. ui_set(yawjitter, "Off")
  595. ui_set(bodyyaw, "Static")
  596. ui_set(bodyyaw_slider, "-90")
  597. ui_set(twist, false)
  598. end
  599. end
  600. end
  601. end
  602. end
  603. end
  604. end
  605. if ui_get(desyncstyle) == "Jitter" then
  606. if (enemyclosesttocrosshair ~= nil) then
  607. yaw = calculateBestAngle(enemyclosesttocrosshair, -90, 90)
  608. if (yaw == -90) then
  609. cached_angle = false
  610. check_yaw = false
  611. aa_setup()
  612. ui_set(yaw_slider, "0")
  613. ui_set(yawjitter, "Offset")
  614. ui_set(yawjitter_slider, "10")
  615. ui_set(bodyyaw, "Static")
  616. ui_set(bodyyaw_slider, "90")
  617. ui_set(twist, false)
  618. else if (yaw == 90) then
  619. cached_angle = true
  620. check_yaw = true
  621. aa_setup()
  622. ui_set(yaw_slider, "0")
  623. ui_set(yawjitter, "Offset")
  624. ui_set(yawjitter_slider, "-10")
  625. ui_set(bodyyaw, "Static")
  626. ui_set(bodyyaw_slider, "-90")
  627. ui_set(twist, false)
  628. else if not (yaw == -90) and not (yaw == 90) then
  629. if (cached_angle == false) then
  630. check_yaw = false
  631. ui_set(yaw_slider, "0")
  632. ui_set(yawjitter, "Offset")
  633. ui_set(yawjitter_slider, "10")
  634. ui_set(bodyyaw, "Static")
  635. ui_set(bodyyaw_slider, "90")
  636. ui_set(twist, false)
  637. else if (cached_angle == true) then
  638. check_yaw = true
  639. aa_setup()
  640. ui_set(yaw_slider, "0")
  641. ui_set(yawjitter, "Offset")
  642. ui_set(yawjitter_slider, "-10")
  643. ui_set(bodyyaw, "Static")
  644. ui_set(bodyyaw_slider, "-90")
  645. ui_set(twist, false)
  646. end
  647. end
  648. end
  649. end
  650. end
  651. end
  652. end
  653. if ui_get(desyncstyle) == "Adaptive" then
  654. local desync_value = (59 - 58 * vel / 580)
  655. if (enemyclosesttocrosshair ~= nil) then
  656. yaw = calculateBestAngle(enemyclosesttocrosshair, -90, 90)
  657. if (yaw == -90) then
  658. cached_angle = false
  659. check_yaw = false
  660. aa_setup()
  661. ui_set(yaw_slider, "28")
  662. ui_set(yawjitter, "Off")
  663. ui_set(bodyyaw, "Static")
  664. ui_set(bodyyaw_slider, desync_value)
  665. ui_set(twist, false)
  666. else if (yaw == 90) then
  667. cached_angle = true
  668. check_yaw = true
  669. aa_setup()
  670. ui_set(yaw_slider, "-28")
  671. ui_set(yawjitter, "Off")
  672. ui_set(bodyyaw, "Static")
  673. ui_set(bodyyaw_slider, -desync_value)
  674. ui_set(twist, false)
  675. else if not (yaw == -90) and not (yaw == 90) then
  676. if (cached_angle == false) then
  677. check_yaw = false
  678. aa_setup()
  679. ui_set(yaw_slider, "28")
  680. ui_set(yawjitter, "Off")
  681. ui_set(bodyyaw, "Static")
  682. ui_set(bodyyaw_slider, desync_value)
  683. ui_set(twist, false)
  684. else if (cached_angle == true) then
  685. check_yaw = true
  686. aa_setup()
  687. ui_set(yaw_slider, "-28")
  688. ui_set(yawjitter, "Off")
  689. ui_set(bodyyaw, "Static")
  690. ui_set(bodyyaw_slider, -desync_value)
  691. ui_set(twist, false)
  692. end
  693. end
  694. end
  695. end
  696. end
  697. end
  698. end
  699. end
  700. else if not ui_get(autod) then
  701. ui_set_visible(desynckey, true)
  702. ui_set_visible(indmulti, true)
  703. ui_set_visible(color, true)
  704. end
  705. end
  706. lowestfov = 999
  707. lowestdmg = 999
  708. end)
  709.  
  710. -- Static body yaw
  711. client_set_event_callback("setup_command", function(cmd)
  712. if not ui_get(desync) or ui_get(desyncmode) == "Off" or ui_get(desyncmode) == "Break LBY" or ui_get(desyncstyle) == "Off" or entity_get_local_player() == nil or not entity_is_alive(entity_get_local_player()) then return end
  713.  
  714. if entity_get_local_player() == nil or entity_get_prop(entity_get_local_player(), "m_lifeState") ~= 0 then return end
  715. local bFreezeTime = entity_get_prop(entity.get_game_rules(), "m_bFreezePeriod")
  716. if (bFreezeTime) == 1 then return end
  717.  
  718. if ui_get(desyncmode) == "Static" then
  719. if cmd.in_jump ~= 0 then return end
  720. local sm = cmd.in_duck ~= 0 and 2.941177 or 1.000001
  721. sm = cmd.command_number % 4 < 2 and -sm or sm
  722. cmd.sidemove = cmd.sidemove ~= 0 and cmd.sidemove or sm
  723. else return
  724. end
  725. end)
  726.  
  727. -- LBY breaker
  728. client_set_event_callback("run_command", function()
  729. if not ui_get(desync) or ui_get(desyncmode) == "Off" or ui_get(desyncmode) == "Static" or ui_get(desyncstyle) == "Off" then return end
  730.  
  731. if entity_get_local_player() == nil or entity_get_prop(entity_get_local_player(), "m_lifeState") ~= 0 then return end
  732. local bFreezeTime = entity_get_prop(entity.get_game_rules(), "m_bFreezePeriod")
  733. if (bFreezeTime) == 1 then return end
  734.  
  735. if ui_get(desyncmode) == "Break LBY" then
  736. if ui.is_menu_open() then
  737. last_value = ui_get(yaw_slider)
  738. else
  739. local on_ground = bit.band(entity_get_prop(entity_get_local_player(), "m_fFlags"), 1)
  740. local vel_x, vel_y = entity_get_prop(entity_get_local_player(), "m_vecVelocity")
  741. local vel = math.sqrt(vel_x^2 + vel_y^2)
  742. local curtime = globals.curtime()
  743. if vel > 0.0014 then
  744. if on_ground then
  745. next_update = curtime + 0.22
  746. else
  747. next_update = curtime + 1.1
  748. end
  749. end
  750. if curtime > next_update then
  751. next_update = curtime + 1.1
  752. last_value = ui_get(yaw_slider)
  753. if (check_yaw == false) then
  754. ui_set(yaw_slider, last_value + (180 - ui_get(slider)))
  755. else if (check_yaw == true) then
  756. ui_set(yaw_slider, last_value - (180 - ui_get(slider)))
  757. else
  758. ui_set(yaw_slider, last_value)
  759. end
  760. end
  761. end
  762. end
  763. else return
  764. end
  765. end)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement