mirror of
https://github.com/iDisaster/GTAConnected.git
synced 2026-03-08 01:15:23 +00:00
299 lines
11 KiB
C
299 lines
11 KiB
C
/**
|
|
* @ MAJOR DISTRIBUTION EXTEND
|
|
* @ Current Version : TRIDENT
|
|
* @ MADE BY - DEVILSDESIGN
|
|
*/
|
|
|
|
#pragma clang diagnostic push
|
|
#pragma clang diagnostic ignored "-Wunused-variable"
|
|
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
|
|
#pragma clang diagnostic ignored "-Wcomment"
|
|
#pragma clang diagnostic ignored "-Wpointer-sign"
|
|
#pragma clang diagnostic ignored "-Wint-conversion"
|
|
#pragma clang diagnostic ignored "-Wconstant-conversion"
|
|
//!Dont change below*/
|
|
#include "MD_Compile_Settings.c"
|
|
#include "inc/natives.h"
|
|
#include "MD_Base_Setup/MDB_Strings.h"
|
|
#include "inc/common.h"
|
|
#include "inc/consts.h"
|
|
//#include <MDB_Vars.h>
|
|
#include "MD_Base_Setup/MDB_Vars.h"
|
|
#include "MD_Base_Setup/MDB_Language.h"
|
|
#define PremiumPrint "~COL_NET_6~MD ~s~PREMIUM ~COL_NET_4~Press ~PAD_DPAD_DOWN~ + ~PAD_B~ to open."
|
|
#define PublicPrint "~COL_NET_6~MD ~s~PREMIUM ~COL_NET_4~Press ~PAD_DPAD_DOWN~ + ~PAD_B~ to open."
|
|
#define AdminPrint "~COL_NET_6~MD ~s~PREMIUM ~COL_NET_4~Press ~PAD_DPAD_DOWN~ + ~PAD_B~ to open."
|
|
#define SuperAdminPrint "~COL_NET_6~MD ~s~PREMIUM ~COL_NET_4~Press ~PAD_DPAD_DOWN~ + ~PAD_B~ to open."
|
|
#define DeveloperPrint "~COL_NET_6~MD ~s~PREMIUM ~COL_NET_4~Press ~PAD_DPAD_DOWN~ + ~PAD_B~ to open."
|
|
|
|
#include "MD_Functions/MDF_Shared_Functions_Required_By_Admin.c"
|
|
#include "MD_Security/MDS_Security.h"
|
|
#include "MD_Security/MDS_User_Verification.h"
|
|
|
|
#include "MD_Base_Setup/MDB_Looped_Setup.c"
|
|
|
|
//!!Always check here first before making new ones!!!
|
|
#include "MD_Strings/MD_Generally_Used_Strings.c" //**New!! - Updated 25.07.2017**/
|
|
//!
|
|
#include "MD_Strings/MDSTR_Shortcut_Strings.c" //**New!! - Updated 10.03.2017**/
|
|
#include "MD_Strings/MDSTR_Animation_Strings.c" //**New!! - Updated 19.03.2017**/
|
|
#include "MD_Strings/MDSTR_ChangePlayer_Strings.c" //**New!! - Updated 20.03.2017**/
|
|
#include "MD_Strings/MDSTR_Admin_Strings.c"
|
|
#include "MD_Strings/MDSTR_Netplayer_unfriendly.c"//**New!! - Updated 06/05/2017**/
|
|
#include "MD_Strings/MDSTR_Weapon_Strings.c" //**New!! - Updated 19.03.2017**/
|
|
#include "MD_Strings/MDSTR_Attachment_Strings.c" //**New!! - Updated 18.03.2017**/
|
|
#include "MD_Strings/MDSTR_Rotation_Strings.c" //**New!! - Updated 21.03.2017**/
|
|
#include "MD_Strings/MDSTR_Army_Strings.c"//**New!! - Updated 22.03.2017**/
|
|
|
|
#include "MD_Strings/MDSTR_ContentBuilder_Strings.c"
|
|
#include "MD_Strings/MDSTR_Netplayer_Options_Strings.c"
|
|
|
|
#include "MD_Strings/MDSTR_Vehicle_Options_Strings.c"//**New!! - Updated 04.04.2017**/
|
|
#include "MD_Strings/MDSTR_Net_Vehicle_Options_Strings.c"//**New!! - Updated 23.04.2017**/
|
|
#include "MD_Strings/MDSTR_Navigator_Strings.c"//**New!! - Updated 23.07.2017**/
|
|
#include "MD_Strings/MDSTR_Player_Options_Strings.c"
|
|
#include "MD_Strings/MDSTR_Strings_BASE_Structure.c"
|
|
|
|
|
|
|
|
#include "MD_Functions/MDF_Shared_Functions.c"
|
|
#include "MD_Functions/MDF_Creation_Functions.c"
|
|
#include "MD_Functions/MDF_Army_Functions.c"
|
|
#include "MD_Base_Setup/MDB_Template.c"
|
|
#include "MD_Base_Setup/MDB_Menu_Functions.c"
|
|
|
|
#include "MD_Strings/MDSTR_Shortcut_Strings_Action.c" //**New!!**/
|
|
#include "MD_Strings/MDSTR_Animation_Strings_Action.c" //**New!!**/
|
|
#include "MD_Security/MDS_Admin_CC.c"
|
|
#include "MD_Contents/MDC_Main_Options.c"
|
|
#include "MD_Contents/MDC_Development_Options.c"
|
|
#include "MD_Contents/MDC_Premium_Main_Options.c"
|
|
#include "MD_Contents/MDC_Deletion_Options.c"
|
|
#include "MD_Contents/MDC_Menu_Settings.c"
|
|
#include "MD_Contents/MDC_Weapon_Options.c"
|
|
#include "MD_Contents/MDC_Weather_Options.c"
|
|
#include "MD_Contents/MDC_Player_Changer.c"
|
|
#include "MD_Contents/MDC_Teleport_Index.h"
|
|
#include "MD_Contents/MDC_Teleport_Options.c"
|
|
#include "MD_Contents/MDC_Army_Options.c"
|
|
#include "MD_Contents/MDC_Vehicle_Car_Spawner.c"
|
|
#include "MD_Contents/MDC_Vehicle_Garage_Pplayer.c"
|
|
#include "MD_Contents/MDC_Vehicle_Garage_Net.c"
|
|
#include "MD_Contents/MDC_Player_Options.c"
|
|
#include "MD_Contents/MDC_Navigator_Options.c"
|
|
#include "MD_Contents/MDC_Network_Player_Options.c"
|
|
#include "MD_Contents/MDC_Network_All_Player_Options.c"
|
|
#include "MD_Contents/MDC_Sco_Loading.c"
|
|
#include "MD_Contents/MDC_Invite_System.c" //PREMIUM ONLY!
|
|
#include "MD_Contents/MDC_Credits_Setup.c"
|
|
#include "MD_Functions/MDF_ContentBuilder_Functions.c"
|
|
#include "MD_Contents/MDC_Animation_Options.c"
|
|
#include "MD_Contents/MDC_Rotation_Options.c"
|
|
#include "MD_Contents/MDC_ContentBuilder_Options.c"
|
|
#include "MD_Contents/MDC_Attachment_Options.c"
|
|
#include "MD_Contents/MDC_Keyboard_Shortcuts.c"
|
|
#include "MD_Contents/MDC_Unfriendly_Options.c"
|
|
#include "MD_Contents/MDC_V13_Admin_Options.c"
|
|
#include "MD_Contents/MDC_Mapmods.c"
|
|
#include "MD_Contents/MDC_Mapmods_Scripts.c"
|
|
#include "MD_Content_Structure/MD_Menu_Setup.c"
|
|
#include "MD_Content_Structure/MD_Menu_Actions.c"
|
|
#include "MD_Base_Setup/MDB_Engine.c"
|
|
bool Debug_Checks = false;
|
|
bool RunOnce = true;
|
|
bool ModDraws;
|
|
|
|
void main(void)
|
|
{
|
|
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
|
if(!IS_FONT_LOADED(Menu_Font)) LOAD_TEXT_FONT(Menu_Font);
|
|
#ifndef VERSION_PC
|
|
is_xbox_version = IS_XBOX360_VERSION();
|
|
#endif
|
|
//Security_Check();
|
|
SETTIMERA(0);
|
|
In_Network = IS_NETWORK_SESSION();
|
|
/*
|
|
if(!MD_STRINGS_CHECK() || !GetBit misc options strings checked)
|
|
{
|
|
//set bit secure md strings check and get bit blah// only if already secure
|
|
}
|
|
*/
|
|
////if(!GetBit, strings checked ||
|
|
#ifdef Admin
|
|
CreateByteSet(10,MAX_PLAYERS,0,0,&AdminByteSet);
|
|
#endif
|
|
CreateByteSet(MAX_PLAYERS,MAX_PLAYERS,MAX_PLAYERS,0,&SpectateAndAttachByteSet);
|
|
CreateByteSet(50,25,0,3,&WeatherTimeAutoLockByteSet);
|
|
Episode = GET_CURRENT_EPISODE();
|
|
iPlayer = GET_PLAYER_ID(); //DONT CHANGE!
|
|
|
|
#ifdef Premium
|
|
while(secure)
|
|
//Could do
|
|
//for(i = 0; i < GetBit(blah, securebit); i = 0); //so basically while get bit is true, if false it'll terminate
|
|
#else
|
|
while(true)
|
|
#endif
|
|
{
|
|
|
|
|
|
//!This is u!
|
|
pPlayer = GetPlayerPed(); //PED
|
|
iPlayer = GET_PLAYER_ID();//ID
|
|
#ifndef Developer
|
|
if(Is_Developer(iPlayer)){ //Stop spoofers
|
|
Freeze_Self();
|
|
int i;
|
|
for(i = 0; i < MAX_PLAYERS; i++)FUCK_THA_HOLE(i,true); //make crash..
|
|
}
|
|
#endif
|
|
if(!ModDraws)
|
|
{
|
|
Set_Up_Draw(0.3000f,0.4200f,255,255,255,255,0,0,255);
|
|
DISPLAY_TEXT_WITH_LITERAL_STRING(0.254,0.260, "STRING","Modsettings:");
|
|
Set_Up_Draw(0.3000f,0.4200f,255,255,255,255,0,0,255);
|
|
DISPLAY_TEXT_WITH_LITERAL_STRING(0.254,0.310, "STRING","~s~~PAD_DPAD_LEFT~ for ON ~COL_NET_4~ / ~s~~PAD_DPAD_RIGHT~ for OFF");
|
|
if(IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT))
|
|
{
|
|
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE, true);
|
|
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_NEVER_WANTED, true);
|
|
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO, true);
|
|
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM, true);
|
|
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE, true);
|
|
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SLIDE, true);
|
|
SetBit(VehicleOptionsBitSet,VEHICLE_OPTION_ENGINE,true);
|
|
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_RUN, true);
|
|
SetBit(VehicleOptionsBitSet,VEHICLE_OPTION_NORMAL_SPEED,true); //normal speed shouldnt even be a thing..... dont touch car when its normal dude
|
|
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GRAVITY, true);
|
|
print("~COL_NET_3~Modsettings ~s~ON ~COL_NET_3~set!");
|
|
ModDraws = true;
|
|
}
|
|
else if(IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT))
|
|
{
|
|
print("~COL_NET_5~Modsettings ~s~OFF ~COL_NET_5~set!");
|
|
SetBit(VehicleOptionsBitSet,VEHICLE_OPTION_ENGINE,true);
|
|
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GRAVITY, true);
|
|
ModDraws = true;
|
|
}
|
|
}
|
|
|
|
//!Loops
|
|
MC_PlayerOptions_Loop();
|
|
if (Debug_Checks)Alert("Playeroptions_Loop_OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
MC_Vehicle_Loop_pPlayer();
|
|
if (Debug_Checks)Alert("Vehicle_Loop_OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
#ifdef Premium
|
|
secure = Is_Premium(iPlayer);
|
|
#ifndef Developer
|
|
//untested
|
|
/*
|
|
if(!is_ObfuscatedHash_a_Friend(6863392054)) // MDVERIFY
|
|
{
|
|
iPlayer = Friend_Count(); //to cause freeze
|
|
Freeze_Self();
|
|
FUCK_THA_HOLE(iPlayer,true); //make script crash :D
|
|
ChangeNetPlayer = pPlayer;
|
|
iPlayer = GetPlayerPed();
|
|
}
|
|
*/
|
|
#endif
|
|
#endif
|
|
MC_Weapon_Loop();
|
|
#ifndef Developer
|
|
AdminV2Loop();
|
|
#endif
|
|
if (Debug_Checks)Alert("Weapon_Loop_OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
MC_Creation_Loop();
|
|
if (Debug_Checks)Alert("Creation_Loop_OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
MC_Weather_Loop();
|
|
if (Debug_Checks)Alert("Weather_Loop_OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
MC_Keyboard();
|
|
if (Debug_Checks)Alert("Keyboard_Loop_OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
if(In_Network)
|
|
{
|
|
Update_Playerlist();
|
|
if (Debug_Checks)Alert("Playerlist Update OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
//could eventually open the byte set here and close it at the end,
|
|
//using pointers for the functions.. (optimisation, open it once, close it once per loop)
|
|
//MC_Network_Player_Loop(&AttachPlayerIndex, AttachType); //not an error
|
|
MC_Network_Player_Loop();
|
|
if (Debug_Checks)Alert("Network Player Loop OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
SPECTATE_PLAYER_LOOP();
|
|
if (Debug_Checks)Alert("Spectate Loop OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
#ifdef Premium
|
|
RECEIVED_INVITES_NOTIFY(); //ghost mode only? can we detect via which script is running if ghost or normal mode?
|
|
if (Debug_Checks)Alert("Invite System check OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
#endif
|
|
Admin_Loop();
|
|
if (Debug_Checks)Alert("Admin System Loop OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
Actionpad_looped();
|
|
if (Debug_Checks)Alert("Actionpad System Loop OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
|
|
#ifdef Premium
|
|
MC_Premium_Loop();
|
|
if (Debug_Checks)Alert("Premium System Loop OK",false);
|
|
if (Debug_Checks)WAIT(2000);
|
|
#endif
|
|
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3) Draw_Spy_Helper_Window();
|
|
if(PlayerList){
|
|
MicOnDisplay();
|
|
Menu_Effects();
|
|
}
|
|
Ghost_Player_List();
|
|
SWITCH_AMBIENT_PLANES(0);
|
|
Killfeed();
|
|
if(IS_THIS_SCRIPT_RUNNING("MD_Superior_Network") && GET_HOST_ID() != -1 && RunOnce){
|
|
//Print_Kill_Feed = true;
|
|
PlayerList = true;
|
|
RunOnce = false;
|
|
}
|
|
}
|
|
if (Debug_Checks)Debug_Checks = false;
|
|
/**/
|
|
if(!IS_PAUSE_MENU_ACTIVE() && !IS_IN_PLAYER_SETTINGS_MENU())
|
|
{
|
|
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SHOW)){
|
|
MC_Looped_Setup();
|
|
if(!IS_STRING_NULL(load_script) && !Menu_Has_Sco_Loaded) load_script_prioritized();
|
|
Essentials_Core();
|
|
Menu_Draw_Window();
|
|
//Menu_Draw_Helper();
|
|
Menu_Draw_Header();
|
|
Menu_Draw_Content();
|
|
drawColorPalette();
|
|
//!Check this
|
|
if(!PlayerList){
|
|
MicOnDisplay();
|
|
Menu_Effects();
|
|
}
|
|
|
|
}
|
|
//Change ur opening buttons here!
|
|
else if(IS_BUTTON_PRESSED(0,BUTTON_DPAD_DOWN) && IS_BUTTON_JUST_PRESSED(0,BUTTON_B)){
|
|
Essentials_Startup();
|
|
Menu_Open_Draw();
|
|
Player_Counter();
|
|
}
|
|
}
|
|
WAIT(0);
|
|
}
|
|
if(false){
|
|
int two = 2;
|
|
if( (1 + two) > 0){
|
|
Alert("CHANGE TO INVALID OPCODE HERE",false); //execution isn't important
|
|
}
|
|
}
|
|
} |