Cyrax
Cyrax
typedef struct
{
float x;
float y;
float z;
} Vector_t;
typedef struct
{
char pad0[0x60]; // 0x00
void* pEntity; // 0x60
void* pActiveWeapon; // 0x64
void* pLastActiveWeapon; // 0x68
float flLastUpdateTime; // 0x6C
int iLastUpdateFrame; // 0x70
float flLastUpdateIncrement; // 0x74
float flEyeYaw; // 0x78
float flEyePitch; // 0x7C
float flGoalFeetYaw; // 0x80
float flLastFeetYaw; // 0x84
float flMoveYaw; // 0x88
float flLastMoveYaw; // 0x8C // changes when moving/jumping/hitting
ground
float flLeanAmount; // 0x90
char pad1[0x4]; // 0x94
float flFeetCycle; // 0x98 0 to 1
float flMoveWeight; // 0x9C 0 to 1
float flMoveWeightSmoothed; // 0xA0
float flDuckAmount; // 0xA4
float flHitGroundCycle; // 0xA8
float flRecrouchWeight; // 0xAC
Vector_t vecOrigin; // 0xB0
Vector_t vecLastOrigin;// 0xBC
Vector_t vecVelocity; // 0xC8
Vector_t vecVelocityNormalized; // 0xD4
Vector_t vecVelocityNormalizedNonZero; // 0xE0
float flVelocityLenght2D; // 0xEC
float flJumpFallVelocity; // 0xF0
float flSpeedNormalized; // 0xF4 // clamped velocity from 0 to 1
float flRunningSpeed; // 0xF8
float flDuckingSpeed; // 0xFC
float flDurationMoving; // 0x100
float flDurationStill; // 0x104
bool bOnGround; // 0x108
bool bHitGroundAnimation; // 0x109
char pad2[0x2]; // 0x10A
float flNextLowerBodyYawUpdateTime; // 0x10C
float flDurationInAir; // 0x110
float flLeftGroundHeight; // 0x114
float flHitGroundWeight; // 0x118 // from 0 to 1, is 1 when standing
float flWalkToRunTransition; // 0x11C // from 0 to 1, doesnt change
when walking or crouching, only running
char pad3[0x4]; // 0x120
float flAffectedFraction; // 0x124 // affected while jumping and
running, or when just jumping, 0 to 1
char pad4[0x208]; // 0x128
float flMinBodyYaw; // 0x330
float flMaxBodyYaw; // 0x334
float flMinPitch; //0x338
float flMaxPitch; // 0x33C
int iAnimsetVersion; // 0x340
} CCSGOPlayerAnimationState_534535_t;
]]
local log = {}
local cyraxUI = {}
local conditional_aa = {}
conditional_aa.pitch = ui.find("Aimbot", "Anti Aim", "Angles", "Pitch")
conditional_aa.yawbase = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw")
conditional_aa.yawadd = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw", "Offset")
conditional_aa.yawmodifier = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw
Modifier")
conditional_aa.modifierdegree = ui.find("Aimbot", "Anti Aim", "Angles", "Yaw
Modifier", "Offset")
conditional_aa.fakelimitleft = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw",
"Left Limit")
conditional_aa.fakelimitright = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw",
"Right Limit")
conditional_aa.fakeoptions = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw",
"Options")
conditional_aa.lbymode = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw", "LBY
Mode")
conditional_aa.freestandingdesync = ui.find("Aimbot", "Anti Aim", "Angles", "Body
Yaw", "Freestanding")
conditional_aa.desynconshot = ui.find("Aimbot", "Anti Aim", "Angles", "Body Yaw",
"On Shot")
conditional_aa.slow_walk = ui.find("Aimbot", "Anti Aim", "Misc", "Slow Walk")
conditional_aa.legmovement = ui.find("Aimbot", "Anti Aim", "Misc", "Leg Movement")
conditional_aa.freestanding = ui.find("Aimbot", "Anti Aim", "Angles",
"Freestanding")
conditional_aa.freestanding_setts = ui.find("Aimbot", "Anti Aim", "Angles",
"Freestanding", "Disable Yaw Modifiers")
function func:lerp(a, b, t)
return a + (b - a) * t
end
local solus_lerp = function(time,a,b)
return a * (1-time) + b * time
end
panorama.loadstring([[
return {
asdstringify: JSON.stringify,
asdparse: JSON.parse
};
]], "CSGOMainMenu")()
ffi.cdef[[
void* __stdcall URLDownloadToFileA(void* LPUNKNOWN, const char* LPCSTR, const
char* LPCSTR2, int a, int LPBINDSTATUSCALLBACK);
function func:contains(list, x)
for _, v in pairs(list) do
if v == x then return true end
end
return false
end
function func:get_neverlose_path()
return common.get_game_directory():sub(1, -5) .. "nl\\"
end
files.create_folder(common.get_game_directory().."\\sound\\cyrax\\")
function func:Download(from, to)
wininet.DeleteUrlCacheEntryA(from)
urlmon.URLDownloadToFileA(nil, from, to, 0,0)
end
function func:file_exists(file, path_id)
local func_file_exists = ffi.cast("bool (__thiscall*)(void*, const char*, const
char*)", ffi.cast(ffi.typeof("void***"),
utils.create_interface("filesystem_stdio.dll", "VBaseFileSystem011"))[0][10])
return func_file_exists(ffi.cast(ffi.typeof("void***"),
utils.create_interface("filesystem_stdio.dll", "VBaseFileSystem011")), file,
path_id)
end
files.create_folder(func:get_neverlose_path().."Cyrax\\")
local vars = {
font = {
pixel = render.load_font(func:get_neverlose_path().."Cyrax\\
smallest.tff", 10, 'o'),
verdana = render.load_font("Verdana", 11),
verdana_r = render.load_font("Verdana", 11, 'a'),
calibri = render.load_font("Calibri", 16, 'b'),
calibri_dog = render.load_font(func:get_neverlose_path().."Cyrax\\
code_bold.tff", 35),
calibri_dog2 = render.load_font(func:get_neverlose_path().."Cyrax\\
code_bold.tff", 10),
skeet = render.load_font(func:get_neverlose_path().."Cyrax\\skeet.tff",
11, 'o')},
menu = {
thirdperson = ui.find("Visuals", "World", "Main", "Force Thirdperson"),
dt = ui.find("Aimbot", "Ragebot", "Main", "Double Tap"),
hs = ui.find("Aimbot", "Ragebot", "Main", "Hide Shots"),
fd = ui.find("Aimbot", "Anti Aim", "Misc", "Fake Duck"),
fs = ui.find("Aimbot", "Anti Aim", "Angles", "Freestanding"),
remove_scope = ui.find("Visuals", "World", "Main", "Override Zoom",
"Scope Overlay"),
qp = ui.find("Aimbot", "Ragebot", "Main", "Peek Assist"),
sw = ui.find("Aimbot", "Anti Aim", "Misc", "Slow Walk"),
fl = ui.find("Aimbot", "Anti Aim", "Fake Lag", "Enabled"),
body = ui.find("Aimbot", "Ragebot", "Safety", "Body Aim"),
sp = ui.find("Aimbot", "Ragebot", "Safety", "Safe Points")
},
da = {
[1] = true,
[2] = true,
[3] = true,
[4] = true
},
sus = {
[1] = 40,
[2] = 31,
[3] = 9,
[4] = 1
},
ind = {
fs_alpha = 0,
dt_alpha = 0,
dmg_alpha = 0,
dt_bar_alpha = 0,
hs_pos = 0,
dmg_pos = 0,
dmg_val = 0,
smooth = 0,
scope_smooth = 2,
legacy_check = false,
v2 = {
a = {
[1] = {
0,
0,
0,
},
[2] = 0,
[3] = 0,
[4] = 0,
},
p = {
[1] = 40,
[2] = 40,
[3] = 40,
},
cond_text = "amingus"
},
lavendu = {
textu = "",
anim = {
[1] = {
dt = 0,
fs = 0,
},
[2] = {
dt = 0,
fs = 0,
},
[3] = {
[1] = 0,
[2] = 0,
[3] = 0,
},
},
chestie = 0,
},
},
mark = {
},
pi_divided = math.pi / 180,
}
function func:version()
return beta
end
local group = {
info = {
gif = ui.create("\afbfbfbffI\afbf7f5ffn\afcf3eefff\afcf0e8ffo\
afdece1ffr\afde8dbffm\afde4d5ffa\afee0cefft\afeddc8ffi\affd9c1ffo\affd5bbffn", ""),
info = ui.create("\afbfbfbffI\afbf7f5ffn\afcf3eefff\afcf0e8ffo\
afdece1ffr\afde8dbffm\afde4d5ffa\afee0cefft\afeddc8ffi\affd9c1ffo\affd5bbffn", "\
aFFD5BBFFInformation"),
cfg = ui.create("\afbfbfbffI\afbf7f5ffn\afcf3eefff\afcf0e8ffo\
afdece1ffr\afde8dbffm\afde4d5ffa\afee0cefft\afeddc8ffi\affd9c1ffo\affd5bbffn", "\
aFFD5BBFFConfigs"),
misc = ui.create("\afbfbfbffI\afbf7f5ffn\afcf3eefff\afcf0e8ffo\
afdece1ffr\afde8dbffm\afde4d5ffa\afee0cefft\afeddc8ffi\affd9c1ffo\affd5bbffn", "\
aFFD5BBFFMisc"),
},
aa = {
aa = ui.create("\aFFD5BBFFAnti-Aim", "Anti-Aim"),
conditions = {
standing = ui.create("\aFFD5BBFFAnti-Aim", "\aFFD5BBFFStanding"),
crouching = ui.create("\aFFD5BBFFAnti-Aim", "\
aFFD5BBFFCrouching"),
slowwalk = ui.create("\aFFD5BBFFAnti-Aim", "\aFFD5BBFFSlowwalk"),
moving = ui.create("\aFFD5BBFFAnti-Aim", "\aFFD5BBFFMoving"),
in_air = ui.create("\aFFD5BBFFAnti-Aim", "\aFFD5BBFFIn Air"),
in_air_d = ui.create("\aFFD5BBFFAnti-Aim", "\aFFD5BBFFIn Air +
Duck"),
},
},
settings = {
visuals = ui.create("\affd5bbffS\affdbc5ffe\affe1cefft\affe7d8fft\
affede2ffi\afff3ecffn\afff9f5ffg\affffffffs", "Visuals"),
misc = ui.create("\affd5bbffS\affdbc5ffe\affe1cefft\affe7d8fft\
affede2ffi\afff3ecffn\afff9f5ffg\affffffffs", "Miscellaneous"),
},
}
print_dev("Cyrax - Welcome, "..username..".")
-- INFORMATION
local gif = render.load_image_from_file(func:get_neverlose_path().."Cyrax\\
cyrax1.gif", vector(540, 540))
local dog = render.load_image_from_file(func:get_neverlose_path().."Cyrax\\
funny_dog.png", vector(828, 828))
group.info.gif:texture(gif,vector(270, 270), color(255, 255, 255), 'f')
group.info.info:label("User: \aFFD5BBFF"..username)
group.info.info:label("Build: \aFFD5BBFF"..func:version())
group.info.info:label("If you have any issues open a ticket in the discord server
or message \aFFD5BBFFcomezo#2441")
group.info.cfg:button("Discord Link", function()
panorama.SteamOverlayAPI.OpenExternalBrowserURL("https://discord.gg/R5VrugTNbg")
end, true)
group.info.cfg:button("Neverlose Config", function()
panorama.SteamOverlayAPI.OpenExternalBrowserURL("https://en.neverlose.cc/market/
item?id=yXbDoa") end, true)
local anim_switch = group.info.misc:switch("Loading Animation", true)
local funny_dog = group.info.misc:switch("Funny Dog", true)
local smooth = {0, 0, 0}
function func:funnydog()
local screen = render.screen_size()
if funny_dog:get() then
smooth[1] = func:lerp(smooth[1], 150, globals.frametime * 5)
smooth[3] = func:lerp(smooth[3], ui.get_position().y - 125,
globals.frametime * 5)
else
smooth[1] = func:lerp(smooth[1], 0, globals.frametime * 5)
smooth[3] = func:lerp(smooth[3], screen.y, globals.frametime * 5)
end
smooth[2] = func:lerp(smooth[2], ui.get_position().x - 20, globals.frametime
* 5)
end
local menu_cyrax = {
visuals_switch = {
_ = group.settings.visuals:switch("\aFFD5BBFFEnable Visual Options",
false),
name = "visuals_switch",
element = "switch"
},
indicators_switch = {
_ = group.settings.visuals:switch("Indicators", false),
name = "indicators_switch",
element = "switch"
},
watermark_switch = {
_ = group.settings.visuals:switch("Watermark", false),
name = "watermark_switch",
element = "switch"
},
scope_switch = {
_ = group.settings.visuals:switch("Custom Scope", false),
name = "scope_switch",
element = "switch"
},
logs_switch = {
_ = group.settings.visuals:switch("Aimbot Logging", false),
name = "logs_switch",
element = "switch"
},
solus_switch = {
_ = group.settings.visuals:switch("Widgets", false),
name = "solus_switch",
element = "switch"
},
misc_switch = {
_ = group.settings.misc:switch("\aFFD5BBFFEnable Miscellaneous
Options", false),
name = "misc_switch",
element = "switch"
},
jumpscout_switch = {
_ = group.settings.misc:switch("Jumpscout Fix", false),
name = "jumpscout_switch",
element = "switch"
},
killsay_switch = {
_ = group.settings.misc:switch("Killsay", false),
name = "killsay_switch",
element = "switch"
},
animbreaker_switch = {
_ = group.settings.misc:switch("Anim. Breaker", false),
name = "animbreaker_switch",
element = "switch"
}
}
local data = {
}
local menu_aa = {
Switch_AntiAim = {
_ = group.aa.aa:switch("\aFFD5BBFFEnable Custom Anti Aim", false),
name = "Switch_AntiAim",
element = "switch"
},
--YAW BASE
YawBase_Standing = {
_ = group.aa.conditions.standing:combo("Yaw Base",
data.YawBase_Standing, 0),
name = "YawBase_Standing",
element = "combo"
},
YawBase_Crouching = {
_ = group.aa.conditions.crouching:combo("Yaw Base",
data.YawBase_Crouching, 0),
name = "YawBase_Crouching",
element = "combo"
},
YawBase_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("Yaw Base",
data.YawBase_Slowwalk, 0),
name = "YawBase_Slowwalk",
element = "combo"
},
YawBase_Moving = {
_ = group.aa.conditions.moving:combo("Yaw Base", data.YawBase_Moving,
0),
name = "YawBase_Moving",
element = "combo"
},
YawBase_InAir = {
_ = group.aa.conditions.in_air:combo("Yaw Base", data.YawBase_InAir,
0),
name = "YawBase_InAirDuck",
element = "combo"
},
YawBase_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("Yaw Base",
data.YawBase_InAirDuck, 0),
name = "YawBase_InAirDuck",
element = "combo"
},
YawAddLeft_Standing = {
_ = group.aa.conditions.standing:slider("Yaw Add Left", -180, 180, 0),
name = "YawAddLeft_Standing",
element = "slider"
},
YawAddLeft_Crouching = {
_ = group.aa.conditions.crouching:slider("Yaw Add Left", -180, 180, 0),
name = "YawAddLeft_Crouching",
element = "slider"
},
YawAddLeft_Slowwalk = {
_ = group.aa.conditions.slowwalk:slider("Yaw Add Left", -180, 180, 0),
name = "YawAddLeft_Slowwalk",
element = "slider"
},
YawAddLeft_Moving = {
_ = group.aa.conditions.moving:slider("Yaw Add Left", -180, 180, 0),
name = "YawAddLeft_Moving",
element = "slider"
},
YawAddLeft_InAir = {
_ = group.aa.conditions.in_air:slider("Yaw Add Left", -180, 180, 0),
name = "YawAddLeft_InAir",
element = "slider"
},
YawAddLeft_InAirDuck = {
_ = group.aa.conditions.in_air_d:slider("Yaw Add Left", -180, 180, 0),
name = "YawAddLeft_InAirDuck",
element = "slider"
},
YawAddRight_Standing = {
_ = group.aa.conditions.standing:slider("Yaw Add Right", -180, 180, 0),
name = "YawAddRight_Standing",
element = "slider"
},
YawAddRight_Crouching = {
_ = group.aa.conditions.crouching:slider("Yaw Add Right", -180, 180,
0),
name = "YawAddRight_Crouching",
element = "slider"
},
YawAddRight_Slowwalk = {
_ = group.aa.conditions.slowwalk:slider("Yaw Add Right", -180, 180, 0),
name = "YawAddRight_Slowwalk",
element = "slider"
},
YawAddRight_Moving = {
_ = group.aa.conditions.moving:slider("Yaw Add Right", -180, 180, 0),
name = "YawAddRight_Moving",
element = "slider"
},
YawAddRight_InAir = {
_ = group.aa.conditions.in_air:slider("Yaw Add Right", -180, 180, 0),
name = "YawAddRight_InAir",
element = "slider"
},
YawAddRight_InAirDuck = {
_ = group.aa.conditions.in_air_d:slider("Yaw Add Right", -180, 180, 0),
name = "YawAddRight_InAirDuck",
element = "slider"
},
--PITCH
Pitch_Standing = {
_ = group.aa.conditions.standing:combo("Pitch", data.Pitch_Standing,
0),
name = "Pitch_Standing",
element = "combo"
},
Pitch_Crouching = {
_ = group.aa.conditions.crouching:combo("Pitch", data.Pitch_Crouching,
0),
name = "Pitch_Crouching",
element = "combo"
},
Pitch_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("Pitch", data.Pitch_Slowwalk,
0),
name = "Pitch_Slowwalk",
element = "combo"
},
Pitch_Moving = {
_ = group.aa.conditions.moving:combo("Pitch", data.Pitch_Moving, 0),
name = "Pitch_Moving",
element = "combo"
},
Pitch_InAir = {
_ = group.aa.conditions.in_air:combo("Pitch", data.Pitch_InAir, 0),
name = "Pitch_InAir",
element = "combo"
},
Pitch_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("Pitch", data.Pitch_InAirDuck,
0),
name = "Pitch_InAirDuck",
element = "combo"
},
--YAW MODIFIER
YawModifier_Standing = {
_ = group.aa.conditions.standing:combo("Yaw Modifier",
data.YawModifier_Standing, 0),
name = "YawModifier_Standing",
element = "combo"
},
YawModifier_Crouching = {
_ = group.aa.conditions.crouching:combo("Yaw Modifier",
data.YawModifier_Crouching, 0),
name = "YawModifier_Crouching",
element = "combo"
},
YawModifier_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("Yaw Modifier",
data.YawModifier_Slowwalk, 0),
name = "YawModifier_Slowwalk",
element = "combo"
},
YawModifier_Moving = {
_ = group.aa.conditions.moving:combo("Yaw Modifier",
data.YawModifier_Moving, 0),
name = "YawModifier_Moving",
element = "combo"
},
YawModifier_InAir = {
_ = group.aa.conditions.in_air:combo("Yaw Modifier",
data.YawModifier_InAir, 0),
name = "YawModifier_InAir",
element = "combo"
},
YawModifier_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("Yaw Modifier",
data.YawModifier_InAirDuck, 0),
name = "YawModifier_InAirDuck",
element = "combo"
},
YawModifierType_Standing = {
_ = group.aa.conditions.standing:combo("Yaw Modifier Type",
data.YawModifierType_Standing, 0),
name = "YawModifierType_Standing",
element = "combo"
},
YawModifierType_Crouching = {
_ = group.aa.conditions.crouching:combo("Yaw Modifier Type",
data.YawModifierType_Crouching, 0),
name = "YawModifierType_Crouching",
element = "combo"
},
YawModifierType_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("Yaw Modifier Type",
data.YawModifierType_Slowwalk, 0),
name = "YawModifierType_Slowwalk",
element = "combo"
},
YawModifierType_Moving = {
_ = group.aa.conditions.moving:combo("Yaw Modifier Type",
data.YawModifierType_Moving, 0),
name = "YawModifierType_Moving",
element = "combo"
},
YawModifierType_InAir = {
_ = group.aa.conditions.in_air:combo("Yaw Modifier Type",
data.YawModifierType_InAir, 0),
name = "YawModifierType_InAir",
element = "combo"
},
YawModifierType_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("Yaw Modifier Type",
data.YawModifierType_InAirDuck, 0),
name = "YawModifierType_InAirDuck",
element = "combo"
},
--MODIFIER DEGREE
ModifierDegree_Standing = {
_ = group.aa.conditions.standing:slider("Modifier Degree", -180, 180,
0),
name = "ModifierDegree_Standing",
element = "slider"
},
ModifierDegree_Crouching = {
_ = group.aa.conditions.crouching:slider("Modifier Degree", -180, 180,
0),
name = "ModifierDegree_Crouching",
element = "slider"
},
ModifierDegree_Slowwalk = {
_ = group.aa.conditions.slowwalk:slider("Modifier Degree", -180, 180,
0),
name = "ModifierDegree_Slowwalk",
element = "slider"
},
ModifierDegree_Moving = {
_ = group.aa.conditions.moving:slider("Modifier Degree", -180, 180, 0),
name = "ModifierDegree_Moving",
element = "slider"
},
ModifierDegree_InAir = {
_ = group.aa.conditions.in_air:slider("Modifier Degree", -180, 180, 0),
name = "ModifierDegree_InAir",
element = "slider"
},
ModifierDegree_InAirDuck = {
_ = group.aa.conditions.in_air_d:slider("Modifier Degree", -180, 180,
0),
name = "ModifierDegree_InAirDuck",
element = "slider"
},
ModifierDegreeMin_Standing = {
_ = group.aa.conditions.standing:slider("Modifier Degree Min", -180,
180, 0),
name = "ModifierDegreeMin_Standing",
element = "slider"
},
ModifierDegreeMin_Crouching = {
_ = group.aa.conditions.crouching:slider("Modifier Degree Min", -180,
180, 0),
name = "ModifierDegreeMin_Crouching",
element = "slider"
},
ModifierDegreeMin_Slowwalk = {
_ = group.aa.conditions.slowwalk:slider("Modifier Degree Min", -180,
180, 0),
name = "ModifierDegreeMin_Slowwalk",
element = "slider"
},
ModifierDegreeMin_Moving = {
_ = group.aa.conditions.moving:slider("Modifier Degree Min", -180, 180,
0),
name = "ModifierDegreeMin_Moving",
element = "slider"
},
ModifierDegreeMin_InAir = {
_ = group.aa.conditions.in_air:slider("Modifier Degree Min", -180, 180,
0),
name = "ModifierDegreeMin_InAir",
element = "slider"
},
ModifierDegreeMin_InAirDuck = {
_ = group.aa.conditions.in_air_d:slider("Modifier Degree Min", -180,
180, 0),
name = "ModifierDegreeMin_InAirDuck",
element = "slider"
},
ModifierDegreeMax_Standing = {
_ = group.aa.conditions.standing:slider("Modifier Degree Max", -180,
180, 0),
name = "ModifierDegreeMax_Standing",
element = "slider"
},
ModifierDegreeMax_Crouching = {
_ = group.aa.conditions.crouching:slider("Modifier Degree Max", -180,
180, 0),
name = "ModifierDegreeMax_Crouching",
element = "slider"
},
ModifierDegreeMax_Slowwalk = {
_ = group.aa.conditions.slowwalk:slider("Modifier Degree Max", -180,
180, 0),
name = "ModifierDegreeMax_Slowwalk",
element = "slider"
},
ModifierDegreeMax_Moving = {
_ = group.aa.conditions.moving:slider("Modifier Degree Max", -180, 180,
0),
name = "ModifierDegreeMax_Moving",
element = "slider"
},
ModifierDegreeMax_InAir = {
_ = group.aa.conditions.in_air:slider("Modifier Degree Max", -180, 180,
0),
name = "ModifierDegreeMax_InAir",
element = "slider"
},
ModifierDegreeMax_InAirDuck = {
_ = group.aa.conditions.in_air_d:slider("Modifier Degree Max", -180,
180, 0),
name = "ModifierDegreeMax_InAirDuck",
element = "slider"
},
FakeLimitType_Standing = {
_ = group.aa.conditions.standing:combo("Fake Limit Type",
data.FakeLimitType_Standing, 0),
name = "FakeLimitType_Standing",
element = "combo"
},
FakeLimitType_Crouching = {
_ = group.aa.conditions.crouching:combo("Fake Limit Type",
data.FakeLimitType_Crouching, 0),
name = "FakeLimitType_Crouching",
element = "combo"
},
FakeLimitType_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("Fake Limit Type",
data.FakeLimitType_Slowwalk, 0),
name = "FakeLimitType_Slowwalk",
element = "combo"
},
FakeLimitType_Moving = {
_ = group.aa.conditions.moving:combo("Fake Limit Type",
data.FakeLimitType_Moving, 0),
name = "FakeLimitType_Moving",
element = "combo"
},
FakeLimitType_InAir = {
_ = group.aa.conditions.in_air:combo("Fake Limit Type",
data.FakeLimitType_InAir, 0),
name = "FakeLimitType_InAir",
element = "combo"
},
FakeLimitType_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("Fake Limit Type",
data.FakeLimitType_InAirDuck, 0),
name = "FakeLimitType_InAirDuck",
element = "combo"
},
--LEFT LIMIT
LeftLimit_Standing = {
_ = group.aa.conditions.standing:slider("Left Limit", 0, 60, 60),
name = "LeftLimit_Standing",
element = "slider"
},
LeftLimit_Crouching = {
_ = group.aa.conditions.crouching:slider("Left Limit", 0, 60, 60),
name = "LeftLimit_Crouching",
element = "slider"
},
LeftLimit_Slowwalk = {
_ = group.aa.conditions.slowwalk:slider("Left Limit", 0, 60, 60),
name = "LeftLimit_Slowwalk",
element = "slider"
},
LeftLimit_Moving = {
_ = group.aa.conditions.moving:slider("Left Limit", 0, 60, 60),
name = "LeftLimit_Moving",
element = "slider"
},
LeftLimit_InAir = {
_ = group.aa.conditions.in_air:slider("Left Limit", 0, 60, 60),
name = "LeftLimit_InAir",
element = "slider"
},
LeftLimit_InAirDuck = {
_ = group.aa.conditions.in_air_d:slider("Left Limit", 0, 60, 60),
name = "LeftLimit_InAirDuck",
element = "slider"
},
--RIGHT LIMIT
RightLimit_Standing = {
_ = group.aa.conditions.standing:slider("Right Limit", 0, 60, 60),
name = "RightLimit_Standing",
element = "slider"
},
RightLimit_Crouching = {
_ = group.aa.conditions.crouching:slider("Right Limit", 0, 60, 60),
name = "RightLimit_Crouching",
element = "slider"
},
RightLimit_Slowwalk = {
_ = group.aa.conditions.slowwalk:slider("Right Limit", 0, 60, 60),
name = "RightLimit_Slowwalk",
element = "slider"
},
RightLimit_Moving = {
_ = group.aa.conditions.moving:slider("Right Limit", 0, 60, 60),
name = "RightLimit_Moving",
element = "slider"
},
RightLimit_InAir = {
_ = group.aa.conditions.in_air:slider("Right Limit", 0, 60, 60),
name = "RightLimit_InAir",
element = "slider"
},
RightLimit_InAirDuck = {
_ = group.aa.conditions.in_air_d:slider("Right Limit", 0, 60, 60),
name = "RightLimit_InAirDuck",
element = "slider"
},
--FAKE OPTIONS
FakeOptions_Standing = {
_ = group.aa.conditions.standing:selectable("Fake Options",
data.FakeOptions_Standing, 0),
name = "FakeOptions_Standing",
element = "selectable"
},
FakeOptions_Crouching = {
_ = group.aa.conditions.crouching:selectable("Fake Options",
data.FakeOptions_Crouching, 0),
name = "FakeOptions_Crouching",
element = "selectable"
},
FakeOptions_Slowwalk = {
_ = group.aa.conditions.slowwalk:selectable("Fake Options",
data.FakeOptions_Slowwalk, 0),
name = "FakeOptions_Slowwalk",
element = "selectable"
},
FakeOptions_Moving = {
_ = group.aa.conditions.moving:selectable("Fake Options",
data.FakeOptions_Moving, 0),
name = "FakeOptions_Moving",
element = "selectable"
},
FakeOptions_InAir = {
_ = group.aa.conditions.in_air:selectable("Fake Options",
data.FakeOptions_InAir, 0),
name = "FakeOptions_InAir",
element = "selectable"
},
FakeOptions_InAirDuck = {
_ = group.aa.conditions.in_air_d:selectable("Fake Options",
data.FakeOptions_InAirDuck, 0),
name = "FakeOptions_InAirDuck",
element = "selectable"
},
--LBY MODE
LBYMode_Standing = {
_ = group.aa.conditions.standing:combo("LBY Mode",
data.LBYMode_Standing, 0),
name = "LBYMode_Standing",
element = "combo",
},
LBYMode_Crouching = {
_ = group.aa.conditions.crouching:combo("LBY Mode",
data.LBYMode_Crouching, 0),
name = "LBYMode_Crouching",
element = "combo",
},
LBYMode_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("LBY Mode",
data.LBYMode_Slowwalk, 0),
name = "LBYMode_Slowwalk",
element = "combo",
},
LBYMode_Moving = {
_ = group.aa.conditions.moving:combo("LBY Mode", data.LBYMode_Moving,
0),
name = "LBYMode_Moving",
element = "combo",
},
LBYMode_InAir = {
_ = group.aa.conditions.in_air:combo("LBY Mode", data.LBYMode_InAir,
0),
name = "LBYMode_InAir",
element = "combo",
},
LBYMode_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("LBY Mode",
data.LBYMode_InAirDuck, 0),
name = "LBYMode_InAirDuck",
element = "combo",
},
--FREESTANDING DESYNC
FreestandingDesync_Standing = {
_ = group.aa.conditions.standing:combo("Freestanding Desync",
data.FreestandingDesync_Standing, 0),
name = "FreestandingDesync_Standing",
element = "combo",
},
FreestandingDesync_Crouching = {
_ = group.aa.conditions.crouching:combo("Freestanding Desync",
data.FreestandingDesync_Crouching, 0),
name = "FreestandingDesync_Crouching",
element = "combo",
},
FreestandingDesync_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("Freestanding Desync",
data.FreestandingDesync_Slowwalk, 0),
name = "FreestandingDesync_Slowwalk",
element = "combo",
},
FreestandingDesync_Moving = {
_ = group.aa.conditions.moving:combo("Freestanding Desync",
data.FreestandingDesync_Moving, 0),
name = "FreestandingDesync_Moving",
element = "combo",
},
FreestandingDesync_InAir = {
_ = group.aa.conditions.in_air:combo("Freestanding Desync",
data.FreestandingDesync_InAir, 0),
name = "FreestandingDesync_InAir",
element = "combo",
},
FreestandingDesync_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("Freestanding Desync",
data.FreestandingDesync_InAirDuck, 0),
name = "FreestandingDesync_InAirDuck",
element = "combo",
},
--DESYNC ON SHOT
DesyncOnShot_Standing = {
_ = group.aa.conditions.standing:combo("Desync On Shot",
data.DesyncOnShot_Standing, 0),
name = "DesyncOnShot_Standing",
element = "combo",
},
DesyncOnShot_Crouching = {
_ = group.aa.conditions.crouching:combo("Desync On Shot",
data.DesyncOnShot_Crouching, 0),
name = "DesyncOnShot_Crouching",
element = "combo",
},
DesyncOnShot_Slowwalk = {
_ = group.aa.conditions.slowwalk:combo("Desync On Shot",
data.DesyncOnShot_Slowwalk, 0),
name = "DesyncOnShot_Slowwalk",
element = "combo",
},
DesyncOnShot_Moving = {
_ = group.aa.conditions.moving:combo("Desync On Shot",
data.DesyncOnShot_Moving, 0),
name = "DesyncOnShot_Moving",
element = "combo",
},
DesyncOnShot_InAir = {
_ = group.aa.conditions.in_air:combo("Desync On Shot",
data.DesyncOnShot_InAir, 0),
name = "DesyncOnShot_InAir",
element = "combo",
},
DesyncOnShot_InAirDuck = {
_ = group.aa.conditions.in_air_d:combo("Desync On Shot",
data.DesyncOnShot_InAirDuck, 0),
name = "DesyncOnShot_InAirDuck",
element = "combo",
},
}
local override_yaw = group.aa.aa:combo("Override Yaw Base", {'Disabled', 'Forward',
'Left', 'Right', 'Backward'})
local conditions = group.aa.aa:combo("Current Condition", {'Standing', 'Crouching',
'Slowwalk', 'Moving', 'In Air', 'In Air + Duck'})
local gear = {
indicators = menu_cyrax.indicators_switch._:create(),
wm = menu_cyrax.watermark_switch._:create(),
scope = menu_cyrax.scope_switch._:create(),
logs = menu_cyrax.logs_switch._:create(),
aa = menu_aa.Switch_AntiAim._:create(),
anim = menu_cyrax.animbreaker_switch._:create(),
solus = menu_cyrax.solus_switch._:create(),
}
local gear_opt = {
indicators_type = gear.indicators:combo('', data.indicators_styles),
indicators_color = gear.indicators:color_picker('Color', color(194, 187, 250,
255)),
animate = gear.wm:switch('Animate', false),
wm_color = gear.wm:color_picker('Color', color(194, 187, 250, 255)),
wm_color2 = gear.wm:color_picker('Color', color(255, 255, 255, 255)),
t_style = gear.scope:switch('T Style', false),
scope_color1 = gear.scope:color_picker('Color #1', color(255, 255,
255 ,255)),
scope_color2 = gear.scope:color_picker('Color #2', color(0, 0, 0, 0)),
scope_length = gear.scope:slider('Length', 0, 360, 100),
scope_offset = gear.scope:slider('Offset', 0, 100, 5),
screen_logs = gear.logs:switch('On Screen', false),
logs_hit = gear.logs:color_picker('Color on Hit', color(210, 206, 242)),
logs_miss = gear.logs:color_picker('Color on Miss', color(210, 206, 242)),
logs_miss_what = gear.logs:color_picker('Color on Miss', color(255, 255, 255,
255)),
export = gear.aa:button('Export', true),
import = gear.aa:button('Import', true),
default = gear.aa:button('Default Settings', true),
anim = gear.anim:selectable('', {'Static Legs', 'Leg Breaker'}),
solus_binds = gear.solus:switch('Keybinds', false),
solus_watermark = gear.solus:switch('Watermark', false),
solus_clr = gear.solus:color_picker('Color', color(210, 206, 242, 122)),
solus_1 = gear.solus:slider('xaxaxa', 0, render.screen_size().x, 120),
solus_2 = gear.solus:slider('xaxaxa', 0, render.screen_size().x, 120),
}
gear_opt.solus_1:set_visible(false)
gear_opt.solus_2:set_visible(false)
function cyraxUI.visibility()
if menu_cyrax.visuals_switch._:get() then
menu_cyrax.indicators_switch._:set_visible(true)
menu_cyrax.scope_switch._:set_visible(true)
menu_cyrax.logs_switch._:set_visible(true)
menu_cyrax.solus_switch._:set_visible(true)
menu_cyrax.watermark_switch._:set_visible(true)
else
menu_cyrax.indicators_switch._:set_visible(false)
menu_cyrax.scope_switch._:set_visible(false)
menu_cyrax.logs_switch._:set_visible(false)
menu_cyrax.solus_switch._:set_visible(false)
menu_cyrax.watermark_switch._:set_visible(false)
end
if menu_cyrax.misc_switch._:get() then
menu_cyrax.jumpscout_switch._:set_visible(true)
menu_cyrax.killsay_switch._:set_visible(true)
menu_cyrax.animbreaker_switch._:set_visible(true)
else
menu_cyrax.jumpscout_switch._:set_visible(false)
menu_cyrax.killsay_switch._:set_visible(false)
menu_cyrax.animbreaker_switch._:set_visible(false)
end
if menu_aa.Switch_AntiAim._:get() then
override_yaw:set_visible(true)
conditions:set_visible(true)
else
override_yaw:set_visible(false)
conditions:set_visible(false)
menu_aa.Pitch_Standing._:set_visible(false)
menu_aa.YawBase_Standing._:set_visible(false)
menu_aa.YawModifier_Standing._:set_visible(false)
menu_aa.FakeLimitType_Standing._:set_visible(false)
menu_aa.FakeOptions_Standing._:set_visible(false)
menu_aa.LBYMode_Standing._:set_visible(false)
menu_aa.FreestandingDesync_Standing._:set_visible(false)
menu_aa.DesyncOnShot_Standing._:set_visible(false)
menu_aa.YawAddLeft_Standing._:set_visible(false)
menu_aa.YawAddRight_Standing._:set_visible(false)
menu_aa.ModifierDegree_Standing._:set_visible(false)
menu_aa.LeftLimit_Standing._:set_visible(false)
menu_aa.RightLimit_Standing._:set_visible(false)
menu_aa.ModifierDegreeMin_Standing._:set_visible(false)
menu_aa.ModifierDegreeMax_Standing._:set_visible(false)
menu_aa.YawModifierType_Standing._:set_visible(false)
menu_aa.Pitch_Crouching._:set_visible(false)
menu_aa.YawBase_Crouching._:set_visible(false)
menu_aa.YawModifier_Crouching._:set_visible(false)
menu_aa.FakeLimitType_Crouching._:set_visible(false)
menu_aa.FakeOptions_Crouching._:set_visible(false)
menu_aa.LBYMode_Crouching._:set_visible(false)
menu_aa.FreestandingDesync_Crouching._:set_visible(false)
menu_aa.DesyncOnShot_Crouching._:set_visible(false)
menu_aa.YawAddLeft_Crouching._:set_visible(false)
menu_aa.YawAddRight_Crouching._:set_visible(false)
menu_aa.ModifierDegree_Crouching._:set_visible(false)
menu_aa.LeftLimit_Crouching._:set_visible(false)
menu_aa.RightLimit_Crouching._:set_visible(false)
menu_aa.ModifierDegreeMin_Crouching._:set_visible(false)
menu_aa.ModifierDegreeMax_Crouching._:set_visible(false)
menu_aa.YawModifierType_Crouching._:set_visible(false)
menu_aa.Pitch_Slowwalk._:set_visible(false)
menu_aa.YawBase_Slowwalk._:set_visible(false)
menu_aa.YawModifier_Slowwalk._:set_visible(false)
menu_aa.FakeLimitType_Slowwalk._:set_visible(false)
menu_aa.FakeOptions_Slowwalk._:set_visible(false)
menu_aa.LBYMode_Slowwalk._:set_visible(false)
menu_aa.FreestandingDesync_Slowwalk._:set_visible(false)
menu_aa.DesyncOnShot_Slowwalk._:set_visible(false)
menu_aa.YawAddLeft_Slowwalk._:set_visible(false)
menu_aa.YawAddRight_Slowwalk._:set_visible(false)
menu_aa.ModifierDegree_Slowwalk._:set_visible(false)
menu_aa.LeftLimit_Slowwalk._:set_visible(false)
menu_aa.RightLimit_Slowwalk._:set_visible(false)
menu_aa.ModifierDegreeMin_Slowwalk._:set_visible(false)
menu_aa.ModifierDegreeMax_Slowwalk._:set_visible(false)
menu_aa.YawModifierType_Slowwalk._:set_visible(false)
menu_aa.Pitch_Moving._:set_visible(false)
menu_aa.YawBase_Moving._:set_visible(false)
menu_aa.YawModifier_Moving._:set_visible(false)
menu_aa.FakeLimitType_Moving._:set_visible(false)
menu_aa.FakeOptions_Moving._:set_visible(false)
menu_aa.LBYMode_Moving._:set_visible(false)
menu_aa.FreestandingDesync_Moving._:set_visible(false)
menu_aa.DesyncOnShot_Moving._:set_visible(false)
menu_aa.YawAddLeft_Moving._:set_visible(false)
menu_aa.YawAddRight_Moving._:set_visible(false)
menu_aa.ModifierDegree_Moving._:set_visible(false)
menu_aa.LeftLimit_Moving._:set_visible(false)
menu_aa.RightLimit_Moving._:set_visible(false)
menu_aa.ModifierDegreeMin_Moving._:set_visible(false)
menu_aa.ModifierDegreeMax_Moving._:set_visible(false)
menu_aa.YawModifierType_Moving._:set_visible(false)
menu_aa.Pitch_InAir._:set_visible(false)
menu_aa.YawBase_InAir._:set_visible(false)
menu_aa.YawModifier_InAir._:set_visible(false)
menu_aa.FakeLimitType_InAir._:set_visible(false)
menu_aa.FakeOptions_InAir._:set_visible(false)
menu_aa.LBYMode_InAir._:set_visible(false)
menu_aa.FreestandingDesync_InAir._:set_visible(false)
menu_aa.DesyncOnShot_InAir._:set_visible(false)
menu_aa.YawAddLeft_InAir._:set_visible(false)
menu_aa.YawAddRight_InAir._:set_visible(false)
menu_aa.ModifierDegree_InAir._:set_visible(false)
menu_aa.LeftLimit_InAir._:set_visible(false)
menu_aa.RightLimit_InAir._:set_visible(false)
menu_aa.ModifierDegreeMin_InAir._:set_visible(false)
menu_aa.ModifierDegreeMax_InAir._:set_visible(false)
menu_aa.YawModifierType_InAir._:set_visible(false)
menu_aa.Pitch_InAirDuck._:set_visible(false)
menu_aa.YawBase_InAirDuck._:set_visible(false)
menu_aa.YawModifier_InAirDuck._:set_visible(false)
menu_aa.FakeLimitType_InAirDuck._:set_visible(false)
menu_aa.FakeOptions_InAirDuck._:set_visible(false)
menu_aa.LBYMode_InAirDuck._:set_visible(false)
menu_aa.FreestandingDesync_InAirDuck._:set_visible(false)
menu_aa.DesyncOnShot_InAirDuck._:set_visible(false)
menu_aa.YawAddLeft_InAirDuck._:set_visible(false)
menu_aa.YawAddRight_InAirDuck._:set_visible(false)
menu_aa.ModifierDegree_InAirDuck._:set_visible(false)
menu_aa.LeftLimit_InAirDuck._:set_visible(false)
menu_aa.RightLimit_InAirDuck._:set_visible(false)
menu_aa.ModifierDegreeMin_InAirDuck._:set_visible(false)
menu_aa.ModifierDegreeMax_InAirDuck._:set_visible(false)
menu_aa.YawModifierType_InAirDuck._:set_visible(false)
end
end
local hitgroups = {
[0] = 'generic',
'head', 'chest', 'stomach',
'left arm', 'right arm',
'left leg', 'right leg',
'neck', 'generic', 'gear'}
function func:centerLogs(e)
if globals.is_connected == false or entity.get_local_player() == nil or
entity.get_local_player():is_alive() == false or not menu_cyrax.logs_switch._:get()
then return end
local target = entity.get(e.target)
local wanted_dmg = e.wanted_damage
local damage = e.damage
local wanted_hbx = hitgroups[e.wanted_hitgroup]
local hitchance = e.hitchance
local state = e.state
local bt = e.backtrack
if not target or target == nil then return end
local hitbox = hitgroups[e.hitgroup]
if state == nil then
color_p("[Cyrax] ", gear_opt.logs_hit:get())
print_raw(string.format("Hit %s's %s [aimed = %s | damage: %i(%i) | hc:
%i | history: %i]", target:get_name(), hitbox, wanted_hbx, damage, wanted_dmg,
hitchance, bt))
else
color_p("[Cyrax] ", gear_opt.logs_miss:get())
print_raw(string.format("Missed shot at %s's %s due to %s [hc: %i |
history: %i]", target:get_name(), wanted_hbx, state, hitchance, bt))
end
end
hook_helper = {
copy = function(dst, src, len)
return ffi.copy(ffi.cast('void*', dst), ffi.cast('const void*', src), len)
end,
function vmt_hook.new(vt)
local new_hook = {}
local org_func = {}
local old_prot = ffi.new('unsigned long[1]')
local virtual_table = ffi.cast('intptr_t**', vt)[0]
new_hook.this = virtual_table
new_hook.hookMethod = function(cast, func, method)
org_func[method] = virtual_table[method]
hook_helper.virtual_protect(virtual_table + method, 4, 0x4, old_prot)
new_hook.unHookMethod = function(method)
hook_helper.virtual_protect(virtual_table + method, 4, 0x4, old_prot)
local alloc_addr = hook_helper.virtual_alloc(nil, 5, 0x1000, 0x40, false)
local trampoline_bytes = ffi.new('uint8_t[?]', 5, 0x90)
trampoline_bytes[0] = 0xE9
ffi.cast('int32_t*', trampoline_bytes + 1)[0] = org_func[method] -
tonumber(alloc_addr) - 5
hook_helper.copy(alloc_addr, trampoline_bytes, 5)
virtual_table[method] = ffi.cast('intptr_t', alloc_addr)
new_hook.unHookAll = function()
for method, func in pairs(org_func) do
new_hook.unHookMethod(method)
end
end
table.insert(vmt_hook.hooks, new_hook.unHookAll)
return new_hook
end
conditional_aa.onuseAAEnabled = false
conditional_aa.standingAAEnabled = false
conditional_aa.crouchingAAEnabled = false
conditional_aa.slowwalkAAEnabled = false
conditional_aa.movingAAEnabled = false
conditional_aa.inairAAEnabled = false
conditional_aa.inairAAduckEnabled = false
function conditional_aa.distanceCheck(t)
if globals.is_connected == false or entity.get_local_player() == nil or
entity.get_local_player():is_alive() == false then return end
local localplayer = entity.get_local_player()
local origin = localplayer:get_eye_position()
local vec = vector(origin.x, origin.y, origin.z)
for _, v in pairs(t) do
if vec:dist(v.m_vecOrigin) < 100 then return false end
end
return true
end
local scope = {}
scope.screen = render.screen_size()
scope.menu = {}
scope.menu.offset = 100
scope.anim_num = 0
function func:jumpscout_fix_f()
if globals.is_connected == false or entity.get_local_player() == nil or
entity.get_local_player():is_alive() == false or
menu_cyrax.jumpscout_switch._:get() == false then return end
local vel = entity.get_local_player().m_vecVelocity
local speed = math.sqrt(vel.x*vel.x + vel.y*vel.y)
ui.find("Miscellaneous", "Main", "Movement", "Air Strafe"):set(speed > 15)
end
function func:customscope()
vars.menu.remove_scope:set('Remove All')
local local_player = entity.get_local_player()
scope.anim_speed = 15
scope.col_1 = gear_opt.scope_color1:get()
scope.col_2 = gear_opt.scope_color2:get()
scope.width = 1
scope.start_x = scope.screen.x / 2
scope.start_y = scope.screen.y / 2
--Left
render.gradient(vector(scope.start_x - scope.offset, scope.start_y),
vector(scope.start_x - scope.offset - scope.length, scope.start_y + scope.width),
scope.col_1, scope.col_2, scope.col_1, scope.col_2)
--Right
render.gradient(vector(scope.start_x + scope.offset, scope.start_y),
vector(scope.start_x + scope.offset + scope.length, scope.start_y + scope.width),
scope.col_1, scope.col_2, scope.col_1, scope.col_2)
--Down
--Up
if not gear_opt.t_style:get() then
render.gradient(vector(scope.start_x, scope.start_y - scope.offset),
vector(scope.start_x + scope.width, scope.start_y - scope.offset - scope.length),
scope.col_1, scope.col_1, scope.col_2, scope.col_2)
end
end
return flagValues;
end
local estisus
if func:version() == "Debug" then
estisus = 3
elseif func:version() == "Beta" then
estisus = 0
elseif func:version() == "Live" then
estisus = -2
end
function func:cyrax_ind()
local p = {
sc = render.screen_size(),
ver = func:version(),
alpha = math.clamp(math.abs(1 * math.cos(2 * math.pi *
globals.curtime / 5)), 0.5, 1),
dyntext = "",
ex = "",
localplayer = entity.get_local_player(),
clr = {
r = gear_opt.indicators_color:get().r,
g = gear_opt.indicators_color:get().g,
b = gear_opt.indicators_color:get().b,
},
}
local speed = p.localplayer.m_vecVelocity
local velocity = speed:length()
if conditional_aa.onuseAAEnabled then
vars.ind.lavendu.textu = "using"
else
if CheckFlag(p.localplayer, {0}) or common.is_button_down(0x20) then
if not CheckFlag(p.localplayer, 1) then
vars.ind.lavendu.textu = "jumping"
else
vars.ind.lavendu.textu = "airduck"
end
else
if vars.menu.sw:get() then
vars.ind.lavendu.textu = "slowwalking"
else
if CheckFlag(p.localplayer, 1) then
vars.ind.lavendu.textu = "ducking"
else
if velocity >= 1.2 then
vars.ind.lavendu.textu = "running"
else
vars.ind.lavendu.textu = "standing"
end
end
end
end
end
if p.localplayer.m_bIsScoped then
vars.ind.lavendu.anim[3][1] = func:lerp(vars.ind.lavendu.anim[3][1], 26
+ estisus, globals.frametime*15)
vars.ind.lavendu.anim[3][2] = func:lerp(vars.ind.lavendu.anim[3][2], 5,
globals.frametime*15)
vars.ind.lavendu.anim[3][3] = func:lerp(vars.ind.lavendu.anim[3][3],
10, globals.frametime*15)
vars.ind.lavendu.anim[2].dt = 0
vars.ind.lavendu.chestie = 0
else
vars.ind.lavendu.anim[3][1] = func:lerp(vars.ind.lavendu.anim[3][1], 0,
globals.frametime*15)
vars.ind.lavendu.anim[3][2] = func:lerp(vars.ind.lavendu.anim[3][2], -
texts(vars.font.skeet, 'o', vars.ind.lavendu.textu).x/2, globals.frametime*15)
vars.ind.lavendu.anim[3][3] = func:lerp(vars.ind.lavendu.anim[3][3], 0,
globals.frametime*15)
vars.ind.lavendu.chestie = 0
end
else
vars.ind.lavendu.anim[1].fs = math.clamp(vars.ind.lavendu.anim[1].fs -
1, 0, 10.5)
vars.ind.lavendu.anim[2].dt = math.clamp(vars.ind.lavendu.anim[2].dt -
0.5, 0, 5.5)
end
end
local red = 0
function func:cyrax_ind_2()
if globals.is_connected == false or entity.get_local_player() == nil or
entity.get_local_player():is_alive() == false or menu_cyrax.visuals_switch._:get()
== false or menu_cyrax.indicators_switch._:get() == false or
gear_opt.indicators_type:get() ~= 'Cyrax V2' then return end
local screen = render.screen_size()
local t = {
alpha = math.abs(1 * math.cos(2 * math.pi * globals.curtime / 4)),
dt_text = "dt",
lp = entity.get_local_player(),
color = {
dt = color(255 - red, red, 0, vars.ind.dt_alpha),
r = gear_opt.indicators_color:get().r,
g = gear_opt.indicators_color:get().g,
b = gear_opt.indicators_color:get().b,
},
charge = rage.exploit:get(),
desync = math.floor(aantiaim.get_desync_delta()),
}
local speed = t.lp.m_vecVelocity
local velocity = speed:length()
if t.lp.m_bIsScoped then
vars.ind.scope_smooth = func:lerp(vars.ind.scope_smooth, 1.91,
globals.frametime * 11)
else
vars.ind.scope_smooth = func:lerp(vars.ind.scope_smooth, 2,
globals.frametime * 11)
end
if vars.menu.dt:get() then
vars.ind.dt_alpha = math.clamp(vars.ind.dt_alpha + 13, 0 , 255)
if t.charge ~= 1 then
red = math.clamp(red - 25, 0, 255)
else
red = math.clamp(red + 25, 0, 255)
end
else
red = math.clamp(red + 25, 0, 1)
vars.ind.dt_alpha = math.clamp(vars.ind.dt_alpha - 12, 0 , 255)
end
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "cyrax" .. string.lower(func:version())).x/2,
screen.y/2 + 16), color(t.color.r, t.color.g, t.color.b, 255), nil, "cyrax")
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "cyrax" .. string.lower(func:version())).x/2 +
texts(vars.font.pixel, 'o', "cyrax").x + 1, screen.y/2 + 16), color(255, 255, 255,
t.alpha*255), nil, string.lower(func:version()))
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o',vars.ind.v2.cond_text).x/2, screen.y/2 + 25),
color(t.color.r, t.color.g, t.color.b, 255), nil, vars.ind.v2.cond_text)
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', t.dt_text).x/2, screen.y/2 + 34), t.color.dt, nil,
t.dt_text)
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "baimosfssp").x/2 - 3, screen.y/2 + 34 +
vars.ind.dt_alpha / 28), color(255, 255, 255, vars.menu.body:get() ~= 'Default' and
255 or 122), nil, "baim")
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "baimosfssp").x/2 + texts(vars.font.pixel, 'o',
"baim").x - 1, screen.y/2 + 34 + vars.ind.dt_alpha / 28), color(255, 255, 255,
vars.menu.hs:get() and 255 or 122), nil, "os")
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "baimosfssp").x/2 + texts(vars.font.pixel, 'o',
"baimos").x + 1, screen.y/2 + 34 + vars.ind.dt_alpha / 28), color(255, 255, 255,
ui.find("Aimbot", "Anti Aim", "Angles", "Freestanding"):get() and 255 or 122), nil,
"fs")
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "baimosfssp").x/2 + texts(vars.font.pixel, 'o',
"baimosfs").x + 3, screen.y/2 + 34 + vars.ind.dt_alpha / 28), color(255, 255, 255,
vars.menu.sp:get() ~= 'Default' and 255 or 122), nil, "sp")
end
function func:cyrax_ind_3()
if globals.is_connected == false or entity.get_local_player() == nil or
entity.get_local_player():is_alive() == false or menu_cyrax.visuals_switch._:get()
== false or menu_cyrax.indicators_switch._:get() == false or
gear_opt.indicators_type:get() ~= 'Cyrax V4' then return end
local screen = render.screen_size()
local t = {
alpha = math.abs(3 * math.cos(1 * math.pi * globals.curtime / 4)) * 255,
dyn_text = "aggresive",
dt_text = "dt",
lp = entity.get_local_player(),
players = entity.get_players(),
color = {
dt = color(255, 255, 255, vars.ind.dt_alpha),
alpha_side = aantiaim.get_inverter_state() and 255 or 122,
alpha_side2 = aantiaim.get_inverter_state() and 122 or 255,
fs_green = vars.menu.fd:get() and 0 or 255,
fs_blue = vars.menu.fd:get() and 0 or 255,
r = gear_opt.indicators_color:get().r,
g = gear_opt.indicators_color:get().g,
b = gear_opt.indicators_color:get().b,
},
charge = rage.exploit:get(),
desync = math.floor(aantiaim.get_desync_delta()),
}
local speed = t.lp.m_vecVelocity
local velocity = speed:length()
local a = {
color(t.color.r, t.color.g, t.color.b, 255 * math.abs(1 * math.cos(2 *
math.pi * globals.curtime + 10 / 4))),
color(t.color.r, t.color.g, t.color.b, 255 * math.abs(1 * math.cos(2 *
math.pi * globals.curtime + 8 / 4))),
color(t.color.r, t.color.g, t.color.b, 255 * math.abs(1 * math.cos(2 *
math.pi * globals.curtime + 6 / 4))),
color(t.color.r, t.color.g, t.color.b, 255 * math.abs(1 * math.cos(2 *
math.pi * globals.curtime + 4 / 4))),
color(t.color.r, t.color.g, t.color.b, 255 * math.abs(1 * math.cos(2 *
math.pi * globals.curtime + 2 / 4))),
}
if t.lp.m_bIsScoped then
vars.ind.scope_smooth = func:lerp(vars.ind.scope_smooth, 1.91,
globals.frametime * 11)
else
vars.ind.scope_smooth = func:lerp(vars.ind.scope_smooth, 2,
globals.frametime * 11)
end
else
vars.ind.lavendu.anim[1].fs = math.clamp(vars.ind.lavendu.anim[1].fs -
1, 0, 10.5)
vars.ind.lavendu.anim[2].dt = math.clamp(vars.ind.lavendu.anim[2].dt -
0.5, 0, 5.5)
end
if vars.menu.fs:get() then
vars.ind.fs_alpha = math.clamp(vars.ind.fs_alpha + 12, 0 , 255)
else
vars.ind.fs_alpha = math.clamp(vars.ind.fs_alpha - 12, 0 , 255)
end
local os = 0
if vars.menu.dt:get() and vars.menu.hs:get() then
t.dt_text = "dt"
elseif vars.menu.dt:get() and not vars.menu.hs:get() then
t.dt_text = "dt"
elseif not vars.menu.dt:get() and vars.menu.hs:get() then
t.dt_text = "os"
os = -1
end
if conditional_aa.onuseAAEnabled then
t.dyn_text = "using"
else
if CheckFlag(t.lp, {0}) or common.is_button_down(0x20) then
if not CheckFlag(t.lp, 1) then
t.dyn_text = "jumping"
else
t.dyn_text = "airduck"
end
else
if vars.menu.sw:get() then
t.dyn_text = "slowwalk"
else
if CheckFlag(t.lp, 1) then
t.dyn_text = "ducking"
else
if velocity >= 1.2 then
t.dyn_text = "running"
else
t.dyn_text = "standing"
end
end
end
end
end
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts('os', 'o', vars.font.pixel).x/2 - 5 - vars.ind.lavendu.anim[2].dt +
vars.ind.lavendu.anim[3][3] + os, screen.y/2 + 30 + vars.ind.lavendu.anim[1].dt),
color(255, 255, 255, vars.ind.lavendu.anim[1].dt/10*255), nil, t.dt_text)
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "fs").x/2 + vars.ind.lavendu.anim[2].fs +
vars.ind.lavendu.anim[3][3] + vars.ind.lavendu.chestie, screen.y/2 + 30 +
vars.ind.lavendu.anim[1].fs), color(255, 255, 255,
vars.ind.lavendu.anim[1].fs/10*255), nil, "fs")
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "cyrax").x/2, screen.y/2 + 16), color(255, 255, 255,
255), nil, "cyrax")
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', "cyrax").x/2, screen.y/2 + 16), color(255, 255, 255,
255), nil, string.format("\a%sc\a%sy\a%sr\a%sa\a%sx", a[1]:to_hex(), a[2]:to_hex(),
a[3]:to_hex(), a[4]:to_hex(), a[5]:to_hex()))
for i = 1, 5 do
render.rect_outline(vector(screen.x/vars.ind.scope_smooth - 19 - i,
screen.y/2 + 27 - i), vector(screen.x/vars.ind.scope_smooth + 19 + i, screen.y/2 +
31 + i), color(t.color.r, t.color.g, t.color.b, 0.15 * (1 - i / 5) * 255), 1, 5)
end
render.text(vars.font.pixel, vector(screen.x/vars.ind.scope_smooth -
texts(vars.font.pixel, 'o', t.dyn_text).x/2, screen.y/2 + 30), color(t.color.r,
t.color.g, t.color.b, t.alpha), nil, t.dyn_text)
end
function func:cyrax_ind_4()
if conditional_aa.onuseAAEnabled then
vars.ind.v2.cond_text = "using"
else
if CheckFlag(localplayer, {0}) or common.is_button_down(0x20) then
if not CheckFlag(localplayer, 1) then
vars.ind.v2.cond_text = "jumping"
else
vars.ind.v2.cond_text = "airduck"
end
else
if vars.menu.sw:get() then
vars.ind.v2.cond_text = "slowwalking"
else
if CheckFlag(localplayer, 1) then
vars.ind.v2.cond_text = "ducking"
else
if velocity >= 1.2 then
vars.ind.v2.cond_text = "running"
else
vars.ind.v2.cond_text = "standing"
end
end
end
end
end
if vars.menu.dt:get() then
if vars.menu.qp:get() then
t.dt = "idealtick"
else
t.dt = "doubletap"
end
end
vars.ind.smooth = func:lerp(vars.ind.smooth, math.clamp(t.desync*8, 0, 30),
globals.frametime*8)
for i = 1, 5 do
render.rect_outline(vector(screen.x/2 + 4 - i, screen.y/2 + 26 - i),
vector(screen.x/2 + 57 + i, screen.y/2 + 31 + i), color(t.clr.r, t.clr.g, t.clr.b,
0.15 * (1 - i / 5) * 255), 1, 5)
end
if vars.menu.fd:get() then
vars.ind.v2.a[3] = math.clamp(vars.ind.v2.a[3] + 0.036, 0, 1)
vars.ind.v2.p[2] = func:lerp(vars.ind.v2.p[2], 52,
globals.frametime*20)
vars.ind.v2.a[1][3] = math.clamp(vars.ind.v2.a[1][3] - 0.036, 0, 1)
vars.ind.v2.a[2] = math.clamp(vars.ind.v2.a[2] - 0.036, 0, 1)
vars.ind.v2.p[1] = func:lerp(vars.ind.v2.p[1], 52,
globals.frametime*20)
else
vars.ind.v2.a[3] = math.clamp(vars.ind.v2.a[3] - 0.036, 0, 1)
vars.ind.v2.p[1] = func:lerp(vars.ind.v2.p[1], 40,
globals.frametime*20)
end
end
gear_opt.logs_miss_what:set_visible(false)
function func:screenLogs(e)
if globals.is_connected == false or entity.get_local_player():is_alive() ==
false then return end
if not menu_cyrax.logs_switch._:get() or not gear_opt.screen_logs:get() then
return end
local target = entity.get(e.target)
local wanted_dmg = e.wanted_damage
local damage = e.damage
local wanted_hbx = hitgroups[e.wanted_hitgroup]
local hitchance = e.hitchance
local state = e.state
local bt = e.backtrack
local hitbox = hitgroups[e.hitgroup]
for i = 1, 5 do
render.rect_outline(vector(cur_x - 8 - i, 897 + k * 30 - i +
(in_-out) * 10), vector(cur_x + text_width + 9 + i, 917 + k * 30 + i + (in_-out) *
10), color(c.r, c.g, c.b, (1 - i / 5) * math.clamp((in_-out) * 255, 0, 50)), 1, 10)
end
local phrases = {
"dont talking pls",
"when u miss, cry u dont hev cyrax.tech",
"you think you are is good but im best 1",
"fokin dog, get ownet by Создатель js rezolver",
"if im lose = my team is dog",
"never talking bad to me again, im always top1",
"umad that you're miss? hs dog",
"vico (top1 eu) vs all kelbs on hvh.",
"you is mad that im ur papi?",
"im will rape u're mother after i killed you",
"stay mad that im unhitable",
"god night brother, cya next raund ;)",
"get executed from presidend of argentina",
"you thinking ur have chencse vs boss?",
"i killed gejmsense, now im kill you",
"by luckbaysed config, cya twitter bro o/",
"cy@ https://gamesense.pub/forums/viewforum.php?id=6",
"╭∩╮(◣_◢)╭∩╮(its fuck)",
"dont play vs me on train, im live there -.-",
"by top1 uzbekistan holder umed?",
"courage for play de_shortnuke vs me, my home there.",
"bich.. dont test g4ngst3r in me.",
"im rich princ here, dont toxic dog.",
"for all thet say gamesense best, im try on parsec and is dog.",
"WEAK DOG sanchezj vs ru bossman (owned on mein map)",
"im want gamesense only for animbrejker, neverlose always top.",
"this dog brandog thinking hes top, but reality say no.",
"fawk you foking treny",
"ur think ur good but its falsee.",
"topdog nepbot get baits 24/7 -.-",
"who this bot malva? im own him 9-0",
"im beat all romania dogs with 1 finker",
"im rejp this dog noobers with no problems",
"gamesense vico vs all -.-",
"irelevent dog jompan try to stay popular but fail",
"im user beta and ur dont, stay mad.",
"dont talking, no cyrax tech no talk pls",
"when u miss, cry u dont hev cyrax.tech",
"you think you are is good but cyrax is best",
"fkn dog, get own by cyrax js rezolver",
"if you luse = no cyrax issue",
"never talking bad to me again, cyrax boosing me to top1",
"umad that you're miss? get cyrax d0g",
"stay med that im unhitable ft cyrax",
"get executed from cyrax technology",
"you thinking ur have chencse vs cyrax?",
"first i killed gejmsense, now cyrax kill you",
"by cyrax boss aa, cya twitter bro o/",
"cy@ https://en.neverlose.cc/market/item?id=17YLeZ",
"courage for test resolve me. cyrax always boosting",
}
function func:get_phrase()
return phrases[utils.random_int(1, #phrases)]:gsub('"', '')
end
function func:killsay(event)
if globals.is_connected == false or entity.get_local_player() == nil or
entity.get_local_player():is_alive() == false or not
menu_cyrax.killsay_switch._:get() then return end
local me = entity.get_local_player()
local attackere = entity.get(event.attacker, true)
if me == attackere then
utils.console_exec('say "' .. func:get_phrase() .. '"')
end
end
function func:anti_aim_bossule(cmd)
if common.is_button_down(0x45) then
conditional_aa.onuseAAEnabled = true
else
conditional_aa.onuseAAEnabled = false
if CheckFlag(localplayer, {0}) or common.is_button_down(0x20) then
if not CheckFlag(localplayer, 1) then
conditional_aa.inairAAEnabled = true
conditional_aa.inairAAduckEnabled = false
else
conditional_aa.inairAAduckEnabled = true
conditional_aa.inairAAEnabled = false
end
else
conditional_aa.inairAAEnabled = false
conditional_aa.inairAAduckEnabled = false
if vars.menu.sw:get() then
conditional_aa.slowwalkAAEnabled = true
else
conditional_aa.slowwalkAAEnabled = false
if CheckFlag(localplayer, 1) then
conditional_aa.crouchingAAEnabled = true
else
conditional_aa.crouchingAAEnabled = false
if velocity >= 1.2 then
conditional_aa.movingAAEnabled = true
conditional_aa.standingAAEnabled = false
else
conditional_aa.movingAAEnabled = false
conditional_aa.standingAAEnabled = true
end
end
end
end
end
if conditional_aa.standingAAEnabled then
conditional_aa.pitch:set(menu_aa.Pitch_Standing._:get())
if aantiaim.get_inverter_state() then
conditional_aa.yawadd:set(menu_aa.YawAddLeft_Standing._:get())
else
conditional_aa.yawadd:set(menu_aa.YawAddRight_Standing._:get())
end
conditional_aa.lbymode:set(menu_aa.LBYMode_Standing._:get())
conditional_aa.yawmodifier:set(menu_aa.YawModifier_Standing._:get())
conditional_aa.modifierdegree:set(menu_aa.ModifierDegree_Standing._:get())
else
conditional_aa.modifierdegree:set(utils.random_int(menu_aa.ModifierDegreeMin_Standi
ng._:get(), menu_aa.ModifierDegreeMax_Standing._:get()))
end
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Standing._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Standing._:get())
elseif menu_aa.FakeLimitType_Standing._:get() == 'Jitter' then
if utils.random_int(0,1) == 1 then
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Standing._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Standing._:get())
else
conditional_aa.fakelimitleft:set(18)
conditional_aa.fakelimitright:set(18)
end
elseif menu_aa.FakeLimitType_Standing._:get() == 'Random Jitter' then
conditional_aa.fakelimitleft:set(utils.random_int(0,
menu_aa.LeftLimit_Standing._:get()))
conditional_aa.fakelimitright:set(utils.random_int(0,
menu_aa.RightLimit_Standing._:get()))
end
conditional_aa.fakeoptions:set(menu_aa.FakeOptions_Standing._:get())
conditional_aa.freestandingdesync:set(menu_aa.FreestandingDesync_Standing._:get())
conditional_aa.desynconshot:set(menu_aa.DesyncOnShot_Standing._:get())
if conditional_aa.slowwalkAAEnabled then
conditional_aa.pitch:set(menu_aa.Pitch_Slowwalk._:get())
if aantiaim.get_inverter_state() then
conditional_aa.yawadd:set(menu_aa.YawAddLeft_Slowwalk._:get())
else
conditional_aa.yawadd:set(menu_aa.YawAddRight_Slowwalk._:get())
end
conditional_aa.yawmodifier:set(menu_aa.YawModifier_Slowwalk._:get())
conditional_aa.modifierdegree:set(menu_aa.ModifierDegree_Slowwalk._:get())
else
conditional_aa.modifierdegree:set(utils.random_int(menu_aa.ModifierDegreeMin_Slowwa
lk._:get(), menu_aa.ModifierDegreeMax_Slowwalk._:get()))
end
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Slowwalk._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Slowwalk._:get())
elseif menu_aa.FakeLimitType_Slowwalk._:get() == 'Jitter' then
if utils.random_int(0,1) == 1 then
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Slowwalk._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Slowwalk._:get())
else
conditional_aa.fakelimitleft:set(18)
conditional_aa.fakelimitright:set(18)
end
elseif menu_aa.FakeLimitType_Slowwalk._:get() == 'Random Jitter' then
conditional_aa.fakelimitleft:set(utils.random_int(0,
menu_aa.LeftLimit_Slowwalk._:get()))
conditional_aa.fakelimitright:set(utils.random_int(0,
menu_aa.RightLimit_Slowwalk._:get()))
end
conditional_aa.fakeoptions:set(menu_aa.FakeOptions_Slowwalk._:get())
conditional_aa.lbymode:set(menu_aa.LBYMode_Slowwalk._:get())
conditional_aa.freestandingdesync:set(menu_aa.FreestandingDesync_Slowwalk._:get())
conditional_aa.desynconshot:set(menu_aa.DesyncOnShot_Slowwalk._:get())
if conditional_aa.movingAAEnabled then
conditional_aa.pitch:set(menu_aa.Pitch_Moving._:get())
if aantiaim.get_inverter_state() then
conditional_aa.yawadd:set(menu_aa.YawAddLeft_Moving._:get())
else
conditional_aa.yawadd:set(menu_aa.YawAddRight_Moving._:get())
end
conditional_aa.yawmodifier:set(menu_aa.YawModifier_Moving._:get())
conditional_aa.modifierdegree:set(menu_aa.ModifierDegree_Moving._:get())
else
conditional_aa.modifierdegree:set(utils.random_int(menu_aa.ModifierDegreeMin_Moving
._:get(), menu_aa.ModifierDegreeMax_Moving._:get()))
end
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Moving._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Moving._:get())
elseif menu_aa.FakeLimitType_Moving._:get() == 'Jitter' then
if utils.random_int(0,1) == 1 then
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Moving._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Moving._:get())
else
conditional_aa.fakelimitleft:set(18)
conditional_aa.fakelimitright:set(18)
end
elseif menu_aa.FakeLimitType_Moving._:get() == 'Random Jitter' then
conditional_aa.fakelimitleft:set(utils.random_int(0,
menu_aa.LeftLimit_Moving._:get()))
conditional_aa.fakelimitright:set(utils.random_int(0,
menu_aa.RightLimit_Moving._:get()))
end
conditional_aa.fakeoptions:set(menu_aa.FakeOptions_Moving._:get())
conditional_aa.lbymode:set(menu_aa.LBYMode_Moving._:get())
conditional_aa.freestandingdesync:set(menu_aa.FreestandingDesync_Moving._:get())
conditional_aa.desynconshot:set(menu_aa.DesyncOnShot_Moving._:get())
if conditional_aa.inairAAEnabled then
conditional_aa.pitch:set(menu_aa.Pitch_InAir._:get())
if aantiaim.get_inverter_state() then
conditional_aa.yawadd:set(menu_aa.YawAddLeft_InAir._:get())
else
conditional_aa.yawadd:set(menu_aa.YawAddRight_InAir._:get())
end
conditional_aa.yawmodifier:set(menu_aa.YawModifier_InAir._:get())
conditional_aa.modifierdegree:set(menu_aa.ModifierDegree_InAir._:get())
else
conditional_aa.modifierdegree:set(utils.random_int(menu_aa.ModifierDegreeMin_InAir.
_:get(), menu_aa.ModifierDegreeMax_InAir._:get()))
end
conditional_aa.fakelimitright:set(menu_aa.RightLimit_InAir._:get())
elseif menu_aa.FakeLimitType_InAir._:get() == 'Jitter' then
if utils.random_int(0,1) == 1 then
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_InAir._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_InAir._:get())
else
conditional_aa.fakelimitleft:set(18)
conditional_aa.fakelimitright:set(18)
end
elseif menu_aa.FakeLimitType_InAir._:get() == 'Random Jitter' then
conditional_aa.fakelimitleft:set(utils.random_int(0,
menu_aa.LeftLimit_InAir._:get()))
conditional_aa.fakelimitright:set(utils.random_int(0,
menu_aa.RightLimit_InAir._:get()))
end
conditional_aa.fakeoptions:set(menu_aa.FakeOptions_InAir._:get())
conditional_aa.lbymode:set(menu_aa.LBYMode_InAir._:get())
conditional_aa.freestandingdesync:set(menu_aa.FreestandingDesync_InAir._:get())
conditional_aa.desynconshot:set(menu_aa.DesyncOnShot_InAir._:get())
if conditional_aa.inairAAduckEnabled then
conditional_aa.pitch:set(menu_aa.Pitch_InAirDuck._:get())
if aantiaim.get_inverter_state() then
conditional_aa.yawadd:set(menu_aa.YawAddLeft_InAirDuck._:get())
else
conditional_aa.yawadd:set(menu_aa.YawAddRight_InAirDuck._:get())
end
conditional_aa.yawmodifier:set(menu_aa.YawModifier_InAirDuck._:get())
conditional_aa.modifierdegree:set(menu_aa.ModifierDegree_InAirDuck._:get())
else
conditional_aa.modifierdegree:set(utils.random_int(menu_aa.ModifierDegreeMin_InAirD
uck._:get(), menu_aa.ModifierDegreeMax_InAirDuck._:get()))
end
conditional_aa.fakelimitright:set(menu_aa.RightLimit_InAirDuck._:get())
elseif menu_aa.FakeLimitType_InAirDuck._:get() == 'Jitter' then
if utils.random_int(0,1) == 1 then
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_InAirDuck._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_InAirDuck._:get())
else
conditional_aa.fakelimitleft:set(18)
conditional_aa.fakelimitright:set(18)
end
elseif menu_aa.FakeLimitType_InAirDuck._:get() == 'Random Jitter' then
conditional_aa.fakelimitleft:set(utils.random_int(0,
menu_aa.LeftLimit_InAirDuck._:get()))
conditional_aa.fakelimitright:set(utils.random_int(0,
menu_aa.RightLimit_InAirDuck._:get()))
end
conditional_aa.fakeoptions:set(menu_aa.FakeOptions_InAirDuck._:get())
conditional_aa.lbymode:set(menu_aa.LBYMode_InAirDuck._:get())
conditional_aa.freestandingdesync:set(menu_aa.FreestandingDesync_InAirDuck._:get())
conditional_aa.desynconshot:set(menu_aa.DesyncOnShot_InAirDuck._:get())
if conditional_aa.crouchingAAEnabled then
conditional_aa.pitch:set(menu_aa.Pitch_Crouching._:get())
if aantiaim.get_inverter_state() then
conditional_aa.yawadd:set(menu_aa.YawAddLeft_Crouching._:get())
else
conditional_aa.yawadd:set(menu_aa.YawAddRight_Crouching._:get())
end
conditional_aa.lbymode:set(menu_aa.LBYMode_Crouching._:get())
conditional_aa.yawmodifier:set(menu_aa.YawModifier_Crouching._:get())
conditional_aa.modifierdegree:set(menu_aa.ModifierDegree_Crouching._:get())
else
conditional_aa.modifierdegree:set(utils.random_int(menu_aa.ModifierDegreeMin_Crouch
ing._:get(), menu_aa.ModifierDegreeMax_Crouching._:get()))
end
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Crouching._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Crouching._:get())
elseif menu_aa.FakeLimitType_Crouching._:get() == 'Jitter' then
if utils.random_int(0,1) == 1 then
conditional_aa.fakelimitleft:set(menu_aa.LeftLimit_Crouching._:get())
conditional_aa.fakelimitright:set(menu_aa.RightLimit_Crouching._:get())
else
conditional_aa.fakelimitleft:set(18)
conditional_aa.fakelimitright:set(18)
end
elseif menu_aa.FakeLimitType_Crouching._:get() == 'Random Jitter' then
conditional_aa.fakelimitleft:set(utils.random_int(0,
menu_aa.LeftLimit_Crouching._:get()))
conditional_aa.fakelimitright:set(utils.random_int(0,
menu_aa.RightLimit_Crouching._:get()))
end
conditional_aa.fakeoptions:set(menu_aa.FakeOptions_Crouching._:get())
conditional_aa.freestandingdesync:set(menu_aa.FreestandingDesync_Crouching._:get())
conditional_aa.desynconshot:set(menu_aa.DesyncOnShot_Crouching._:get())
end
alpha_k = 1
width_k = 0
width_ka = 0
data_k = {
[''] = {alpha_k = 0}
}
drag = false
for i = 1, 5 do
render.rect_outline(vector(x - i, y - i), vector(w + i, h + i), color(r, g,
b, 0.15 * (1 - i / 5) * 255), 1, 5)
end
end
function func:getbinds()
local binds = {}
local cheatbinds = ui.get_binds()
for i = 1, #cheatbinds do
table.insert(binds, 1, cheatbinds[i])
end
return binds
end
local keybind_names = {
['Double Tap'] = 'Double tap',
['Hide Shots'] = 'On shot anti-aim',
['Slow Walk'] = 'Slow motion',
['Edge Jump'] = 'Jump at edge',
['Fake Ping'] = 'Ping spike',
['Override Resolver'] = 'Resolver override',
['Fake Duck'] = 'Duck peek assist',
['Minimum Damage'] = 'Damage override',
['Auto Peek'] = 'Quick peek assist',
['Body Aim'] = 'Force body aim',
['Safe Points'] = 'Safe points',
['Yaw Base'] = 'Yaw base',
['Enable Thirdperson'] = 'Thirdperson',
['Manual Yaw Base'] = 'Yaw base',
}
function upper_to_lower(str)
str1 = string.sub(str, 2, #str)
str2 = string.sub(str, 1, 1)
return str2:upper()..str1:lower()
end
function func:solus_keybinds()
if not gear_opt.solus_binds:get() or menu_cyrax.visuals_switch._:get() == false
or not menu_cyrax.solus_switch._:get() then return end
local x_k, y_k = gear_opt.solus_1:get(),gear_opt.solus_2:get()
local max_width = 0
local frametime = globals.frametime * 16
local add_y = 0
local total_width = 66
local active_binds = {}
local bind = func:getbinds()
for i = 1, #bind do
local binds = bind[i]
local bind_name = keybind_names[binds.name] == nil and
upper_to_lower(binds.name) or keybind_names[binds.name]
function func:solus_watermark()
if not gear_opt.solus_watermark:get() or menu_cyrax.visuals_switch._:get() ==
false or not menu_cyrax.solus_switch._:get() then return end
lua_name = string.format("cyrax.tech")
user_name = common.get_username()
time = common.get_date("%H:%M:%S")
watermark_text = string.format("%s | %s | %s", lua_name, user_name, time)
if globals.is_in_game then
local ping = utils.net_channel().avg_latency[0]*1000
final_latency = ('delay: %dms'):format(ping)
watermark_text = string.format("%s | %s | %s | %s", lua_name, user_name,
final_latency, time)
end
function func:watermark()
if not menu_cyrax.watermark_switch._:get() or not
menu_cyrax.visuals_switch._:get() then return end
local alpha = math.abs(1 * math.cos(2 * math.pi * (globals.curtime + 3) / 5))
* 255
local alpha2 = math.abs(1 * math.cos(2 * math.pi * globals.curtime / 5)) *
255
local amangas = gradient_text(gear_opt.wm_color:get().r,
gear_opt.wm_color:get().g, gear_opt.wm_color:get().b, alpha, 255, 255, 255, 0,
string.format('>/cyrax anti aim technologies [%s]/<',
string.lower(func:version())))
local amangas2 = gradient_text(255, 255, 255, 0, gear_opt.wm_color:get().r,
gear_opt.wm_color:get().g, gear_opt.wm_color:get().b, alpha2,
string.format('>/cyrax anti aim technologies [%s]/<',
string.lower(func:version())))
local amangas3 = gradient_text(gear_opt.wm_color:get().r,
gear_opt.wm_color:get().g, gear_opt.wm_color:get().b, 255,
gear_opt.wm_color2:get().r, gear_opt.wm_color2:get().g, gear_opt.wm_color2:get().b,
255, string.format('>/cyrax anti aim technologies [%s]/<',
string.lower(func:version())))
if gear_opt.animate:get() then
render.text(1, vector(10, 450), color(0, 0, 0), nil,
string.format('>/cyrax anti aim technologies [%s]/<',
string.lower(func:version())))
render.text(1, vector(10, 450), color(0, 0, 0), nil, amangas)
render.text(1, vector(10, 450), color(0, 0, 0), nil, amangas2)
gear_opt.wm_color2:set_visible(false)
else
gear_opt.wm_color2:set_visible(true)
render.text(1, vector(10, 450), color(0, 0, 0), nil, amangas3)
end
end
local alpha123 = 0
local time = anim_switch:get() and math.floor(globals.realtime) or 0
function func:loading()
local screen = render.screen_size()
if math.floor(globals.realtime) - time > 8 or not anim_switch:get() then
return end
end
hooked_function = nil
ground_ticks, end_time = 1, 0
function updateCSA_hk(thisptr, edx)
if entity.get_local_player() == nil or ffi.cast('uintptr_t', thisptr) == nil
then return end
hooked_function(thisptr, edx)
if gear_opt.anim:get("Static Legs") and menu_cyrax.animbreaker_switch._:get()
then
ffi.cast('float*', ffi.cast('uintptr_t', thisptr) + 10104)[6] = 1
end
if gear_opt.anim:get("Leg Breaker") and menu_cyrax.animbreaker_switch._:get()
then
ffi.cast('float*', ffi.cast('uintptr_t', thisptr) + 10104)[0] = 1
conditional_aa.legmovement:set('Sliding')
end
end
function anim_state_hook()
local local_player = entity.get_local_player()
if not local_player then return end
local handleSaveConfig = {
switch = function(el)
return {
name = el.name,
element = el.element,
value = el._:get()
}
end,
slider = function(el)
return {
name = el.name,
element = el.element,
value = el._:get()
}
end,
color_picker = function(el)
local clr = el._:get()
return {
name = el.name,
element = el.element,
color = {
r = clr.r,
g = clr.g,
b = clr.b,
a = clr.a
}
}
end,
combo = function(el)
return {
name = el.name,
element = el.element,
value = el._:get()
}
end,
selectable = function(el)
return {
name = el.name,
element = el.element,
value = el._:get()
}
end
local handleLoadConfig = {
switch = function(el)
menu_aa[el.name]._:set(el.value)
end,
slider = function(el)
menu_aa[el.name]._:set(el.value)
end,
color_picker = function(el)
local clr = init(el.color.r, el.color.g, el.color.b, el.color.a)
menu_aa[el.name]._:set(clr)
end,
combo = function(el)
menu_aa[el.name]._:set(el.value)
end,
selectable = function(el)
pcall(function() return menu_aa[el.name]._:set(el.value) end)
end
gear_opt.export:set_callback(function()
local config = {}
clipboard.set(base64.encode(json.stringify(config)))
print_dev("Cyrax - Config saved to clipboard")
gear_opt.import:set_callback(function()
local status, config = pcall(function() return
json.parse(base64.decode(clipboard.get())) end)
gear_opt.default:set_callback(function()
function callbacks.render()
func:customscope()
func:jumpscout_fix_f()
func:cyrax_ind()
func:cyrax_ind_2()
func:cyrax_ind_3()
func:cyrax_ind_4()
if globals.realtime > 60 then func:loading() end
func:funnydog()
func:solus_keybinds()
func:drawscreenLogs()
func:solus_watermark()
func:watermark()
local anim = math.abs(1 * math.cos(2 * math.pi * globals.curtime / 14)) * 11
ui.sidebar("\aFFD5BBFF" .. str:sub(1, anim), 'moon')
end
function callbacks.pre_render()
cyraxUI.visibility()
end
function callbacks.createmove()
end
function callbacks.player_death(event)
func:killsay(event)
end
function callbacks.createmove_run(cmd)
anim_state_hook()
func:anti_aim_bossule(cmd)
end
function callbacks.aim_fire(e)
end
function callbacks.aim_ack(e)
func:centerLogs(e)
func:screenLogs(e)
end
events.render:set(callbacks.render)
events.pre_render:set(callbacks.pre_render)
events.aim_ack:set(callbacks.aim_ack)
events.aim_fire:set(callbacks.aim_fire)
events.player_death:set(callbacks.player_death)
events.createmove:set(callbacks.createmove)
events.createmove_run:set(callbacks.createmove_run)
events.shutdown:set(function()
for _, reset_function in ipairs(vmt_hook.hooks) do
reset_function()
end
end)