Add more requests and reorganize network tab (#1709)
This commit is contained in:
parent
8974300e78
commit
1b52f4ee7c
@ -24,6 +24,83 @@ namespace big
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
class request_avenger : command
|
||||||
|
{
|
||||||
|
using command::command;
|
||||||
|
|
||||||
|
virtual void execute(const std::vector<std::uint64_t>&, const std::shared_ptr<command_context> ctx)
|
||||||
|
{
|
||||||
|
mobile::services::request_avenger();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
class request_kosatka : command
|
||||||
|
{
|
||||||
|
using command::command;
|
||||||
|
|
||||||
|
virtual void execute(const std::vector<std::uint64_t>&, const std::shared_ptr<command_context> ctx)
|
||||||
|
{
|
||||||
|
mobile::services::request_kosatka();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
class request_moc : command
|
||||||
|
{
|
||||||
|
using command::command;
|
||||||
|
|
||||||
|
virtual void execute(const std::vector<std::uint64_t>&, const std::shared_ptr<command_context> ctx)
|
||||||
|
{
|
||||||
|
mobile::services::request_mobile_operations_center();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
class request_terrorbyte : command
|
||||||
|
{
|
||||||
|
using command::command;
|
||||||
|
|
||||||
|
virtual void execute(const std::vector<std::uint64_t>&, const std::shared_ptr<command_context> ctx)
|
||||||
|
{
|
||||||
|
mobile::services::request_terrorbyte();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
class request_acidlab : command
|
||||||
|
{
|
||||||
|
using command::command;
|
||||||
|
|
||||||
|
virtual void execute(const std::vector<std::uint64_t>&, const std::shared_ptr<command_context> ctx)
|
||||||
|
{
|
||||||
|
mobile::services::request_acidlab();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
class request_acidlab_bike : command
|
||||||
|
{
|
||||||
|
using command::command;
|
||||||
|
|
||||||
|
virtual void execute(const std::vector<std::uint64_t>&, const std::shared_ptr<command_context> ctx)
|
||||||
|
{
|
||||||
|
mobile::services::request_acidlab_bike();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
class request_taxi : command
|
||||||
|
{
|
||||||
|
using command::command;
|
||||||
|
|
||||||
|
virtual void execute(const std::vector<std::uint64_t>&, const std::shared_ptr<command_context> ctx)
|
||||||
|
{
|
||||||
|
mobile::mobile_misc::request_taxi();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
boat_pickup g_boat_pickup("boatpickup", "Request Boat Pickup", "Request a boat pickup", 0);
|
boat_pickup g_boat_pickup("boatpickup", "Request Boat Pickup", "Request a boat pickup", 0);
|
||||||
ballistic_armor g_ballistic_armor("ballisticarmor", "Request Ballistic Equipment", "Requests ballistic equipment which includes ballistic armor and an minigun", 0);
|
ballistic_armor g_ballistic_armor("ballisticarmor", "Request Ballistic Equipment", "Requests ballistic equipment which includes ballistic armor and an minigun", 0);
|
||||||
|
request_avenger g_request_avenger("avenger", "Request Avenger", "Requests the Avenger", 0);
|
||||||
|
request_kosatka g_request_kosatka("kosatka", "Request Kosatka", "Requests the Kosatka", 0);
|
||||||
|
request_moc g_request_moc("moc", "Request M.O.C", "Requests the Mobile Operations Center", 0);
|
||||||
|
request_terrorbyte g_request_terrorbyte("terrorbyte", "Request Terrorbyte", "Requests the terrorbyte", 0);
|
||||||
|
request_acidlab g_request_acidlab("acidlab", "Request Acid Lab", "Requests the Acid Lab", 0);
|
||||||
|
request_acidlab_bike g_request_acidlab_bike("acidbike", "Request Acid Bike", "Requests the Acid Lab Delivery Bike", 0);
|
||||||
|
request_taxi g_request_taxi("taxi", "Request Taxi", "Requests a taxi to give you a ride", 0);
|
||||||
}
|
}
|
@ -1,4 +1,5 @@
|
|||||||
#include "backend/looped_command.hpp"
|
#include "backend/looped_command.hpp"
|
||||||
|
#include "backend/bool_command.hpp"
|
||||||
#include "core/scr_globals.hpp"
|
#include "core/scr_globals.hpp"
|
||||||
#include "natives.hpp"
|
#include "natives.hpp"
|
||||||
|
|
||||||
@ -12,15 +13,20 @@ namespace big
|
|||||||
|
|
||||||
virtual void on_tick() override
|
virtual void on_tick() override
|
||||||
{
|
{
|
||||||
|
if (g.self.ghost_org)
|
||||||
|
MISC::SET_BIT(script_global(2794162).at(4667).as<int*>(), 2);
|
||||||
scr_globals::globalplayer_bd.as<GlobalPlayerBD*>()->Entries[self::id].OffRadarActive = true;
|
scr_globals::globalplayer_bd.as<GlobalPlayerBD*>()->Entries[self::id].OffRadarActive = true;
|
||||||
*scr_globals::offradar_time.at(57).as<int*>() = NETWORK::GET_NETWORK_TIME() + 1;
|
*scr_globals::offradar_time.at(57).as<int*>() = NETWORK::GET_NETWORK_TIME() + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void on_disable() override
|
virtual void on_disable() override
|
||||||
{
|
{
|
||||||
|
if (!g.self.ghost_org)
|
||||||
|
MISC::CLEAR_BIT(script_global(2794162).at(4667).as<int*>(), 2);
|
||||||
scr_globals::globalplayer_bd.as<GlobalPlayerBD*>()->Entries[self::id].OffRadarActive = false;
|
scr_globals::globalplayer_bd.as<GlobalPlayerBD*>()->Entries[self::id].OffRadarActive = false;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
off_radar g_off_radar("otr", "OFF_RADAR", "OFF_RADAR_DESC", g.self.off_radar);
|
off_radar g_off_radar("otr", "OFF_RADAR", "OFF_RADAR_DESC", g.self.off_radar);
|
||||||
|
bool_command ghost_org("ghostorg", "Ghost Org", "Use Ghost Organization instead of standard off radar.", g.self.ghost_org);
|
||||||
}
|
}
|
||||||
|
@ -304,6 +304,7 @@ namespace big
|
|||||||
bool no_ragdoll = false;
|
bool no_ragdoll = false;
|
||||||
bool noclip = false;
|
bool noclip = false;
|
||||||
bool off_radar = false;
|
bool off_radar = false;
|
||||||
|
bool ghost_org = false;
|
||||||
bool super_run = false;
|
bool super_run = false;
|
||||||
bool no_collision = false;
|
bool no_collision = false;
|
||||||
bool unlimited_oxygen = false;
|
bool unlimited_oxygen = false;
|
||||||
|
@ -10,7 +10,7 @@ namespace big
|
|||||||
if (sameline)
|
if (sameline)
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
|
|
||||||
if (ImGui::SmallButton(std::string(custom_button_name + "##" + element_name).data()))
|
if (ImGui::Button(std::string(custom_button_name + "##" + element_name).data()))
|
||||||
ImGui::OpenPopup(element_name.data());
|
ImGui::OpenPopup(element_name.data());
|
||||||
|
|
||||||
ImGui::SetNextWindowPos(ImVec2(ImGui::GetIO().DisplaySize.x * 0.5f, ImGui::GetIO().DisplaySize.y * 0.5f), ImGuiCond_Always, ImVec2(0.5f, 0.5f));
|
ImGui::SetNextWindowPos(ImVec2(ImGui::GetIO().DisplaySize.x * 0.5f, ImGui::GetIO().DisplaySize.y * 0.5f), ImGuiCond_Always, ImVec2(0.5f, 0.5f));
|
||||||
|
@ -55,8 +55,6 @@ namespace big::mobile
|
|||||||
{
|
{
|
||||||
*script_global(scr_globals::mechanic_global).at(4492).as<int*>() = 1;
|
*script_global(scr_globals::mechanic_global).at(4492).as<int*>() = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
namespace mors_mutual
|
namespace mors_mutual
|
||||||
@ -103,6 +101,39 @@ namespace big::mobile
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace services
|
||||||
|
{
|
||||||
|
inline void request_avenger()
|
||||||
|
{
|
||||||
|
*script_global(scr_globals::mechanic_global).at(938).as<int*>() = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void request_kosatka()
|
||||||
|
{
|
||||||
|
*script_global(scr_globals::mechanic_global).at(960).as<int*>() = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void request_mobile_operations_center()
|
||||||
|
{
|
||||||
|
*script_global(scr_globals::mechanic_global).at(930).as<int*>() = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void request_terrorbyte()
|
||||||
|
{
|
||||||
|
*script_global(scr_globals::mechanic_global).at(943).as<int*>() = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void request_acidlab()
|
||||||
|
{
|
||||||
|
*script_global(scr_globals::mechanic_global).at(944).as<int*>() = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
inline void request_acidlab_bike()
|
||||||
|
{
|
||||||
|
*script_global(scr_globals::mechanic_global).at(994).as<int*>() = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
namespace mechanic
|
namespace mechanic
|
||||||
{
|
{
|
||||||
inline Vehicle get_personal_vehicle()
|
inline Vehicle get_personal_vehicle()
|
||||||
@ -154,4 +185,12 @@ namespace big::mobile
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace mobile_misc
|
||||||
|
{
|
||||||
|
inline void request_taxi()
|
||||||
|
{
|
||||||
|
*script_global(scr_globals::mechanic_global).at(853).as<int*>() = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -125,6 +125,10 @@ namespace big
|
|||||||
components::script_patch_checkbox("REVEAL_OTR_PLAYERS"_T, &g.session.decloak_players, "Reveals players that are off the radar");
|
components::script_patch_checkbox("REVEAL_OTR_PLAYERS"_T, &g.session.decloak_players, "Reveals players that are off the radar");
|
||||||
components::script_patch_checkbox("Reveal Hidden Players", &g.session.unhide_players_from_player_list, "Reveals players that have hidden themselves from the player list");
|
components::script_patch_checkbox("Reveal Hidden Players", &g.session.unhide_players_from_player_list, "Reveals players that have hidden themselves from the player list");
|
||||||
|
|
||||||
|
components::command_button<"sextall">({}, "Send Sexts");
|
||||||
|
ImGui::SameLine();
|
||||||
|
components::command_button<"fakebanall">({}, "Send Fake Ban Messages");
|
||||||
|
|
||||||
ImGui::EndListBox();
|
ImGui::EndListBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -223,6 +227,34 @@ namespace big
|
|||||||
ImGui::EndListBox();
|
ImGui::EndListBox();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
components::small_text("WARP_TIME"_T.data());
|
||||||
|
|
||||||
|
components::button("PLUS_1_MINUTE"_T, [] {
|
||||||
|
toxic::warp_time_forward_all(60 * 1000);
|
||||||
|
});
|
||||||
|
ImGui::SameLine();
|
||||||
|
components::button("PLUS_5_MINUTES"_T, [] {
|
||||||
|
toxic::warp_time_forward_all(5 * 60 * 1000);
|
||||||
|
});
|
||||||
|
ImGui::SameLine();
|
||||||
|
components::button("PLUS_48_MINUTES"_T, [] {
|
||||||
|
toxic::warp_time_forward_all(48 * 60 * 1000);
|
||||||
|
});
|
||||||
|
|
||||||
|
components::button("PLUS_96_MINUTES"_T, [] {
|
||||||
|
toxic::warp_time_forward_all(96 * 60 * 1000);
|
||||||
|
});
|
||||||
|
ImGui::SameLine();
|
||||||
|
components::button("PLUS_200_MINUTES"_T, [] {
|
||||||
|
toxic::warp_time_forward_all(200 * 60 * 1000);
|
||||||
|
});
|
||||||
|
ImGui::SameLine();
|
||||||
|
components::button("STOP_TIME"_T, [] {
|
||||||
|
toxic::set_time_all(INT_MAX - 3000);
|
||||||
|
});
|
||||||
|
if (ImGui::IsItemHovered())
|
||||||
|
ImGui::SetTooltip("STOP_TIME_DESC"_T.data());
|
||||||
|
|
||||||
ImGui::EndGroup();
|
ImGui::EndGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -441,53 +473,21 @@ namespace big
|
|||||||
true,
|
true,
|
||||||
"Teleport");
|
"Teleport");
|
||||||
|
|
||||||
ImGui::EndGroup();
|
|
||||||
|
|
||||||
|
|
||||||
components::command_button<"sextall">({}, "Send Sexts");
|
|
||||||
ImGui::SameLine();
|
|
||||||
components::command_button<"fakebanall">({}, "Send Fake Ban Messages");
|
|
||||||
|
|
||||||
components::small_text("WARP_TIME"_T.data());
|
|
||||||
|
|
||||||
components::button("PLUS_1_MINUTE"_T, [] {
|
|
||||||
toxic::warp_time_forward_all(60 * 1000);
|
|
||||||
});
|
|
||||||
ImGui::SameLine();
|
|
||||||
components::button("PLUS_5_MINUTES"_T, [] {
|
|
||||||
toxic::warp_time_forward_all(5 * 60 * 1000);
|
|
||||||
});
|
|
||||||
ImGui::SameLine();
|
|
||||||
components::button("PLUS_48_MINUTES"_T, [] {
|
|
||||||
toxic::warp_time_forward_all(48 * 60 * 1000);
|
|
||||||
});
|
|
||||||
ImGui::SameLine();
|
|
||||||
components::button("PLUS_96_MINUTES"_T, [] {
|
|
||||||
toxic::warp_time_forward_all(96 * 60 * 1000);
|
|
||||||
});
|
|
||||||
ImGui::SameLine();
|
|
||||||
components::button("PLUS_200_MINUTES"_T, [] {
|
|
||||||
toxic::warp_time_forward_all(200 * 60 * 1000);
|
|
||||||
});
|
|
||||||
ImGui::SameLine();
|
|
||||||
components::button("STOP_TIME"_T, [] {
|
|
||||||
toxic::set_time_all(INT_MAX - 3000);
|
|
||||||
});
|
|
||||||
if (ImGui::IsItemHovered())
|
|
||||||
ImGui::SetTooltip("STOP_TIME_DESC"_T.data());
|
|
||||||
|
|
||||||
components::sub_title("SCRIPT_HOST_FEATURES"_T);
|
components::sub_title("SCRIPT_HOST_FEATURES"_T);
|
||||||
ImGui::Checkbox("DISABLE_CEO_MONEY"_T.data(), &g.session.block_ceo_money);
|
ImGui::Checkbox("DISABLE_CEO_MONEY"_T.data(), &g.session.block_ceo_money);
|
||||||
if (ImGui::IsItemHovered())
|
if (ImGui::IsItemHovered())
|
||||||
ImGui::SetTooltip("DISABLE_CEO_MONEY_DESC"_T.data());
|
ImGui::SetTooltip("DISABLE_CEO_MONEY_DESC"_T.data());
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
ImGui::Checkbox("RANDOMIZE_CEO_COLORS"_T.data(), &g.session.randomize_ceo_colors);
|
|
||||||
ImGui::Checkbox("Block Jobs", &g.session.block_jobs);
|
ImGui::Checkbox("Block Jobs", &g.session.block_jobs);
|
||||||
if (ImGui::IsItemHovered())
|
if (ImGui::IsItemHovered())
|
||||||
ImGui::SetTooltip("Prevents remote players from starting jobs while in your session");
|
ImGui::SetTooltip("Prevents remote players from starting jobs while in your session");
|
||||||
|
|
||||||
|
ImGui::Checkbox("RANDOMIZE_CEO_COLORS"_T.data(), &g.session.randomize_ceo_colors);
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
components::script_patch_checkbox("Block Muggers", &g.session.block_muggers, "For the entire session");
|
components::script_patch_checkbox("Block Muggers", &g.session.block_muggers, "For the entire session");
|
||||||
ImGui::SameLine();
|
|
||||||
components::script_patch_checkbox("Block CEO Raids", &g.session.block_ceo_raids, "For the entire session");
|
components::script_patch_checkbox("Block CEO Raids", &g.session.block_ceo_raids, "For the entire session");
|
||||||
|
|
||||||
|
ImGui::EndGroup();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@ namespace big
|
|||||||
{
|
{
|
||||||
ImGui::SetWindowSize({0.f, (float)*g_pointers->m_gta.m_resolution_y}, ImGuiCond_Always);
|
ImGui::SetWindowSize({0.f, (float)*g_pointers->m_gta.m_resolution_y}, ImGuiCond_Always);
|
||||||
|
|
||||||
|
|
||||||
ImGui::SeparatorText("MERRYWEATHER"_T.data());
|
ImGui::SeparatorText("MERRYWEATHER"_T.data());
|
||||||
|
|
||||||
components::button("MW_AMMO_DROP"_T, [] {
|
components::button("MW_AMMO_DROP"_T, [] {
|
||||||
@ -29,7 +30,30 @@ namespace big
|
|||||||
mobile::merry_weather::request_airstrike();
|
mobile::merry_weather::request_airstrike();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
|
ImGui::SeparatorText("CEO_ABILITIES"_T.data());
|
||||||
|
|
||||||
|
components::button("CEO_BULLSHARK"_T, [] {
|
||||||
|
mobile::ceo_abilities::request_bullshark_testosterone();
|
||||||
|
});
|
||||||
|
|
||||||
|
components::command_button<"ballisticarmor">();
|
||||||
|
|
||||||
|
|
||||||
|
ImGui::SeparatorText("Services");
|
||||||
|
|
||||||
|
components::command_button<"avenger">();
|
||||||
|
components::command_button<"kosatka">();
|
||||||
|
components::command_button<"moc">();
|
||||||
|
components::command_button<"terrorbyte">();
|
||||||
|
components::command_button<"acidlab">();
|
||||||
|
components::command_button<"acidbike">();
|
||||||
|
|
||||||
|
ImGui::SeparatorText("Miscellaneous");
|
||||||
|
|
||||||
|
components::command_button<"taxi">();
|
||||||
|
|
||||||
|
|
||||||
ImGui::SeparatorText("MORS_MUTUAL"_T.data());
|
ImGui::SeparatorText("MORS_MUTUAL"_T.data());
|
||||||
|
|
||||||
components::button("MORS_FIX_ALL"_T, [] {
|
components::button("MORS_FIX_ALL"_T, [] {
|
||||||
@ -39,13 +63,5 @@ namespace big
|
|||||||
std::make_format_args(amount_fixed,
|
std::make_format_args(amount_fixed,
|
||||||
amount_fixed == 1 ? "VEHICLE_FIX_HAS"_T.data() : "VEHICLE_FIX_HAVE"_T.data())));
|
amount_fixed == 1 ? "VEHICLE_FIX_HAS"_T.data() : "VEHICLE_FIX_HAVE"_T.data())));
|
||||||
});
|
});
|
||||||
|
|
||||||
ImGui::SeparatorText("CEO_ABILITIES"_T.data());
|
|
||||||
|
|
||||||
components::button("CEO_BULLSHARK"_T, [] {
|
|
||||||
mobile::ceo_abilities::request_bullshark_testosterone();
|
|
||||||
});
|
|
||||||
|
|
||||||
components::command_button<"ballisticarmor">();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -7,6 +7,8 @@
|
|||||||
#include "util/scripts.hpp"
|
#include "util/scripts.hpp"
|
||||||
#include "views/view.hpp"
|
#include "views/view.hpp"
|
||||||
|
|
||||||
|
#include <script/globals/GPBD_FM_3.hpp>
|
||||||
|
|
||||||
namespace big
|
namespace big
|
||||||
{
|
{
|
||||||
void view::self()
|
void view::self()
|
||||||
@ -29,6 +31,8 @@ namespace big
|
|||||||
|
|
||||||
components::command_checkbox<"godmode">();
|
components::command_checkbox<"godmode">();
|
||||||
components::command_checkbox<"otr">();
|
components::command_checkbox<"otr">();
|
||||||
|
if (g.self.off_radar && scr_globals::gpbd_fm_3.as<GPBD_FM_3*>()->Entries[self::id].BossGoon.Boss == self::id)
|
||||||
|
components::command_checkbox<"ghostorg">();
|
||||||
components::command_checkbox<"freecam">();
|
components::command_checkbox<"freecam">();
|
||||||
components::command_checkbox<"nophone">();
|
components::command_checkbox<"nophone">();
|
||||||
components::command_checkbox<"infoxy">();
|
components::command_checkbox<"infoxy">();
|
||||||
@ -36,7 +40,6 @@ namespace big
|
|||||||
components::command_checkbox<"invis">();
|
components::command_checkbox<"invis">();
|
||||||
if (g.self.invisibility)
|
if (g.self.invisibility)
|
||||||
components::command_checkbox<"localvis">(); // TODO: does nothing in SP
|
components::command_checkbox<"localvis">(); // TODO: does nothing in SP
|
||||||
components::command_checkbox<"nocollision">();
|
|
||||||
|
|
||||||
ImGui::EndGroup();
|
ImGui::EndGroup();
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
@ -51,6 +54,7 @@ namespace big
|
|||||||
components::command_checkbox<"beastjump">();
|
components::command_checkbox<"beastjump">();
|
||||||
if (!g.self.beast_jump)
|
if (!g.self.beast_jump)
|
||||||
components::command_checkbox<"superjump">();
|
components::command_checkbox<"superjump">();
|
||||||
|
components::command_checkbox<"nocollision">();
|
||||||
|
|
||||||
ImGui::EndGroup();
|
ImGui::EndGroup();
|
||||||
ImGui::SameLine();
|
ImGui::SameLine();
|
||||||
|
Reference in New Issue
Block a user