Guest User

pyhag source

a guest
Aug 17th, 2017
11,099
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 23.59 KB | None | 0 0
  1. import ctypes
  2. import os
  3. from ctypes import *
  4. from ctypes.wintypes import *
  5. import psutil
  6. import sys
  7. import win32api
  8. import win32con
  9. from ctypes import wintypes
  10. import time
  11. import struct
  12. import thread
  13. import random
  14. import math
  15. import numpy
  16. import binascii
  17.  
  18.  
  19.  
  20. clear = lambda: os.system('cls')
  21.  
  22. off_teamnum = 0xF0
  23. off_flags = 0x100
  24. off_incrosshair = 0xB2B4
  25. off_health = 0xFC
  26. off_glowindex = 0xA320
  27. off_vecorigin = 0x134
  28. off_velocity = 0x110
  29. off_shotsfired = 0xA2C0
  30. off_spotted = 0x00000939
  31. off_dormant = 0x000000E9
  32. off_aimpunch = 0x301C
  33. off_vecviewoffset = 0x104
  34. off_bonematrix = 0x00002698
  35. off_dwviewangle = 0x4D10
  36. off_clientdll = 0
  37.  
  38. off_localplayer = 0xAAFFEC
  39. off_entitylist = 0x4A8C844
  40. off_forcejump =  0x4F237DC
  41. off_glowobject = 0x4FA9848
  42. off_clientstate = 0x5A3334
  43.  
  44.  
  45. off_activeweapon = 0x2EE8
  46. off_itemidlow = 0x2FA4
  47. off_itemidhigh = 0x2FA0
  48. off_fallbackpaintkit = 0x3170
  49. off_fallbackseed = 0x3174
  50. off_fallbackwear = 0x3178
  51. off_itemdefinition = 0x2F88
  52. off_weaponid = 0x000032EC
  53.  
  54.  
  55. switch = True
  56. triggeronoff = False
  57. glowonoff = True
  58. bhoponoff = True
  59. cleverglowonoff = False
  60. aimonoff = False
  61. rcsonoff = True
  62. test = True
  63.  
  64. aimbone = 8
  65. aimfov = 1.5
  66. triggerdelay = 0.0
  67.  
  68.  
  69.  
  70. class THREADENTRY32(Structure):
  71.     _fields_ = [
  72.         ('dwSize' , c_long ),
  73.         ('cntUsage' , c_long),
  74.         ('th32ThreadID' , c_long),
  75.         ('th32OwnerProcessID' , c_long),
  76.         ('tpBasePri' , c_long),
  77.         ('tpDeltaPri' , c_long),
  78.         ('dwFlags' , c_long) ]
  79.  
  80. class MODULEENTRY32(Structure):
  81.     _fields_ = [ ( 'dwSize' , c_long ) ,
  82.                 ( 'th32ModuleID' , c_long ),
  83.                 ( 'th32ProcessID' , c_long ),
  84.                 ( 'GlblcntUsage' , c_long ),
  85.                 ( 'ProccntUsage' , c_long ) ,
  86.                 ( 'modBaseAddr' , c_long ) ,
  87.                 ( 'modBaseSize' , c_long ) ,
  88.                 ( 'hModule' , c_void_p ) ,
  89.                 ( 'szModule' , c_char * 256 ),
  90.                 ( 'szExePath' , c_char * 260 ) ]
  91.  
  92. Module32First = windll.kernel32.Module32First
  93. Module32First.argtypes = [ c_void_p , POINTER(MODULEENTRY32) ]
  94. Module32First.rettype = c_int
  95. ## Module32Next
  96. Module32Next = windll.kernel32.Module32Next
  97. Module32Next.argtypes = [ c_void_p , POINTER(MODULEENTRY32) ]
  98. Module32Next.rettype = c_int
  99. ## Thread32First
  100. Thread32First = windll.kernel32.Thread32First
  101. Thread32First.argtypes = [ c_void_p , POINTER(THREADENTRY32) ]
  102. Thread32First.rettype = c_int
  103. ## Thread32Next
  104. Thread32Next = windll.kernel32.Thread32Next
  105. Thread32Next.argtypes = [ c_void_p , POINTER(THREADENTRY32) ]
  106. Thread32Next.rettype = c_int
  107. ## GetLastError
  108. GetLastError = windll.kernel32.GetLastError
  109. GetLastError.rettype = c_long
  110.  
  111.  
  112.  
  113.  
  114. CreateToolhelp32Snapshot = windll.kernel32.CreateToolhelp32Snapshot
  115. def GetModuleBase(PID,ModuleName):
  116.     hModuleSnap = CreateToolhelp32Snapshot( 0x00000008, PID );
  117.     me32 = MODULEENTRY32()
  118.     me32.dwSize = sizeof(MODULEENTRY32)
  119.     Module32First( hModuleSnap, byref(me32))
  120.     base = None
  121.     while True:
  122.         if (me32.szModule.lower()==ModuleName.lower()):
  123.             base=me32.modBaseAddr
  124.             break
  125.         if not Module32Next(hModuleSnap, byref(me32)):
  126.             break
  127.     CloseHandle(hModuleSnap)
  128.     return base
  129.  
  130. taskid = "nothing"
  131. OpenProcess = windll.kernel32.OpenProcess
  132. CloseHandle = windll.kernel32.CloseHandle
  133. PROCESS_ALL_ACCESS = 0x1F0FFF
  134.  
  135. for proc in psutil.process_iter():
  136.     if proc.name() == "csgo.exe":
  137.         taskid = proc.pid
  138.         (taskid)
  139.         print("Found csgo, script will start...")
  140.        
  141. if taskid == "nothing":
  142.     raw_input("Please make sure csgo is running, script will exit now...")
  143.     quit()
  144.  
  145.  
  146.  
  147.  
  148. off_clientdll = GetModuleBase(taskid, "client.dll")
  149. off_enginedll = GetModuleBase(taskid, "engine.dll")
  150.  
  151. buffer1 = c_char_p(b"")
  152. val1 = c_int()
  153. bufferSize1 = len(buffer1.value)
  154. bytesRead1 = c_ulong(0)
  155.  
  156. buffer2 = c_char_p(b"")
  157. val2 = c_int()
  158. bufferSize2 = len(buffer2.value)
  159. bytesRead2 = c_ulong(0)
  160.  
  161.  
  162.  
  163.  
  164.    
  165. game = windll.kernel32.OpenProcess(PROCESS_ALL_ACCESS, 0, taskid)
  166. ReadProcessMemory = windll.kernel32.ReadProcessMemory
  167. WriteProcessMemory = windll.kernel32.WriteProcessMemory
  168.  
  169.  
  170.  
  171. def getlenght(type):
  172.     if type == "i":
  173.         return 4
  174.     elif type == "f":
  175.         return 4
  176.     elif type == "c":
  177.         return 1
  178.  
  179. def float_to_hex(f):
  180.     return struct.pack('f', f)
  181.  
  182. def read_memory(game, address, type):
  183.     buffer = (ctypes.c_byte * getlenght(type))()
  184.     bytesRead = ctypes.c_ulonglong(0)
  185.     readlenght = getlenght(type)
  186.     ReadProcessMemory(game, address, buffer, readlenght, byref(bytesRead))
  187.     return struct.unpack(type, buffer)[0]
  188.  
  189. def write_memory(game, address, data, type):
  190.     count = c_ulong(0)
  191.     if type == "f":
  192.         buffer = (float_to_hex(data))
  193.  
  194.     elif type == "i":
  195.         buffer = struct.pack("i", data)
  196.        
  197.     elif type == "c":
  198.         buffer = chr(data)
  199.  
  200.     lenght = getlenght(type)
  201.     WriteProcessMemory(game, address, buffer, lenght, byref(count))
  202.  
  203.  
  204. def printer():
  205.     clear()
  206.     print("Settings: +++ Aimfov = " + str(aimfov) + " +++ Aimbone: " + str(aimbone) + " +++ Triggerdelay: " + str(triggerdelay) + " +++")
  207.     print("")
  208.     print("")
  209.     print("")
  210.     print("")
  211.     print("                   - Bunnyhop: " + str(bhoponoff))
  212.     print("")
  213.     print("                   - Triggerbot: " + str(triggeronoff))
  214.     print("")
  215.     print("                   - Glow: " + str(glowonoff))
  216.     print("")
  217.     print("                   - Cleverglow: " + str(cleverglowonoff))
  218.     print("")
  219.     print("                   - Recoilsystem: " + str(rcsonoff))
  220.     print("")
  221.     print("                   - Aimbot: " + str(aimonoff))
  222.     print("")
  223.  
  224.  
  225.  
  226.  
  227. def triggerthread():
  228.     while switch:
  229.         if triggeronoff:
  230.             time.sleep(0.01)
  231.             locaplayer =  read_memory(game,(off_clientdll + off_localplayer), "i")
  232.             myteam = read_memory(game,(locaplayer + off_teamnum), "i")
  233.             incrosshair = read_memory(game,(locaplayer + off_incrosshair), "i")
  234.             if incrosshair != 0:
  235.                 incrosshair_entity = read_memory(game,(off_clientdll + off_entitylist + ((incrosshair -1) * 0x10)), "i")
  236.                 incrosshair_team = read_memory(game,(incrosshair_entity + off_teamnum), "i")
  237.                 #one = read_memory(game,(incrosshair_entity + 0x8), "i")
  238.                 #two = read_memory(game,(one + 2 * 0x4), "i")
  239.                 #three = read_memory(game,(two + 0x1), "i")
  240.                 #classid = read_memory(game,(three + 0x14), "i")
  241.  
  242.  
  243.                 if myteam != incrosshair_team: #and classid == 35:
  244.                     if triggerdelay > 0:
  245.                         time.sleep(triggerdelay)
  246.  
  247.                     if win32api.GetAsyncKeyState(0x39) == False:
  248.  
  249.                         ctypes.windll.user32.mouse_event(2, 0, 0, 0,0)
  250.                         ctypes.windll.user32.mouse_event(4, 0, 0, 0,0)
  251.                
  252.  
  253.  
  254. def bhopthread():
  255.     while switch:
  256.         if bhoponoff:
  257.             time.sleep(0.01)
  258.             locaplayer1 =  read_memory(game,(off_clientdll + off_localplayer), "i")
  259.             flags =  read_memory(game,(locaplayer1 + off_flags), "i")
  260.            
  261.             if flags & (1 << 0) and win32api.GetAsyncKeyState(0x12):
  262.                 write_memory(game, (off_clientdll + off_forcejump), 6, "i")
  263.  
  264.  
  265. def glowthread():
  266.     while switch:
  267.         if glowonoff:
  268.             time.sleep(0.01)
  269.             glowlocalplayer =  read_memory(game,(off_clientdll + off_localplayer), "i")
  270.  
  271.             glowpointer =  read_memory(game,(off_clientdll + off_glowobject), "i")
  272.  
  273.             glowteam =  read_memory(game,(glowlocalplayer + off_teamnum), "i")
  274.  
  275.             for i in range(1, 64):
  276.              
  277.                 player =  read_memory(game,(off_clientdll + off_entitylist +  ((i -1) * 0x10)), "i")
  278.  
  279.                
  280.                
  281.                 health =  read_memory(game,(player + off_health), "i")
  282.        
  283.                
  284.                 glowteam_enemy =  read_memory(game,(player + off_teamnum), "i")
  285.  
  286.  
  287.                 inject =  read_memory(game,(player + off_glowindex), "i")
  288.        
  289.  
  290.                 if health > 0 and glowteam != glowteam_enemy:
  291.  
  292.  
  293.                     red = ((255 - 2.55 * health) / 255)
  294.                     if red > 1:
  295.                         red = 1.0
  296.                     green = ((2.55*health) / 255)
  297.                     if green > 1.0:
  298.                         green = 1.0
  299.                    
  300.                     write_memory(game, (glowpointer + (inject * 0x38 + 0x4)), red, "f")
  301.                     write_memory(game, (glowpointer + (inject * 0x38 + 0x8)), green, "f")
  302.                     write_memory(game, (glowpointer + (inject * 0x38 + 0xC)), 0.0, "f")
  303.                     write_memory(game, (glowpointer + (inject * 0x38 + 0x10)), 0.8, "f")
  304.                     write_memory(game, (glowpointer + (inject * 0x38 + 0x24)), True, "c")
  305.                     write_memory(game, (glowpointer + (inject * 0x38 + 0x25)), False, "c")
  306.                     write_memory(game, (glowpointer + (inject * 0x38 + 0x26)), False, "c")
  307.  
  308.  
  309.  
  310. def cleverglow():
  311.     while switch:
  312.         if cleverglowonoff:
  313.             time.sleep(0.01)
  314.  
  315.             cleverglowlocalplayer =  read_memory(game,(off_clientdll + off_localplayer), "i")
  316.  
  317.             cleverglowpointer =  read_memory(game,(off_clientdll + off_glowobject), "i")
  318.  
  319.             cleverglowteam =  read_memory(game,(cleverglowlocalplayer + off_teamnum), "i")
  320.  
  321.             for z in range(1, 64):
  322.              
  323.                 cleverglowplayer =  read_memory(game,(off_clientdll + off_entitylist +  ((z -1) * 0x10)), "i")
  324.  
  325.                
  326.  
  327.                
  328.  
  329.                 cleverglowhealth =  read_memory(game,(cleverglowplayer + off_health), "i")
  330.                 cleverglowteam_enemy =  read_memory(game,(cleverglowplayer + off_teamnum), "i")
  331.                
  332.                
  333.  
  334.                 if cleverglowhealth > 0 and cleverglowteam != cleverglowteam_enemy:
  335.  
  336.                     localplayerx = read_memory(game,(cleverglowlocalplayer + off_vecorigin), "f")
  337.                     localplayery = read_memory(game,(cleverglowlocalplayer + off_vecorigin + 0x04), "f")
  338.                    
  339.  
  340.                    
  341.                     enemyx = read_memory(game,(cleverglowplayer + off_vecorigin), "f")
  342.                     enemyy = read_memory(game,(cleverglowplayer + off_vecorigin + 0x04), "f")
  343.  
  344.  
  345.                     distx = localplayerx - enemyx
  346.                     disty = localplayery - enemyy
  347.  
  348.                     finaldist = ((distx * distx) + (disty * disty))
  349.                     finaldist = (math.sqrt(finaldist))
  350.                     cleverglowpointer =  read_memory(game,(off_clientdll + off_glowobject), "i")
  351.                     cleverinject =  read_memory(game,(cleverglowplayer + off_glowindex), "i")
  352.                     dormant =  read_memory(game,(cleverglowplayer + off_dormant), "i")
  353.                     spotted = read_memory(game,(cleverglowplayer + off_spotted), "i")
  354.                     cleverglowspeed = read_memory(game,(cleverglowplayer + off_velocity), "f")
  355.  
  356.                     if finaldist < 1300 and cleverglowspeed > 130:
  357.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x4)), 1.0, "f")
  358.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x8)), 0.0, "f")
  359.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0xC)), 1.0, "f")
  360.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x10)), 0.7, "f")
  361.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x24)), True, "c")
  362.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x25)), False, "c")
  363.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x26)), False, "c")
  364.                     elif dormant > 0 or spotted != 0:
  365.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x4)), 0.0, "f")
  366.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x8)), 1.0, "f")
  367.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0xC)), 1.0, "f")
  368.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x10)), 0.7, "f")
  369.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x24)), True, "c")
  370.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x25)), False, "c")
  371.                         write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x26)), False, "c")
  372.  
  373.  
  374.                 if cleverglowhealth > 0 and cleverglowteam == cleverglowteam_enemy:
  375.                     cleverinject =  read_memory(game,(cleverglowplayer + off_glowindex), "i")
  376.                     write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x4)), 1.0, "f")
  377.                     write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x8)), 1.0, "f")
  378.                     write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0xC)), 1.0, "f")
  379.                     write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x10)), 0.7, "f")
  380.                     write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x24)), True, "c")
  381.                     write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x25)), False, "c")
  382.                     write_memory(game, (cleverglowpointer + (cleverinject * 0x38 + 0x26)), False, "c")
  383.  
  384.  
  385. def normalizeAngles(viewAngleX, viewAngleY):
  386.     if viewAngleX > 89:
  387.         viewAngleX -= 360
  388.     if viewAngleX <  -89:
  389.         viewAngleX += 360
  390.     if viewAngleY > 180:
  391.         viewAngleY -= 360
  392.     if viewAngleY < -180:
  393.         viewAngleY += 360
  394.  
  395.     return viewAngleX, viewAngleY
  396.  
  397.  
  398. def checkangles(x, y):
  399.     if x > 89:
  400.         return False
  401.     elif x < -89:
  402.         return False
  403.     elif y > 360:
  404.         return False
  405.     elif y < -360:
  406.         return False
  407.     else:
  408.         return True
  409.  
  410.  
  411. def nanchecker(first, second):
  412.     if math.isnan(first) or math.isnan(second):
  413.         return False
  414.     else:
  415.         return True
  416.  
  417.  
  418. def calc_distance(current_x, current_y, new_x, new_y):
  419.  
  420.     distancex = new_x - current_x
  421.     if distancex < -89:
  422.         distancex += 360
  423.     elif distancex > 89:
  424.         distancex -= 360
  425.     if distancex < 0.0:
  426.         distancex = -distancex
  427.  
  428.     distancey = new_y - current_y
  429.     if distancey < -180:
  430.         distancey += 360
  431.     elif distancey > 180:
  432.         distancey -= 360
  433.     if distancey < 0.0:
  434.         distancey = -distancey
  435.  
  436.     return distancex, distancey
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445. def aimthread():
  446.     oldoffpunchx = 0.0
  447.     oldoffpunchy = 0.0
  448.     while switch:
  449.         if test:
  450.             time.sleep(0.01)
  451.             aimlocalplayer = read_memory(game,(off_clientdll + off_localplayer), "i")
  452.  
  453.             aimteam = read_memory(game,(aimlocalplayer + off_teamnum), "i")
  454.             enginepointer = read_memory(game,(off_enginedll + off_clientstate), "i")
  455.             #print viewanglex
  456.             #print viewangley
  457.  
  458.  
  459.             for y in range(1, 64):
  460.              
  461.                 aimplayer =  read_memory(game,(off_clientdll + off_entitylist +  ((y -1) * 0x10)), "i")
  462.  
  463.                
  464.  
  465.                 aimplayerteam = read_memory(game,(aimplayer + off_teamnum), "i")
  466.                 aimplayerhealth = read_memory(game,(aimplayer + off_health), "i")            
  467.  
  468.                 if aimplayerteam != aimteam and aimplayerhealth > 0:
  469.                     vecorigin = read_memory(game,(aimlocalplayer + off_vecorigin), "i")
  470.                     localpos1 = read_memory(game,(aimlocalplayer + off_vecorigin), "f") + read_memory(game,(vecorigin + off_vecviewoffset + 0x104), "f")
  471.                     localpos2 = read_memory(game,(aimlocalplayer + off_vecorigin + 0x4), "f") + read_memory(game,(vecorigin + off_vecviewoffset + 0x108), "f")
  472.                     localpos3 = read_memory(game,(aimlocalplayer + off_vecorigin + 0x8), "f") + read_memory(game,(aimlocalplayer + 0x10C), "f")
  473.                    
  474.                    
  475.                    
  476.                     vecorigin = read_memory(game,(aimplayer + off_vecorigin), "i")
  477.                     aimplayerbones = read_memory(game,(aimplayer + off_bonematrix), "i")
  478.                     enemypos1 = read_memory(game,(aimplayerbones + 0x30 * aimbone + 0x0C), "f")
  479.                     enemypos2 = read_memory(game,(aimplayerbones + 0x30 * aimbone + 0x1C), "f")
  480.                     enemypos3 = read_memory(game,(aimplayerbones + 0x30 * aimbone + 0x2C), "f")
  481.                     targetline1 = enemypos1 - localpos1
  482.                     targetline2 = enemypos2 - localpos2
  483.                     targetline3 = enemypos3 - localpos3
  484.  
  485.                     viewanglex = read_memory(game,(enginepointer + off_dwviewangle), "f")
  486.                     viewangley = read_memory(game,(enginepointer + off_dwviewangle + 0x4), "f")
  487.                     offpunchx = read_memory(game,(aimlocalplayer +  off_aimpunch), "f")
  488.                     offpunchy = read_memory(game,(aimlocalplayer +  off_aimpunch + 0x4), "f")
  489.  
  490.                     if targetline2 == 0 and targetline1 == 0:
  491.                         yaw = 0
  492.                         if targetline3 > 0:
  493.                             pitch = 270
  494.                         else:
  495.                             pitch = 90
  496.                     else:
  497.                         yaw = (math.atan2(targetline2, targetline1) * 180 / math.pi )  - (offpunchy * 2)
  498.                         if yaw < 0:
  499.                             yaw += 360
  500.                         hypotenuse = math.sqrt((targetline1*targetline1) + (targetline2*targetline2) + (targetline3*targetline3))
  501.                         pitch = (math.atan2(-targetline3, hypotenuse) * 180 / math.pi) - (offpunchx * 2)
  502.                         if pitch < 0:
  503.                             pitch += 360
  504.                    
  505.  
  506.                     pitch, yaw = normalizeAngles(pitch, yaw)
  507.                     if checkangles(pitch, yaw):
  508.  
  509.  
  510.                         distance_x, distance_y = calc_distance(viewanglex, viewangley, pitch, yaw)
  511.  
  512.  
  513.                         if (distance_x < aimfov and distance_y < aimfov and win32api.GetAsyncKeyState(0x14)):
  514.  
  515.                             if nanchecker(pitch, yaw):
  516.  
  517.                                 write_memory(game,(enginepointer + off_dwviewangle), pitch, "f")
  518.                                 write_memory(game,(enginepointer + (off_dwviewangle + 0x4)), yaw, "f")
  519.  
  520.  
  521.  
  522.                         elif (distance_x < aimfov and distance_y < aimfov and read_memory(game,(aimlocalplayer + off_shotsfired), "i") >= 1 and aimonoff) and aimonoff:
  523.  
  524.                             if nanchecker(pitch, yaw):
  525.  
  526.                                 write_memory(game,(enginepointer + off_dwviewangle), pitch, "f")
  527.                                 write_memory(game,(enginepointer + (off_dwviewangle + 0x4)), yaw, "f")
  528.  
  529.  
  530.  
  531.  
  532.  
  533.  
  534.  
  535.  
  536.  
  537.  
  538.                                  
  539.                    
  540. def recoilsystem():
  541.     oldpunchx = 0.0
  542.     oldpunchy = 0.0
  543.     while switch:
  544.         time.sleep(0.01)
  545.         if rcsonoff:
  546.            
  547.             rcslocalplayer = read_memory(game,(off_clientdll +off_localplayer), "i")
  548.             rcsengine = read_memory(game,(off_enginedll + off_clientstate), "i")
  549.             if read_memory(game,(rcslocalplayer + off_shotsfired), "i") > 2:
  550.  
  551.                 rcs_x = read_memory(game,(rcsengine + off_dwviewangle), "f")
  552.                 rcs_y = read_memory(game,(rcsengine + off_dwviewangle + 0x4), "f")
  553.                
  554.                 punchx = read_memory(game,(rcslocalplayer +  off_aimpunch), "f")
  555.                 punchy = read_memory(game,(rcslocalplayer + off_aimpunch + 0x4), "f")
  556.                
  557.                 newrcsx = rcs_x - (punchx - oldpunchx) * 2.0
  558.                 newrcsy = rcs_y - (punchy - oldpunchy) * 2.0
  559.                 newrcs, newrcy = normalizeAngles(newrcsx, newrcsy)
  560.  
  561.  
  562.  
  563.  
  564.                 oldpunchx = punchx
  565.                 oldpunchy = punchy
  566.  
  567.  
  568.  
  569.                 if nanchecker(newrcsx, newrcsy) and checkangles(newrcsx, newrcsy):
  570.  
  571.                     write_memory(game,(rcsengine + off_dwviewangle), newrcsx, "f")
  572.                     write_memory(game,(rcsengine + off_dwviewangle + 0x4), newrcsy, "f")
  573.  
  574.                
  575.  
  576.             else:
  577.                 oldpunchx = 0.0
  578.                 oldpunchy = 0.0
  579.                 newrcsx = 0.0
  580.                 newrcsy = 0.0
  581.  
  582.  
  583.  
  584. def skinchanger():
  585.     while switch:
  586.         time.sleep(0.01)
  587.         if win32api.GetAsyncKeyState(0x2D):
  588.             knifeengine = read_memory(game,(off_enginedll + off_clientstate), "i")
  589.             knifeplayer = read_memory(game, (off_clientdll + off_localplayer), "i")
  590.             current_weapon = read_memory(game, (knifeplayer + off_activeweapon), "i")
  591.             current_weapon &= 0xFFF
  592.             weapon_entity = read_memory(game, (off_clientdll + off_entitylist + (current_weapon -1) * 0x10), "i")
  593.             currentweapon = read_memory(game, (weapon_entity + off_weaponid), "i")
  594.             currentskinid = read_memory(game, (weapon_entity + off_fallbackpaintkit), "i")
  595.  
  596.             write_memory(game,(weapon_entity + off_itemidhigh), 0, "i")
  597.             write_memory(game,(weapon_entity + off_itemidlow), -1, "i")
  598.             write_memory(game,(weapon_entity + off_fallbackpaintkit), 474, "i")
  599.             write_memory(game,(weapon_entity + off_fallbackwear), 0.000001, "f")
  600.  
  601.  
  602.             if currentskinid != read_memory(game, (weapon_entity + off_fallbackpaintkit), "i"):
  603.                 write_memory(game,(knifeengine + 0x16C), -1, "i")
  604.  
  605.  
  606.  
  607.  
  608.  
  609. thread.start_new_thread(triggerthread, ())
  610. thread.start_new_thread(bhopthread, ())
  611. thread.start_new_thread(glowthread, ())
  612. thread.start_new_thread(cleverglow, ())
  613. thread.start_new_thread(aimthread, ())
  614. thread.start_new_thread(recoilsystem, ())
  615. #thread.start_new_thread(skinchanger, ())
  616.  
  617.  
  618.  
  619.  
  620.  
  621. printer()
  622.  
  623.  
  624. while switch:
  625.     if win32api.GetAsyncKeyState(0x37):
  626.         time.sleep(0.2)
  627.         if bhoponoff:
  628.             bhoponoff = False
  629.         else:
  630.             bhoponoff = True
  631.  
  632.         printer()
  633.  
  634.     elif win32api.GetAsyncKeyState(0x38):
  635.         time.sleep(0.2)
  636.         if triggeronoff:
  637.             triggeronoff = False
  638.         else:
  639.             triggeronoff = True
  640.  
  641.         printer()
  642.  
  643.     elif win32api.GetAsyncKeyState(0x39):
  644.         time.sleep(0.2)
  645.         if glowonoff:
  646.             glowonoff = False
  647.         else:
  648.             glowonoff = True
  649.         if cleverglowonoff:
  650.             cleverglowonoff = False
  651.  
  652.         printer()
  653.  
  654.  
  655.     elif win32api.GetAsyncKeyState(0x36):
  656.         time.sleep(0.2)
  657.         if cleverglowonoff:
  658.             cleverglowonoff = False
  659.         else:
  660.             cleverglowonoff = True
  661.         if glowonoff:
  662.             glowonoff = False
  663.  
  664.         printer()
  665.  
  666.  
  667.     elif win32api.GetAsyncKeyState(0x35):
  668.         time.sleep(0.2)
  669.         if rcsonoff:
  670.             rcsonoff = False
  671.         else:
  672.             rcsonoff = True
  673.  
  674.         printer()
  675.  
  676.  
  677.     elif win32api.GetAsyncKeyState(0x28):
  678.         time.sleep(0.2)
  679.         if aimfov > 1.0:
  680.             aimfov -= 0.5
  681.             printer()
  682.  
  683.  
  684.     elif win32api.GetAsyncKeyState(0x26):
  685.         time.sleep(0.2)
  686.         aimfov += 0.5
  687.         printer()
  688.  
  689.  
  690.     elif win32api.GetAsyncKeyState(0x21):
  691.         time.sleep(0.2)
  692.         if aimbone == 8:
  693.             aimbone = 6
  694.         else:
  695.             aimbone = 8
  696.         printer()
  697.  
  698.  
  699.     elif win32api.GetAsyncKeyState(0x22):
  700.         time.sleep(0.2)
  701.         if aimonoff:
  702.             aimonoff = False
  703.         else:
  704.             aimonoff = True
  705.  
  706.         printer()
  707.  
  708.  
  709.     elif win32api.GetAsyncKeyState(0x2E):
  710.         quit()
Advertisement
Add Comment
Please, Sign In to add comment