Advertisement
Guest User

Untitled

a guest
Sep 1st, 2017
516
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.87 KB | None | 0 0
  1. bool __stdcall CreateMoveClient_Hooked( float frametime, CUserCmd* pCmd)
  2. {
  3. if (!pCmd->command_number)
  4. return true;
  5.  
  6. if (Interfaces::Engine->IsConnected() && Interfaces::Engine->IsInGame())
  7. {
  8.  
  9. PVOID pebp;
  10. __asm mov pebp, ebp;
  11. bool* pbSendPacket = (bool*)(*(DWORD*)pebp - 0x1C);
  12. bool& bSendPacket = *pbSendPacket;
  13.  
  14. Vector origView = pCmd->viewangles;
  15. Vector viewforward, viewright, viewup, aimforward, aimright, aimup;
  16. Vector qAimAngles;
  17. qAimAngles.Init(0.0f, pCmd->viewangles.y, 0.0f);
  18. AngleVectors(qAimAngles, &viewforward, &viewright, &viewup);
  19.  
  20. IClientEntity* pEntity;
  21. IClientEntity *pLocal = Interfaces::EntList->GetClientEntity(Interfaces::Engine->GetLocalPlayer());
  22. if (Interfaces::Engine->IsConnected() && Interfaces::Engine->IsInGame() && pLocal && pLocal->IsAlive())
  23. {
  24. Hacks::MoveHacks(pCmd, bSendPacket);
  25. ResolverSetup::GetInst().CM(pEntity);
  26. }
  27.  
  28. if (Menu::Window.MiscTab.FakeLagEnable.GetState())
  29. {
  30. static int ticks = 0;
  31. static int ticks1 = 0;
  32. static int iTick = 0;
  33. static int iTick1 = 0;
  34. static int iTick2 = 0;
  35. int ticksMax = 16;
  36. int value = Menu::Window.MiscTab.FakeLagChoke.GetValue();
  37. if (Menu::Window.MiscTab.FakeLagEnable.GetState() && value > 0 && Menu::Window.MiscTab.FakeLagTyp.GetIndex() == 2)
  38. {
  39. if (ticks >= ticksMax)
  40. {
  41. bSendPacket = true;
  42. ticks = 0;
  43. }
  44. else
  45. {
  46. int packetsToChoke;
  47. if (pLocal->GetVelocity().Length() > 0.f)
  48. {
  49. packetsToChoke = (int)((128.f / Interfaces::Globals->interval_per_tick) / pLocal->GetVelocity().Length()) + 1;
  50. if (packetsToChoke >= 15)
  51. packetsToChoke = 14;
  52. if (packetsToChoke < value)
  53. packetsToChoke = value;
  54. }
  55. else
  56. packetsToChoke = 0;
  57.  
  58. bSendPacket = ticks < 18 - packetsToChoke;;
  59. }
  60. ticks++;
  61. }
  62.  
  63. if (Menu::Window.MiscTab.FakeLagEnable.GetState() && value > 0 && Menu::Window.MiscTab.FakeLagTyp.GetIndex() == 4)
  64. {
  65. if (!(pLocal->GetFlags() & FL_ONGROUND))
  66. {
  67. if (ticks1 >= ticksMax)
  68. {
  69. bSendPacket = true;
  70. ticks1 = 0;
  71. }
  72. else
  73. {
  74. int packetsToChoke;
  75. if (pLocal->GetVelocity().Length() > 0.f)
  76. {
  77. packetsToChoke = (int)((128.f / Interfaces::Globals->interval_per_tick) / pLocal->GetVelocity().Length()) + 1;
  78. if (packetsToChoke >= 15)
  79. packetsToChoke = 14;
  80. if (packetsToChoke < value)
  81. packetsToChoke = value;
  82. }
  83. else
  84. packetsToChoke = 0;
  85.  
  86. bSendPacket = ticks1 < 18 - packetsToChoke;;
  87. }
  88. ticks1++;
  89. }
  90. }
  91. if (Menu::Window.MiscTab.FakeLagEnable.GetState() && value > 0 && Menu::Window.MiscTab.FakeLagTyp.GetIndex() == 1)
  92. {
  93.  
  94. if (iTick < value) {
  95. bSendPacket = false;
  96. iTick++;
  97. }
  98. else {
  99. bSendPacket = true;
  100. iTick = 0;
  101. }
  102. }
  103. if (Menu::Window.MiscTab.FakeLagEnable.GetState() && value > 0 && Menu::Window.MiscTab.FakeLagTyp.GetIndex() == 3)
  104. {
  105. if (!(pLocal->GetFlags() & FL_ONGROUND))
  106. {
  107. if (iTick1 < value) {
  108. bSendPacket = false;
  109. iTick1++;
  110. }
  111. else {
  112. bSendPacket = true;
  113. iTick1 = 0;
  114. }
  115. }
  116. }
  117. if (Menu::Window.MiscTab.FakeLagEnable.GetState() && value > 0 && Menu::Window.MiscTab.FakeLagTyp.GetIndex() == 5)
  118. {
  119. value = LagCompBreak();
  120. if (iTick2 < value) {
  121. bSendPacket = false;
  122. iTick2++;
  123. }
  124. else {
  125. bSendPacket = true;
  126. iTick2 = 0;
  127. }
  128. }
  129. }
  130.  
  131. if (Interfaces::Engine->IsInGame() && Interfaces::Engine->IsConnected())
  132. {
  133. static auto SetClanTag = reinterpret_cast<void(__fastcall*)(const char*, const char*)>(((DWORD)(Utilities::Memory::FindPatternV2("engine.dll", "53 56 57 8B DA 8B F9 FF 15"))));
  134. if (Menu::Window.MiscTab.ClanTag.GetState())
  135. {
  136. static size_t lastTime = 0;
  137.  
  138. if (GetTickCount() > lastTime)
  139. {
  140. kek++;
  141. if (kek > 10)
  142. {
  143. autism = autism + 1;
  144.  
  145. if (autism >= 19) // number of clantaganimation
  146. autism = 0;
  147.  
  148. char random[255];
  149. SetClanTag(clantaganimation[autism], clantaganimation[autism]);
  150. lastTime = GetTickCount() + 500;
  151. }
  152.  
  153. if (kek > 10)
  154. kek = 0;
  155. }
  156. }
  157. else
  158. SetClanTag("", "");
  159. }
  160.  
  161. static bool abc = false;
  162. if (Menu::Window.VisualsTab.NightMode.GetState())
  163. {
  164. if (!abc)
  165. {
  166. ConVar* staticdrop = Interfaces::CVar->FindVar("r_DrawSpecificStaticProp");
  167. SpoofedConvar* staticdrop_spoofed = new SpoofedConvar(staticdrop);
  168. staticdrop_spoofed->SetInt(0);
  169.  
  170. {
  171. for (MaterialHandle_t i = Interfaces::MaterialSystem->FirstMaterial(); i != Interfaces::MaterialSystem->InvalidMaterial(); i = Interfaces::MaterialSystem->NextMaterial(i))
  172. {
  173. IMaterial *pMaterial = Interfaces::MaterialSystem->GetMaterial(i);
  174.  
  175. if (!pMaterial)
  176. continue;
  177.  
  178. if (!strcmp(pMaterial->GetTextureGroupName(), "World textures"))
  179. {
  180. pMaterial->ColorModulation(0.1f, 0.1f, 0.1f);
  181. }
  182. if (!strcmp(pMaterial->GetTextureGroupName(), "StaticProp textures"))
  183. {
  184. pMaterial->ColorModulation(0.3f, 0.3f, 0.3f);
  185. }
  186. }
  187. }
  188. }
  189. abc = true;
  190. }
  191. else
  192. {
  193. abc = false;
  194. }
  195.  
  196. static bool nosmoke;
  197. if (Menu::Window.VisualsTab.OtherNoSmoke.GetState())
  198. {
  199.  
  200. if (!nosmoke) {
  201. ConVar* particles = Interfaces::CVar->FindVar("r_drawparticles");
  202. SpoofedConvar* particles_spoofed = new SpoofedConvar(particles);
  203. particles_spoofed->SetInt(0);
  204.  
  205. ConVar* fog = Interfaces::CVar->FindVar("fog_enable");
  206. SpoofedConvar* fog_spoofed = new SpoofedConvar(fog);
  207. fog_spoofed->SetInt(0);
  208. nosmoke = true;
  209. }
  210.  
  211. }
  212. else if (!Menu::Window.VisualsTab.OtherNoSmoke.GetState())
  213. {
  214. if (nosmoke)
  215. {
  216. ConVar* particles = Interfaces::CVar->FindVar("r_drawparticles");
  217. SpoofedConvar* particles_spoofed = new SpoofedConvar(particles);
  218. particles_spoofed->SetInt(1);
  219.  
  220. ConVar* fog = Interfaces::CVar->FindVar("fog_enable");
  221. SpoofedConvar* fog_spoofed = new SpoofedConvar(fog);
  222. fog_spoofed->SetInt(1);
  223. nosmoke = false;
  224. }
  225.  
  226. }
  227.  
  228. if (Menu::Window.VisualsTab.NightSky.GetState())
  229. {
  230. ConVar* sky = Interfaces::CVar->FindVar("sv_skyname");
  231. SpoofedConvar* sky_spoofed = new SpoofedConvar(sky);
  232. sky_spoofed->SetString("sky_csgo_night02b");
  233. }
  234.  
  235. qAimAngles.Init(0.0f, GetAutostrafeView().y, 0.0f);
  236. AngleVectors(qAimAngles, &viewforward, &viewright, &viewup);
  237. qAimAngles.Init(0.0f, pCmd->viewangles.y, 0.0f);
  238. AngleVectors(qAimAngles, &aimforward, &aimright, &aimup);
  239. Vector vForwardNorm; Normalize(viewforward, vForwardNorm);
  240. Vector vRightNorm; Normalize(viewright, vRightNorm);
  241. Vector vUpNorm; Normalize(viewup, vUpNorm);
  242.  
  243. float forward = pCmd->forwardmove;
  244. float right = pCmd->sidemove;
  245. float up = pCmd->upmove;
  246. if (forward > 450) forward = 450;
  247. if (right > 450) right = 450;
  248. if (up > 450) up = 450;
  249. if (forward < -450) forward = -450;
  250. if (right < -450) right = -450;
  251. if (up < -450) up = -450;
  252. pCmd->forwardmove = DotProduct(forward * vForwardNorm, aimforward) + DotProduct(right * vRightNorm, aimforward) + DotProduct(up * vUpNorm, aimforward);
  253. pCmd->sidemove = DotProduct(forward * vForwardNorm, aimright) + DotProduct(right * vRightNorm, aimright) + DotProduct(up * vUpNorm, aimright);
  254. pCmd->upmove = DotProduct(forward * vForwardNorm, aimup) + DotProduct(right * vRightNorm, aimup) + DotProduct(up * vUpNorm, aimup);
  255.  
  256. if (Menu::Window.MiscTab.OtherSafeMode.GetState())
  257. {
  258. GameUtils::NormaliseViewAngle(pCmd->viewangles);
  259.  
  260. if (pCmd->viewangles.z != 0.0f)
  261. {
  262. pCmd->viewangles.z = 0.00;
  263. }
  264.  
  265. if (pCmd->viewangles.x < -89 || pCmd->viewangles.x > 89 || pCmd->viewangles.y < -180 || pCmd->viewangles.y > 180)
  266. {
  267. Utilities::Log("Having to re-normalise!");
  268. GameUtils::NormaliseViewAngle(pCmd->viewangles);
  269. Beep(750, 800);
  270. if (pCmd->viewangles.x < -89 || pCmd->viewangles.x > 89 || pCmd->viewangles.y < -180 || pCmd->viewangles.y > 180)
  271. {
  272. pCmd->viewangles = origView;
  273. pCmd->sidemove = right;
  274. pCmd->forwardmove = forward;
  275. }
  276. }
  277. }
  278.  
  279. if (pCmd->viewangles.x > 90)
  280. {
  281. pCmd->forwardmove = -pCmd->forwardmove;
  282. }
  283.  
  284. if (pCmd->viewangles.x < -90)
  285. {
  286. pCmd->forwardmove = -pCmd->forwardmove;
  287. }
  288.  
  289. if (bSendPacket)
  290. LastAngleAA = pCmd->viewangles;
  291. }
  292.  
  293. return false;
  294.  
  295. int circlekey = Menu::Window.MiscTab.OtherCircle.GetKey();
  296. int circle = Menu::Window.MiscTab.CircleAmount.GetValue();
  297.  
  298. static float CurYaw = 0.f;
  299. if (circlekey > 0 && GUI.GetKeyState(circlekey))
  300. {
  301. pCmd->forwardmove = -450.f;
  302. pCmd->sidemove = 0.f;
  303. static float CurYaw = 0.f;
  304. float Vel2D = hackManager.pLocal()->GetVelocity().Length2D();
  305. if (Vel2D >= 0)
  306. {
  307.  
  308. float TurnRate = clip((Vel2D / 90.f), circle, 1.25f);
  309. CurYaw += TurnRate;
  310.  
  311.  
  312. pCmd->viewangles.y = CurYaw;
  313. }
  314. }
  315. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement