* feat(Commands): Prototype command system
* feat(Commands): Chat commands
* refactor(Toxic): convert most options into commands
* feat(Protections): block breakup kicks on other players as host
* refactor(Kicks): convert most options into commands
* refactor(Commands): add labels and descriptions to all commands
* feat(Commands): cleanup on unload
* refactor(Troll): convert most options into commands
* refactor(Misc): convert most options into commands
* refactor(Teleport): convert most options into commands
* feat(Commands): Variadic commands and toggleable bools
* feat(Hotkeys): hotkeys now use commands
* fix(Chat): fix the chat window locking up when a message is sent
* fix(Commands): properly handle spoofed username
* fix(Spam): update filter

Co-authored-by: Yimura <24669514+Yimura@users.noreply.github.com>
This commit is contained in:
maybegreat48
2022-12-22 21:23:32 +00:00
committed by GitHub
parent f44859a973
commit 79e5e7a30b
143 changed files with 3194 additions and 1458 deletions

View File

@ -7,12 +7,6 @@ namespace big
{
void view::mobile() {
ImGui::SetWindowSize({ 0.f, (float)*g_pointers->m_resolution_y }, ImGuiCond_Always);
components::sub_title("Lester");
ImGui::Checkbox("Off Radar", &g.self.off_radar);
ImGui::Separator();
components::sub_title("Merryweather");

View File

@ -9,42 +9,15 @@ namespace big
{
void view::self()
{
components::button("Suicide", [] {
ENTITY::SET_ENTITY_HEALTH(self::ped, 0, 0);
});
components::command_button<"suicide">();
ImGui::SameLine();
components::button("Heal", [] {
ENTITY::SET_ENTITY_HEALTH(self::ped, PED::GET_PED_MAX_HEALTH(self::ped), 0);
PED::SET_PED_ARMOUR(self::ped, PLAYER::GET_PLAYER_MAX_ARMOUR(self::id));
});
components::command_button<"heal">();
ImGui::SameLine();
components::button("Fill Inventory", [] {
std::string mpPrefix = local_player::get_mp_prefix();
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "NO_BOUGHT_YUM_SNACKS"), 30, true);
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "NO_BOUGHT_HEALTH_SNACKS"), 15, true);
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "NO_BOUGHT_EPIC_SNACKS"), 5, true);
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "MP_CHAR_ARMOUR_1_COUNT"), 10, true);
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "MP_CHAR_ARMOUR_2_COUNT"), 10, true);
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "MP_CHAR_ARMOUR_3_COUNT"), 10, true);
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "MP_CHAR_ARMOUR_4_COUNT"), 10, true);
STATS::STAT_SET_INT(rage::joaat(mpPrefix + "MP_CHAR_ARMOUR_5_COUNT"), 10, true);
});
components::command_button<"fillsnacks">();
ImGui::SameLine();
components::button("Skip Cutscene", [] {
CUTSCENE::STOP_CUTSCENE_IMMEDIATELY();
});
components::command_button<"skipcutscene">();
ImGui::SameLine();
components::button("Clean Player", [] {
entity::clean_ped(self::ped);
});
components::command_button<"clean">();
ImGui::Separator();
@ -53,33 +26,32 @@ namespace big
ImGui::BeginGroup();
ImGui::Checkbox("God Mode", &g.self.god_mode);
ImGui::Checkbox("Off Radar", &g.self.off_radar);
ImGui::Checkbox("Free Cam", &g.self.free_cam);
ImGui::Checkbox("Disable Phone", &g.tunables.disable_phone);
ImGui::Checkbox("Unlimited Oxygen", &g.self.unlimited_oxygen);
ImGui::Checkbox("Fast Respawn", &g.self.fast_respawn);
components::command_checkbox<"otr">();
components::command_checkbox<"freecam">();
components::command_checkbox<"nophone">();
components::command_checkbox<"infoxy">();
components::command_checkbox<"fastrespawn">();
ImGui::EndGroup();
ImGui::SameLine();
ImGui::BeginGroup();
ImGui::Checkbox("No Clip", &g.self.noclip);
ImGui::Checkbox("No Ragdoll", &g.self.no_ragdoll);
ImGui::Checkbox("Super Run", &g.self.super_run);
components::command_checkbox<"noclip">();
components::command_checkbox<"noragdoll">();
components::command_checkbox<"fastrun">();
ImGui::Checkbox("No Idle Kick", &g.tunables.no_idle_kick);
ImGui::Checkbox("No Water Collision", &g.self.no_water_collision);
components::command_checkbox<"walkunder">();
ImGui::EndGroup();
ImGui::SameLine();
ImGui::BeginGroup();
ImGui::Checkbox("Invisibility", &g.self.invisibility);
if (g.self.invisibility) {
ImGui::Checkbox("Locally Visible", &g.self.local_visibility);
}
ImGui::Checkbox("Keep Player Clean", &g.self.clean_player);
ImGui::Checkbox("No Collision", &g.self.no_collision);
ImGui::Checkbox("Mobile Radio", &g.self.mobile_radio);
components::command_checkbox<"invis">();
if (g.self.invisibility)
components::command_checkbox<"localvis">();
components::command_checkbox<"cleanloop">();
components::command_checkbox<"nocollision">();
components::command_checkbox<"mobileradio">();
ImGui::Checkbox("Dance Mode", &g.self.dance_mode);
if (ImGui::IsItemHovered())

View File

@ -11,42 +11,17 @@ namespace big
{
ImGui::Text("Blips:");
components::button("Waypoint", []
{
teleport::to_waypoint();
});
components::button("Objective", []
{
teleport::to_objective();
});
components::command_button<"waypointtp">({}, "Waypoint");
ImGui::SameLine();
components::command_button<"objectivetp">({}, "Objective");
ImGui::Checkbox("Auto-Teleport To Waypoint", &g.self.auto_tp);
ImGui::Text("Vehicles:");
components::button("Teleport to Last Vehicle", []
{
if (g_local_player && g_local_player->m_vehicle)
{
const Vehicle veh = g_pointers->m_ptr_to_handle(g_local_player->m_vehicle);
teleport::into_vehicle(veh);
}
});
components::button("Bring Personal Vehicle", []
{
Vehicle veh = mobile::mechanic::get_personal_vehicle();
vehicle::bring(veh, self::pos);
});
components::button("Teleport to Personal Vehicle", []
{
Vehicle veh = mobile::mechanic::get_personal_vehicle();
teleport::into_vehicle(veh);
});
components::command_button<"lastvehtp">();
ImGui::SameLine();
components::command_button<"bringpv">();
ImGui::SameLine();
components::command_button<"pvtp">();
}
}

View File

@ -15,8 +15,8 @@ namespace big
ImGui::BeginGroup();
ImGui::Checkbox("Infinite Ammo", &g.weapons.infinite_ammo);
ImGui::Checkbox("Infinite Clip", &g.weapons.infinite_mag);
components::command_checkbox<"infammo">();
components::command_checkbox<"infclip">();
ImGui::EndGroup();
ImGui::SameLine();
@ -29,7 +29,7 @@ namespace big
else
g_pointers->m_bypass_max_count_of_active_sticky_bombs->restore();
}
ImGui::Checkbox("Rapid Fire", &g.weapons.rapid_fire);
components::command_checkbox<"rapidfire">();
ImGui::EndGroup();
@ -80,15 +80,11 @@ namespace big
components::sub_title("Misc");
ImGui::Checkbox("Force Crosshairs", &g.weapons.force_crosshairs);
components::command_checkbox<"crosshairs">();
ImGui::SameLine();
ImGui::Checkbox("No Recoil", &g.weapons.no_recoil);
components::command_checkbox<"norecoil">();
ImGui::SameLine();
ImGui::Checkbox("No Spread", &g.weapons.no_spread);
components::command_checkbox<"nospread">();
components::button("Get All Weapons", []
{