Add files via upload

This commit is contained in:
ALittlePatate
2021-02-24 12:50:03 +01:00
committed by GitHub
parent ce3fa9a6d7
commit c3c3399ca0
12 changed files with 4347 additions and 0 deletions

291
classes/features_check.py Normal file
View File

@@ -0,0 +1,291 @@
from multiprocessing import *
import multiprocessing
import sys, time
import importlib
sys.path.insert(1, "classes/")
from features_reads import read
sys.path.insert(1, "utils/")
from glow import glow
from chams import chams
from chams_reset import chams_reset
from aimbot import aimbot
from rcs import rcs
from triggerbot import triggerbot
from rapidfire import rapidfire
from silent import silent
from crosshair_hack import crosshair_hack
from thirdperson import thirdperson
from fov import fov
from fov_reset import fov_reset
from hitsound import hitsound
from soundesp import sound_esp
from noflash import noflash
from noflash_reset import noflash_reset
from bhop_rage import bhop_rage
from bhop_legit import bhop_legit
from money import money
from money_reset import money_reset
from radar import radar
from radar_reset import radar_reset
from fake_lag import fake_lag
class check :
def __init__(self) :
self.is_running()
def is_running(self) :
glow_switch = False
chams_switch = False
chams_reset_switch = False
aimbot_switch = False
rcs_switch = False
triggerbot_switch = False
rapidfire_switch = False
silent_aim_switch = False
crosshair_switch = False
thirdperson_switch = False
fov_switch = False
fov_reset_switch = False
hitsound_switch = False
soundesp_switch = False
noflash_switch = False
noflash_reset_switch = False
bhop_rage_switch = False
bhop_legit_switch = False
show_money_switch = False
show_money_reset_switch = False
radar_switch = False
radar_reset_switch = False
fake_lag_switch = False
while True :
try :
read()
if check.glow_active and glow_switch == False :
multiprocessing.freeze_support()
t_glow = Process(target = glow)
t_glow.start()
glow_switch = True
elif not check.glow_active and glow_switch == True:
t_glow.terminate()
glow_switch = False
if check.chams_active and chams_switch == False :
if chams_reset_switch == True :
t_chams_reset.terminate()
chams_reset_switch = False
multiprocessing.freeze_support()
t_chams = Process(target = chams)
t_chams.start()
chams_switch = True
elif not check.chams_active and chams_switch == True:
t_chams.terminate()
multiprocessing.freeze_support()
t_chams_reset = Process(target = chams_reset)
t_chams_reset.start()
chams_reset_switch = True
chams_switch = False
if check.aimbot and aimbot_switch == False :
multiprocessing.freeze_support()
t_aimbot = Process(target = aimbot)
t_aimbot.start()
aimbot_switch = True
elif not check.aimbot and aimbot_switch == True:
t_aimbot.terminate()
aimbot_switch = False
if check.rcs and rcs_switch == False :
multiprocessing.freeze_support()
t_rcs = Process(target = rcs)
t_rcs.start()
rcs_switch = True
elif not check.rcs and rcs_switch == True:
t_rcs.terminate()
rcs_switch = False
if check.triggerbot and triggerbot_switch == False :
multiprocessing.freeze_support()
t_triggerbot = Process(target = triggerbot)
t_triggerbot.start()
triggerbot_switch = True
elif not check.triggerbot and triggerbot_switch == True:
t_triggerbot.terminate()
triggerbot_switch = False
if check.rapid_fire and rapidfire_switch == False :
multiprocessing.freeze_support()
t_rapid_fire = Process(target = rapidfire)
t_rapid_fire.start()
rapidfire_switch = True
elif not check.rapid_fire and rapidfire_switch == True:
t_rapid_fire.terminate()
rapidfire_switch = False
if check.silent_aim and silent_aim_switch == False :
multiprocessing.freeze_support()
t_silent_aim = Process(target = silent)
t_silent_aim.start()
silent_aim_switch = True
elif not check.silent_aim and silent_aim_switch == True:
t_silent_aim.terminate()
silent_aim_switch = False
if check.crosshair and crosshair_switch == False :
multiprocessing.freeze_support()
t_crosshair = Process(target = crosshair_hack)
t_crosshair.start()
crosshair_switch = True
elif not check.crosshair and crosshair_switch == True:
t_crosshair.terminate()
crosshair_switch = False
if check.third_person and thirdperson_switch == False :
multiprocessing.freeze_support()
t_thirdperson = Process(target = thirdperson)
t_thirdperson.start()
thirdperson_switch = True
elif not check.third_person and thirdperson_switch == True:
t_thirdperson.terminate()
thirdperson_switch = False
if check.fov and fov_switch == False :
if fov_reset_switch == True :
t_fov_reset.terminate()
fov_reset_switch = False
multiprocessing.freeze_support()
t_fov = Process(target = fov)
t_fov.start()
fov_switch = True
elif not check.fov and fov_switch == True:
t_fov.terminate()
multiprocessing.freeze_support()
t_fov_reset = Process(target = fov_reset)
t_fov_reset.start()
fov_reset_switch = True
fov_switch = False
if check.hitsound and hitsound_switch == False :
multiprocessing.freeze_support()
t_hitsound = Process(target = hitsound)
t_hitsound.start()
hitsound_switch = True
elif not check.hitsound and hitsound_switch == True:
t_hitsound.terminate()
hitsound_switch = False
if check.sound_esp and soundesp_switch == False :
multiprocessing.freeze_support()
t_soundesp = Process(target = sound_esp)
t_soundesp.start()
soundesp_switch = True
elif not check.sound_esp and soundesp_switch == True:
t_soundesp.terminate()
soundesp_switch = False
if check.no_flash and noflash_switch == False :
if noflash_reset_switch == True :
t_noflash_reset.terminate()
noflash_reset_switch = False
multiprocessing.freeze_support()
t_noflash = Process(target = noflash)
t_noflash.start()
noflash_switch = True
elif not check.no_flash and noflash_switch == True:
t_noflash.terminate()
multiprocessing.freeze_support()
t_noflash_reset = Process(target = noflash_reset)
t_noflash_reset.start()
noflash_reset_switch = True
noflash_switch = False
if check.bhop_rage and bhop_rage_switch == False :
multiprocessing.freeze_support()
t_bhop_rage = Process(target = bhop_rage)
t_bhop_rage.start()
bhop_rage_switch = True
elif not check.bhop_rage and bhop_rage_switch == True:
t_bhop_rage.terminate()
bhop_rage_switch = False
if check.bhop_legit and bhop_legit_switch == False :
multiprocessing.freeze_support()
t_bhop_legit = Process(target = bhop_legit)
t_bhop_legit.start()
bhop_legit_switch = True
elif not check.bhop_legit and bhop_legit_switch == True:
t_bhop_legit.terminate()
bhop_legit_switch = False
if check.show_money and show_money_switch == False :
if show_money_reset_switch == True :
t_show_money_reset.terminate()
show_money_reset_switch = False
multiprocessing.freeze_support()
t_show_money = Process(target = money)
t_show_money.start()
show_money_switch = True
elif not check.show_money and show_money_switch == True:
t_show_money.terminate()
multiprocessing.freeze_support()
t_show_money_reset = Process(target = money_reset)
t_show_money_reset.start()
show_money_reset_switch = True
show_money_switch = False
if check.radar and radar_switch == False :
if radar_reset_switch == True :
t_radar_reset.terminate()
radar_reset_switch = False
multiprocessing.freeze_support()
t_radar = Process(target = radar)
t_radar.start()
radar_switch = True
elif not check.radar and radar_switch == True:
t_radar.terminate()
multiprocessing.freeze_support()
t_radar_reset = Process(target = radar_reset)
t_radar_reset.start()
radar_reset_switch = True
radar_switch = False
if check.fake_lag and fake_lag_switch == False :
multiprocessing.freeze_support()
t_fake_lag = Process(target = fake_lag)
t_fake_lag.start()
fake_lag_switch = True
elif not check.fake_lag and fake_lag_switch == True:
t_fake_lag.terminate()
fake_lag_switch = False
except Exception as e:
print(e)

123
classes/features_reads.py Normal file
View File

@@ -0,0 +1,123 @@
from configparser import ConfigParser
import features_check
class read() :
def __init__(self, *args) :
config = ConfigParser()
while True :
try :
with open("configs/last/last.txt", "r") as f :
for line in f :
last = line
config.read('configs/'+last)
if args :
if args[0] == "glow" :
features_check.check.glow_active = config.getboolean('VISUALS', 'glow_active')
features_check.check.glow_health_based = config.getboolean('VISUALS', 'glow_health_based')
features_check.check.glow_ennemies = config.getboolean('VISUALS', 'glow_ennemies')
features_check.check.ennemies_glow_color = config.get('VISUALS', 'ennemies_glow_color')
features_check.check.glow_allies = config.getboolean('VISUALS', 'glow_allies')
features_check.check.allies_glow_color = config.get('VISUALS', 'allies_glow_color')
return
elif args[0] == "chams" :
features_check.check.chams_active = config.getboolean('VISUALS', 'chams_active')
features_check.check.chams_health_based = config.getboolean('VISUALS', 'chams_health_based')
features_check.check.chams_ennemies = config.getboolean('VISUALS', 'chams_ennemies')
features_check.check.ennemies_chams_color = config.get('VISUALS', 'ennemies_chams_color')
features_check.check.chams_allies = config.getboolean('VISUALS', 'chams_allies')
features_check.check.allies_chams_color = config.get('VISUALS', 'allies_chams_color')
return
elif args[0] == "aim" :
features_check.check.aimbot = config.getboolean('AIM', 'aimbot')
features_check.check.aimbot_key = config.get('AIM', 'aimbot_key')
features_check.check.silent_aim = config.getboolean('AIM', 'silent_aim')
features_check.check.silent_aim_key = config.get('AIM', 'silent_aim_key')
features_check.check.crosshair = config.getboolean('AIM', 'crosshair')
return
elif args[0] == "rcs" :
features_check.check.rcs = config.getboolean('AIM', 'rcs')
features_check.check.rcs_perfect = config.getfloat('AIM', 'rcs_perfect')
elif args[0] == "triggerbot" :
features_check.check.triggerbot = config.getboolean('AIM', 'triggerbot')
features_check.check.t_delay = config.getfloat('AIM', 't_delay')
features_check.check.triggerbot_key = config.get('AIM', 'triggerbot_key')
elif args[0] == "rapid fire" :
features_check.check.rapid_fire = config.getboolean('AIM', 'rapid_fire')
features_check.check.rapid_fire_key = config.get('AIM', 'rapid_fire_key')
elif args[0] == "misc" :
features_check.check.third_person = config.getboolean('MISC', 'third_person')
features_check.check.thirdperson_key = config.get('MISC', 'thirdperson_key')
features_check.check.fov = config.getboolean('MISC', 'fov')
features_check.check.fov_value = config.getfloat('MISC', 'fov_value')
features_check.check.hitsound = config.getboolean('MISC', 'hitsound')
features_check.check.sound = config.get('MISC', 'sound')
features_check.check.sound_esp = config.getboolean('MISC', 'sound_esp')
features_check.check.no_flash = config.getboolean('MISC', 'no_flash')
features_check.check.bhop_rage = config.getboolean('MISC', 'bhop_rage')
features_check.check.bhop_legit = config.getboolean('MISC', 'bhop_legit')
features_check.check.show_money = config.getboolean('MISC', 'show_money')
features_check.check.radar = config.getboolean('MISC', 'radar')
features_check.check.fake_lag = config.getboolean('MISC', 'fake_lag')
features_check.check.fake_lag_value = config.getfloat('MISC', 'fake_lag_value')
#VISUALS
features_check.check.glow_active = config.getboolean('VISUALS', 'glow_active')
features_check.check.glow_health_based = config.getboolean('VISUALS', 'glow_health_based')
features_check.check.glow_ennemies = config.getboolean('VISUALS', 'glow_ennemies')
features_check.check.ennemies_glow_color = config.get('VISUALS', 'ennemies_glow_color')
features_check.check.glow_allies = config.getboolean('VISUALS', 'glow_allies')
features_check.check.allies_glow_color = config.get('VISUALS', 'allies_glow_color')
features_check.check.chams_active = config.getboolean('VISUALS', 'chams_active')
features_check.check.chams_health_based = config.getboolean('VISUALS', 'chams_health_based')
features_check.check.chams_ennemies = config.getboolean('VISUALS', 'chams_ennemies')
features_check.check.ennemies_chams_color = config.get('VISUALS', 'ennemies_chams_color')
features_check.check.chams_allies = config.getboolean('VISUALS', 'chams_allies')
features_check.check.allies_chams_color = config.get('VISUALS', 'allies_chams_color')
#AIM
features_check.check.aimbot = config.getboolean('AIM', 'aimbot')
features_check.check.aimbot_key = config.get('AIM', 'aimbot_key')
features_check.check.rcs = config.getboolean('AIM', 'rcs')
features_check.check.rcs_perfect = config.getfloat('AIM', 'rcs_perfect')
features_check.check.triggerbot = config.getboolean('AIM', 'triggerbot')
features_check.check.t_delay = config.getfloat('AIM', 't_delay')
features_check.check.triggerbot_key = config.get('AIM', 'triggerbot_key')
features_check.check.rapid_fire = config.getboolean('AIM', 'rapid_fire')
features_check.check.rapid_fire_key = config.get('AIM', 'rapid_fire_key')
features_check.check.silent_aim = config.getboolean('AIM', 'silent_aim')
features_check.check.silent_aim_key = config.get('AIM', 'silent_aim_key')
features_check.check.crosshair = config.getboolean('AIM', 'crosshair')
#MISC
features_check.check.third_person = config.getboolean('MISC', 'third_person')
features_check.check.thirdperson_key = config.get('MISC', 'thirdperson_key')
features_check.check.fov = config.getboolean('MISC', 'fov')
features_check.check.fov_value = config.getfloat('MISC', 'fov_value')
features_check.check.hitsound = config.getboolean('MISC', 'hitsound')
features_check.check.sound = config.get('MISC', 'sound')
features_check.check.sound_esp = config.getboolean('MISC', 'sound_esp')
features_check.check.no_flash = config.getboolean('MISC', 'no_flash')
features_check.check.bhop_rage = config.getboolean('MISC', 'bhop_rage')
features_check.check.bhop_legit = config.getboolean('MISC', 'bhop_legit')
features_check.check.show_money = config.getboolean('MISC', 'show_money')
features_check.check.radar = config.getboolean('MISC', 'radar')
features_check.check.fake_lag = config.getboolean('MISC', 'fake_lag')
features_check.check.fake_lag_value = config.getfloat('MISC', 'fake_lag_value')
#SETTINGS
features_check.check.ui_color = config.get('SETTINGS', 'ui_color')
return
except Exception as e:
pass

19
classes/get_netvars.py Normal file
View File

@@ -0,0 +1,19 @@
from netvar_manager import NetvarsManager
import pymem
import pymem.process
class get_netvars() :
def __init__(self) :
pm = pymem.Pymem("csgo.exe")
netvars_manager = NetvarsManager(pm)
out_file = "classes/netvars.json"
if out_file:
with open(out_file, 'w+') as fp:
netvars_manager.dump_netvars(
fp,
json_format=out_file.endswith('.json')
)
else:
netvars_manager.dump_netvars()
pm.close_process()

42
classes/key_listen.py Normal file
View File

@@ -0,0 +1,42 @@
from pynput import mouse
from pynput.keyboard import Key, Listener
from pynput import keyboard
from functools import partial
class listen :
def clean_listeners(self) :
listen.key_listen.stop()
listen.mouse_listener.stop()
def on_press_key(self, key) :
listen.key_key = key
listen.clean_listeners(self)
def on_click(self, x, y, button, pressed) :
listen.button_button = button
listen.clean_listeners(self)
def key(self) :
listen.key_key = None
listen.button_button = None
listen.key_listen = keyboard.Listener(on_press=partial(listen.on_press_key, Key))
listen.key_listen.start()
listen.mouse_listener = mouse.Listener(on_click=partial(listen.on_click, mouse.Button))
listen.mouse_listener.start()
while True :
try :
if listen.key_key :
return listen.key_key
except :
pass
try :
if listen.button_button :
return listen.button_button
except :
pass

14
classes/last.py Normal file
View File

@@ -0,0 +1,14 @@
class last :
def read(self) :
with open("configs/last/last.txt", "r") as f :
for line in f :
last = line
return last
def write(self, name) :
with open("configs/last/last.txt", "a") as f :
f.seek(0)
f.truncate()
f.write(name)
f.close()

110
classes/netvar_manager.py Normal file
View File

@@ -0,0 +1,110 @@
import re
import sys
import json
from typing import Union
from pymem.process import module_from_name
from recv_classes import ClientClass
__all__ = ['NetvarsManager']
class NetvarsManager:
def __init__(self, pm):
"""Creates a new NetvarManager and dumps the netvars.
:param csgo_handle: Handle of the csgo.exe process.
:type csgo_handle: `pymem.Pymem`
"""
client_handle = module_from_name(
pm.process_handle, 'client.dll'
)
client_bytes = pm.read_bytes(
client_handle.lpBaseOfDll, client_handle.SizeOfImage
)
world_decal = re.search(rb'DT_TEWorldDecal', client_bytes).start()
world_decal += client_handle.lpBaseOfDll
all_classes = pm.read_int(client_bytes.find(
world_decal.to_bytes(4, 'little')
) + 0x2B + client_handle.lpBaseOfDll)
self._client_classes = all_classes
self._handle = pm
self._netvars_dict = dict()
self._dump_netvars_internal()
def get_netvar(
self,
table_name: str,
prop_name: str
) -> Union[int, None]:
"""Returns netvar's offset by the given data. If can't find a netvar
then returns None.
:param table_name: Name of the table where is a prop placed in.
:param prop_name: Name of the prop you want to get.
:return: Prop's offset.
"""
return self._netvars_dict.get(table_name, dict()).get(prop_name)
def dump_netvars(self, out_file=sys.stdout, json_format=False) -> None:
"""Dumps netvars, in a plain or json format. If you want to save dump
into a file then you should pass a file-like object to `out_file`
argument.
:param out_file: File (or stdout) where we should save the dump.
:param json_format: If you need to save the dump in a json format.
"""
if json_format:
out_file.write(json.dumps(self._netvars_dict, indent=4))
return
for table in self._netvars_dict.keys():
out_file.write(table + '\n')
max_name_len = len(sorted(
self._netvars_dict[table].keys(), reverse=True,
key=lambda x: len(x)
)[0])
for table_name, prop_offset in self._netvars_dict[table].items():
out_file.write('\t{0:<{1}} 0x{2:08x}\n'.format(
table_name, max_name_len, prop_offset
))
def _dump_table(self, table) -> None:
table_name = table.get_table_name()
for i in range(table.get_max_props()):
prop = table.get_prop(i)
prop_name = prop.get_name()
if prop_name.isnumeric(): # Some shitty prop.
continue
prop_offest = prop.get_offset()
table_existed_data = self._netvars_dict.get(table_name, dict())
table_existed_data.update({prop_name: prop_offest})
self._netvars_dict.update(
{table_name: table_existed_data}
)
try:
data_table = prop.get_data_table()
if not data_table:
continue
except Exception:
continue
else:
try:
self._dump_table(data_table)
except Exception:
continue
def _dump_netvars_internal(self) -> None:
client_class = ClientClass(
self._handle.read_int(self._client_classes + 0x10),
self._handle
)
while client_class is not None:
try:
table = client_class.get_table()
table_name = table.get_table_name()
if not table_name:
break
except Exception:
break
self._dump_table(table)
client_class = client_class.get_next_class()

2657
classes/netvars.json Normal file

File diff suppressed because it is too large Load Diff

55
classes/read_config.py Normal file
View File

@@ -0,0 +1,55 @@
from configparser import ConfigParser
import ui
class read() :
def config(self, config_name) :
config = ConfigParser()
config.read('configs/'+config_name)
#VISUALS
ui.draw.glow_active = config.getboolean('VISUALS', 'glow_active')
ui.draw.glow_health_based = config.getboolean('VISUALS', 'glow_health_based')
ui.draw.glow_ennemies = config.getboolean('VISUALS', 'glow_ennemies')
ui.draw.ennemies_glow_color = config.get('VISUALS', 'ennemies_glow_color')
ui.draw.glow_allies = config.getboolean('VISUALS', 'glow_allies')
ui.draw.allies_glow_color = config.get('VISUALS', 'allies_glow_color')
ui.draw.chams_active = config.getboolean('VISUALS', 'chams_active')
ui.draw.chams_health_based = config.getboolean('VISUALS', 'chams_health_based')
ui.draw.chams_ennemies = config.getboolean('VISUALS', 'chams_ennemies')
ui.draw.ennemies_chams_color = config.get('VISUALS', 'ennemies_chams_color')
ui.draw.chams_allies = config.getboolean('VISUALS', 'chams_allies')
ui.draw.allies_chams_color = config.get('VISUALS', 'allies_chams_color')
#AIM
ui.draw.aimbot = config.getboolean('AIM', 'aimbot')
ui.draw.aimbot_key = config.get('AIM', 'aimbot_key')
ui.draw.rcs = config.getboolean('AIM', 'rcs')
ui.draw.rcs_perfect = config.getfloat('AIM', 'rcs_perfect')
ui.draw.triggerbot = config.getboolean('AIM', 'triggerbot')
ui.draw.t_delay = config.getfloat('AIM', 't_delay')
ui.draw.triggerbot_key = config.get('AIM', 'triggerbot_key')
ui.draw.rapid_fire = config.getboolean('AIM', 'rapid_fire')
ui.draw.rapid_fire_key = config.get('AIM', 'rapid_fire_key')
ui.draw.silent_aim = config.getboolean('AIM', 'silent_aim')
ui.draw.silent_aim_key = config.get('AIM', 'silent_aim_key')
ui.draw.crosshair = config.getboolean('AIM', 'crosshair')
#MISC
ui.draw.third_person = config.getboolean('MISC', 'third_person')
ui.draw.thirdperson_key = config.get('MISC', 'thirdperson_key')
ui.draw.fov = config.getboolean('MISC', 'fov')
ui.draw.fov_value = config.getfloat('MISC', 'fov_value')
ui.draw.hitsound = config.getboolean('MISC', 'hitsound')
ui.draw.sound = config.get('MISC', 'sound')
ui.draw.sound_esp = config.getboolean('MISC', 'sound_esp')
ui.draw.no_flash = config.getboolean('MISC', 'no_flash')
ui.draw.bhop_rage = config.getboolean('MISC', 'bhop_rage')
ui.draw.bhop_legit = config.getboolean('MISC', 'bhop_legit')
ui.draw.show_money = config.getboolean('MISC', 'show_money')
ui.draw.radar = config.getboolean('MISC', 'radar')
ui.draw.fake_lag = config.getboolean('MISC', 'fake_lag')
ui.draw.fake_lag_value = config.getfloat('MISC', 'fake_lag_value')
#SETTINGS
ui.draw.ui_color = config.get('SETTINGS', 'ui_color')

9
classes/read_last.py Normal file
View File

@@ -0,0 +1,9 @@
def main() :
with open("configs/last/last.txt", "r") as f :
for line in f :
last = line
return last
if __name__ == "__main__" :
main()

72
classes/recv_classes.py Normal file
View File

@@ -0,0 +1,72 @@
import re
import sys
import json
from typing import Union
from pymem.process import module_from_name
__all__ = ['RecvTable', 'RecvProp', 'ClientClass']
class RecvProp:
def __init__(self, start_addr, handle):
self._start_addr = start_addr
self._handle = handle
def get_name(self) -> str:
"""Returns a name of the prop."""
name_addr = self._handle.read_int(self._start_addr)
return self._handle.read_string(name_addr, 128)
def get_offset(self) -> int:
"""Returns an offset of the prop."""
return self._handle.read_int(self._start_addr + 0x2C)
def get_data_table(self) -> "RecvTable":
"""Returns a data table for the prop."""
return RecvTable(
self._handle.read_int(self._start_addr + 0x28),
self._handle
)
class RecvTable:
def __init__(self, start_addr, handle):
self._start_addr = start_addr
self._handle = handle
def get_table_name(self) -> str:
"""Returns a table's name."""
name_addr = self._handle.read_int(self._start_addr + 0xC)
return self._handle.read_string(name_addr, 128)
def get_max_props(self) -> int:
"""Returns prop's count in a table."""
return self._handle.read_int(self._start_addr + 0x4)
def get_prop(self, index):
"""Returns prop by the given index."""
props_addr = self._handle.read_int(self._start_addr)
prop_addr = props_addr + 0x3C * index
if not prop_addr:
return None
return RecvProp(prop_addr, self._handle)
class ClientClass:
def __init__(self, start_addr, handle):
self._start_addr = start_addr
self._handle = handle
def get_next_class(self) -> "ClientClass":
"""Returns next client class."""
return self.__class__(
self._handle.read_int(self._start_addr + 0x10),
self._handle
)
def get_table(self) -> RecvTable:
"""Returns client class' table."""
return RecvTable(
self._handle.read_int(self._start_addr + 0xC),
self._handle
)

889
classes/ui.py Normal file
View File

@@ -0,0 +1,889 @@
import kivy, sys, os
from kivy.uix.relativelayout import RelativeLayout
from kivy.uix.button import Button
from kivy.uix.label import Label
from kivy.uix.checkbox import CheckBox
from kivy.config import Config
Config.set('kivy','window_icon','images/rainbow.ico')
Config.set('input', 'mouse', 'mouse,multitouch_on_demand')
Config.set('graphics', 'width', '700')
Config.set('graphics', 'height', '400')
Config.set('graphics', 'resizable', False)
from kivy.uix.textinput import TextInput
from kivy.uix.gridlayout import GridLayout
from kivy.graphics import Rectangle, Color
from kivy.uix.spinner import Spinner
from kivy.uix.colorpicker import ColorPicker
from kivy.lang import Builder
from kivy.app import App
from kivy.uix.popup import Popup
from functools import partial
from kivy.config import Config
from write_config import write
from key_listen import listen
from read_config import read
from last import last
import datetime
from multiprocessing import *
import multiprocessing
sys.path.insert(1, "utils/")
from rank_reveal import rank_reveal
class draw(App):
def rgba(self, string) :
string = str(string)
string = string.replace("[", "")
string = string.replace("]", "")
return tuple(map(float,string.split(', ')))
def on_text(self, instance, value):
self.config_to_save_name = value
def on_enter(self, instance):
self.name_of_config_to_write(self)
def read_config(self, *args) :
self.config_to_load_name = self.spinnerObject_configs.text
last.write(self, self.config_to_load_name)
read.config(self, self.config_to_load_name)
ui_color_rgba = self.rgba(draw.ui_color)
self.visuals.background_color = ui_color_rgba
self.settings.background_color = ui_color_rgba
self.aim.background_color = ui_color_rgba
self.misc.background_color = ui_color_rgba
self.config.background_color = ui_color_rgba
def name_of_config_to_write(self, *args) :
if ".ini" in self.config_name_input.text :
self.config_name_to_save = self.config_name_input.text
else :
self.config_name_to_save = self.config_name_input.text+".ini"
last.write(self, self.config_name_to_save)
write.config(self, self.config_name_to_save)
def save_config(self, *args) :
if self.spinnerObject_configs.text != "Select" :
self.config_name_to_save = self.spinnerObject_configs.text
write.config(self, self.config_name_to_save)
last.write(self, self.config_name_to_save)
def draw_config(self) :
kv = """
FloatLayout:
Label:
text : "Save Config"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.65}
font_size: 20
Label:
text : "Save as"
size_hint: 0.1, 0.1
pos_hint: {"top":0.7, "right": 0.38}
font_size: 20
Label:
text : ".ini"
size_hint: 0.1, 0.1
pos_hint: {"top":0.7, "right": 0.66}
font_size: 20
Button:
text : "save"
size_hint: 0.08, 0.08
pos_hint: {"top":0.69, "right": 0.77}
on_release: app.name_of_config_to_write(self)
Label:
text : "Select Config"
size_hint: 0.1, 0.1
pos_hint: {"top":0.5, "right": 0.64}
font_size: 20
Button:
text : "Load"
size_hint: 0.08, 0.08
pos_hint: {"top":0.3, "right": 0.7}
on_release: app.read_config(self)
Button:
text : "Save"
size_hint: 0.08, 0.08
pos_hint: {"top":0.3, "right": 0.79}
on_release: app.save_config(self)
"""
self.config_name_input = TextInput(multiline=False, pos_hint={"top":0.688, "right": 0.59}, size_hint=(0.2, 0.08))
self.config_name_input.bind(on_text_validate=self.on_enter)
self.config_name_input.bind(text=self.on_text)
folder = "configs/"
filelist = [fname for fname in os.listdir(folder) if fname.endswith('.ini')]
self.spinnerObject_configs = Spinner(text ="Select")
self.spinnerObject_configs.values = filelist
self.spinnerObject_configs.size_hint = (0.1, 0.1)
self.spinnerObject_configs.pos_hint ={"top":0.30, "right": 0.58}
sm = Builder.load_string(kv)
self.rl_config = RelativeLayout(size =(0, 0))
self.rl_config.add_widget(self.config_name_input)
self.rl_config.add_widget(self.spinnerObject_configs)
self.rl_config.add_widget(sm)
self.rl.add_widget(self.rl_config)
def draw_settings(self) :
kv = """
FloatLayout:
Button:
text : "Ui color"
background_color : app.rgba(app.ui_color)
size_hint: 0.1, 0.05
pos_hint: {"top":0.8, "right": 0.65}
on_release: app.draw_colorwheel("ui_color")
"""
sm = Builder.load_string(kv)
self.rl_settings = RelativeLayout(size =(0, 0))
self.rl_settings.add_widget(sm)
self.rl.add_widget(self.rl_settings)
def on_change_slider(self, value, name) :
if name == "slider1" :
try :
self.rl_aim.remove_widget(self.perfect_value_label)
except :
pass
value = round(value, 1)
self.perfect_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.87, "right": 0.99}, text = str(value))
draw.rcs_perfect = value
self.rl_aim.add_widget(self.perfect_value_label)
elif name == "slider2" :
try :
self.rl_aim.remove_widget(self.delay_value_label)
except :
pass
value = round(value, 1)
self.delay_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.68, "right": 0.70}, text = str(value))
draw.t_delay = value
self.rl_aim.add_widget(self.delay_value_label)
elif name == "slider3" :
try :
self.rl_misc.remove_widget(self.fov_value_label)
except :
pass
value = round(value, 1)
self.fov_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.87, "right": 0.99}, text = str(value))
draw.fov_value = value
self.rl_misc.add_widget(self.fov_value_label)
elif name == "slider4" :
try :
self.rl_misc.remove_widget(self.fake_lag_value_label)
except :
pass
value = round(value, 1)
self.fake_lag_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.1, "right": 0.71}, text = str(value))
draw.fake_lag_value = value
self.rl_misc.add_widget(self.fake_lag_value_label)
last.write(self, "temp.ini")
write.config(self, "temp.ini")
def spinners(self, spinner, text, *args):
draw.sound = args[0]
last.write(self, "temp.ini")
write.config(self, "temp.ini")
def rank_reveal(self) :
multiprocessing.freeze_support()
t_rank_reveal = Process(target = rank_reveal)
t_rank_reveal.start()
def draw_misc(self) :
kv = """
FloatLayout:
CheckBox:
id : third_person_chk
active : app.third_person
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.48}
on_press: app.on_checkbox_Active(third_person_chk.active, "third person")
Label:
text : "Third Person"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.38}
font_size: 20
Label:
text : "FOV"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.68}
font_size: 20
CheckBox:
id : fov_chk
active : app.fov
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.73}
on_press: app.on_checkbox_Active(fov_chk.active, "fov")
Label:
text : "Fov value"
size_hint: 0.1, 0.1
pos_hint: {"top":0.93, "right": 0.85}
font_size: 15
Slider:
id: slider3
value : app.fov_value
min: 0
max: 180
size_hint: 0.2, 0.1
pos_hint: {"top":0.87, "right": 0.91}
on_value: app.on_change_slider(self.value, "slider3")
Label:
text : "Hitsound"
size_hint: 0.1, 0.1
pos_hint: {"top":0.7, "right": 0.38}
font_size: 20
CheckBox:
id : hitsound_chk
active : app.hitsound
size_hint: 0.1, 0.1
pos_hint: {"top":0.7, "right": 0.456}
on_press: app.on_checkbox_Active(hitsound_chk.active, "hitsound")
Label:
text : "Sound :"
size_hint: 0.1, 0.1
pos_hint: {"top":0.7, "right": 0.56}
font_size: 18
CheckBox:
id : sound_esp_chk
active : app.sound_esp
size_hint: 0.1, 0.1
pos_hint: {"top":0.55, "right": 0.456}
on_press: app.on_checkbox_Active(sound_esp_chk.active, "sound esp")
Label:
text : "Sound ESP"
size_hint: 0.1, 0.1
pos_hint: {"top":0.55, "right": 0.37}
font_size: 18
CheckBox:
id : no_flash_chk
active : app.no_flash
size_hint: 0.1, 0.1
pos_hint: {"top":0.55, "right": 0.83}
on_press: app.on_checkbox_Active(no_flash_chk.active, "no flash")
Label:
text : "No Flash"
size_hint: 0.1, 0.1
pos_hint: {"top":0.55, "right": 0.76}
font_size: 18
Label:
text : "Bhop rage"
size_hint: 0.1, 0.1
pos_hint: {"top":0.4, "right": 0.38}
font_size: 18
CheckBox:
id : bhop_rage_chk
active : app.bhop_rage
size_hint: 0.1, 0.1
pos_hint: {"top":0.4, "right": 0.456}
on_press: app.on_checkbox_Active(bhop_rage_chk.active, "bhop rage")
Label:
text : "Bhop legit"
size_hint: 0.1, 0.1
pos_hint: {"top":0.4, "right": 0.767}
font_size: 18
CheckBox:
id : bhop_legit_chk
active : app.bhop_legit
size_hint: 0.1, 0.1
pos_hint: {"top":0.4, "right": 0.84}
on_press: app.on_checkbox_Active(bhop_legit_chk.active, "bhop legit")
Label:
text : "Show Money"
size_hint: 0.1, 0.1
pos_hint: {"top":0.26, "right": 0.38}
font_size: 18
CheckBox:
id : show_money_chk
active : app.show_money
size_hint: 0.1, 0.1
pos_hint: {"top":0.26, "right": 0.47}
on_press: app.on_checkbox_Active(show_money_chk.active, "show money")
Label:
text : "Radar Hack"
size_hint: 0.1, 0.1
pos_hint: {"top":0.26, "right": 0.77}
font_size: 18
CheckBox:
id : radar_chk
active : app.radar
size_hint: 0.1, 0.1
pos_hint: {"top":0.26, "right": 0.856}
on_press: app.on_checkbox_Active(radar_chk.active, "radar")
Label:
text : "Fake lag"
size_hint: 0.1, 0.1
pos_hint: {"top":0.13, "right": 0.38}
font_size: 20
CheckBox:
id : fake_lag_chk
active : app.fake_lag
size_hint: 0.1, 0.1
pos_hint: {"top":0.134, "right": 0.45}
on_press: app.on_checkbox_Active(fake_lag_chk.active, "fake lag")
Label:
text : "Lag in ms"
size_hint: 0.1, 0.1
pos_hint: {"top":0.16, "right": 0.58}
font_size: 15
Slider:
id: slider4
value : app.fake_lag_value
min: 0
max: 900
size_hint: 0.2, 0.1
pos_hint: {"top":0.1, "right": 0.63}
on_value: app.on_change_slider(self.value, "slider4")
Button:
text : "Rank Reveal"
size_hint: 0.13, 0.1
pos_hint: {"top":0.14, "right": 0.98}
on_release: app.rank_reveal()
"""
self.rl_misc = RelativeLayout(size =(0, 0))
folder = "sounds/"
filelist = [fname for fname in os.listdir(folder)]
self.spinnerObject = Spinner(text ="Select")
self.spinnerObject.values = filelist
self.spinnerObject.text = draw.sound
self.spinnerObject.bind(text = partial(self.spinners, "sounds"))
self.spinnerObject.size_hint = (0.1, 0.1)
self.spinnerObject.pos_hint ={"top":0.7, "right": 0.66}
self.thirdperson_key_but = Button(size_hint =(.12, .07), pos_hint ={"top":0.88, "right": 0.57}, text = draw.thirdperson_key, background_color='#00f7ff')
self.thirdperson_key_but.bind(on_release=partial(self.key_listen_call, "thirdperson"))
self.rl_misc.add_widget(self.thirdperson_key_but)
self.fov_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.87, "right": 0.99}, text = str(draw.fov_value))
self.rl_misc.add_widget(self.fov_value_label)
self.fake_lag_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.1, "right": 0.71}, text = str(draw.fake_lag_value))
self.rl_misc.add_widget(self.fake_lag_value_label)
sm = Builder.load_string(kv)
self.rl_misc.add_widget(self.spinnerObject)
self.rl_misc.add_widget(sm)
self.rl.add_widget(self.rl_misc)
def draw_aim(self) :
kv = """
FloatLayout:
CheckBox:
id : aimbot_chk
active : app.aimbot
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.416}
on_press: app.on_checkbox_Active(aimbot_chk.active, "aimbot")
Label:
text : "Aimbot"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.35}
font_size: 20
Label:
text : "Triggerbot"
size_hint: 0.1, 0.1
pos_hint: {"top":0.7, "right": 0.346}
font_size: 20
CheckBox:
id : triggerbot_chk
active : app.triggerbot
size_hint: 0.1, 0.1
pos_hint: {"top":0.7, "right": 0.43}
on_press: app.on_checkbox_Active(triggerbot_chk.active, "triggerbot")
Label:
text : "Delay in ms"
size_hint: 0.1, 0.1
pos_hint: {"top":0.75, "right": 0.57}
font_size: 15
Slider:
id: slider2
value : app.t_delay
min: 0
max: 600
size_hint: 0.2, 0.1
pos_hint: {"top":0.68, "right": 0.62}
on_value: app.on_change_slider(self.value, "slider2")
Label:
text : "RCS"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.67}
font_size: 20
CheckBox:
id : rcs_chk
active : app.rcs
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.72}
on_press: app.on_checkbox_Active(rcs_chk.active, "rcs")
Label:
text : "Perfection percentage"
size_hint: 0.1, 0.1
pos_hint: {"top":0.95, "right": 0.85}
font_size: 15
Slider:
id: slider1
value : app.rcs_perfect
size_hint: 0.2, 0.1
pos_hint: {"top":0.87, "right": 0.91}
on_value: app.on_change_slider(self.value, "slider1")
Label:
text : "Rapid Fire"
size_hint: 0.1, 0.1
pos_hint: {"top":0.5, "right": 0.35}
font_size: 20
CheckBox:
id : rapid_fire_chk
active : app.rapid_fire
size_hint: 0.1, 0.1
pos_hint: {"top":0.5, "right": 0.432}
on_press: app.on_checkbox_Active(rapid_fire_chk.active, "rapid fire")
Label:
text : "Silent Aim"
size_hint: 0.1, 0.1
pos_hint: {"top":0.34, "right": 0.35}
font_size: 20
CheckBox:
id : silent_aim_chk
active : app.silent_aim
size_hint: 0.1, 0.1
pos_hint: {"top":0.34, "right": 0.43}
on_press: app.on_checkbox_Active(silent_aim_chk.active, "Silent Aim")
Label:
text : "Crosshair hack"
size_hint: 0.1, 0.1
pos_hint: {"top":0.34, "right": 0.71}
font_size: 20
CheckBox:
id : crosshair_chk
active : app.crosshair
size_hint: 0.1, 0.1
pos_hint: {"top":0.34, "right": 0.82}
on_press: app.on_checkbox_Active(crosshair_chk.active, "crosshair")
"""
self.rl_aim = RelativeLayout(size =(0, 0))
self.rapid_fire_key_but = Button(size_hint =(.12, .07), pos_hint ={"top":0.486, "right": 0.52}, text = draw.rapid_fire_key, background_color='#00f7ff')
self.rapid_fire_key_but.bind(on_release=partial(self.key_listen_call, "rapid fire"))
self.rl_aim.add_widget(self.rapid_fire_key_but)
self.silent_aim_key_but = Button(size_hint =(.12, .07), pos_hint ={"top":0.33, "right": 0.52}, text = draw.silent_aim_key, background_color='#00f7ff')
self.silent_aim_key_but.bind(on_release=partial(self.key_listen_call, "silent aim"))
self.rl_aim.add_widget(self.silent_aim_key_but)
self.aimbot_key_but = Button(size_hint =(.12, .07), pos_hint ={"top":0.88, "right": 0.51}, text = draw.aimbot_key, background_color='#00f7ff')
self.aimbot_key_but.bind(on_release=partial(self.key_listen_call, "aimbot"))
self.rl_aim.add_widget(self.aimbot_key_but)
self.triggerbot_key_but = Button(size_hint =(.12, .07), pos_hint ={"top":0.68, "right": 0.8}, text = draw.triggerbot_key, background_color='#00f7ff')
self.triggerbot_key_but.bind(on_release=partial(self.key_listen_call, "triggerbot"))
self.rl_aim.add_widget(self.triggerbot_key_but)
self.perfect_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.87, "right": 0.99}, text = str(draw.rcs_perfect))
self.rl_aim.add_widget(self.perfect_value_label)
self.delay_value_label = Label(size_hint =( 0.1, 0.1), pos_hint ={"top":0.68, "right": 0.70}, text = str(draw.t_delay))
self.rl_aim.add_widget(self.delay_value_label)
sm = Builder.load_string(kv)
self.rl_aim.add_widget(sm)
self.rl.add_widget(self.rl_aim)
def key_listen_call(self, *args) :
key = str(listen.key(self))
key = key.replace("'", "")
if args[0] == "rapid fire" :
self.rapid_fire_key_but.text = key
draw.rapid_fire_key = key
if args[0] == "silent aim" :
self.silent_aim_key_but.text = key
draw.silent_aim_key = key
if args[0] == "aimbot" :
self.aimbot_key_but.text = key
draw.aimbot_key = key
if args[0] == "triggerbot" :
self.triggerbot_key_but.text = key
draw.triggerbot_key = key
if args[0] == "thirdperson" :
self.thirdperson_key_but.text = key
draw.thirdperson_key = key
last.write(self, "temp.ini")
write.config(self, "temp.ini")
def on_color(self, instance, value):
if value != [1.0, 1.0, 1.0, 1] :
if draw.name == "allies_glow" :
draw.allies_glow_color = value
elif draw.name == "ennemies_glow" :
draw.ennemies_glow_color = value
elif draw.name == "allies_chams" :
draw.allies_chams_color = value
elif draw.name == "ennemies_chams" :
draw.ennemies_chams_color = value
elif draw.name == "ui_color" :
draw.ui_color = value
self.visuals.background_color = value
self.settings.background_color = value
self.aim.background_color = value
self.misc.background_color = value
self.config.background_color = value
last.write(self, "temp.ini")
write.config(self, "temp.ini")
def draw_colorwheel(self, name) :
draw.name = name
clr_picker = ColorPicker(size_hint =(.5, .5), pos_hint ={"top":0.72, "right": 0.86})
clr_picker.bind(color=self.on_color)
if name == "ennemies_glow" :
try :
self.rl_visuals.remove_widget(self.rl_wheel_ennemies)
self.rl_wheel_ennemies = None
return
except :
self.rl_wheel_ennemies = RelativeLayout(size =(0, 0))
self.rl_wheel_ennemies.add_widget(clr_picker)
self.rl_visuals.add_widget(self.rl_wheel_ennemies)
elif name == "allies_glow" :
try :
self.rl_visuals.remove_widget(self.rl_wheel_allies)
self.rl_wheel_allies = None
return
except :
self.rl_wheel_allies = RelativeLayout(size =(0, 0))
self.rl_wheel_allies.add_widget(clr_picker)
self.rl_visuals.add_widget(self.rl_wheel_allies)
elif name == "ennemies_chams" :
try :
self.rl_visuals.remove_widget(self.rl_wheel_ennemies_chams)
self.rl_wheel_ennemies_chams = None
return
except :
self.rl_wheel_ennemies_chams = RelativeLayout(size =(0, 0))
self.rl_wheel_ennemies_chams.add_widget(clr_picker)
self.rl_visuals.add_widget(self.rl_wheel_ennemies_chams)
elif name == "allies_chams" :
try :
self.rl_visuals.remove_widget(self.rl_wheel_allies_chams)
self.rl_wheel_allies_chams = None
return
except :
self.rl_wheel_allies_chams = RelativeLayout(size =(0, 0))
self.rl_wheel_allies_chams.add_widget(clr_picker)
self.rl_visuals.add_widget(self.rl_wheel_allies_chams)
elif name == "ui_color" :
try :
self.rl_settings.remove_widget(self.rl_wheel_ui)
self.rl_wheel_ui = None
return
except :
self.rl_wheel_ui = RelativeLayout(size =(0, 0))
self.rl_wheel_ui.add_widget(clr_picker)
self.rl_settings.add_widget(self.rl_wheel_ui)
def draw_visuals(self) :
kv = """
FloatLayout:
CheckBox:
id : glow_chk
active : app.glow_active
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.45}
on_press: app.on_checkbox_Active(glow_chk.active, "glow")
Label:
text : "Glow"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.39}
font_size: 20
Label:
text : "Enemies"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.65}
font_size: 20
CheckBox:
id : glow_chk_ennemies
active : app.glow_ennemies
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.57}
on_press: app.on_checkbox_Active(glow_chk_ennemies.active, "glow_ennemies")
Button:
text : "Pick color"
background_color : app.rgba(app.ennemies_glow_color)
size_hint: 0.1, 0.05
pos_hint: {"top":0.8, "right": 0.65}
on_release: app.draw_colorwheel("ennemies_glow")
Label:
text : "Allies"
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.9}
font_size: 20
CheckBox:
id : glow_chk_allies
active : app.glow_allies
size_hint: 0.1, 0.1
pos_hint: {"top":0.9, "right": 0.84}
on_press: app.on_checkbox_Active(glow_chk_allies.active, "glow_allies")
Button:
text : "Pick color"
background_color : app.rgba(app.allies_glow_color)
size_hint: 0.1, 0.05
pos_hint: {"top":0.8, "right": 0.9}
on_release: app.draw_colorwheel("allies_glow")
Label:
text : "Based on health"
size_hint: 0.1, 0.1
pos_hint: {"top":0.83, "right": 0.39}
font_size: 20
CheckBox:
id : glow_health_based
active : app.glow_health_based
size_hint: 0.1, 0.1
pos_hint: {"top":0.83, "right": 0.52}
on_press: app.on_checkbox_Active(glow_health_based.active, "glow_health_based")
CheckBox:
id : chams_chk
active : app.chams_active
size_hint: 0.1, 0.1
pos_hint: {"top":0.2, "right": 0.45}
on_press: app.on_checkbox_Active(chams_chk.active, "chams")
Label:
text : "Chams"
size_hint: 0.1, 0.1
pos_hint: {"top":0.2, "right": 0.38}
font_size: 20
Label:
text : "Based on health"
size_hint: 0.1, 0.1
pos_hint: {"top":0.13, "right": 0.39}
font_size: 20
CheckBox:
id : chams_health_based
active : app.chams_health_based
size_hint: 0.1, 0.1
pos_hint: {"top":0.13, "right": 0.52}
on_press: app.on_checkbox_Active(chams_health_based.active, "chams_health_based")
Label:
text : "Enemies"
size_hint: 0.1, 0.1
pos_hint: {"top":0.2, "right": 0.65}
font_size: 20
CheckBox:
id : chams_chk_ennemies
active : app.chams_ennemies
size_hint: 0.1, 0.1
pos_hint: {"top":0.2, "right": 0.57}
on_press: app.on_checkbox_Active(chams_chk_ennemies.active, "chams_ennemies")
Button:
text : "Pick color"
background_color : app.rgba(app.ennemies_chams_color)
size_hint: 0.1, 0.05
pos_hint: {"top":0.1, "right": 0.65}
on_release: app.draw_colorwheel("ennemies_chams")
Label:
text : "Allies"
size_hint: 0.1, 0.1
pos_hint: {"top":0.2, "right": 0.9}
font_size: 20
CheckBox:
id : chams_chk_allies
active : app.chams_allies
size_hint: 0.1, 0.1
pos_hint: {"top":0.2, "right": 0.84}
on_press: app.on_checkbox_Active(chams_chk_allies.active, "chams_allies")
Button:
text : "Pick color"
background_color : app.rgba(app.allies_chams_color)
size_hint: 0.1, 0.05
pos_hint: {"top":0.1, "right": 0.9}
on_release: app.draw_colorwheel("allies_chams")
"""
sm = Builder.load_string(kv)
self.rl_visuals = RelativeLayout(size =(0, 0))
self.rl_visuals.add_widget(sm)
self.rl.add_widget(self.rl_visuals)
def on_checkbox_Active(self, isActive, *args) :
if args[0] == "glow" :
draw.glow_active = isActive
elif args[0] == "chams" :
draw.chams_active = isActive
elif args[0] == "chams_allies" :
draw.chams_allies = isActive
elif args[0] == "chams_ennemies" :
draw.chams_ennemies = isActive
elif args[0] == "glow_allies" :
draw.glow_allies = isActive
elif args[0] == "glow_ennemies" :
draw.glow_ennemies = isActive
elif args[0] == "glow_health_based" :
draw.glow_health_based = isActive
elif args[0] == "chams_health_based" :
draw.chams_health_based = isActive
elif args[0] == "aimbot" :
draw.aimbot = isActive
elif args[0] == "triggerbot" :
draw.triggerbot = isActive
elif args[0] == "rcs" :
draw.rcs = isActive
elif args[0] == "rapid fire" :
draw.rapid_fire = isActive
elif args[0] == "Silent Aim" :
draw.silent_aim = isActive
elif args[0] == "crosshair" :
draw.crosshair = isActive
elif args[0] == "third person" :
draw.third_person = isActive
elif args[0] == "fov" :
draw.fov = isActive
elif args[0] == "fake lag" :
draw.fake_lag = isActive
elif args[0] == "hitsound" :
draw.hitsound = isActive
elif args[0] == "sound esp" :
draw.sound_esp = isActive
elif args[0] == "show money" :
draw.show_money = isActive
elif args[0] == "no flash" :
draw.no_flash = isActive
elif args[0] == "radar" :
draw.radar = isActive
elif args[0] == "bhop rage" :
draw.bhop_rage = isActive
elif args[0] == "bhop legit" :
draw.bhop_legit = isActive
last.write(self, "temp.ini")
write.config(self, "temp.ini")
def disable(self, instance, *args):
if self.start == True :
self.rl.remove_widget(self.rl_start_window)
self.start = False
if self.visuals.disabled == True :
self.rl.remove_widget(self.rl_visuals)
if self.aim.disabled == True :
self.rl.remove_widget(self.rl_aim)
if self.misc.disabled == True :
self.rl.remove_widget(self.rl_misc)
if self.settings.disabled == True :
self.rl.remove_widget(self.rl_settings)
if self.config.disabled == True :
self.rl.remove_widget(self.rl_config)
self.visuals.disabled = False
self.aim.disabled = False
self.misc.disabled = False
self.config.disabled = False
self.settings.disabled = False
instance.disabled = True
if self.settings.disabled == True :
self.draw_settings()
if self.visuals.disabled == True :
self.draw_visuals()
if self.aim.disabled == True :
self.draw_aim()
if self.misc.disabled == True :
self.draw_misc()
if self.config.disabled == True :
self.draw_config()
def build(self):
self.start = True
self.config_to_load_name = last.read(self)
read.config(self, self.config_to_load_name)
ui_color_rgba = self.rgba(draw.ui_color)
self.title = 'Rainbow CSGO Cheat v1'
Config.set('input', 'mouse', 'mouse,multitouch_on_demand')
Config.set('graphics', 'width', '700')
Config.set('graphics', 'height', '400')
Config.set('graphics', 'resizable', False)
self.rl = RelativeLayout(size =(0, 0))
self.visuals = Button(size_hint =(.2, .21), pos_hint ={'center_x':.100, 'center_y':.893}, text ="Visuals", background_color=ui_color_rgba)
self.visuals.bind(on_press=partial(self.disable, self.visuals))
self.aim = Button(size_hint =(.2, .2), pos_hint ={'center_x':.100, 'center_y':.690}, text ="Aim", background_color=ui_color_rgba)
self.aim.bind(on_press=partial(self.disable, self.aim))
self.misc = Button(size_hint =(.2, .2), pos_hint ={'center_x':.100, 'center_y':.493}, text ="Misc.", background_color=ui_color_rgba)
self.misc.bind(on_press=partial(self.disable, self.misc))
self.config = Button(size_hint =(.2, .2), pos_hint ={'center_x':.100, 'center_y':.296}, text ="Config", background_color=ui_color_rgba)
self.config.bind(on_press=partial(self.disable, self.config))
self.settings = Button(size_hint =(.2, .2), pos_hint ={'center_x':.100, 'center_y':.099}, text ="Settings", background_color=ui_color_rgba)
self.settings.bind(on_press=partial(self.disable, self.settings))
self.cheat_name_label = Label(size_hint =(.2, .2), pos_hint={"top":0.98, "right": 0.6}, text="Rainbow Recode v1 | Elapsed: ", font_size = 25)
self.elapsed_label = Label(size_hint =(.2, .2), pos_hint={"top":0.98, "right": 0.9}, text=str(datetime.datetime.now().strftime('%H:%M:%S')), font_size = 25)
self.status_label = Label(size_hint =(.2, .2), pos_hint={"top":0.7, "right": 0.44}, text="Status : ", font_size = 23)
self.undetected_label = Label(size_hint =(.2, .2), pos_hint={"top":0.7, "right": 0.6}, text="Undetected", font_size = 23, color="green")
self.rl_start_window = RelativeLayout(size =(0, 0))
self.rl_start_window.add_widget(self.undetected_label)
self.rl_start_window.add_widget(self.status_label)
self.rl_start_window.add_widget(self.cheat_name_label)
self.rl_start_window.add_widget(self.elapsed_label)
self.rl.add_widget(self.rl_start_window)
self.rl.add_widget(self.settings)
self.rl.add_widget(self.config)
self.rl.add_widget(self.visuals)
self.rl.add_widget(self.aim)
self.rl.add_widget(self.misc)
return self.rl

66
classes/write_config.py Normal file
View File

@@ -0,0 +1,66 @@
from configparser import ConfigParser
from importlib import reload
import ui
class write() :
def config(self, name) :
config_object = ConfigParser()
config_object["VISUALS"] = {
"glow_active": ui.draw.glow_active,
"glow_health_based": ui.draw.glow_health_based,
"glow_ennemies": ui.draw.glow_ennemies,
"ennemies_glow_color": ui.draw.ennemies_glow_color,
"glow_allies": ui.draw.glow_allies,
"allies_glow_color": ui.draw.allies_glow_color,
"chams_active": ui.draw.chams_active,
"chams_health_based": ui.draw.chams_health_based,
"chams_ennemies": ui.draw.chams_ennemies,
"ennemies_chams_color": ui.draw.ennemies_chams_color,
"chams_allies": ui.draw.chams_allies,
"allies_chams_color": ui.draw.allies_chams_color
}
config_object["AIM"] = {
"aimbot": ui.draw.aimbot,
"aimbot_key": ui.draw.aimbot_key,
"rcs": ui.draw.rcs,
"rcs_perfect": ui.draw.rcs_perfect,
"triggerbot": ui.draw.triggerbot,
"t_delay": ui.draw.t_delay,
"triggerbot_key": ui.draw.triggerbot_key,
"rapid_fire": ui.draw.rapid_fire,
"rapid_fire_key": ui.draw.rapid_fire_key,
"silent_aim": ui.draw.silent_aim,
"silent_aim_key": ui.draw.silent_aim_key,
"crosshair": ui.draw.crosshair
}
config_object["MISC"] = {
"third_person": ui.draw.third_person,
"thirdperson_key": ui.draw.thirdperson_key,
"fov": ui.draw.fov,
"fov_value": ui.draw.fov_value,
"hitsound": ui.draw.hitsound,
"sound": ui.draw.sound,
"sound_esp": ui.draw.sound_esp,
"no_flash": ui.draw.no_flash,
"bhop_rage": ui.draw.bhop_rage,
"bhop_legit": ui.draw.bhop_legit,
"show_money": ui.draw.show_money,
"radar": ui.draw.radar,
"fake_lag": ui.draw.fake_lag,
"fake_lag_value": ui.draw.fake_lag_value
}
config_object["SETTINGS"] = {
"ui_color": ui.draw.ui_color
}
with open('configs/'+name, 'w') as configfile:
configfile.seek(0)
configfile.truncate()
config_object.write(configfile)