mirror of
https://github.com/iDisaster/GTAConnected.git
synced 2026-03-08 01:15:23 +00:00
Add files via upload
This commit is contained in:
214
Trident/MD_Base_Setup/MDB_Engine.c
Normal file
214
Trident/MD_Base_Setup/MDB_Engine.c
Normal file
@@ -0,0 +1,214 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN && IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void Essentials_Startup(void){
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") != 0) return;
|
||||
REQUEST_SCRIPT("menu_startup");
|
||||
if (menu_level == 0){
|
||||
item_highlighted = 1;
|
||||
menu_level = 1;
|
||||
press_counter = 2;
|
||||
press_counter_timesby = 1;
|
||||
}
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true);
|
||||
Menu_Setup_Draw();
|
||||
menu_consts_start_y = Menu_Start_Pos_y;
|
||||
menu_consts_max = menu_max;
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SHOW, true);
|
||||
uint menuThreadID = GET_ID_OF_THIS_THREAD();
|
||||
while(!HAS_SCRIPT_LOADED("menu_startup")) WAIT(0);
|
||||
START_NEW_SCRIPT_WITH_ARGS("menu_startup", &menuThreadID, 1, 128);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED("menu_startup");
|
||||
}
|
||||
|
||||
void Essentials_Shutdown(void){
|
||||
char * cellphone = In_Network ? "mpcellphone" : "spcellphone";
|
||||
REQUEST_SCRIPT(cellphone);
|
||||
Menu_Close_Draw();
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("menu_startup");
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer,false);
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SHOW, false);
|
||||
while(!HAS_SCRIPT_LOADED(cellphone)) WAIT(0);
|
||||
START_NEW_SCRIPT(cellphone, 1024);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED(cellphone);
|
||||
Update_On_Display_Only = true;
|
||||
}
|
||||
|
||||
|
||||
void Essentials_Button_Registration(void){
|
||||
if(!GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_MOVE) && !Move_Player_Info){
|
||||
//if(!GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_MOVE)){
|
||||
if (menu_up_pressed(true) && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
if (item_highlighted == 1) item_highlighted = itemCount;
|
||||
else{
|
||||
item_highlighted--;
|
||||
if (itemCount > menu_consts_max && item_highlighted > (menu_start_scrolling - 1)){
|
||||
Menu_Start_Pos_y += Item_height;
|
||||
menu_max--;
|
||||
}
|
||||
if(menu_item[item_highlighted].type == 10 )item_highlighted--;
|
||||
}
|
||||
//PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_SERVER_HIGHLIGHT");
|
||||
PLAY_AUDIO_EVENT("RADIO_RETUNE_BEEP");
|
||||
}
|
||||
else if (menu_down_pressed(true) && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
if (item_highlighted == itemCount){
|
||||
item_highlighted = 1;
|
||||
Menu_Start_Pos_y = menu_consts_start_y;
|
||||
menu_max = menu_consts_max;
|
||||
}
|
||||
else{
|
||||
item_highlighted++;
|
||||
if (itemCount > menu_consts_max && item_highlighted > menu_start_scrolling){
|
||||
Menu_Start_Pos_y -= Item_height;
|
||||
menu_max++;
|
||||
}
|
||||
if(menu_item[item_highlighted].type == 10 )item_highlighted++;
|
||||
}
|
||||
PLAY_AUDIO_EVENT("RADIO_RETUNE_BEEP");
|
||||
//PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_SERVER_HIGHLIGHT");
|
||||
|
||||
}
|
||||
//!Setting up cross browsing on netplayers --> DEVILSDESIGN//
|
||||
if((menu_item[item_highlighted].type > 20 && menu_item[item_highlighted].type < 30)){
|
||||
//!Crosbrowsing setting to yourself*//
|
||||
if (IS_BUTTON_PRESSED(0, BUTTON_X) && IS_BUTTON_JUST_PRESSED(0, BUTTON_SELECT) && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
if(players[ChangeNetPlayer].id != iPlayer){
|
||||
int scanner;
|
||||
for(scanner = 0; scanner < 16; scanner++){
|
||||
if(players[scanner].id != iPlayer) continue;
|
||||
ChangeNetPlayer = scanner;
|
||||
Alert("~b~MD: ~s~Crossbrowsing set to yourself!",false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (IS_BUTTON_PRESSED(0, BUTTON_X) && IS_BUTTON_JUST_PRESSED(0, DPAD_RIGHT) && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
PLAY_AUDIO_EVENT("RADIO_RETUNE_BEEP");
|
||||
Player_Counter();
|
||||
if(ChangeNetPlayer == player_count - 1) ChangeNetPlayer = 0;
|
||||
else ChangeNetPlayer++;
|
||||
if(Player_Display_Selection( players[ChangeNetPlayer].id)){
|
||||
ChangeNetPlayer++;
|
||||
return ;
|
||||
}
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_AUTO_SPECTATE)) SetByteSet(&SpectateAndAttachByteSet, SPECTATE_PLAYER_INDEX, players[ChangeNetPlayer].id);
|
||||
if(MD_Player_Info)UPDATE_CHANGE_NET_PLAYER_WEAPON_INFO();
|
||||
#ifdef Admin
|
||||
if(MD_Version_Detector) userfound = GET_PLAYER_MD_STATUS(players[ChangeNetPlayer].id);
|
||||
#endif
|
||||
}
|
||||
else if (IS_BUTTON_PRESSED(0, BUTTON_X) && IS_BUTTON_JUST_PRESSED(0, DPAD_LEFT) && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
PLAY_AUDIO_EVENT("RADIO_RETUNE_BEEP");
|
||||
Player_Counter();
|
||||
if(ChangeNetPlayer == 0) ChangeNetPlayer = player_count - 1;
|
||||
else ChangeNetPlayer--;
|
||||
if(Player_Display_Selection( players[ChangeNetPlayer].id)){
|
||||
ChangeNetPlayer--;
|
||||
return ;
|
||||
}
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_AUTO_SPECTATE)) SetByteSet(&SpectateAndAttachByteSet, SPECTATE_PLAYER_INDEX, players[ChangeNetPlayer].id);
|
||||
if(MD_Player_Info)UPDATE_CHANGE_NET_PLAYER_WEAPON_INFO();
|
||||
#ifdef Admin
|
||||
if(MD_Version_Detector) userfound = GET_PLAYER_MD_STATUS(players[ChangeNetPlayer].id);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
if( !IS_BUTTON_PRESSED(0, BUTTON_X) && menu_right_pressed(true)){
|
||||
if(menu_item[item_highlighted].type == 8
|
||||
|| menu_item[item_highlighted].type == 9
|
||||
|| menu_item[item_highlighted].type == 14
|
||||
|| menu_item[item_highlighted].type == 15
|
||||
|| menu_item[item_highlighted].type == 22
|
||||
|| menu_item[item_highlighted].type == 23
|
||||
|| menu_item[item_highlighted].type == 24){
|
||||
if(menu_item[item_highlighted].num_val == menu_item[item_highlighted].extra_val)
|
||||
menu_item[item_highlighted].num_val = 1;
|
||||
else menu_item[item_highlighted].num_val += 1;
|
||||
}
|
||||
}
|
||||
else if( !IS_BUTTON_PRESSED(0, BUTTON_X) && menu_left_pressed(true)){
|
||||
if(menu_item[item_highlighted].type == 8
|
||||
|| menu_item[item_highlighted].type == 9
|
||||
|| menu_item[item_highlighted].type == 14
|
||||
|| menu_item[item_highlighted].type == 15
|
||||
|| menu_item[item_highlighted].type == 22
|
||||
|| menu_item[item_highlighted].type == 23
|
||||
|| menu_item[item_highlighted].type == 24){
|
||||
if(menu_item[item_highlighted].num_val == 1) menu_item[item_highlighted].num_val = menu_item[item_highlighted].extra_val;
|
||||
else menu_item[item_highlighted].num_val -= 1;
|
||||
}
|
||||
}
|
||||
if (menu_back_pressed()){
|
||||
if (menu_level != 1 || GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SET_ITEMS, false);
|
||||
Reset_Menu();
|
||||
if(!GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_ACTION_ERROR)) menu_level--;
|
||||
SelectedItem = last_selected[menu_level - 1];
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_ACTION_ERROR)){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_ACTION_ERROR, false);
|
||||
}
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, false);
|
||||
}
|
||||
}
|
||||
else if (!GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_DISABLE)){
|
||||
Essentials_Shutdown();
|
||||
menu_level = 0;
|
||||
}
|
||||
//PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_SERVER_HIGHLIGHT");
|
||||
//PLAY_AUDIO_EVENT("FRONTEND_OTHER_COUNTDOWN");
|
||||
//PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_SERVER_HIGHLIGHT");
|
||||
PLAY_AUDIO_EVENT("RADIO_RETUNE_BEEP");
|
||||
}
|
||||
else if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER)){
|
||||
press_counter = 2;
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER, false);
|
||||
}
|
||||
}
|
||||
if (menu_forward_pressed() && press_counter_timesby < 2 && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
SelectedItem = item_highlighted;
|
||||
if(GetBit(MenuActionBitSet, (SelectedItem - 1)))MENU_ACTION();
|
||||
else{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SET_ITEMS, false);
|
||||
last_selected[menu_level] = SelectedItem;
|
||||
item_highlighted = 1;
|
||||
Reset_Menu();
|
||||
menu_level++;
|
||||
}
|
||||
PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_SERVER_HIGHLIGHT");
|
||||
//if(GetBit(MenuActionBitSet, (SelectedItem - 1))) PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_READY");
|
||||
//else PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_SERVER_HIGHLIGHT");
|
||||
}
|
||||
}
|
||||
|
||||
void Essentials_Core(void){
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SHUTDOWN)) Essentials_Shutdown();
|
||||
Essentials_Button_Registration();
|
||||
if(!GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SET_ITEMS)){
|
||||
Base_set();
|
||||
if (menu_back_pressed() && last_selected[menu_level] != 0){
|
||||
if (last_selected[menu_level] <= itemCount) item_highlighted = last_selected[menu_level];
|
||||
else item_highlighted = itemCount;
|
||||
last_selected[menu_level] = 0;
|
||||
if (itemCount > menu_consts_max && item_highlighted > menu_start_scrolling){
|
||||
uint Menu_Line;
|
||||
for (Menu_Line = (menu_start_scrolling + 1); Menu_Line <= item_highlighted; Menu_Line++){
|
||||
Menu_Start_Pos_y -= Item_height;
|
||||
menu_max++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (menu_up_pressed(false)){
|
||||
if (itemCount > menu_consts_max && item_highlighted == itemCount){
|
||||
Menu_Start_Pos_y = (menu_consts_start_y) - ((itemCount - menu_start_scrolling) * Item_height);
|
||||
menu_max = itemCount + menu_start_scrolling;
|
||||
}
|
||||
}
|
||||
}
|
||||
73
Trident/MD_Base_Setup/MDB_Language.h
Normal file
73
Trident/MD_Base_Setup/MDB_Language.h
Normal file
@@ -0,0 +1,73 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
char* MD_Version;
|
||||
char* MD_SubVersion;
|
||||
char* MENU_HEADER;
|
||||
char* MENU_SUB_HEADER;
|
||||
char* MENU_FOOTER;
|
||||
char* null_string;
|
||||
//char* custom_bool_on;
|
||||
//char* custom_bool_off;
|
||||
char* load_script;
|
||||
char* Essentials_script[MAX_MENU_ITEMS];
|
||||
|
||||
#define ETC ~COL_NET_4~
|
||||
#include "MD_Compile_Settings.c"
|
||||
|
||||
/**Version info for Detection*/
|
||||
//#define Version_Advertise 130 //1301 would be v13.01, this will just be v13
|
||||
/**Version Title*/
|
||||
#define MD_Extend_Header "E X T E N D"
|
||||
#define MD_Extend_SubHeader "~BLIP_76~ T R I D E N T ~BLIP_76~"
|
||||
#define MD_Version "v13"
|
||||
#ifdef Beta
|
||||
#define MD_SubVersion "BETA"
|
||||
#else
|
||||
#define MD_SubVersion "~BLIP_73~"
|
||||
#endif
|
||||
#define MD_Creators "~BLIP_76~ Made by Devilsdesign & IIV NATHAN VII~BLIP_76~"
|
||||
#define MD_Display_Welcome "~COL_NET_4~Welcome to MD Trident V13! ~n~ ~w~ Open with :(Hold) ~PAD_DPAD_DOWN~ + (press)~PAD_B~"
|
||||
#define VERSION_DISPLAY "~BLIP_76~ MD EXTEND~w~+ ~COL_NET_4~TRIDENT"
|
||||
|
||||
|
||||
/**Footers*/
|
||||
#define menu_lfooter "~b~MD: ~s~Made by ~r~DEVILSDESIGN ~s~& ~r~IIV NATHAN VII"
|
||||
#define menu_rfooter " ~BLIP_76~ Visit www.consolecrunch.com for updates! ~BLIP_76~"
|
||||
#define MD_Extend_Footer "Made by DEVILSDESIGN & IIV NATHAN VII"
|
||||
|
||||
/**Error Messages used in the menu*/
|
||||
#define ADMIN_ONLY_STRING "~b~MD: ~s~This feature is admin only."
|
||||
#define Error_Personal_Vehicle "~b~MD: ~s~You need to be in a vehicle to use this feature."
|
||||
#define Error_NetPlayer_Vehicle "~b~MD: ~s~Player is not in a vehicle."
|
||||
#define Error_Model_Missing "~b~MD: ~s~Model is missing from img files."
|
||||
#define Error_Char_Missing "~b~MD: ~s~Player has no character, action can not be performed."
|
||||
#define Error_No_Player "~b~MD: ~s~Player does not exist anymore, action can not be performed."
|
||||
#define Error_ID_Control "~b~MD: ~s~Unable to control ID, action can not be performed."
|
||||
#define Error_TBOGT "~b~MD: ~s~TBOGT Only!"
|
||||
#define Colours_Updated "~b~MD: ~s~Vehicle Colours saved! Function Enabled.~n~ Go to spawn settings to disable."
|
||||
#define Essentials_Error ""
|
||||
#define Essentials_Error_invalid "Not available currently."
|
||||
#define Essentials_Error_script "Add your own .sco's!"
|
||||
#define Essentials_Error_goback "Press ~INPUT_FRONTEND_CANCEL~ to go back."
|
||||
|
||||
/**Generally used txt in menu**/
|
||||
#define PrintON " ~COL_NET_3~ON" //mehhhhhhh
|
||||
#define PrintOFF " ~COL_NET_4~OFF"
|
||||
//Add strinchecker here
|
||||
|
||||
void Security_Check(void){
|
||||
/*
|
||||
if((SecureTextForEditing("MD E X T E N D ~BLIP_73~", 28, 3569161059))){
|
||||
Alert(MD_Display_Welcome,true);
|
||||
}
|
||||
else{
|
||||
Freeze_Self();
|
||||
}
|
||||
*/
|
||||
}
|
||||
55
Trident/MD_Base_Setup/MDB_Looped_Setup.c
Normal file
55
Trident/MD_Base_Setup/MDB_Looped_Setup.c
Normal file
@@ -0,0 +1,55 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Looped_Setup(void)
|
||||
{
|
||||
|
||||
if(COMPARE_STRING(menu_item[item_highlighted].name,"~BLIP_52~ Teleport to saved location"))
|
||||
{
|
||||
int num = (menu_item[item_highlighted].num_val - 1);
|
||||
if(save_x[num] != 0)
|
||||
{
|
||||
DRAW_SPHERE(save_x[num],save_y[num], save_z[num] - 1,2); //fine as 2 incase in car
|
||||
}
|
||||
}
|
||||
|
||||
//menu_item[1].num_val = (AutoSpectate ? 2 : 1);
|
||||
/*
|
||||
Spy_string[1] = "~w~Spectate Player / AutoSpectate ~COL_NET_4~OFF";
|
||||
Spy_string[2] = "~w~Spectate Player / AutoSpectate ~COL_NET_3~ON";
|
||||
*/
|
||||
//if(COMPARE_STRING(menu_item[1].charval,
|
||||
switch(menu_level)
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
if(item_highlighted == 19) //delete distance setting
|
||||
{
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
DRAW_SPHERE(x,y,z - 3, (menu_item[item_highlighted].num_val * 2)); //yes x 2 is correct..
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 5:
|
||||
{
|
||||
#ifdef Admin
|
||||
if(!GetBit(MD_Misc_OptionsBitSet,MD_MISC_ADMIN_PRINTED_VEHICLE_SPAWN_FREEZE_WARNING))
|
||||
{
|
||||
if(last_selected[1] == 2 && last_selected[2] != 1 && last_selected[3] == 17 && last_selected[4] == 9)
|
||||
{
|
||||
Alert("~b~MD: ~s~Be wary here, you don't want them spawning into a freeze-car.",true);
|
||||
SetBit(MD_Misc_OptionsBitSet,MD_MISC_ADMIN_PRINTED_VEHICLE_SPAWN_FREEZE_WARNING,true);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
35
Trident/MD_Base_Setup/MDB_Looped_Setupold.c
Normal file
35
Trident/MD_Base_Setup/MDB_Looped_Setupold.c
Normal file
@@ -0,0 +1,35 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Looped_Setup(void)
|
||||
{
|
||||
if(COMPARE_STRING(menu_item[item_highlighted].name,"~BLIP_52~ Teleport to saved location"))
|
||||
{
|
||||
int num = (menu_item[item_highlighted].num_val - 1);
|
||||
if(save_x[num] != 0)
|
||||
{
|
||||
DRAW_SPHERE(save_x[num],save_y[num], save_z[num] - 1,2); //fine as 2 incase in car
|
||||
}
|
||||
}
|
||||
//menu_item[1].num_val = (AutoSpectate ? 2 : 1);
|
||||
/*
|
||||
Spy_string[1] = "~w~Spectate Player / AutoSpectate ~COL_NET_4~OFF";
|
||||
Spy_string[2] = "~w~Spectate Player / AutoSpectate ~COL_NET_3~ON";
|
||||
*/
|
||||
//if(COMPARE_STRING(menu_item[1].charval,
|
||||
if(menu_level == 1)
|
||||
{
|
||||
if(item_highlighted == 18) //delete distance setting
|
||||
{
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
DRAW_SPHERE(x,y,z - 3,menu_item[item_highlighted].num_val);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
346
Trident/MD_Base_Setup/MDB_Menu_Functions.c
Normal file
346
Trident/MD_Base_Setup/MDB_Menu_Functions.c
Normal file
@@ -0,0 +1,346 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
//! Menu Functions
|
||||
void menu_hold_pressed(uint p_id){
|
||||
uint button1;
|
||||
uint button2;
|
||||
|
||||
switch(p_id)
|
||||
{
|
||||
case 1:
|
||||
{
|
||||
button1 = BUTTON_DPAD_UP;
|
||||
button2 = KEY_UP_ARROW;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
{
|
||||
button1 = BUTTON_DPAD_DOWN;
|
||||
button2 = KEY_DOWN_ARROW;
|
||||
}
|
||||
break;
|
||||
case 3:
|
||||
{
|
||||
button1 = BUTTON_DPAD_LEFT;
|
||||
button2 = KEY_LEFT_ARROW;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
{
|
||||
button1 = BUTTON_DPAD_RIGHT;
|
||||
button2 = KEY_RIGHT_ARROW;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
if (IS_BUTTON_PRESSED(0, button1) || IS_GAME_KEYBOARD_KEY_PRESSED(button2)){
|
||||
press_id = p_id;
|
||||
if (hold_counter > 40){
|
||||
press_counter_timesby++;
|
||||
hold_counter = 0;
|
||||
}
|
||||
|
||||
hold_counter++;
|
||||
press_counter++;
|
||||
press_counter *= press_counter_timesby;
|
||||
}
|
||||
else if (press_id == p_id){
|
||||
press_counter_timesby = 1;
|
||||
hold_counter = 0;
|
||||
}
|
||||
}
|
||||
|
||||
bool menu_up_pressed(bool counter){
|
||||
if ((IS_BUTTON_JUST_PRESSED(0, BUTTON_DPAD_UP) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_UP_ARROW))
|
||||
|| (press_counter > 6 && (IS_BUTTON_PRESSED(0, BUTTON_DPAD_UP) || IS_GAME_KEYBOARD_KEY_PRESSED(KEY_UP_ARROW)))){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER, true);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (counter)
|
||||
menu_hold_pressed(1);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool menu_down_pressed(bool counter){
|
||||
if ((IS_BUTTON_JUST_PRESSED(0, BUTTON_DPAD_DOWN) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_DOWN_ARROW))
|
||||
|| (press_counter > 6 && (IS_BUTTON_PRESSED(0, BUTTON_DPAD_DOWN) || IS_GAME_KEYBOARD_KEY_PRESSED(KEY_DOWN_ARROW)))){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER, true);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (counter)
|
||||
menu_hold_pressed(2);
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool menu_left_pressed(bool counter){
|
||||
if ((IS_BUTTON_JUST_PRESSED(0, DPAD_LEFT) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_LEFT_ARROW))
|
||||
|| (press_counter > 6 && (IS_BUTTON_PRESSED(0, DPAD_LEFT) || IS_GAME_KEYBOARD_KEY_PRESSED(KEY_LEFT_ARROW)))){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER, true);
|
||||
return true;
|
||||
}
|
||||
if (counter)menu_hold_pressed(3);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool menu_right_pressed(bool counter){
|
||||
if ((IS_BUTTON_JUST_PRESSED(0, DPAD_RIGHT) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_RIGHT_ARROW))
|
||||
|| (press_counter > 6 && (IS_BUTTON_PRESSED(0, DPAD_RIGHT) || IS_GAME_KEYBOARD_KEY_PRESSED(KEY_RIGHT_ARROW)))){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER, true);
|
||||
return true;
|
||||
}
|
||||
if (counter)menu_hold_pressed(4);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool menu_LB_pressed(bool counter){
|
||||
if ((IS_BUTTON_JUST_PRESSED(0, BUTTON_LB) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_L))
|
||||
|| (press_counter > 6 && (IS_BUTTON_PRESSED(0, BUTTON_LB) || IS_GAME_KEYBOARD_KEY_PRESSED(KEY_L)))){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER, true);
|
||||
return true;
|
||||
}
|
||||
if (counter)menu_hold_pressed(3);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool menu_RB_pressed(bool counter){
|
||||
if ((IS_BUTTON_JUST_PRESSED(0, BUTTON_RB) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_R))
|
||||
|| (press_counter > 6 && (IS_BUTTON_PRESSED(0, BUTTON_RB) || IS_GAME_KEYBOARD_KEY_PRESSED(KEY_R)))){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_RESET_COUNTER, true);
|
||||
return true;
|
||||
}
|
||||
if(counter)menu_hold_pressed(4);
|
||||
return false;
|
||||
}
|
||||
|
||||
bool menu_forward_pressed(void){
|
||||
if (IS_BUTTON_JUST_PRESSED(0, BUTTON_A) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_ENTER))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool menu_back_pressed(void){
|
||||
if (IS_BUTTON_JUST_PRESSED(0, BUTTON_B) || IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_BACKSPACE))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
/**Crossbrowsing MenuItems**/
|
||||
//Keeping the type between 20 and 30 so if type is between this range it will crossbrowse.
|
||||
void AddFunction_CB(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].type = 21;//Former 12
|
||||
}
|
||||
void AddFunction_Num_CB(char* item_text,int maxval){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = 1;
|
||||
menu_item[itemCount].extra_val = maxval;
|
||||
menu_item[itemCount].type = 22; //Former 8
|
||||
}
|
||||
void AddFunction_Value_CB(char* item_text,int maxval){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = 1;
|
||||
menu_item[itemCount].extra_val = maxval;
|
||||
menu_item[itemCount].type = 23; //Former 9
|
||||
//Add_StringValue(itemCount);
|
||||
}
|
||||
void AddFunction_ValueLine_CB(int maxval){
|
||||
itemCount++;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = 1;
|
||||
menu_item[itemCount].extra_val = maxval;
|
||||
menu_item[itemCount].type = 24; //Former 15
|
||||
//Add_StringValue(itemCount);
|
||||
|
||||
}
|
||||
void AddBool_CB(char* item_text, bool item_bool){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].extra_val = item_bool;
|
||||
menu_item[itemCount].type = 25; //Former 3
|
||||
}
|
||||
|
||||
void AddBool_NoHighlight_CB(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].type = 26; //Former 12
|
||||
}
|
||||
|
||||
void AddGxt_Model_CB(uint item_gxt_hash){
|
||||
itemCount++;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = item_gxt_hash;
|
||||
menu_item[itemCount].type = 27; //Former 5
|
||||
}
|
||||
/**END**/
|
||||
|
||||
|
||||
void AddSubMenu(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
menu_item[itemCount].type = 13;
|
||||
}
|
||||
void AddPlayername(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
menu_item[itemCount].type = 7;
|
||||
}
|
||||
void Add_NotPresent(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
menu_item[itemCount].type = 6;
|
||||
}
|
||||
void Add_JumpOver(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
menu_item[itemCount].type = 10;
|
||||
}
|
||||
void Add_Error(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
menu_item[itemCount].type = 11;
|
||||
}
|
||||
void AddFunction(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].type = 12;
|
||||
}
|
||||
void AddFunction_Num(char* item_text,int maxval){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = 1;
|
||||
menu_item[itemCount].extra_val = maxval;
|
||||
menu_item[itemCount].type = 8;
|
||||
}
|
||||
void AddFunction_NumSphere(char* item_text,int maxval){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = Delete_Distance_Radius;
|
||||
menu_item[itemCount].extra_val = maxval;
|
||||
menu_item[itemCount].type = 14;
|
||||
}
|
||||
void AddFunction_Value(char* item_text,int maxval){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = 1;
|
||||
menu_item[itemCount].extra_val = maxval;
|
||||
menu_item[itemCount].type = 9;
|
||||
//Add_StringValue(itemCount);
|
||||
}
|
||||
void AddFunction_ValueLine(int maxval){
|
||||
itemCount++;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = 1;
|
||||
menu_item[itemCount].extra_val = maxval;
|
||||
menu_item[itemCount].type = 15;
|
||||
//Add_StringValue(itemCount);
|
||||
}
|
||||
void AddBool(char* item_text, bool item_bool){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].extra_val = item_bool;
|
||||
menu_item[itemCount].type = 3;
|
||||
}
|
||||
void AddBool_NoHighlight(char* item_text){
|
||||
itemCount++;
|
||||
menu_item[itemCount].name = item_text;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].type = 12;
|
||||
}
|
||||
void AddGxt_Model(uint item_gxt_hash){
|
||||
itemCount++;
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
menu_item[itemCount].num_val = item_gxt_hash;
|
||||
menu_item[itemCount].type = 5;
|
||||
}
|
||||
void Menu_Add_Item_Sco(bool item_bool){
|
||||
menu_item[itemCount].extra_val = item_bool;
|
||||
menu_item[itemCount].type = 4;
|
||||
}
|
||||
void Menu_Add_Action(void){
|
||||
SetBit(MenuActionBitSet, (itemCount - 1), true);
|
||||
}
|
||||
void Load_Sco(char* item_text, char* item_script){
|
||||
//Make an item type for this
|
||||
if (DOES_SCRIPT_EXIST(item_script)){
|
||||
AddSubMenu(item_text);
|
||||
Essentials_script[itemCount] = item_script;
|
||||
bool enabled;
|
||||
if (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT(item_script) == 1)
|
||||
enabled = true;
|
||||
Menu_Add_Item_Sco(enabled);
|
||||
Menu_Add_Action();
|
||||
}
|
||||
else{
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_SHOW_MISSING_SCO)){
|
||||
Add_NotPresent(item_text);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Essentials_apply(void){
|
||||
if (menu_item[SelectedItem].extra_val){
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME(Essentials_script[SelectedItem]);
|
||||
menu_item[SelectedItem].extra_val = false;
|
||||
}
|
||||
else{
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME(Essentials_script[SelectedItem]);
|
||||
START_NEW_SCRIPT(Essentials_script[SelectedItem], 1024);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED(Essentials_script[SelectedItem]);
|
||||
Menu_Has_Sco_Loaded = false;
|
||||
menu_item[SelectedItem].extra_val = true;
|
||||
}
|
||||
}
|
||||
|
||||
void Modmanager(void){
|
||||
if(!Menu_Has_Sco_Loaded && !menu_item[SelectedItem].extra_val)load_script = Essentials_script[SelectedItem];
|
||||
else Essentials_apply();
|
||||
}
|
||||
|
||||
void Reset_Menu(void){
|
||||
int I;
|
||||
for (I = 1; I < (itemCount + 1); I++){
|
||||
menu_item[I].name = null_string;
|
||||
menu_item[I].type = 0;
|
||||
menu_item[I].num_val = 1;
|
||||
menu_item[I].extra_val = 0;
|
||||
SetBit(MenuActionBitSet, (I - 1), false);
|
||||
}
|
||||
Menu_Start_Pos_y = menu_consts_start_y;
|
||||
menu_max = menu_consts_max;
|
||||
itemCount = 0;
|
||||
}
|
||||
|
||||
void Base_Error(uint Error_id){
|
||||
//if (menu_item[SelectedItem].action) Menu_Action_Error = true;
|
||||
if(GetBit(MenuActionBitSet,SelectedItem - 1))SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_ACTION_ERROR, true);
|
||||
Reset_Menu();
|
||||
MENU_HEADER = Essentials_Error;
|
||||
if (Error_id == MODMANAGER_ERROR_ID_INVALID)AddSubMenu(Essentials_Error_invalid);
|
||||
else if (Error_id == MODMANAGER_ERROR_ID_SCRIPT)AddSubMenu(Essentials_Error_script);
|
||||
AddSubMenu(Essentials_Error_goback);
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
PLAY_AUDIO_EVENT("FRONTEND_MENU_ERROR");
|
||||
}
|
||||
98
Trident/MD_Base_Setup/MDB_Strings.h
Normal file
98
Trident/MD_Base_Setup/MDB_Strings.h
Normal file
@@ -0,0 +1,98 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
//THIS IS NOT TO BE SHARED, THERE WILL BE HUGE CONSEQUENSES --> Nail in coffin for IV/ infinite loading screens for everybody 24/7 just like Red Dead Redemption
|
||||
#pragma once
|
||||
|
||||
void SetByte(int* addr, const int val)
|
||||
{
|
||||
#ifdef VERSION_PC
|
||||
*addr = (val % 256);
|
||||
#else
|
||||
*addr = SHIFT_LEFT(val % 256, 24) | (*addr & 0xFFFFFF);
|
||||
#endif
|
||||
}
|
||||
|
||||
int GetByte(const int* addr)
|
||||
{
|
||||
#ifdef VERSION_PC
|
||||
return *addr % 256;
|
||||
#else
|
||||
return SHIFT_RIGHT(*addr, 24);
|
||||
#endif
|
||||
}
|
||||
|
||||
char* Strcpy(const char* dest, const char* src)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; GetByte((int*)((int)src + i)); i++)
|
||||
SetByte((int*)((int)dest + i), GetByte((int*)((int)src + i)));
|
||||
|
||||
SetByte((int*)((int)dest + i), 0);
|
||||
return dest;
|
||||
}
|
||||
|
||||
char* Strcat(const char* dest, const char * src)
|
||||
{
|
||||
unsigned int len = GET_LENGTH_OF_LITERAL_STRING(dest);
|
||||
Strcpy((char*)((int)dest + len), src);
|
||||
return dest;
|
||||
}
|
||||
|
||||
char* itoa(const int num, const char * dest)
|
||||
{
|
||||
uint numArr[10];
|
||||
unsigned int len = GET_LENGTH_OF_LITERAL_STRING(dest);
|
||||
unsigned int size = 0;
|
||||
int i = num;
|
||||
bool negative = num < 0;
|
||||
if(negative) Strcpy((char*)((int)dest + len), "-");
|
||||
do
|
||||
{
|
||||
numArr[9-size] = i % 10;
|
||||
i /= 10;
|
||||
size++;
|
||||
} while(i != 0);
|
||||
|
||||
for(i = (10 - size); i < 10; i++)
|
||||
{
|
||||
SetByte((int*)((int)dest + (len + (i-(10-size)) + negative)), (numArr[i] + '0'));
|
||||
}
|
||||
SetByte((int*)((int)dest + (len + size + negative)), 0);
|
||||
return dest;
|
||||
}
|
||||
|
||||
|
||||
//Nathans funcs/////////
|
||||
void PLAYERS_COLOUR(const int playerindex, char * dest)
|
||||
{
|
||||
Strcat(dest, "~COL_NET_");
|
||||
itoa( (playerindex + 1), dest);
|
||||
Strcat(dest, "~");
|
||||
}
|
||||
|
||||
|
||||
void PLAYER_NAME_WITH_COLOUR(const int playerindex, char * dest) //WORKS!
|
||||
{
|
||||
PLAYERS_COLOUR(playerindex, dest);
|
||||
Strcat(dest, GET_PLAYER_NAME(playerindex));
|
||||
}
|
||||
|
||||
char* VEHICLES_MODEL_NAME(const int vehicle)
|
||||
{
|
||||
int model;
|
||||
GET_CAR_MODEL(vehicle,&model);
|
||||
return GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model));
|
||||
}
|
||||
////////////////////////
|
||||
|
||||
char* ftoa(float num, char * dest, int decimalPlaces)
|
||||
{
|
||||
itoa((int)num, dest);
|
||||
Strcat(dest, ".");
|
||||
itoa( (int)((num - (int)num) * POW(10.0, (float)decimalPlaces)), dest);
|
||||
return dest;
|
||||
}
|
||||
39
Trident/MD_Base_Setup/MDB_Supernet_Vars.h
Normal file
39
Trident/MD_Base_Setup/MDB_Supernet_Vars.h
Normal file
@@ -0,0 +1,39 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv12
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
//security_bool = false;
|
||||
|
||||
Blip PlayerBlips[16];
|
||||
Texture radar;
|
||||
int iPlayer;
|
||||
Ped pPlayer;
|
||||
int Glowing = 0;
|
||||
int Rotating360 = 1;
|
||||
bool security_bool = false;
|
||||
bool Glowing_Increment = false;
|
||||
bool buttons = true;
|
||||
bool nohost = true;
|
||||
bool EventPrints;
|
||||
bool Terminate4Ghost;
|
||||
bool Joined = false;
|
||||
bool Joining_Display = true;
|
||||
bool Joined_Normal = false;
|
||||
bool found_host = false;
|
||||
bool Joined_As_Ghost = false;
|
||||
bool is_xbox_version = false;
|
||||
int Attach_Type = 0;
|
||||
int userfound = 0;
|
||||
#ifdef Admin
|
||||
int AdminCommandTick = 0;
|
||||
int AdminCommandTickLevel = 10;
|
||||
float admin_coord_x, admin_coord_y;
|
||||
float previous_admin_coord_x, previous_admin_coord_y, previous_admin_coord_z;
|
||||
#endif
|
||||
uint ChangeNetPlayer;
|
||||
int AdminAttachScanObj;
|
||||
int adminAdvertisePed;
|
||||
uint admin_tick_delay = 0;
|
||||
890
Trident/MD_Base_Setup/MDB_Template.c
Normal file
890
Trident/MD_Base_Setup/MDB_Template.c
Normal file
@@ -0,0 +1,890 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
uint menu_max, menu_consts_max, menu_start_scrolling;
|
||||
float Menu_Start_Pos_x = 0.6950f, Menu_Start_Pos_y = 0.1550f;
|
||||
float Player_Stats_Pos_x = 0.2400f,Player_Stats_Pos_y = 0.1300f; // Stats Window
|
||||
float dropdown_y = 1.2;
|
||||
bool Update_On_Display_Only;
|
||||
#pragma once
|
||||
#define Gold 164, 134, 35
|
||||
|
||||
#define ItemLine_MD 164, 134, 35
|
||||
|
||||
#define Chocolate 210,105,30
|
||||
#define Steelblue 70,130,180
|
||||
#define DevilsRed 153, 0, 0
|
||||
#define menu_consts_start_y Menu_Start_Pos_y
|
||||
#define Centering_Pos 0.1250f
|
||||
#define Window_Pos_x Menu_Start_Pos_x
|
||||
#define Window_Pos_y Menu_Start_Pos_y
|
||||
|
||||
#define Header_Pos_x Menu_Start_Pos_x + 0.0200f
|
||||
#define Header_Pos_y Menu_Start_Pos_y + 0.0050f
|
||||
#define Header_r 177
|
||||
#define Header_g 19
|
||||
#define Header_b 26
|
||||
#define Header_a 255
|
||||
#define Header_Txt_Size 0.258f,0.432f
|
||||
#define Extend_Txt_Size 0.303f,0.450f
|
||||
#define Updated_Txt_Size 0.1500f,0.2200f
|
||||
|
||||
#define Sub_Header_Pos_x Menu_Start_Pos_x
|
||||
#define Sub_Header_Pos_y Menu_Start_Pos_y + 0.0400f
|
||||
#define Sub_Header_r 58
|
||||
#define Sub_Header_g 95
|
||||
#define Sub_Header_b 205
|
||||
#define Sub_Header_Txt_Size 0.2000f,0.3200f
|
||||
|
||||
#define Version_Pos_x Menu_Start_Pos_x + 0.2109f
|
||||
#define Version_Pos_y Menu_Start_Pos_y + 0.0045f
|
||||
#define Version_Txt_Size 0.4200f,0.9500f
|
||||
#define SubVersion_Txt_Size 0.303f,0.450f
|
||||
#define SubVersion_Pos_y Menu_Start_Pos_y + 0.0300f
|
||||
#define Line_Pos_x Menu_Start_Pos_x
|
||||
#define Line_Pos_y Menu_Start_Pos_y + 0.0675f
|
||||
#define Line_r 255
|
||||
#define Line_g 255
|
||||
#define Line_b 255
|
||||
|
||||
#define Item_Pos_x Menu_Start_Pos_x + 0.020f
|
||||
#define Item_StringValue_Pos_x Item_Pos_x + 0.2150f
|
||||
#define Item_Pos_y 0.0500f
|
||||
#define Item_height 0.0280f
|
||||
#define Item_Txt_Size 0.19f,0.35f
|
||||
#define Names_Txt_Size 0.19f,0.35f
|
||||
#define Jumpover_Txt_Size 0.209,0.385f
|
||||
#define Item_r 180
|
||||
#define Item_g 180
|
||||
#define Item_b 180
|
||||
#define Item_a 255
|
||||
#define Scroll_Item_r 255
|
||||
#define Scroll_Item_g 255
|
||||
#define Scroll_Item_b 255
|
||||
#define SubMenu_r 139
|
||||
#define SubMenu_g 134
|
||||
#define SubMenu_b 130
|
||||
#define MenuBlip_r 255
|
||||
#define MenuBlip_g 255
|
||||
#define MenuBlip_b 255
|
||||
#define Item_Highlight_r 255
|
||||
#define Item_Highlight_g 143
|
||||
#define Item_Highlight_b 0
|
||||
|
||||
#define AddString_r 138
|
||||
#define AddString_g 43
|
||||
#define AddString_b 226
|
||||
|
||||
#define JumpOver_r 58
|
||||
#define JumpOver_g 95
|
||||
#define JumpOver_b 205
|
||||
|
||||
#define Bool_r 255
|
||||
#define Bool_g 128
|
||||
#define Bool_b 0
|
||||
|
||||
#define Ranksize 0.0160f, 0.0200f
|
||||
#define Color_Palette_x Menu_Start_Pos_x + 0.1850f
|
||||
#define Color_Palette_y Menu_Start_Pos_y + 0.1200f
|
||||
#define Color_Palette_Scroll 0.028
|
||||
|
||||
#define Info_Item_Text 0.1520f,0.2800f
|
||||
|
||||
|
||||
#define Stats_Item_Text 0.1530f,0.32725f
|
||||
#define Stats_Item_Height 0.025f
|
||||
#define Stats_Window_width 0.18f
|
||||
#define Stats_Item_Margin_x 0.010f
|
||||
#define Stats_Item_r 255
|
||||
#define Stats_Item_g 255
|
||||
#define Stats_Item_b 255
|
||||
#define Stats_Value_r 255
|
||||
#define Stats_Value_g 143
|
||||
#define Stats_Value_b 0
|
||||
|
||||
//Green
|
||||
#define Stats_Yes_r 204
|
||||
#define Stats_Yes_g 0
|
||||
#define Stats_Yes_b 0
|
||||
//Red
|
||||
#define Stats_No_r 0
|
||||
#define Stats_No_g 204
|
||||
#define Stats_No_b 0
|
||||
//Red Alert
|
||||
#define Alert_r 255
|
||||
#define Alert_g 0
|
||||
#define Alert_b 0
|
||||
|
||||
#define Ghost_r 0
|
||||
#define Ghost_g 102
|
||||
#define Ghost_b 204
|
||||
|
||||
#define Holy_r 127
|
||||
#define Holy_g 0
|
||||
#define Holy_b 255
|
||||
|
||||
#define Spy_Item_r 255
|
||||
#define Spy_Item_g 255
|
||||
#define Spy_Item_b 255
|
||||
#define Orange_rgb 255,69,0
|
||||
|
||||
|
||||
//Purple for allerts!
|
||||
#define Stats_Allert_r 177
|
||||
#define Stats_Allert_g 19
|
||||
#define Stats_Allert_b 26
|
||||
|
||||
#define Stats_Spacer_40 0.040f
|
||||
#define Stats_Spacer_50 0.050f
|
||||
#define Stats_Spacer_60 0.060f
|
||||
#define Stats_Spacer_70 0.070f
|
||||
#define Stats_Spacer_80 0.080f
|
||||
#define Stats_Spacer_90 0.090f
|
||||
|
||||
#define MDVersion_y Item_Start_y - 0.052f
|
||||
#define MDVersion_x Menu_Start_Pos_x - 0.0800f
|
||||
#define Frames_Allert_r 143
|
||||
#define Frames_Allert_g 9
|
||||
#define Frames_Allert_b 220
|
||||
|
||||
//#define MDVersion_Txt_Size 0.1520f,0.2800f
|
||||
#define MD_Frames_Txt_Size 0.19f,0.35f
|
||||
#define MDVersion_r 0
|
||||
#define MDVersion_g 76
|
||||
#define MDVersion_b 153
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
|
||||
|
||||
#define Mic_Talk_r 255
|
||||
#define Mic_Talk_g 140
|
||||
#define Mic_Talk_b 0
|
||||
|
||||
#define Has_Mic_r 255
|
||||
#define Has_Mic_g 255
|
||||
#define Has_Mic_b 255
|
||||
|
||||
#define MenuTypeSprite_y 0.0120f
|
||||
|
||||
Texture arrowUpDown;
|
||||
Texture arrowLeftRight;
|
||||
//Texture Map_Background_Texture;
|
||||
//blips radar_police_heli 64x64
|
||||
|
||||
/**Item Types Blips**/
|
||||
Texture Submenu_Blip;
|
||||
Texture Charvalue_Blip;
|
||||
Texture Invite_Icon;
|
||||
|
||||
|
||||
void Menu_Setup_Draw(void){
|
||||
menu_max = MAX_MENU_ITEMS;
|
||||
menu_start_scrolling = MENU_START_SCROLLING;
|
||||
}
|
||||
|
||||
void Menu_Open_Draw()
|
||||
{
|
||||
REQUEST_STREAMED_TXD("network", 1); //stop commenting this it prevents the menu from opening.. - Nathan
|
||||
REQUEST_STREAMED_TXD("blips", 1);
|
||||
CREATE_MOBILE_PHONE(2);
|
||||
SET_CINEMATIC_BUTTON_ENABLED(false);
|
||||
while (!HAS_STREAMED_TXD_LOADED("network")) WAIT(0);
|
||||
arrowUpDown = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_ARROW_UP");
|
||||
arrowLeftRight = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_ARROW_RIGHT");
|
||||
Submenu_Blip = GET_TEXTURE_FROM_STREAMED_TXD("blips", "radar_police_heli");
|
||||
Charvalue_Blip = GET_TEXTURE_FROM_STREAMED_TXD("blips", "radar_hospital");
|
||||
PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_READY");
|
||||
}
|
||||
|
||||
void Menu_Close_Draw(){
|
||||
|
||||
PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_UNREADY");
|
||||
DESTROY_MOBILE_PHONE();
|
||||
SET_CINEMATIC_BUTTON_ENABLED(true);
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SLIDE)){//Slider Position on start/closing
|
||||
Menu_Start_Pos_x = 0.7500f;
|
||||
Menu_Start_Pos_y = 0.155f;
|
||||
}
|
||||
Fading_100 = 100;
|
||||
Fading_150 = 150;
|
||||
dropdown_y = 1;
|
||||
RELEASE_TEXTURE(arrowUpDown);
|
||||
RELEASE_TEXTURE(arrowLeftRight);
|
||||
RELEASE_TEXTURE(Submenu_Blip);
|
||||
RELEASE_TEXTURE(Charvalue_Blip);
|
||||
//MARK_STREAMED_TXD_AS_NO_LONGER_NEEDED("network"); ///hmmmmmm other scripts need this buddy, maybe bad idea
|
||||
MARK_STREAMED_TXD_AS_NO_LONGER_NEEDED("blips");
|
||||
}
|
||||
|
||||
void MicOnDisplay(){
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
if(FlashingGhost >= 255) SetBit(MD_Misc_OptionsBitSet, MD_MISC_FLASHING_GHOST_INCREMENT, false);
|
||||
else if(FlashingGhost < 150) SetBit(MD_Misc_OptionsBitSet, MD_MISC_FLASHING_GHOST_INCREMENT, true);
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_FLASHING_GHOST_INCREMENT)){
|
||||
if(FlashingGhost > 240){
|
||||
FlashingGhost += (255 - FlashingGhost);
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_FLASHING_GHOST_INCREMENT, false);
|
||||
}
|
||||
else FlashingGhost += 2;
|
||||
}
|
||||
else FlashingGhost -= 2;
|
||||
}
|
||||
|
||||
void Menu_Effects(){
|
||||
float Menu_Move_x = Menu_Start_Pos_x;
|
||||
float Menu_Move_y = Menu_Start_Pos_y;
|
||||
if(Glowing >= 190) SetBit(MD_Misc_OptionsBitSet, MD_MISC_GLOWING_INCREMENT, false);
|
||||
if(Glowing <= 0) SetBit(MD_Misc_OptionsBitSet, MD_MISC_GLOWING_INCREMENT, true);
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_GLOWING_INCREMENT)){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 2;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 2;
|
||||
}
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_MOVE)){
|
||||
if (IS_BUTTON_PRESSED(0,DPAD_RIGHT)) Menu_Start_Pos_x += 0.01;
|
||||
else if (IS_BUTTON_PRESSED(0,DPAD_LEFT)) Menu_Start_Pos_x -= 0.01;
|
||||
else if (IS_BUTTON_PRESSED(0,DPAD_UP)) Menu_Start_Pos_y -= 0.01;
|
||||
else if (IS_BUTTON_PRESSED(0,DPAD_DOWN)) Menu_Start_Pos_y += 0.01;
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_FLOAT(Menu_Start_Pos_x + Stats_Item_Margin_x + 0.1, Menu_Start_Pos_y -(Stats_Item_Height*3), "NUMBER", Menu_Move_x, 8);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_FLOAT(Menu_Start_Pos_x + Stats_Item_Margin_x + 0.1, Menu_Start_Pos_y -(Stats_Item_Height*2), "NUMBER", Menu_Move_y, 8);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Menu_Start_Pos_x + Stats_Item_Margin_x, Menu_Start_Pos_y -(Stats_Item_Height*3), "Menu Pos x:");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Menu_Start_Pos_x + Stats_Item_Margin_x, Menu_Start_Pos_y -(Stats_Item_Height*2), "Menu Pos y:");
|
||||
}
|
||||
|
||||
|
||||
if(Move_Player_Info){
|
||||
if (IS_BUTTON_PRESSED(0,DPAD_RIGHT)) InfoDisplay_x += 0.01;
|
||||
else if (IS_BUTTON_PRESSED(0,DPAD_LEFT)) InfoDisplay_x -= 0.01;
|
||||
else if (IS_BUTTON_PRESSED(0,DPAD_UP)) InfoDisplay_y -= 0.01;
|
||||
else if (IS_BUTTON_PRESSED(0,DPAD_DOWN)) InfoDisplay_y += 0.01;
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_FLOAT(InfoDisplay_x + Stats_Item_Margin_x + 0.1, InfoDisplay_y -(Stats_Item_Height*3), "NUMBER", Menu_Move_x, 8);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_FLOAT(InfoDisplay_x + Stats_Item_Margin_x + 0.1, InfoDisplay_y -(Stats_Item_Height*2), "NUMBER", Menu_Move_y, 8);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", InfoDisplay_x + Stats_Item_Margin_x, InfoDisplay_y -(Stats_Item_Height*3), "Menu Pos x:");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", InfoDisplay_x + Stats_Item_Margin_x, InfoDisplay_y -(Stats_Item_Height*2), "Menu Pos y:");
|
||||
}
|
||||
|
||||
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SLIDE)){
|
||||
if(Menu_Start_Pos_x > 0.6951f){
|
||||
Menu_Start_Pos_x -= 0.008f;
|
||||
Menu_Start_Pos_y = 0.155f;
|
||||
}
|
||||
}
|
||||
if(Fading_100 < 255)Fading_100 += 5;
|
||||
if(Fading_150 < 255)Fading_150 += 5;
|
||||
}
|
||||
|
||||
void Draw_Spy_Helper_Window(void){
|
||||
if(Draw_Spy_Helper){
|
||||
Set_Up_Draw(MDVersion_Txt_Size, Gold, Header_a,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.754f, "STRING", "SPECTATE MODE OPTIONS");
|
||||
Set_Up_Draw(Info_Item_Text, Spy_Item_r, Spy_Item_g, Spy_Item_b, Header_a,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f,0.782f, "STRING", "DISABLE - Hold: ~PAD_LB~ - Press: ~PAD_RB~");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.81f , "STRING", "TELEPORT TO PLAYER - Hold: ~PAD_LB~ - Press: ~PAD_RT~");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.838f, "STRING", "TELEPORT SAFE ZONE - Hold: ~PAD_LB~ - Press: ~PAD_LT~");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void Menu_Draw_Footer_2(){
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
float Timer_Slide = 0;
|
||||
|
||||
void Ghost_Player_List(void){
|
||||
/*
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
*/
|
||||
if(PlayerList){
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(playerlist_tick > GetTickCount())
|
||||
{
|
||||
playerlist_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
playerlist_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(playerlist_tick > GetTickCount() && GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
uint PlayerList_ID;
|
||||
uint cr,cg,cb;
|
||||
float Line_Y = 0.1000f;
|
||||
float Line_X = 0.0630f;
|
||||
float window_height = 0.0250f;
|
||||
float scale = 0.60;
|
||||
float width = 0.1800;
|
||||
Player_Counter();
|
||||
if(player_count > 0){
|
||||
//DRAW_CURVED_WINDOW(Line_X - 0.020f ,Line_Y - 0.020f, width,window_height*(GET_NUMBER_OF_PLAYERS()+1.5), 200);
|
||||
DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "MAP_LOBBY"),Line_X + (width/2) -0.02, Line_Y + (window_height*(player_count/2)) - 0.02, width, window_height*(player_count + 3 ), 0, 70,130,180, 255); //r g b a
|
||||
Set_Up_Draw(0.303f*scale,0.450f*scale, Gold, FlashingGhost,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Line_X + 0.01, Line_Y - 0.048 , "STRING", MENU_HEADER);
|
||||
Set_Up_Draw(0.4200f*scale,0.9500f/2, Steelblue, 255, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Line_X - 0.01, Line_Y -0.053 , "STRING", "MD");
|
||||
Set_Up_Draw(0.303f*0.80,0.450f*0.80, 255, 255, 255, 255,0,0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Line_X + width - 0.05, Line_Y - 0.05, "STRING", MD_SubVersion);
|
||||
Set_Up_Draw(0.2000f*0.60,0.3200f*0.60, Steelblue, 255, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Line_X + (width/2) - 0.02, Line_Y - 0.03, "STRING", MENU_SUB_HEADER);
|
||||
DRAW_RECT(Line_X + (width/2) - 0.02, Line_Y -0.01 , width, 0.00200000f, Line_r, Line_g, Line_b, 255);
|
||||
for(PlayerList_ID = 0;PlayerList_ID < MAX_PLAYERS ;PlayerList_ID++){
|
||||
if (Invalid_Player(PlayerList_ID)) continue;
|
||||
#ifndef Developer
|
||||
if(Is_Developer(PlayerList_ID)) continue;
|
||||
#endif
|
||||
char* Playerlist_name = GET_PLAYER_NAME(PlayerList_ID);
|
||||
GET_PLAYER_RGB_COLOUR(PlayerList_ID,&cr,&cg,&cb);
|
||||
Set_Up_Draw(0.1950f,0.3600f,cr,cg,cb,255,0,0,0);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
SET_TEXT_USE_UNDERSCORE(!is_xbox_version);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Line_X + 0.0260f, Line_Y, "STRING", Playerlist_name);
|
||||
|
||||
if(IS_NETWORK_PLAYER_ACTIVE(PlayerList_ID)){
|
||||
DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_PLAYER"),Line_X + 0.0100f , Line_Y + 0.0120f, 0.0200f, 0.0250f, 0, 255, 255, 255, 255);
|
||||
}
|
||||
else {
|
||||
if(PLAYER_HAS_CHAR(PlayerList_ID))DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_CRIMINAL"),Line_X + 0.0100f , Line_Y + 0.0120f, 0.0200f, 0.0250f, 0, 255, 255, 255, 255);
|
||||
else DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_DEATHS"),Line_X + 0.0100f , Line_Y + 0.0120f, 0.0200f, 0.0250f, 0, 255, 255, 255, 255);
|
||||
}
|
||||
if(NETWORK_PLAYER_HAS_HEADSET(PlayerList_ID)){//Headset icon
|
||||
if(!NETWORK_IS_PLAYER_TALKING(PlayerList_ID))DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Line_X - 0.0100f, Line_Y + 0.0120f, 0.0160f, 0.0160f, Rotating360, Has_Mic_r, Has_Mic_g, Has_Mic_b, 255);
|
||||
else DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Line_X - 0.0100f, Line_Y + 0.0120f, 0.0160f, 0.0160f, Rotating360, Mic_Talk_r, Mic_Talk_g, Mic_Talk_b, 255);
|
||||
}
|
||||
Line_Y += 0.025f;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void Menu_Draw_Header(){
|
||||
Set_Up_Draw(Extend_Txt_Size, Gold, FlashingGhost,0,0,0);
|
||||
SET_TEXT_DROPSHADOW( 0, 0, 0, 0, 255 );
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Header_Pos_x + 0.035, Header_Pos_y + 0.005, "STRING", MENU_HEADER);
|
||||
|
||||
Set_Up_Draw(Version_Txt_Size, Steelblue, 255, 0, 0, 0);
|
||||
SET_TEXT_DROPSHADOW( 0, 0, 0, 0, 255 );
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Header_Pos_x, Header_Pos_y, "STRING", "MD");
|
||||
|
||||
//Set_Up_Draw(Extend_Txt_Size, Header_r, Glowing, Glowing, FlashingGhost,FlashingGhost,FlashingGhost, FlashingGhost);
|
||||
Set_Up_Draw(Extend_Txt_Size, Steelblue, 255, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Version_Pos_x, Sub_Header_Pos_y - 0.02, "STRING", MD_SubVersion);
|
||||
|
||||
Set_Up_Draw(Sub_Header_Txt_Size, Steelblue, 255, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
SET_TEXT_DROPSHADOW( 0, 0, 0, 0, 255 );
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Sub_Header_Pos_x + Centering_Pos, Sub_Header_Pos_y, "STRING", MENU_SUB_HEADER);
|
||||
DRAW_RECT(Line_Pos_x + Centering_Pos,Line_Pos_y, 0.2500f, 0.00200000f, Line_r, Line_g, Line_b, 255);
|
||||
|
||||
if(dropdown_y > 0.9600f)dropdown_y -= 0.01;
|
||||
else dropdown_y = 0.9500f;
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("InqGhost") < 1)
|
||||
{
|
||||
Set_Up_Draw(MDVersion_Txt_Size,Gold,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.35, dropdown_y, "STRING", "~BLIP_76~ DONT ABUSE YOUR MODS - KEEP MODDING FUN FOR EVERYONE! ~BLIP_76~");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void Menu_Draw_Window(void){
|
||||
|
||||
float y2;
|
||||
HIDE_HELP_TEXT_THIS_FRAME();
|
||||
if (itemCount > menu_consts_max) y2 = 0.09f + (menu_consts_max * 0.0275f);
|
||||
else y2 = 0.09f + (itemCount * 0.0275f);
|
||||
//DRAW_CURVED_WINDOW(Window_Pos_x, Window_Pos_y, 0.2500f, y2, 180);
|
||||
//Map_Background_Texture = GET_TEXTURE_FROM_STREAMED_TXD("network", "MAP_LOBBY");
|
||||
DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "MAP_LOBBY"),Window_Pos_x + Centering_Pos, Window_Pos_y + (y2/2), 0.2500f, y2, 0, 70,130,180, 180);
|
||||
}
|
||||
|
||||
void Menu_Draw_Helper(void){
|
||||
INIT_FRONTEND_HELPER_TEXT();
|
||||
DRAW_FRONTEND_HELPER_TEXT((menu_level == 1) ? "LEAVE" : "BACK", "INPUT_F_CANCEL", 0);
|
||||
//if (menu_level == 1)DRAW_FRONTEND_HELPER_TEXT("LEAVE", "INPUT_F_CANCEL", 0);
|
||||
//else DRAW_FRONTEND_HELPER_TEXT("BACK", "INPUT_F_CANCEL", 0);
|
||||
//if (menu_item[item_highlighted].action) DRAW_FRONTEND_HELPER_TEXT("CONFIRM", "INPUT_F_ACCEPT", 0);
|
||||
if(GetBit(MenuActionBitSet, (item_highlighted - 1))) DRAW_FRONTEND_HELPER_TEXT("CONFIRM", "INPUT_F_ACCEPT", 0);
|
||||
else DRAW_FRONTEND_HELPER_TEXT("KYB_ENTER", "INPUT_F_ACCEPT", 0);
|
||||
}
|
||||
|
||||
void Menu_Draw_Content(void){
|
||||
int PlayerName_R,PlayerName_G, PlayerName_B, player_a = Item_a;
|
||||
int Item_Number;
|
||||
float Item_Start_y = Menu_Start_Pos_y + Item_Pos_y;
|
||||
for (Item_Number = 1; Item_Number <= itemCount; Item_Number++){
|
||||
Item_Start_y = (Item_Start_y + Item_height);
|
||||
if (Item_Number <= menu_max && Item_Start_y > (menu_consts_start_y + 0.0100f)){
|
||||
if (item_highlighted == Item_Number && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
/**Scrollbar**/
|
||||
DRAW_RECT(Menu_Start_Pos_x + Centering_Pos, (Item_Start_y + 0.0110f), 0.2500f, 0.0267f, Glowing, Glowing,200, 150); //Scrollbar
|
||||
/**Playerlist CrossBrowse Display BASICS**/
|
||||
if (menu_item[Item_Number].type > 20 && menu_item[Item_Number].type < 30){
|
||||
if(!In_Network) ChangeNetPlayer = iPlayer; // When not online we select self --> Works perfect
|
||||
|
||||
/**Freeze preventor - Make player select player Kill actions if not allowed (for future use with holy ghost) **/
|
||||
if(Player_Display_Selection(players[ChangeNetPlayer].id)){
|
||||
DRAW_RECT(Menu_Start_Pos_x + Centering_Pos, (Item_Start_y + 0.0110f), 0.2500f, 0.0267f, 255, 0,0, 255);
|
||||
int scanner;
|
||||
for(scanner = 0; scanner < 16; scanner++){ //Setting for urself to prevent freezing.
|
||||
if(players[scanner].id != iPlayer) continue;
|
||||
ChangeNetPlayer = scanner;
|
||||
break;
|
||||
}
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
continue;
|
||||
}
|
||||
/**Draw Crossbrowse Player Name**/
|
||||
GET_PLAYER_RGB_COLOUR(players[ChangeNetPlayer].id,&PlayerName_R,&PlayerName_G,&PlayerName_B);
|
||||
CrossBrowse_PlayerName = GET_PLAYER_NAME(players[ChangeNetPlayer].id);
|
||||
Set_Up_Draw(Names_Txt_Size, PlayerName_R, PlayerName_G, PlayerName_B, player_a, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0800f, Item_Start_y + 0.0040f, "STRING", CrossBrowse_PlayerName);
|
||||
/**Draw Crossbrowse Scollerwindow**/
|
||||
DRAW_CURVED_WINDOW(Menu_Start_Pos_x - 0.1600f,Item_Start_y, 0.1575f, 0.0275f, 180);
|
||||
DRAW_SPRITE(arrowLeftRight, Menu_Start_Pos_x - 0.1500f, Item_Start_y + 0.015f, 0.0160f, 0.0160f, 180.0000f, Header_r, Header_g, Header_b,Header_a);
|
||||
DRAW_SPRITE(arrowLeftRight, Menu_Start_Pos_x - 0.0120f, Item_Start_y + 0.015f, 0.0160f, 0.0160f, 0.0000f, Header_r, Header_g, Header_b, Header_a);
|
||||
/**Draw Crossbrowse NAME scrol helper**/
|
||||
Set_Up_Draw(Info_Item_Text, Orange_rgb, Header_a, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.1200f, Item_Start_y + 0.0050f + Item_height, "STRING", "Select Player Hold ~PAD_X~ Press ~PAD_DPAD_LEFTRIGHT~ / ~PAD_X~ + ~PAD_BACK~ for self");
|
||||
// Set_Up_Draw(Info_Item_Text, Orange_rgb, Header_a, 0, 0, 0);
|
||||
// SET_TEXT_CENTRE(1);
|
||||
// DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0800f, Item_Start_y + 0.0050f + Item_height*2, "STRING", "Select Self: Hold: ~PAD_X~ Press: ~PAD_LB~");
|
||||
/**Draw Crossbrowse Mic Display**/
|
||||
Set_Up_Draw(Sub_Header_Txt_Size, Header_r, Glowing, Glowing, Header_a, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
if(NETWORK_PLAYER_HAS_HEADSET(players[ChangeNetPlayer].id)){
|
||||
if(!NETWORK_IS_PLAYER_TALKING(players[ChangeNetPlayer].id))
|
||||
DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Menu_Start_Pos_x - 0.0120f, Item_Start_y + 0.015f - 0.028f, 0.0160f, 0.0160f, Rotating360, Has_Mic_r, Has_Mic_g, Has_Mic_b, Header_a);
|
||||
else DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Menu_Start_Pos_x - 0.0120f, Item_Start_y + 0.015f - 0.028f, 0.0160f, 0.0160f, Rotating360, Mic_Talk_r, Mic_Talk_g, Mic_Talk_b, Header_a);
|
||||
}
|
||||
/**Draw Crossbrowse If Muted**/
|
||||
/*
|
||||
else if(NETWORK_IS_PLAYER_MUTED_BY_ME(players[ChangeNetPlayer].id)){
|
||||
Set_Up_Draw(Info_Item_Text, Stats_Yes_r, Stats_Yes_g, Stats_Yes_b, 255,0,0,0);
|
||||
Draw_Text("STRING", Menu_Start_Pos_x - 0.15, Item_Start_y - 0.025, "Muted");
|
||||
}
|
||||
*/
|
||||
/**Draw Crossbrowse Autospectate**/
|
||||
else if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_AUTO_SPECTATE)){
|
||||
Set_Up_Draw(Info_Item_Text, Stats_Yes_r, Stats_Yes_g, Stats_Yes_b, 255,0,0,0);
|
||||
Draw_Text("STRING", Menu_Start_Pos_x - 0.15, Item_Start_y - 0.025, "Auto-Spectate ~COL_NET_3~ON");
|
||||
}
|
||||
if(!is_xbox_version)DRAW_SPRITE(GET_PLAYER_RANK_TEXTURE(players[ChangeNetPlayer].id),Menu_Start_Pos_x - 0.0400f, Item_Start_y + 0.015f - 0.028f, 0.0200f, 0.0250f, 0, 255, 255, 255, Header_a);//Display Rank
|
||||
/**Detection for EXTEND users */ // This worke perfect
|
||||
if(MD_Version_Detector){
|
||||
char* usertype = "null";
|
||||
#ifdef SuperAdmin //stealth is always good
|
||||
if(Is_Developer(players[ChangeNetPlayer].id))usertype = "~BLIP_76~ MD Developer";
|
||||
else if(Is_SuperAdmin(players[ChangeNetPlayer].id))usertype = "~BLIP_76~ MD SuperAdmin";
|
||||
#else
|
||||
if(Is_SuperAdmin(players[ChangeNetPlayer].id))usertype = "~BLIP_76~ MD SuperAdmin";
|
||||
#endif
|
||||
bool premium = Is_Premium(players[ChangeNetPlayer].id);
|
||||
bool whitelist = Is_Whitelisted(players[ChangeNetPlayer].id);
|
||||
if(COMPARE_STRING(usertype,"null")) {
|
||||
if(!Is_SuperAdmin(players[ChangeNetPlayer].id))
|
||||
{
|
||||
if(Is_Admin(players[ChangeNetPlayer].id))usertype = "~BLIP_76~ MD Admin";
|
||||
else if(premium && whitelist)usertype = "~BLIP_76~ MD Premium Whitelisted";
|
||||
else if(premium)usertype = "~BLIP_76~ MD Premium";
|
||||
else if(whitelist)usertype = "~BLIP_76~ MD Whitelisted";
|
||||
}
|
||||
}
|
||||
if(COMPARE_STRING(usertype,"null")){
|
||||
if(userfound > 0){
|
||||
if(userfound == 130)usertype = "~BLIP_76~ MD v13 User";
|
||||
else if(userfound == 90)usertype = "~BLIP_76~ MD v11 User";
|
||||
else if(userfound == 81)usertype = "~BLIP_76~ MD v8.1 User";
|
||||
else if(userfound == 80)usertype = "~BLIP_76~ MD v8 User";
|
||||
else if(userfound == 70)usertype = "~BLIP_76~ MD v7 User";
|
||||
}
|
||||
}
|
||||
if(!COMPARE_STRING(usertype,"null")){
|
||||
Set_Up_Draw(Sub_Header_Txt_Size, Header_r, Glowing, Glowing, Header_a, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(MDVersion_x, MDVersion_y, "STRING",usertype);
|
||||
}
|
||||
}
|
||||
//}
|
||||
}
|
||||
/**Draw helpers on Highlighted Item types**/
|
||||
|
||||
/**Item for AddNum Display**/
|
||||
if(menu_item[Item_Number].type == 8 || menu_item[Item_Number].type == 22){
|
||||
Set_Up_Draw(Info_Item_Text, Header_r, Glowing, Glowing, 255, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
if(menu_item[Item_Number].type == 8)DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0040f, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0050f + Item_height*2, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
}
|
||||
/**Item for AddString Display**/
|
||||
if(menu_item[Item_Number].type == 9 || menu_item[Item_Number].type == 23){
|
||||
Set_Up_Draw(Info_Item_Text, Header_r, Glowing, Glowing, 255, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
if(menu_item[Item_Number].type == 9)DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0050f, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0050f + Item_height*2, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
}
|
||||
/**Item for Add_Line_String Display**/
|
||||
if(menu_item[Item_Number].type == 15 || menu_item[Item_Number].type == 24){
|
||||
Set_Up_Draw(Info_Item_Text, Header_r, Glowing, Glowing, Header_a, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
if(menu_item[Item_Number].type == 15)DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0040f, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0050f + Item_height*2, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
}
|
||||
|
||||
if(menu_item[Item_Number].type == 14){
|
||||
Set_Up_Draw(Info_Item_Text, Header_r, Glowing, Glowing, Header_a, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
if(menu_item[Item_Number].type == 14)DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0040f, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
//else DISPLAY_TEXT_WITH_LITERAL_STRING( Menu_Start_Pos_x - 0.0700f, Item_Start_y + 0.0050f + Item_height*2, "STRING", "Select Value: ~PAD_DPAD_LEFTRIGHT~");
|
||||
}
|
||||
}
|
||||
|
||||
/**Bool Items**/
|
||||
|
||||
if (menu_item[Item_Number].type == 3 || menu_item[Item_Number].type == 25){
|
||||
if(last_selected[1] == 2 && menu_level == 4 && last_selected[3] == 5){//(Md assist drive walk water etc)
|
||||
if(Item_Number == 8 && GetBit(infiniteArmourBitSet, players[ChangeNetPlayer].id)){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, FlashingGhost, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else if(Item_Number == 9 && DOES_OBJECT_EXIST(drive_water[players[ChangeNetPlayer].id])){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, FlashingGhost, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else if(Item_Number == 10 && GetBit(autoFlipVehBitSet, players[ChangeNetPlayer].id)){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, FlashingGhost, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}//rocketWeaponsBitSet
|
||||
else if(Item_Number == 11 && GetBit(autoFixVehBitSet, players[ChangeNetPlayer].id)){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, FlashingGhost, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else if(Item_Number == 12 && GetBit(freezeGunProtectBitSet, players[ChangeNetPlayer].id)){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, FlashingGhost, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else if(Item_Number == 13 && GetBit(neverWantedBitSet, players[ChangeNetPlayer].id)){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, FlashingGhost, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else if(Item_Number == 14 && GetBit(rocketWeaponsBitSet, players[ChangeNetPlayer].id)){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, FlashingGhost, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else if(menu_item[Item_Number].extra_val && !(menu_item[Item_Number].type > 20 && menu_item[Item_Number].type < 30)){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else{//OFF
|
||||
Set_Up_Draw(Item_Txt_Size, Item_r, Item_g, Item_b, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
}
|
||||
else {//else if not in net player bools
|
||||
if(menu_item[Item_Number].extra_val){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else{
|
||||
Set_Up_Draw(Item_Txt_Size, Item_r, Item_g, Item_b, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
}
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100, Item_Start_y + MenuTypeSprite_y, 0.0100, 0.0160, 0.000, Bool_r, Bool_g, Bool_b, Fading_100);
|
||||
}
|
||||
/**Sco Item Present Display**/
|
||||
else if (menu_item[Item_Number].type == 4){
|
||||
if (menu_item[Item_Number].extra_val){//ON
|
||||
Set_Up_Draw(Item_Txt_Size, Item_Highlight_r, Item_Highlight_g, Item_Highlight_b, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
else{//OFF
|
||||
Set_Up_Draw(Item_Txt_Size, Item_r, Item_g, Item_b, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y,"STRING", menu_item[Item_Number].name);
|
||||
}
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100, Item_Start_y + MenuTypeSprite_y, 0.0100, 0.0160, 0.000, Stats_No_r, Stats_No_g, Stats_No_b, Fading_100);
|
||||
}
|
||||
/**Item Vehicle Display**/
|
||||
else if (menu_item[Item_Number].type == 5 || menu_item[Item_Number].type == 27){
|
||||
Set_Up_Draw(Item_Txt_Size, Item_r, Item_g, Item_b, Item_a, 0, 0, 0);
|
||||
SET_TEXT_USE_UNDERSCORE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(menu_item[Item_Number].num_val)));
|
||||
}
|
||||
/**Item Not Present Display - Used for .sco files that are not present**/
|
||||
else if (menu_item[Item_Number].type == 6){
|
||||
Set_Up_Draw(Item_Txt_Size, Header_r, Glowing, Glowing, Fading_100, 0,0, Glowing);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100, Item_Start_y + MenuTypeSprite_y, 0.0100, 0.0160, 0.000, Stats_Yes_r, Stats_Yes_g, Stats_Yes_b, Fading_100);
|
||||
}
|
||||
/**Playernames Item Vertical Display**/
|
||||
else if (menu_item[Item_Number].type == 7){
|
||||
if (Player_Display_Selection(players[Item_Number - 4].id))continue;
|
||||
GET_PLAYER_RGB_COLOUR(players[Item_Number - 4].id,&PlayerName_R,&PlayerName_G,&PlayerName_B);
|
||||
Set_Up_Draw(Names_Txt_Size, PlayerName_R, PlayerName_G, PlayerName_B, player_a, 0, 0, 0);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x + 0.0150, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
//!Headset
|
||||
if(NETWORK_PLAYER_HAS_HEADSET(players[Item_Number - 4].id)){
|
||||
if(!NETWORK_IS_PLAYER_TALKING(players[Item_Number - 4].id))DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Item_Pos_x - 0.0100 , Item_Start_y + 0.0120, 0.0160, 0.0160, Rotating360, Has_Mic_r, Has_Mic_g, Has_Mic_b, player_a);
|
||||
else DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Item_Pos_x - 0.0100 , Item_Start_y + 0.0120, 0.0160, 0.0160, Rotating360, Mic_Talk_r, Mic_Talk_g, Mic_Talk_b, player_a);
|
||||
}
|
||||
//!Ghost
|
||||
if((Is_Normal_Ghost(players[Item_Number - 4].id))){
|
||||
Model pPlayer_Model;
|
||||
Set_Up_Draw(Names_Txt_Size, Ghost_r, Ghost_g, Ghost_b, FlashingGhost, 0, 0, 0);
|
||||
SET_TEXT_RIGHT_JUSTIFY(1);
|
||||
SET_TEXT_WRAP(0.0,Item_StringValue_Pos_x);
|
||||
/*
|
||||
//!When pPlayer
|
||||
if ((players[Item_Number - 2].id) == iPlayer){
|
||||
GET_CHAR_MODEL(pPlayer, &pPlayer_Model);
|
||||
if(pPlayer_Model == MODEL_PLAYER){
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.0, Item_Start_y, "STRING", "Holy Ghost");
|
||||
}
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(0.0, Item_Start_y, "STRING", "Ghost");
|
||||
}
|
||||
else
|
||||
*/
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.0, Item_Start_y, "STRING", "Ghost");
|
||||
}
|
||||
//!Real Ghost
|
||||
if((Is_Holy_Ghost(players[Item_Number - 4].id))){
|
||||
Set_Up_Draw(Names_Txt_Size, Holy_r, Holy_g, Holy_b, FlashingGhost, 20, 20, 0);
|
||||
SET_TEXT_RIGHT_JUSTIFY(1);
|
||||
SET_TEXT_WRAP(0.0,Item_StringValue_Pos_x);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.0, Item_Start_y, "STRING", "Holy Ghost");
|
||||
}
|
||||
//!Rank
|
||||
if(!is_xbox_version){
|
||||
DRAW_SPRITE(GET_PLAYER_RANK_TEXTURE(players[Item_Number - 4].id),Item_Pos_x + 0.0050f , Item_Start_y + 0.0120f, Ranksize, 0, 255, 255, 255, player_a);
|
||||
}
|
||||
}
|
||||
/**Item for AddNum Display**/
|
||||
else if(menu_item[Item_Number].type == 8 || menu_item[Item_Number].type == 22){
|
||||
float left_pos_x;
|
||||
if(menu_item[Item_Number].num_val < 10)left_pos_x = Item_Pos_x + 0.2012f;
|
||||
if(menu_item[Item_Number].num_val >= 10) left_pos_x = Item_Pos_x + 0.2080f;
|
||||
if(menu_item[Item_Number].num_val >= 100)left_pos_x = Item_Pos_x + 0.2155f;
|
||||
if(menu_item[Item_Number].num_val >= 1000)left_pos_x = Item_Pos_x + 0.2250f;
|
||||
DRAW_SPRITE(arrowLeftRight, left_pos_x, Item_Start_y + MenuTypeSprite_y, 0.0160f, 0.0160f, 0.0000f, Header_r, Header_g, Header_b, Header_a);
|
||||
Set_Up_Draw(Item_Txt_Size, 255, 255, 255, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Item_Pos_x + 0.1850f, Item_Start_y, "NUMBR", menu_item[Item_Number].num_val);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x + 0.1750f, Item_Start_y + MenuTypeSprite_y , 0.0160f, 0.0160f, 180.0000f, Header_r, Header_g, Header_b, Header_a);
|
||||
Set_Up_Draw(Item_Txt_Size, Scroll_Item_r, Scroll_Item_g, Scroll_Item_b, Fading_100, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, AddString_r, AddString_g, AddString_b, Fading_100);
|
||||
}
|
||||
/**Item for AddString Display**/
|
||||
else if(menu_item[Item_Number].type == 9 || menu_item[Item_Number].type == 23){
|
||||
Set_Up_Draw(Item_Txt_Size, Scroll_Item_r, Scroll_Item_g, Scroll_Item_b, Fading_100, 0, 0, 0);
|
||||
Draw_Text("STRING", Item_Pos_x + 0.0150f, Item_Start_y, menu_item[Item_Number].name);
|
||||
Set_Up_Draw(Item_Txt_Size, Scroll_Item_r, Scroll_Item_g, Scroll_Item_b, Fading_100, 0, 0, 0);
|
||||
SET_TEXT_RIGHT_JUSTIFY(1);
|
||||
SET_TEXT_WRAP(0.0,Item_StringValue_Pos_x);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.0f, Item_Start_y, "STRING",menu_item[Item_Number].charval);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, AddString_r, AddString_g, AddString_b, Fading_100);
|
||||
//blips radar_hospital 64x64 Submenu_Blip
|
||||
/**Submenu Sprite**/
|
||||
if (item_highlighted == Item_Number)DRAW_SPRITE(Charvalue_Blip, Item_Pos_x+ 0.0050f, Item_Start_y + MenuTypeSprite_y, 0.0160f, 0.0160f, Rotating360, MenuBlip_r, MenuBlip_g, MenuBlip_b, Fading_100);
|
||||
else DRAW_SPRITE(Charvalue_Blip, Item_Pos_x + 0.0050f, Item_Start_y + MenuTypeSprite_y, 0.0160f, 0.0160f, 0.000f, MenuBlip_r, MenuBlip_g, MenuBlip_b, Fading_100);
|
||||
}
|
||||
/**Item for Add_Line_String Display**/
|
||||
else if(menu_item[Item_Number].type == 15 || menu_item[Item_Number].type == 24){
|
||||
Set_Up_Draw(Item_Txt_Size, Scroll_Item_r, Scroll_Item_g, Scroll_Item_b, Fading_100, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Window_Pos_x + Centering_Pos, Item_Start_y, "STRING",menu_item[Item_Number].charval);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x + 0.2100f , Item_Start_y + MenuTypeSprite_y, 0.0160f, 0.0160f, 0.0000f, 255, 255, 255, FlashingGhost);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x + 0.0100f , Item_Start_y + MenuTypeSprite_y , 0.0160f, 0.0160f, 180.0000f, 255, 255, 255, FlashingGhost);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, AddString_r, AddString_g, AddString_b, Fading_100);
|
||||
}
|
||||
/**Item that will be Skipped Display**/
|
||||
else if (menu_item[Item_Number].type == 10){
|
||||
Set_Up_Draw(Jumpover_Txt_Size, Gold, FlashingGhost,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f , Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, 255, 255, 255, Fading_100);
|
||||
}
|
||||
/**Item for Error Display**/
|
||||
else if (menu_item[Item_Number].type == 11){
|
||||
Set_Up_Draw(Item_Txt_Size, Header_r, Glowing, Glowing, Fading_100, 0,0,Glowing);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.000f, Stats_Yes_r, Stats_Yes_g, Stats_Yes_b, Fading_100);
|
||||
}
|
||||
/**Item for Functions Display**/
|
||||
else if (menu_item[Item_Number].type == 12){
|
||||
Set_Up_Draw(Item_Txt_Size, Item_r, Item_g, Item_b, Fading_100, 0,0,Glowing);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, JumpOver_r, JumpOver_g, JumpOver_b, Fading_100);
|
||||
}
|
||||
/**Item for Functions Display**/
|
||||
else if (menu_item[Item_Number].type == 26){
|
||||
Set_Up_Draw(Item_Txt_Size, Item_r, Item_g, Item_b, Fading_100, 0,0,Glowing);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, JumpOver_r, JumpOver_g, JumpOver_b, Fading_100);
|
||||
}
|
||||
/**Item for Functions Display while Crossbrowse**/
|
||||
else if (menu_item[Item_Number].type == 21){
|
||||
Set_Up_Draw(Item_Txt_Size, Item_r, Item_g, Item_b, Fading_100, 0,0,Glowing);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, JumpOver_r, JumpOver_g, JumpOver_b, Fading_100);
|
||||
}
|
||||
/**Item for Submenu Display**/
|
||||
else if (menu_item[Item_Number].type == 13){
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.000f, SubMenu_r, SubMenu_g, SubMenu_b, Fading_100);
|
||||
//blips radar_police_heli 64x64 Submenu_Blip
|
||||
/**Submenu Sprite**/
|
||||
if (item_highlighted == Item_Number)DRAW_SPRITE(Submenu_Blip, Item_Pos_x+ 0.0050f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0100f, Rotating360, MenuBlip_r, MenuBlip_g, MenuBlip_b, Fading_100);
|
||||
else DRAW_SPRITE(Submenu_Blip, Item_Pos_x + 0.0050f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.000f, MenuBlip_r, MenuBlip_g, MenuBlip_b, Fading_100);
|
||||
/**Submenu MD Gold**/
|
||||
Set_Up_Draw(Item_Txt_Size, Gold, Fading_100, 0,0,Glowing);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x + 0.0150f, Item_Start_y, "STRING", "MD");
|
||||
/**Submenu Itemname**/
|
||||
Set_Up_Draw(Item_Txt_Size, SubMenu_r, SubMenu_g, SubMenu_b, Fading_100, 0,0,Glowing);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x + 0.0300f, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
|
||||
|
||||
|
||||
}
|
||||
/**Item for AddNumSphere Display**/
|
||||
else if(menu_item[Item_Number].type == 14){
|
||||
float left_pos_x;
|
||||
if(menu_item[Item_Number].num_val < 10)left_pos_x = Item_Pos_x + 0.2012f;
|
||||
else if(menu_item[Item_Number].num_val >= 10) left_pos_x = Item_Pos_x + 0.2080f;
|
||||
else if(menu_item[Item_Number].num_val >= 100)left_pos_x = Item_Pos_x + 0.2155f;
|
||||
else if(menu_item[Item_Number].num_val >= 1000)left_pos_x = Item_Pos_x + 0.2250f;
|
||||
DRAW_SPRITE(arrowLeftRight, left_pos_x, Item_Start_y + MenuTypeSprite_y, 0.0160f, 0.0160f, 0.0000f, Header_r, Header_g, Header_b, Header_a);
|
||||
Set_Up_Draw(Item_Txt_Size, 255, 255, 255, Item_a, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Item_Pos_x + 0.1850f, Item_Start_y, "NUMBR", menu_item[Item_Number].num_val);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x + 0.1750f, Item_Start_y + MenuTypeSprite_y , 0.0160f, 0.0160f, 180.0000f, Header_r, Header_g, Header_b, Header_a);
|
||||
Set_Up_Draw(Item_Txt_Size, Scroll_Item_r, Scroll_Item_g, Scroll_Item_b, Fading_100, 0, 0, 0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Item_Pos_x, Item_Start_y, "STRING", menu_item[Item_Number].name);
|
||||
DRAW_SPRITE(arrowLeftRight, Item_Pos_x - 0.0100f, Item_Start_y + MenuTypeSprite_y, 0.0100f, 0.0160f, 0.0000f, AddString_r, AddString_g, AddString_b, Fading_100);
|
||||
}
|
||||
if (item_highlighted == Item_Number && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR)){
|
||||
|
||||
/**Playerlist CrossBrowse Display PLAYER INFO**/ // THis will need work since it freezes plain and simple
|
||||
if((menu_item[Item_Number].type > 20 && menu_item[Item_Number].type < 30) && MD_Player_Info){
|
||||
if(Player_Display_Selection(players[ChangeNetPlayer].id))continue;
|
||||
int tmp_model;
|
||||
int Armor,Health,PlayerVehicle,VehicleHealth;
|
||||
Model VehicleModel;
|
||||
|
||||
if(!PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)) return;
|
||||
GET_CHAR_MODEL(PLAYER_CHAR(players[ChangeNetPlayer].id),&tmp_model);
|
||||
if(NetPlayer_Scan_tick_delay < GetTickCount()){
|
||||
NetPlayer_Scan_tick_delay = (GetTickCount() + 2500); // Is about 1 second
|
||||
UPDATE_CHANGE_NET_PLAYER_WEAPON_INFO(); //Update code and do it every minute
|
||||
}
|
||||
GET_CHAR_ARMOUR(PLAYER_CHAR(players[ChangeNetPlayer].id),&Armor);
|
||||
GET_CHAR_HEALTH(PLAYER_CHAR(players[ChangeNetPlayer].id),&Health);
|
||||
if(IS_CHAR_IN_ANY_CAR(PLAYER_CHAR(players[ChangeNetPlayer].id))){
|
||||
//STORE_CAR_CHAR_IS_IN_NO_SAVE(PLAYER_CHAR(players[ChangeNetPlayer].id), &PlayerVehicle);
|
||||
GET_CAR_CHAR_IS_USING(PLAYER_CHAR(players[ChangeNetPlayer].id), &PlayerVehicle);
|
||||
GET_CAR_HEALTH(PlayerVehicle,&VehicleHealth);//veh Health
|
||||
GET_CAR_MODEL(PlayerVehicle,&VehicleModel);//veh model
|
||||
}
|
||||
char* health[4]; Strcpy(health, "Health: ~s~"); itoa( Health, health);
|
||||
char* armour[4]; Strcpy(armour, "Armour: ~s~"); itoa(Armor, armour);
|
||||
char* playermodel[8]; Strcpy(playermodel, "Player model: ~s~"); Strcat(playermodel, ( (In_Network && tmp_model != MODEL_F_Y_MULTIPLAYER && tmp_model != MODEL_M_Y_MULTIPLAYER) ? "Changed(Mods)" : "Normal"));
|
||||
char* weapon[8]; Strcpy(weapon, "Weapon: ~s~"); Strcat(weapon, NetPlayer_Weapon);
|
||||
//Get all info
|
||||
//GET_PLAYER_CHAR(players[ChangeNetPlayer].id, &players[ChangeNetPlayer].ped); //temporary for other shit left
|
||||
//Draw it
|
||||
|
||||
Set_Up_Draw(Info_Item_Text, PlayerName_R, PlayerName_G, PlayerName_B, 255,0,0,0);
|
||||
Draw_Text("STRING",Menu_Start_Pos_x - 0.15, Item_Start_y + 0.0040 + (Item_height*3),health); // Item Height = 0.0280
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
//Draw_Text("STRING",Menu_Start_Pos_x - 0.08, Item_Start_y + 0.0040 + (Item_height*3),armour);
|
||||
Draw_Text("STRING",Menu_Start_Pos_x - 0.09, Item_Start_y + 0.0040 + (Item_height*3),armour);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Menu_Start_Pos_x - 0.15, Item_Start_y + 0.0040 + (Item_height*4), playermodel);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Menu_Start_Pos_x - 0.15, Item_Start_y + 0.0040 + (Item_height*5), weapon);
|
||||
|
||||
if(DOES_VEHICLE_EXIST(PlayerVehicle)){
|
||||
char* vehhealth[8]; Strcpy(vehhealth, "Vehicle Health: ~s~"); itoa(VehicleHealth, vehhealth); //23 //OK
|
||||
char* vehusing[8];
|
||||
char* vehicleaction = "Driving:";
|
||||
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING",Menu_Start_Pos_x - 0.15, Item_Start_y + 0.0040 + (Item_height*6),vehhealth);
|
||||
|
||||
if(is_driving(PLAYER_CHAR(players[ChangeNetPlayer].id))){
|
||||
if(IS_CHAR_IN_ANY_HELI(PLAYER_CHAR(players[ChangeNetPlayer].id))) vehicleaction = "Flying:";
|
||||
else if(IS_CHAR_ON_ANY_BIKE(PLAYER_CHAR(players[ChangeNetPlayer].id))) vehicleaction = "Riding:";
|
||||
Strcpy(vehusing, vehicleaction);
|
||||
}
|
||||
else{
|
||||
Strcpy(vehusing, "Passenger of:"); //+ " ~s~" = 17
|
||||
}
|
||||
Strcat(vehusing, " ~s~"); Strcat(vehusing, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(VehicleModel)));
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Menu_Start_Pos_x - 0.15, Item_Start_y + 0.0040 + (Item_height*7) , vehusing);
|
||||
|
||||
}
|
||||
else{
|
||||
Set_Up_Draw(Info_Item_Text, Header_r, Glowing, Glowing, 150, 0, 0, 0);
|
||||
Draw_Text("STRING", Menu_Start_Pos_x - 0.15, Item_Start_y + 0.0040 +(Item_height*6),"On foot");
|
||||
}
|
||||
}
|
||||
}
|
||||
Add_StringValue(Item_Number);
|
||||
}
|
||||
}
|
||||
}
|
||||
929
Trident/MD_Base_Setup/MDB_Vars.h
Normal file
929
Trident/MD_Base_Setup/MDB_Vars.h
Normal file
@@ -0,0 +1,929 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#define MAX_WEAPONPEDS 4
|
||||
|
||||
/*
|
||||
int Nathans_RapidHeli_Peds[4] = { };
|
||||
int Nathans_RapidHeli_Veh;
|
||||
int Nathans_RapidHeli_IndexToShoot = 0;
|
||||
int Nathans_RapidHeli_Tick = 0;
|
||||
*/
|
||||
//!Vars to be rigged by Nathan
|
||||
int playerlist_tick = 0;
|
||||
//int VEHICLE_OPTION_DESOLIDIFY_MODE = 0; //off
|
||||
uint Player_INFO_ID1 = 99;
|
||||
uint Player_INFO_ID2 = 99;
|
||||
uint Player_INFO_ID3 = 99;
|
||||
float InfoDisplay_x = 0.4;
|
||||
float InfoDisplay_y = 0.1;
|
||||
bool Attach_Player_Info;
|
||||
bool Move_Player_Info = false;
|
||||
//bool freeze_car_pos;
|
||||
//bool Streaming = true;
|
||||
|
||||
/**Vars that need to be rigged by Nathy**/
|
||||
int CAW_Weapon = 0; //can byte set this
|
||||
bool Loop_Anims; //can be bitset'd
|
||||
float animationspeed;
|
||||
float Animationloop = 0.0f;
|
||||
bool Coloursetting_Personal;
|
||||
bool Coloursetting_Net;
|
||||
//bool Runonce_OnPlayerselect;
|
||||
|
||||
//!Saved Colors**/
|
||||
uint SavedColors1 = 134;
|
||||
uint SavedColors2 = 134;
|
||||
uint SavedColors3 = 134;
|
||||
uint SavedColors4 = 134;
|
||||
uint SavedColors5 = 134;
|
||||
uint SavedColors6 = 134;
|
||||
uint SavedColors7 = 134;
|
||||
uint SavedColors8 = 134;
|
||||
|
||||
/**For testing**/
|
||||
bool Pedmode1;
|
||||
bool Pedmode2; //best to use int here buddy, int pedmode, 0 = off, 1, 2, 3 (less mem + var usage)
|
||||
bool Pedmode3;
|
||||
/**--**/
|
||||
bool MD_Weapon_Vehicle;
|
||||
bool Devils_Rapid_Fire_Heli;
|
||||
bool Variations_Loop;
|
||||
Weapon Vehicle_Weapon = WEAPON_M4;
|
||||
//bool weaponped_Invisible;
|
||||
//bool Target_Closest_Char;
|
||||
#ifdef Premium
|
||||
int LastNumUnacceptedInvites = 0,
|
||||
draw_invite_recieved_tick = 0,
|
||||
rapid_heli_clone = 0,
|
||||
rapid_heli_ped = 0;
|
||||
#endif
|
||||
|
||||
#ifdef Admin
|
||||
uint v13DetectedBitSet,
|
||||
v11DetectedBitSet,
|
||||
v81DetectedBitSet,
|
||||
v8DetectedBitSet,
|
||||
v7DetectedBitSet;
|
||||
#endif
|
||||
|
||||
uint SpectateAndAttachByteSet;
|
||||
enum eByteSetOne{
|
||||
SPECTATE_PLAYER_INDEX = 0,
|
||||
SPECTATE_PREVIOUS_PLAYER_INDEX = 1,
|
||||
ATTACH_PLAYER_INDEX = 2,
|
||||
ATTACH_TYPE = 3,
|
||||
//4 small int values (0 - 255) in one int
|
||||
};
|
||||
|
||||
uint WeatherTimeAutoLockByteSet; //not yet converted...
|
||||
enum eByteSetTwo{
|
||||
FREEZE_WEATHER = 0, //50 = disabled
|
||||
FREEZE_TIME_HOUR = 1, //25 = disabled
|
||||
FREEZE_TIME_MINUTE = 2, //not important to check so set 0 by default..
|
||||
VEHICLE_AUTOLOCK = 3, //has to be set 3 by default (disabled)
|
||||
};
|
||||
|
||||
|
||||
//!Menu Setup
|
||||
//bool flashingghostincrease = true;
|
||||
#ifdef Admin
|
||||
uint AdminByteSet; //4 vars inside 1 :D
|
||||
enum AdminOnlyByteSet{
|
||||
ADMIN_BYTE_SET_COMMAND_TICK_LEVEL = 0, //set to 0 by default
|
||||
ADMIN_BYTE_SET_INDEX_ACTING_UPON = 1, //MAX_PLAYERS for disabled..
|
||||
ADMIN_BYTE_SET_TICK_DELAY_LEVEL = 2, //set to 0 by default..
|
||||
ADMIN_BYTE_SET_PREVIOUS_SEAT_INDEX = 3, //uses 3 for drivers seat
|
||||
};
|
||||
int AdminCommandTick = 0,
|
||||
LastSentCommandID = -1, //nope, more than 255 Command ID's: NOT able to byte-set
|
||||
previous_admin_veh = 0; //can NOT byte set
|
||||
float admin_coord_x = 0.0f,
|
||||
admin_coord_y = 0.0f,
|
||||
previous_admin_coord_x = 0.0f,
|
||||
previous_admin_coord_y = 0.0f,
|
||||
previous_admin_coord_z = 0.0f;
|
||||
#endif
|
||||
int AdminPedResponseTick = 0; //has to be present in public
|
||||
uint admin_tick_delay = 0; //has to be present in public
|
||||
|
||||
#define FLYMOD_MODE_ON 1
|
||||
#define FLYMOD_MODE_PAUSE 2 //never set i don't think.....
|
||||
Camera scriptedCam;
|
||||
float scriptedCamPitch;
|
||||
float scriptedCamYaw;
|
||||
//int flymod; //could Byte set
|
||||
|
||||
//from spectate
|
||||
float zoom,angle,angle2;
|
||||
|
||||
//CAN NOW USE BYTE SETS! :D
|
||||
//use MAX_PLAYERS to disable (as index 16 or 32 won't exist) (can't use -1 in byte set i'm pretty sure)
|
||||
|
||||
//DO NOT TOUCH THESE DEFINES!!! STRICTLY NO TOUCHING!!!!!!! - Nathan
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value)
|
||||
{
|
||||
if(value)
|
||||
{
|
||||
SET_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex)
|
||||
{
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))
|
||||
{
|
||||
SET_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//NO TOUCHY!//////////////
|
||||
#define BUTTON_FLYMOD_RESET_PITCH STICK_RIGHT
|
||||
#define BUTTON_FLYMOD_FAST_BUTTON BUTTON_RB
|
||||
#define BUTTON_FLYMOD_SLOW_BUTTON BUTTON_LB
|
||||
|
||||
#define Version_Advertise 13.00
|
||||
int adminAdvertisePed,
|
||||
exitingCarAutoLockTick = 0;
|
||||
//pPlayer
|
||||
uint pPlayerOptionsBitSet;
|
||||
uint VehicleOptionsBitSet;
|
||||
uint MD_Misc_OptionsBitSet;
|
||||
|
||||
enum eAdminCommandIdentification{
|
||||
//if possible, try to always keep ENABLE an odd number, and DISABLE an even number
|
||||
//(easier to concat strings that way in future)
|
||||
ADMIN_BOOL_TOGGLE_LOWEST = 1,
|
||||
//BEGIN ADMIN BOOL TOGGLES (KEEP THESE RESERVED!!, NO TOUCHY BELOW 200!)
|
||||
ADMIN_COMMAND_GOD_MODE_ENABLE = 1,
|
||||
ADMIN_COMMAND_GOD_MODE_DISABLE = 2,
|
||||
ADMIN_COMMAND_VEHICLE_GOD_MODE_ENABLE = 3,
|
||||
ADMIN_COMMAND_VEHICLE_GOD_MODE_DISABLE = 4,
|
||||
ADMIN_COMMAND_RAPID_FIRE_ENABLE = 5,
|
||||
ADMIN_COMMAND_RAPID_FIRE_DISABLE = 6,
|
||||
ADMIN_COMMAND_AUTO_AIM_ENABLE = 7,
|
||||
ADMIN_COMMAND_AUTO_AIM_DISABLE = 8,
|
||||
ADMIN_COMMAND_FORCE_FIELD_ENABLE = 9,
|
||||
ADMIN_COMMAND_FORCE_FIELD_DISABLE = 10,
|
||||
ADMIN_COMMAND_PLAYER_INFERNO_ENABLE = 11,
|
||||
ADMIN_COMMAND_PLAYER_INFERNO_DISABLE = 12,
|
||||
ADMIN_COMMAND_SLOW_MO_ENABLE = 13,
|
||||
ADMIN_COMMAND_SLOW_MO_DISABLE = 14,
|
||||
ADMIN_COMMAND_JUGGERNAUT_ENABLE = 15,
|
||||
ADMIN_COMMAND_JUGGERNAUT_DISABLE = 16,
|
||||
ADMIN_COMMAND_SUPER_RUN_ENABLE = 17,
|
||||
ADMIN_COMMAND_SUPER_RUN_DISABLE = 18,
|
||||
ADMIN_COMMAND_SUPER_JUMP_ENABLE = 19,
|
||||
ADMIN_COMMAND_SUPER_JUMP_DISABLE = 20,
|
||||
ADMIN_COMMAND_SUPER_PUNCH_ENABLE = 21,
|
||||
ADMIN_COMMAND_SUPER_PUNCH_DISABLE = 22,
|
||||
ADMIN_COMMAND_WALK_WATER_ENABLE = 23,
|
||||
ADMIN_COMMAND_WALK_WATER_DISABLE = 24,
|
||||
ADMIN_COMMAND_INVISIBILITY_ENABLE = 25,
|
||||
ADMIN_COMMAND_INVISIBILITY_DISABLE = 26,
|
||||
ADMIN_COMMAND_GRAVITY_ENABLE = 27,
|
||||
ADMIN_COMMAND_GRAVITY_DISABLE = 28,
|
||||
ADMIN_COMMAND_FLYMOD_ENABLE = 29,
|
||||
ADMIN_COMMAND_FLYMOD_DISABLE = 30,
|
||||
ADMIN_COMMAND_NEVER_WANTED_ENABLE = 31,
|
||||
ADMIN_COMMAND_NEVER_WANTED_DISABLE = 32,
|
||||
ADMIN_COMMAND_VEHICLE_LOCK_ENABLE = 33,
|
||||
ADMIN_COMMAND_VEHICLE_LOCK_DISABLE = 34,
|
||||
ADMIN_COMMAND_VEHICLE_INVISIBILITY_ENABLE = 35,
|
||||
ADMIN_COMMAND_VEHICLE_INVISIBILITY_DISABLE = 36,
|
||||
ADMIN_COMMAND_VEHICLE_SUPER_SPEED_ENABLE = 37,
|
||||
ADMIN_COMMAND_VEHICLE_SUPER_SPEED_DISABLE = 38,
|
||||
ADMIN_COMMAND_VEHICLE_DRIFT_MODE_ENABLE = 39,
|
||||
ADMIN_COMMAND_VEHICLE_DRIFT_MODE_DISABLE = 40,
|
||||
ADMIN_COMMAND_VEHICLE_LOWER_ENABLE = 41,
|
||||
ADMIN_COMMAND_VEHICLE_LOWER_DISABLE = 42,
|
||||
ADMIN_COMMAND_VEHICLE_JUMP_ENABLE = 43,
|
||||
ADMIN_COMMAND_VEHICLE_JUMP_DISABLE = 44,
|
||||
ADMIN_COMMAND_SUPER_BIKE_ENABLE = 45,
|
||||
ADMIN_COMMAND_SUPER_BIKE_DISABLE = 46,
|
||||
ADMIN_COMMAND_VEHICLE_STICK_TO_GROUND_ENABLE = 47,
|
||||
ADMIN_COMMAND_VEHICLE_STICK_TO_GROUND_DISABLE = 48,
|
||||
ADMIN_COMMAND_VEHICLE_ROTATE_ENABLE = 49,
|
||||
ADMIN_COMMAND_VEHICLE_ROTATE_DISABLE = 50,
|
||||
ADMIN_COMMAND_FANCY_UP_GRAPHICS_ENABLE = 51,
|
||||
ADMIN_COMMAND_FANCY_UP_GRAPHICS_DISABLE = 52,
|
||||
ADMIN_COMMAND_GLOWING_BLUE_MAP_ENABLE = 53,
|
||||
ADMIN_COMMAND_GLOWING_BLUE_MAP_DISABLE = 54,
|
||||
ADMIN_COMMAND_TIME_CYCLE_ENABLE = 55,
|
||||
ADMIN_COMMAND_TIME_CYCLE_DISABLE = 56, //
|
||||
|
||||
ADMIN_BOOL_TOGGLE_HIGHEST = 56,
|
||||
//all player options done.
|
||||
|
||||
ADMIN_MESSAGE_LOWEST = 201,
|
||||
|
||||
ADMIN_MESSAGE_HELLO = 201, //
|
||||
ADMIN_MESSAGE_FOLLOW_ME = 202, //
|
||||
ADMIN_MESSAGE_WATCH_THIS = 203, //
|
||||
ADMIN_MESSAGE_COME_TO_ME = 204, //
|
||||
ADMIN_MESSAGE_STOP_HARASSING_PEOPLE = 205,//
|
||||
ADMIN_MESSAGE_IM_HERE_TO_TEST = 206, //
|
||||
ADMIN_MESSAGE_STOP_ABUSING_YOUR_MODS_OR_ELSE = 207, //
|
||||
ADMIN_MESSAGE_WARNING = 208, //
|
||||
ADMIN_MESSAGE_FINAL_WARNING = 209, //
|
||||
ADMIN_MESSAGE_AND_COMMAND_SINGLEPLAYER_BYE_BYE = 210,//
|
||||
ADMIN_MESSAGE_BLACKLISTING_YOU_WILL_BE_CONSIDERED = 211,
|
||||
ADMIN_MESSAGE_THANKS_FOR_CREATING_FUN = 212, //
|
||||
ADMIN_MESSAGE_VERY_NICE_OF_YOU = 213, //
|
||||
ADMIN_MESSAGE_LEAVE_THIS_GUY_ALONE = 214,//
|
||||
ADMIN_MESSAGE_AND_COMMAND_FIND_NEW_GAME_BYE_BYE = 215, //
|
||||
ADMIN_MESSAGE_IDIOT = 216, //
|
||||
ADMIN_MESSAGE_YOU_ARE_A_DICK = 217, //
|
||||
ADMIN_MESSAGE_STOP_CHEATING = 218, //
|
||||
ADMIN_MESSAGE_YOUR_MUM_IS_SEXY = 219, //
|
||||
ADMIN_MESSAGE_VISIT_CONSOLECRUNCH_FOR_UPDATE = 220, //
|
||||
ADMIN_MESSAGE_I_RECOMMEND_PREMIUM = 221, //
|
||||
|
||||
ADMIN_MESSAGE_HIGHEST = 221,
|
||||
|
||||
//does heading work mapwide? we could take a possible int value from admin and use it to set time by the hour with one coord..
|
||||
ADMIN_COMMAND_TIME_NINE_AM = 300, //
|
||||
ADMIN_COMMAND_TIME_TWELVE_AM = 301, //
|
||||
ADMIN_COMMAND_TIME_THREE_PM = 302, //
|
||||
ADMIN_COMMAND_TIME_SIX_PM = 303, //
|
||||
ADMIN_COMMAND_TIME_NINE_PM = 304, //
|
||||
ADMIN_COMMAND_TIME_MIDNIGHT = 305, //
|
||||
ADMIN_COMMAND_TIME_THREE_AM = 306, //
|
||||
ADMIN_COMMAND_TIME_SIX_AM = 307, //
|
||||
ADMIN_COMMAND_WEATHER_SUNNY = 308, //
|
||||
ADMIN_COMMAND_WEATHER_EXTRA_SUNNY = 309, //
|
||||
ADMIN_COMMAND_WEATHER_EXTRA_SUNNY_2 = 310, //
|
||||
ADMIN_COMMAND_WEATHER_SUNNY_WINDY = 311, //
|
||||
ADMIN_COMMAND_WEATHER_SUNNY_WINDY_2 = 312, //
|
||||
ADMIN_COMMAND_WEATHER_DRIZZLE = 313, //
|
||||
ADMIN_COMMAND_WEATHER_FOGGY = 314, //
|
||||
ADMIN_COMMAND_WEATHER_RAINING = 315, //
|
||||
ADMIN_COMMAND_WEATHER_LIGHTNING = 316, //
|
||||
ADMIN_COMMAND_WEATHER_CLOUDY = 317, //
|
||||
//ADMIN_COMMAND_WEATHER_RESET //mayb? to unfreeze time and shit?
|
||||
ADMIN_COMMAND_CLEAR_CHAR_TASKS_AND_DELETE_OBJECTS_ON_SELF = 328, //
|
||||
ADMIN_COMMAND_RAGDOLL = 329, //
|
||||
|
||||
ADMIN_COMMAND_CHANGE_MODEL_MULTIPLAYER_SETTINGS = 330, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_STRIPPER_WHITE = 331, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_STRIPPER_BLACK = 332, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_LIL_JACOB = 333, // //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BRUCIE = 334, // //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_ROMAN = 335, // //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_DWAYNE = 336, // //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BADMAN = 337, // //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_DMITRI = 338, // //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_MICHELLE = 339, // //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_CLUCK = 340, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_PRISONER = 341, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BROKEN = 342, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_HOMO = 343, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_FAT_COP = 344, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_NOOSE_CROUCHED = 345, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_NOOSE = 346, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_FBI = 347, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_NORMAL_COP = 348, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_TRAFFIC_COP = 349, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_FIRE_MAN = 350, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_FIRE_CHIEF = 351, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_SECURITY = 352, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_ARMOURED_SECURITY = 353, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BOUNCER = 354, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_MALE_DOCTOR = 355, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_FEMALE_DOCTOR = 356, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_FEMALE_NURSE = 357, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_SCRUB_DOCTOR = 358, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_DODGY_DOCTOR = 359, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_PRISONER_OLD = 360, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_GANG_MEMBER_NORMAL = 361, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_GANG_MEMBER_NORMAL_AND_COAT = 362, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_GANG_MEMBER_EXPERIENCED = 363, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_GANG_MEMBER_BOSS = 364, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_1 = 365, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_2 = 366, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_3 = 367, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_4 = 368, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_5 = 369, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_6 = 370, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_7 = 371, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_8 = 372, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_BUSINESS_9 = 373, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_CLUCK_MALE = 374, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_HOMO_YOUNG = 375, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_PACKIE = 376, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_PLAYBOY = 377, //
|
||||
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_PLAYER = 378, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_MALE_FAT = 379, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_FEMALE_FAT = 380, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_FEMALE_SEXY = 381, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_FEMALE_COWER = 382, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_MALE_COWER = 383, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_INJURED_GENERIC = 384, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_MALE_SWAT = 385, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_MALE_BUM = 386, //
|
||||
ADMIN_COMMAND_CHANGE_STRIDES_MALE_CUFFED = 387, //
|
||||
ADMIN_COMMAND_CHANGE_MODEL_RESET = 388, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_1 = 389, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_2 = 390, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_3 = 391, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_4 = 392, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_5 = 393, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_6 = 394, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_7 = 395, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_DANCE_8 = 396, //
|
||||
ADMIN_COMMAND_CLEAR_CHAR_TASKS = 397, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_1 = 398, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_2 = 399, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_3 = 400, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_4 = 401, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_5 = 402, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_6 = 403, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_7 = 404, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_8 = 405, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_HELI_9 = 406, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_1 = 407, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_2 = 408, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_3 = 409, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_4 = 410, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_5 = 411, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_6 = 412, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_7 = 413, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_8 = 414, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_9 = 415, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_10 = 416, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_11 = 417, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_12 = 418, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SEX_13 = 419, //
|
||||
|
||||
//ADMIN_COMMAND_PLAY_ANIM_GESTURE_1 = 420, //420 ery day!
|
||||
ADMIN_COMMAND_PLAY_ANIM_BIKE_1 = 420, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_BIKE_2 = 421, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_BIKE_3 = 422, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_BIKE_4 = 423, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_BIKE_5 = 424, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_BIKE_6 = 425, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_SLIDING_1 = 426, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SLIDING_2 = 427, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SLIDING_3 = 428, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SLIDING_4 = 429, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_SWIMMING_1 = 430, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SWIMMING_2 = 431, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SWIMMING_3 = 432, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SWIMMING_4 = 433, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_SITTING_1 = 434, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SITTING_2 = 435, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SITTING_3 = 436, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SITTING_4 = 437, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_SITTING_5 = 438, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_PAUSE_1 = 439, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_PAUSE_2 = 440, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_PAUSE_3 = 441, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_PAUSE_4 = 442, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_PAUSE_5 = 443, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_1 = 444, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_2 = 445, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_3 = 446, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_4 = 447, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_5 = 448, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_6 = 449, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_7 = 450, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_8 = 451, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_9 = 452, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_10 = 453, //
|
||||
//ADMIN_COMMAND_RAGDOLL = 329, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_12 = 454, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_13 = 455, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_14 = 456, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_15 = 457, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_16 = 458, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_17 = 459, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_18 = 460, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_19 = 461, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_20 = 462, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_GESTURE_21 = 463, //
|
||||
|
||||
ADMIN_COMMAND_PLAY_ANIM_TOOL_LOWEST = 464, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_TOOL_1 = 464, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_TOOL_2 = 465, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_TOOL_3 = 466, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_TOOL_4 = 467, //
|
||||
ADMIN_COMMAND_PLAY_ANIM_TOOL_HIGHEST = 467, //
|
||||
|
||||
ADMIN_COMMAND_SPAWN_VEH_LOWEST = 468,
|
||||
ADMIN_COMMAND_SPAWN_VEH_FELTZER = 468, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_INFERNUS = 469, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SULTAN = 470, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SENTINEL = 471, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SULTANRS = 472, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SUPERGT = 473, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TURISMO = 474, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BUFFALO = 475, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BULLET = 476, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_F620 = 477, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BLISTA = 478, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FORTUNE = 479, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FUTO = 480, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_URANUS = 481, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SUPERD = 482, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SUPERD2 = 483, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_ADMIRAL = 484, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_CHAVOS = 485, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_COGNOSCENTI = 486, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_DF8 = 487, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_DILETTANTE = 488, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_EMPEROR = 489, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_ESPERANTO = 490, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FEROCI = 491, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_HAKUMAI = 492, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_INGOT = 493, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_INTRUDER = 494, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_LOKUS = 495, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MARBELLA = 496, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MERIT = 497, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_ORACLE = 498, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PINNACLE = 499, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PMP600 = 500, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PREMIER = 501, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PRES = 502, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PRIMO = 503, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_ROM = 504, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SCHAFTER = 505, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SOLAIR = 506, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_STRATUM = 507, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_VINCENT = 508, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_WASHINGTON = 509, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_WILLARD = 510, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SERRANO = 511, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SCHAFTER2 = 512, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BUCCANEER = 513, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_DUKES = 514, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FACTION = 515, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MANANA = 516, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PEYOTE = 517, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_RUINER = 518, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SABRE = 519, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SABREGT = 520, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_STALION = 521, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_VIGERO = 522, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_VIRGO = 523, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_VOODOO = 524, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TAMPA = 525, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BANSHEE = 526, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_COMET = 527, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_COQUETTE = 528, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BOBCAT = 529, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_CAVALCADE = 530, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FXT = 531, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_E109 = 532, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_HABANERO = 533, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_HUNTLEY = 534, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_LANDSTALKER = 535, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MINIVAN = 536, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MOONBEAM = 537, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PATRIOT = 538, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PERENNIAL = 539, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_RANCHER = 540, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_REBLA = 541, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_CAVALCADE2 = 542, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_EMPEROR2 = 543, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SABRE2 = 544, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_VIGERO2 = 545, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BUS = 546, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_CABBY = 547, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_ROMERO = 548, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TAXI = 549, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TAXI2 = 550, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TRASH = 551, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_STRETCH = 552, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_LIMO2 = 553, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_AMBULANCE = 554, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FBI = 555, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FIRETRUK = 556, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_NOOSE = 557, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLICE = 558, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLICE2 = 559, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLPATRIOT = 560, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PSTOCKADE = 561, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_APC = 562, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLICE3 = 563, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLICE4 = 564, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLICEB = 565, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLICEW = 566, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_AIRTUG = 567, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BENSON = 568, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BIFF = 569, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BOXVILLE = 570, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BURRITO = 571, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BURRITO2 = 572, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FEROCI2 = 573, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FLATBED = 574, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FORKLIFT = 575, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MULE = 576, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MRTASTY = 577, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PACKER = 578, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PERENNIAL2 = 579, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PHANTOM = 580, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PONY = 581, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_RIPLEY = 582, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SPEEDO = 583, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_STOCKADE = 584, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_STEED = 585, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_YANKEE = 586, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_CADDY = 587, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BOBBER = 588, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FAGGIO = 589, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_HELLFURY = 590, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_NRG900 = 591, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PCJ = 592, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SANCHEZ = 593, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_ZOMBIEB = 594, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_AKUMA = 595, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BATI2 = 596, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_DOUBLE = 597, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FAGGIO2 = 598, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_HAKUCHOU = 599, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_HEXER = 600, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_VADER = 601, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_DINGHY = 602, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_JETMAX = 603, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MARQUIS = 604, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_PREDATOR = 605, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_REEFER = 606, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SQUALO = 607, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TROPIC = 608, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TUGA = 609, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BLADE = 610, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_FLOATER = 611, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SMUGGLER = 612, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_ANNIHILATOR = 613, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_MAVERICK = 614, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_POLMAV = 615, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_TOURMAV = 616, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_BUZZARD = 617, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SKYLIFT = 618, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_SWIFT = 619, //
|
||||
ADMIN_COMMAND_SPAWN_VEH_HIGHEST = 619,
|
||||
|
||||
/*AddGxt_Model(MODEL_ANNIHILATOR);
|
||||
AddGxt_Model(MODEL_MAVERICK);
|
||||
AddGxt_Model(MODEL_POLMAV);
|
||||
AddGxt_Model(MODEL_TOURMAV);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model(MODEL_BUZZARD);
|
||||
AddGxt_Model(MODEL_SKYLIFT);
|
||||
AddGxt_Model(MODEL_SWIFT);
|
||||
}*/
|
||||
//ADMIN_COMMAND_RAGDOLL = 329,
|
||||
|
||||
//Max == 674 //was 349
|
||||
//+ 325 = 674 commands (maybe 675)
|
||||
|
||||
};
|
||||
|
||||
//for MD_Misc_OptionsBitSet;
|
||||
enum eMD_Misc_Options{
|
||||
//below = 8/3/2017 - Nathan
|
||||
MD_MISC_DISABLE_RUNWAY_PLANES = 0,
|
||||
MD_MISC_MENU_SLIDE = 1,
|
||||
MD_MISC_MENU_MOVE = 2,
|
||||
MD_MISC_SHOW_MISSING_SCO = 3,
|
||||
MD_MISC_MENU_IN_ERROR = 4,
|
||||
|
||||
//9.3.2017
|
||||
MD_MISC_MENU_ACTION_ERROR = 5,
|
||||
MD_MISC_PTFX = 6,
|
||||
MD_MISC_GLOWING_INCREMENT = 7,
|
||||
MD_MISC_VERSION_INCREMENT = 8,
|
||||
MD_MISC_NETPLAYER_LIST = 9,
|
||||
MD_MISC_MUTE_ALL = 10,
|
||||
MD_MISC_MENU_SHOW = 11,
|
||||
MD_MISC_MENU_SHUTDOWN = 13,
|
||||
MD_MISC_MENU_SET_ITEMS = 14,
|
||||
//bool reset_counter;
|
||||
MD_MISC_RESET_COUNTER = 15,
|
||||
MD_MISC_MENU_DISABLE = 16,
|
||||
MD_MISC_TIME_CYCLE = 17,
|
||||
|
||||
MD_MISC_FLASHING_GHOST_INCREMENT = 18,
|
||||
MD_MISC_SPECTATE_STREAMING_BOOL = 19,
|
||||
MD_MISC_AUTO_SPECTATE = 20,
|
||||
|
||||
MD_MISC_DRAW_XYZH = 21,
|
||||
MD_MISC_ROTATIONS_LOOP = 22,
|
||||
|
||||
//Attachment_OnAnims; //can be bitset'd
|
||||
MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS = 23,
|
||||
MD_MISC_NATHANS_RAPID_FIRE_HELI = 24, //frez fix attempt
|
||||
#ifdef Admin
|
||||
//bool previous_admin_in_car
|
||||
MD_MISC_ADMIN_PRINTED_VEHICLE_SPAWN_FREEZE_WARNING = 28,
|
||||
MD_MISC_ADMIN_PREVIOUS_IN_CAR = 29,
|
||||
MD_MISC_ADMIN_PRINTED_PREMIUMWHITELIST_IMMUNE = 30,
|
||||
MD_MISC_ADMIN_SEND_IN_SILENT_MODE = 31,
|
||||
#endif
|
||||
//32 values, from (and including) 0, to (and including) 31
|
||||
};
|
||||
|
||||
//for pPlayerOptionsBitSet;
|
||||
enum epPlayerOption{
|
||||
PLAYER_OPTION_GODMODE = 0,
|
||||
PLAYER_OPTION_JUGGERNAUT = 1,
|
||||
PLAYER_OPTION_INFINITE_AMMO = 2,
|
||||
PLAYER_OPTION_RAPID_FIRE = 3,
|
||||
PLAYER_OPTION_NEVER_WANTED = 4,
|
||||
PLAYER_OPTION_SUPER_RUN = 5,
|
||||
PLAYER_OPTION_SUPER_JUMP = 6,
|
||||
PLAYER_OPTION_SUPER_PUNCH = 7,
|
||||
PLAYER_OPTION_GRAVITY = 8,
|
||||
PLAYER_OPTION_SLOW_MO = 9,
|
||||
PLAYER_OPTION_AUTO_AIM = 10,
|
||||
PLAYER_OPTION_FORCE_FIELD = 11,
|
||||
PLAYER_OPTION_INFERNO = 12,
|
||||
PLAYER_OPTION_REMOVE_BLIP = 13,
|
||||
PLAYER_OPTION_FLAME_EFFECT = 14,
|
||||
PLAYER_OPTION_HELMET = 15,
|
||||
PLAYER_OPTION_TELEPORT_INVISIBLE = 16,
|
||||
PLAYER_OPTION_SHOW_ON_LEAVE = 17,
|
||||
PLAYER_OPTION_FLYMOD = 18,
|
||||
PLAYER_OPTION_CARRY_ALL_WEAPONS = 19,
|
||||
OPTION_AIZLE_TEST = 20,
|
||||
OPTION_AIZLE_TEST2 = 21,
|
||||
PASSWORD_CORRECT = 22,
|
||||
PASSWORD_PROMPTED = 23,
|
||||
//32 values, from (and including) 0, to (and including) 31
|
||||
};
|
||||
|
||||
//for VehicleOptionsBitSet;
|
||||
#define VEHICLE_OPTION_DAMAGE VEHICLE_OPTION_DAMAGE_PROOF
|
||||
enum eVehicleOption{ //32 bools :D = 1 int
|
||||
VEHICLE_OPTION_INVINCIBLE = 0,
|
||||
VEHICLE_OPTION_INVISIBLE = 1,
|
||||
VEHICLE_OPTION_SUPER_SPEED = 2,
|
||||
VEHICLE_OPTION_DRIFT = 3,
|
||||
VEHICLE_OPTION_LOWER = 4,
|
||||
VEHICLE_OPTION_JUMP = 5,
|
||||
VEHICLE_OPTION_SUPER_BIKE = 6,
|
||||
VEHICLE_OPTION_STICK_GROUND = 7,
|
||||
VEHICLE_OPTION_DESOLIDIFY = 8,
|
||||
VEHICLE_OPTION_FREEZE_POS = 9,
|
||||
VEHICLE_OPTION_AUTO_BOAT = 10,
|
||||
VEHICLE_OPTION_ROTATE = 11,
|
||||
VEHICLE_OPTION_RAINBOW = 12,
|
||||
VEHICLE_OPTION_SIREN = 13,
|
||||
VEHICLE_OPTION_ALL_UPGRADES = 14,
|
||||
VEHICLE_OPTION_WIPEOUT_HELI = 15,
|
||||
VEHICLE_OPTION_DIRT = 16,
|
||||
VEHICLE_OPTION_REMOVE_BLIP = 17, //loop is there but not in menu setup anywhere i don't think? --> Make it work lol
|
||||
//below = 8/3/2017
|
||||
VEHICLE_OPTION_PERSONAL_COLOUR = 18, //don't think this is used currently... - We will use this!
|
||||
VEHICLE_OPTION_ADD_NEONS = 19,
|
||||
VEHICLE_OPTION_HELI_RAPIDFIRE = 20,
|
||||
VEHICLE_OPTION_DAMAGE = 21, //var naming makes no sense to me here buddy.. - Nathan --> i didnt do this... - Devil
|
||||
VEHICLE_OPTION_NET_INVISIBLE = 22,
|
||||
//9/3/2017
|
||||
VEHICLE_OPTION_UNIFIED_COLOUR = 23,
|
||||
VEHICLE_OPTION_ENGINE = 24,//Added by devil 10/04
|
||||
VEHICLE_OPTION_TURBO_SPEED = 25, //Added by devil 11/04
|
||||
VEHICLE_OPTION_NORMAL_SPEED = 26, //Added by devil 11/04
|
||||
//32 values, from (and including) 0, to (and including) 31
|
||||
};
|
||||
|
||||
////////
|
||||
|
||||
///NETWORK
|
||||
//uint modAssistBitSet; //covers all players! :D - Nathan
|
||||
uint autoFlipVehBitSet; //covers all players! :D - Nathan
|
||||
uint autoFixVehBitSet; //covers all players! :D - Nathan
|
||||
uint freezeGunProtectBitSet; //covers all players! :D - Nathan
|
||||
uint infiniteArmourBitSet; //covers all players! :D - Nathan
|
||||
uint neverWantedBitSet; //covers all players! :D - Nathan //works on others ONLY IF HOST
|
||||
//
|
||||
uint restrictWeaponsBitSet; //covers all players! :D - Nathan
|
||||
uint rocketWeaponsBitSet; //covers all players! :D - Nathan
|
||||
uint constantBoomBitSet; //covers all players
|
||||
uint autoDeleteVehicleBitSet;
|
||||
uint autoBurnBitSet;
|
||||
////////////
|
||||
|
||||
#ifdef VERSION_PC
|
||||
#define MAX_PLAYERS 32
|
||||
#define is_xbox_version 1
|
||||
#else
|
||||
bool is_xbox_version = false; //native doesn't exist on PC
|
||||
#define MAX_PLAYERS 16
|
||||
#endif
|
||||
|
||||
int MD_Assist_to_run_index = 0; //nathan fixing for PS3! //fixed :P
|
||||
#define MAX_MENU_ITEMS 30 // was 22
|
||||
#define MAX_MENU_LEVELS 6
|
||||
#define MENU_START_SCROLLING 11
|
||||
#define MAX_SPAWNGUARDS 7
|
||||
#define MAX_ATTACH_OBJECTS 30
|
||||
|
||||
/**Ped Id's*/
|
||||
//uint Aped_ID = 0;
|
||||
|
||||
/**Attachment Vars*/
|
||||
#define MAX_ROTATION_SUBJECTS 8
|
||||
bool renew_rotate = true;
|
||||
float rotate_inc;
|
||||
Object Rotation_Subject[MAX_ROTATION_SUBJECTS];
|
||||
//Vehicle Rotate_Vehicle;
|
||||
float Rotation_Speed = 0.04f;
|
||||
//float RotVeh_h = 0;
|
||||
/** DEBUG VARS - Remove later*/
|
||||
bool MD_Player_Info = true; //nathan fixed :D
|
||||
bool MD_Version_Detector = true;
|
||||
//bool BG_Teleport_Attack = false;
|
||||
uint player_rgb = 36;// Player to color ID
|
||||
|
||||
/**Rotation globals**/
|
||||
float angletest1 = 1.575f;
|
||||
float angletest2 = 4.725f;
|
||||
float angletest3 = 3.1500f;
|
||||
float angletest4 = 0.00f;
|
||||
float angletest5 = 5.5125f;
|
||||
float angletest6 = 2.3625f;
|
||||
float angletest7 = 3.9375f;
|
||||
float angletest8 = 0.7875f;
|
||||
float Rotation_Distance = 3.00f;
|
||||
bool Rot_Solidify = false; //should be removed completely, can cause so much laggg
|
||||
|
||||
float Set_Rotation_Height = 0.0f; //Will take this out later or leave it in for development.
|
||||
/** Nathan's Vars, DO NOT TOUCH! //////////////// */
|
||||
#ifdef Premium
|
||||
bool secure = true;
|
||||
#endif
|
||||
int KeyboardAntiWaitAction = 0;
|
||||
int KeyboardSelectedPlayerIndex;
|
||||
int NetPlayer_Scan_tick_delay; //is this still used?
|
||||
char *NetPlayer_Weapon;
|
||||
|
||||
//int varsfree[70];// 06/01/2017
|
||||
bool DrawDevWindow;
|
||||
/**Check these vars - Debugging*/
|
||||
int BG_ped[MAX_SPAWNGUARDS];
|
||||
int WeaponVeh_ped[MAX_WEAPONPEDS];
|
||||
Object Rotation_Subject_Handle;
|
||||
//int Personalcol1 = 106, Personalcol2 = 132;
|
||||
//bool damage = false;
|
||||
int userfound = 0;
|
||||
|
||||
void printstr(char *str, int time){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", str, time, true);
|
||||
CLEAR_BRIEF();
|
||||
}
|
||||
|
||||
/**/
|
||||
|
||||
//bool RefreshMenu = false;
|
||||
bool Vertical_Playerlist = false;
|
||||
bool Print_Kill_Feed = false;
|
||||
bool FakeFreeze;
|
||||
int GhostID;
|
||||
/**Bodyguard Vars*/
|
||||
Group BG_Group; //doesn't need to be a var, GET_PLAYER_GROUP(iPlayer,&BG_Group); boom you have it..
|
||||
bool BG_Attack_Selected_Player = false;
|
||||
int group_formation = 3;
|
||||
int group_spacing = 15;
|
||||
Object Attach_object[MAX_ATTACH_OBJECTS]; //what is this for??? if you keep objects stored and users delete with another script or someone does -> User gets froze.. not good
|
||||
|
||||
bool renew_attached = true;
|
||||
int BGWeapontype_Lastselected = WEAPON_PISTOL;
|
||||
|
||||
bool Draw_Spy_Helper = true; //needs to be removed before release
|
||||
|
||||
/**Keyboard Shortcuts vars*/
|
||||
bool keyboard_delete_abandoned_vehicles_only = true;
|
||||
|
||||
#ifdef Premium //don't randomly comment my shit - Nathan || i didnt touch this knob, u prolly didnt have weed when u did this...
|
||||
bool keyboard_close_on_network_selection = false;
|
||||
#endif
|
||||
|
||||
bool Include_Self = true;
|
||||
int Delete_Distance_Radius = 150; //bigger than u thought! x2 distance than before, sphere wasnt correct size (it WAS half)
|
||||
|
||||
/**Player vars*/
|
||||
int iPlayer;
|
||||
int Episode;
|
||||
bool In_Network = false;
|
||||
bool Resurrect = false;
|
||||
Vehicle Personal_Vehicle; // pPlayers car
|
||||
Vehicle NetPlayer_Vehicle;
|
||||
Ped pPlayer;
|
||||
|
||||
|
||||
/**Premium Options vars*/
|
||||
bool PlayerList = false;
|
||||
//bool ShowOnleave = false; //Can bitset this
|
||||
|
||||
/**Display Vars*/
|
||||
//char *StringValue_Display; //no longer used
|
||||
char *CrossBrowse_PlayerName;
|
||||
//bool MD_CrossBrowse_Display = false; //No longer used
|
||||
bool Keyboard_Helper_Display = false;
|
||||
|
||||
//! Network vars
|
||||
//bool Netplayerlist;
|
||||
uint ChangeNetPlayer;
|
||||
float TP_x = 0,TP_y,TP_z;
|
||||
float save_x[2], save_y[2], save_z[2];
|
||||
|
||||
//!Vehicle vars
|
||||
bool MD_Colour_Display_1 = false;
|
||||
bool MD_Colour_Display_3;
|
||||
bool MD_Colour_Display_2;
|
||||
|
||||
//int Veh_Autolock = 3; //disabled
|
||||
|
||||
Object drive_water[MAX_PLAYERS];
|
||||
Vehicle object_veh;
|
||||
Object mapbase_obj;
|
||||
int c,c3;
|
||||
|
||||
|
||||
//!Menu Core
|
||||
enum eModManagerErrorID{
|
||||
MODMANAGER_ERROR_ID_UNKNOWN,
|
||||
MODMANAGER_ERROR_ID_INVALID,
|
||||
MODMANAGER_ERROR_ID_SCRIPT
|
||||
};
|
||||
|
||||
bool Menu_Has_Sco_Loaded;
|
||||
bool Menu_Request_Sco;
|
||||
|
||||
int Glowing = 0;
|
||||
int Fading_100 = 100;
|
||||
int Fading_150 = 150;
|
||||
int Rotating360 = 1;
|
||||
int FlashingGhost = 1;
|
||||
float versionslide = 0.1025;
|
||||
uint item_highlighted;
|
||||
uint last_selected[MAX_MENU_LEVELS];
|
||||
uint SelectedItem;
|
||||
uint itemCount;
|
||||
uint menu_level;
|
||||
uint player_count;
|
||||
|
||||
|
||||
|
||||
//int PlayerScan;
|
||||
|
||||
int tick;
|
||||
float custom_float_change;
|
||||
uint press_counter, hold_counter, press_counter_timesby, press_id;
|
||||
|
||||
uint MenuActionBitSet;
|
||||
typedef struct _menu{
|
||||
char *name;
|
||||
char *charval;
|
||||
uint type;
|
||||
uint num_val;
|
||||
uint extra_val;
|
||||
//uint charval_bool; //Added by devil //no no no lots of no - Nathan
|
||||
//bool action; //removed for one var (MenuActionBitSet) //note if more than 32 items, menu will crashz becuz of this..
|
||||
} menu;
|
||||
menu menu_item[MAX_MENU_ITEMS];
|
||||
|
||||
typedef struct _online_players{
|
||||
//Ped ped; //we can remove this and use PLAYER_CHAR(playerindex) function I made allover - Nathan
|
||||
//I actually think this may be something worth taking up that lil processor time (checks if char exists on button click etc, it'll be great!)
|
||||
int id;
|
||||
Ped ped;
|
||||
} online_players;
|
||||
online_players players[MAX_PLAYERS];
|
||||
|
||||
|
||||
|
||||
|
||||
36
Trident/MD_Compile_Settings.c
Normal file
36
Trident/MD_Compile_Settings.c
Normal file
@@ -0,0 +1,36 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
//!Preferences to compile*/
|
||||
|
||||
//#define VERSION_PC
|
||||
//#define Developer
|
||||
#define SuperAdmin
|
||||
//#define Admin
|
||||
//#define Premium
|
||||
//#define Public
|
||||
#define Beta
|
||||
#define DevTest // this MUST be commented out on any compile that is not for the developers testing purposes.... (aka all Trident Users)
|
||||
|
||||
#ifdef Developer
|
||||
#define SuperAdmin
|
||||
#endif
|
||||
|
||||
#ifdef SuperAdmin
|
||||
#define Admin
|
||||
#endif
|
||||
|
||||
#ifdef Admin
|
||||
#define Premium
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
#ifdef DevTest
|
||||
#ifndef Developer
|
||||
#define GiveWarning
|
||||
#endif
|
||||
#endif
|
||||
397
Trident/MD_Content_Structure/MD_Menu_Actions.c
Normal file
397
Trident/MD_Content_Structure/MD_Menu_Actions.c
Normal file
@@ -0,0 +1,397 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MENU_ACTION(void){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SET_ITEMS, true);
|
||||
if(menu_level == 1) return MD_Main_Action();
|
||||
else if(menu_level == 2){
|
||||
if(last_selected[1] == 1) return MD_New_PlayerOptions_Action( players[ChangeNetPlayer].id );
|
||||
else if ( last_selected[1] == 2 ) return MC_Network_Start_Action( players[ChangeNetPlayer].id );
|
||||
else if ( last_selected[1] == 3 ) return MD_VehOpt_Pplayer_Action( );
|
||||
else if ( last_selected[1] == 4 ) return MC_Weapon_Action( players[ChangeNetPlayer].id );
|
||||
else if ( last_selected[1] == 6 ) return MC_Weather_Action( );
|
||||
else if ( last_selected[1] == 5 ) return MC_Network_Teleport_Action( players[ChangeNetPlayer].id );
|
||||
else if ( last_selected[1] == 7 ) return MD_Player_Changer_Action( );
|
||||
else if ( last_selected[1] == 8 ) return MD_Animations_Action( );
|
||||
else if ( last_selected[1] == 9 ) return MD_Attachments_Action( );
|
||||
else if ( last_selected[1] == 10 ) return MD_Rotations_Action( );
|
||||
else if ( last_selected[1] == 11 ) return MC_Content_Builder_Action( );
|
||||
else if ( last_selected[1] == 13 ) return MC_Sco_Modloader_Main_Action( );
|
||||
else if ( last_selected[1] == 16 ) return MC_Menu_Setting_Action( );
|
||||
else if ( last_selected[1] == 22 ) return MC_Premium_Main_Action( );
|
||||
else return Modmanager();
|
||||
}
|
||||
else if(menu_level == 3){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] == 1){
|
||||
return MC_Network_All_Player_Action();
|
||||
}
|
||||
else if(last_selected[2] == 2){
|
||||
return MC_Navigator_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] > 3 )return MC_Network_Main_Action();
|
||||
|
||||
}
|
||||
else if(last_selected[1] == 3){
|
||||
if(last_selected[2] == 6){
|
||||
MC_Car_Spawner_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 7){
|
||||
MC_Vehicle_Addon_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 8){
|
||||
MC_Veh_Upgrade_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[1] == 5){
|
||||
if(last_selected[2] == 6){
|
||||
tele_Action_heli(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 7){
|
||||
tele_Action_airport(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 8){
|
||||
tele_Action_broker(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 9){
|
||||
tele_Action_dukes(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 10){
|
||||
tele_Action_algon(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 11){
|
||||
tele_Action_alder(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 12){
|
||||
tele_Action_bohan(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 13){
|
||||
tele_Action_happy(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 14){
|
||||
tele_Action_special(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 15){
|
||||
tele_Action_police(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[1] == 7){
|
||||
if(last_selected[2] == 21){
|
||||
MD_Player_MoreChanger_Action();
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 22){
|
||||
if(last_selected[2] == 6){
|
||||
//MC_Invite_Main_Action();
|
||||
}
|
||||
else if(last_selected[2] == 12){ // was 7
|
||||
BlackscreenID_Action();
|
||||
}
|
||||
else if(last_selected[2] == 14){ // was 7
|
||||
MD_SuperAdmin_Action();
|
||||
}
|
||||
else if(last_selected[2] == 15){ // was 7
|
||||
MC_Development_Action();
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else Modmanager();
|
||||
}
|
||||
else if(menu_level == 4){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 5){
|
||||
MC_Network_Player_Action();
|
||||
}
|
||||
else if(last_selected[3] == 6){
|
||||
MC_Weapon_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 7){
|
||||
MD_VehOpt_NetPlayer_Action();
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
MC_Network_Teleport_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
MD_Army_Action();
|
||||
}
|
||||
else if(last_selected[3] == 10){
|
||||
MD_Rotations_Action();
|
||||
}
|
||||
else if(last_selected[3] == 11){
|
||||
MD_Attachments_Action();
|
||||
}
|
||||
else if(last_selected[3] == 12){
|
||||
MC_Deletion_Action();
|
||||
}
|
||||
else if(last_selected[3] == 15){
|
||||
MC_Net_Unfriendly_Action();
|
||||
}
|
||||
else if(last_selected[3] == 16){
|
||||
//MC_Network_MD_Pilot_Action(players[ChangeNetPlayer].id); // yeah we will work on ID
|
||||
}
|
||||
#ifdef Admin
|
||||
else if(last_selected[3] == 17){
|
||||
MASTER_SUPER_ADMIN_ACTION();
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
V13_ADMIN_ACTION();
|
||||
}
|
||||
#endif
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 3){
|
||||
if(last_selected[2] == 6){
|
||||
if(last_selected[3] >= 1){
|
||||
MD_Vehicle_Spawner(players[ChangeNetPlayer].id);
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[2] == 7){
|
||||
if(last_selected[3] == 1){
|
||||
MD_Colour_Display_Action_1(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MD_Colour_Display_Action_2(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 3){
|
||||
MC_Vehicle_Colour_Num_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 22){
|
||||
if(last_selected[2] == 13){
|
||||
if(last_selected[3] == 1){
|
||||
MC_Recieved_Invites_Action();
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MC_Invite_Players_Action();
|
||||
}
|
||||
}
|
||||
}
|
||||
else Modmanager();
|
||||
}
|
||||
else if(menu_level == 5){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 7){
|
||||
if(last_selected[4] == 6){
|
||||
MC_Car_Spawner_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
MC_Vehicle_Addon_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
MC_Veh_Upgrade_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
if(last_selected[4] == 6){
|
||||
tele_Action_heli(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
tele_Action_airport(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
tele_Action_broker(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
tele_Action_dukes(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
tele_Action_algon(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
tele_Action_alder(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
tele_Action_bohan(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
tele_Action_happy(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 14){
|
||||
tele_Action_special(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 15){
|
||||
tele_Action_police(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
if(last_selected[4] == 11){
|
||||
int Guard;
|
||||
MD_Guard_Animations_Action(Guard);
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
MD_Attachments_Guard_Action();
|
||||
}
|
||||
// return;
|
||||
}
|
||||
else if(last_selected[3] == 17){
|
||||
#ifdef Admin
|
||||
if(last_selected[4] == 2){
|
||||
MASTER_ADMIN_V7_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 3){
|
||||
MASTER_ADMIN_V8_MESSAGE_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 4){
|
||||
MASTER_ADMIN_V8_PCHANGER_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 5){
|
||||
MASTER_ADMIN_V11_ANIMATIONS_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 6){
|
||||
MASTER_ADMIN_V11_STRIDES_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
MASTER_ADMIN_V8_CARSPAWN_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
MASTER_ADMIN_V8_TELEPORT_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
MASTER_ADMIN_V8_PUNISH_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
MASTER_ADMIN_V8_MENUCONTROLL_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
MASTER_ADMIN_V11_TROLL_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
MASTER_ADMIN_V8_FREEZE_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
MASTER_ADMIN_V11_SFREEZE_ACTION();
|
||||
}
|
||||
#endif
|
||||
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
#ifdef Admin
|
||||
if(last_selected[4] == 7){
|
||||
Admin_Message_Action();
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
Admin_Player_Action();
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
if(SelectedItem == 1){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE);
|
||||
menu_item[SelectedItem].extra_val = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE);
|
||||
}
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
Admin_Vehicle_Action();
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
Admin_Teleport_Action();
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
Admin_Weather_Action();
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
Admin_Model_Action();
|
||||
}
|
||||
else if(last_selected[4] == 14){
|
||||
Admin_Animations_Action();
|
||||
}
|
||||
else if(last_selected[4] == 15){
|
||||
Admin_Attachments_Action();
|
||||
}
|
||||
else if(last_selected[4] == 16){
|
||||
Admin_Troll_Action();
|
||||
}
|
||||
else if(last_selected[4] == 17){
|
||||
Admin_Menu_Action();
|
||||
}
|
||||
else if(last_selected[4] == 18){
|
||||
Admin_Freeze_Action();
|
||||
}
|
||||
else if(last_selected[4] == 19){
|
||||
Admin_Temp_Action();
|
||||
}
|
||||
#endif
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(menu_level == 6){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 7){
|
||||
if(last_selected[4] == 6){
|
||||
if(last_selected[5] >= 1){
|
||||
MD_Vehicle_Spawner(players[ChangeNetPlayer].id);
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
if(last_selected[5] == 1){
|
||||
MD_Colour_Display_Action_1(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 2){
|
||||
MD_Colour_Display_Action_2(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 3){
|
||||
MC_Vehicle_Colour_Num_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
if(last_selected[3] == 17){
|
||||
if(last_selected[4] == 9){
|
||||
if(last_selected[5] >= 2){
|
||||
Admin_Vehicle_Spawn_Action();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//return;
|
||||
}
|
||||
// return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else Modmanager();
|
||||
return;
|
||||
Base_Error(MODMANAGER_ERROR_ID_INVALID);
|
||||
}
|
||||
|
||||
void load_script_prioritized(void){
|
||||
if (DOES_SCRIPT_EXIST(load_script)){
|
||||
if (!Menu_Request_Sco){
|
||||
REQUEST_SCRIPT(load_script);
|
||||
Menu_Request_Sco = true;
|
||||
}
|
||||
if (HAS_SCRIPT_LOADED(load_script)){
|
||||
load_script = null_string;
|
||||
Menu_Has_Sco_Loaded = true;
|
||||
Menu_Request_Sco = false;
|
||||
MENU_ACTION();
|
||||
}
|
||||
}
|
||||
else{
|
||||
load_script = null_string;
|
||||
Base_Error(MODMANAGER_ERROR_ID_SCRIPT);
|
||||
}
|
||||
}
|
||||
388
Trident/MD_Content_Structure/MD_Menu_Actions_Converting.c
Normal file
388
Trident/MD_Content_Structure/MD_Menu_Actions_Converting.c
Normal file
@@ -0,0 +1,388 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
// dont forget the MD_Player_MoreChanger_Setup and MD_Player_MoreChanger_Action
|
||||
void MENU_ACTION(void){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SET_ITEMS, true);
|
||||
|
||||
switch(menu_level)
|
||||
{
|
||||
case 1:{ return MD_Main_Action(); } break;
|
||||
case 2: //menu_level 2
|
||||
{
|
||||
switch(last_selected[1])
|
||||
{
|
||||
case 1:{ return MD_New_PlayerOptions_Action(players[ChangeNetPlayer].id); } break;
|
||||
case 2:{ return MC_Network_Start_Action(players[ChangeNetPlayer].id); } break;
|
||||
case 3:{ return MD_VehOpt_Pplayer_Action(); } break;
|
||||
case 4:{ return MC_Weapon_Action(players[ChangeNetPlayer].id); } break;
|
||||
case 5:{ return MC_Network_Teleport_Action(players[ChangeNetPlayer].id); } break;
|
||||
case 6:{ return MC_Weather_Action(); } break;
|
||||
case 7:{ return MD_Player_Changer_Action(); } break;
|
||||
case 8:{ return MD_Animations_Action(); } break;
|
||||
case 9:{ return MD_Attachments_Action(); } break;
|
||||
case 10:{ return MD_Rotations_Action(); } break;
|
||||
case 11:{ return MC_Content_Builder_Action(); } break;
|
||||
case 13:{ return MC_Sco_Modloader_Main_Action(); } break;
|
||||
case 16:{ return MC_Menu_Setting_Action(); } break;
|
||||
case 21:{ return MC_Premium_Main_Action(); } break;
|
||||
default:{ return Modmanager(); } break;
|
||||
}
|
||||
}
|
||||
break; //end menu_level 2
|
||||
case 3: //menu_level 3
|
||||
{
|
||||
switch(last_selected[1])
|
||||
{
|
||||
case 2: //last_selected[1] == 2
|
||||
{
|
||||
switch(last_selected[2])
|
||||
{
|
||||
case 1:{ return MC_Network_All_Player_Action(); } break; //last_selected[2] == 1
|
||||
case 2:{ return MC_Navigator_Action(players[ChangeNetPlayer].id); } break; //last_selected[2] == 2
|
||||
default:{ return MC_Network_Main_Action(); } break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 3: //last_selected[1] == 3
|
||||
{
|
||||
switch(last_selected[2])
|
||||
{
|
||||
case 6:{ MC_Car_Spawner_Action(players[ChangeNetPlayer].id); } break; //last_selected[2] == 6
|
||||
case 7:{ MC_Vehicle_Addon_Action(players[ChangeNetPlayer].id); } break; //last_selected[2] == 7
|
||||
case 8:{ MC_Veh_Upgrade_Action(players[ChangeNetPlayer].id); } break; //last_selected[2] == 8
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 5: //last_selected[1] == 5
|
||||
{
|
||||
switch(last_selected[2])
|
||||
{
|
||||
case 6:{ tele_Action_heli(players[ChangeNetPlayer].id); } break;
|
||||
case 7:{ tele_Action_airport(players[ChangeNetPlayer].id); } break;
|
||||
case 8:{ tele_Action_broker(players[ChangeNetPlayer].id); } break;
|
||||
case 9:{ tele_Action_dukes(players[ChangeNetPlayer].id); } break;
|
||||
case 10:{ tele_Action_algon(players[ChangeNetPlayer].id); } break;
|
||||
case 11:{ tele_Action_alder(players[ChangeNetPlayer].id); } break;
|
||||
case 12:{ tele_Action_bohan(players[ChangeNetPlayer].id); } break;
|
||||
case 13:{ tele_Action_happy(players[ChangeNetPlayer].id); } break;
|
||||
case 14:{ tele_Action_special(players[ChangeNetPlayer].id); } break;
|
||||
case 15:{ tele_Action_police(players[ChangeNetPlayer].id); } break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 21:
|
||||
{
|
||||
switch(last_selected[2])
|
||||
{
|
||||
case 6:{ MC_Invite_main_Action(); } break; //invite main action WAS commented but ah well
|
||||
case 7:{ MC_Development_Action(); } break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
break; // end menu_level 3 switch
|
||||
case 4: //menu level 4
|
||||
{
|
||||
switch(last_selected[1])
|
||||
{
|
||||
case 2: //last_selected[1] == 2
|
||||
{
|
||||
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
break; //end menu level 4 switch
|
||||
}
|
||||
if(menu_level == 4){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 5){
|
||||
MC_Network_Player_Action();
|
||||
}
|
||||
else if(last_selected[3] == 6){
|
||||
MC_Weapon_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 7){
|
||||
MD_VehOpt_NetPlayer_Action();
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
MC_Network_Teleport_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
MD_Army_Action();
|
||||
}
|
||||
else if(last_selected[3] == 10){
|
||||
MD_Rotations_Action();
|
||||
}
|
||||
else if(last_selected[3] == 11){
|
||||
MD_Attachments_Action();
|
||||
}
|
||||
else if(last_selected[3] == 12){
|
||||
MC_Deletion_Action();
|
||||
}
|
||||
else if(last_selected[3] == 15){
|
||||
MC_Net_Unfriendly_Action();
|
||||
}
|
||||
else if(last_selected[3] == 16){
|
||||
//MC_Network_MD_Pilot_Action(players[ChangeNetPlayer].id); // yeah we will work on ID
|
||||
}
|
||||
else if(last_selected[3] == 17){
|
||||
MASTER_SUPER_ADMIN_ACTION();
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
V13_ADMIN_ACTION();
|
||||
}
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 3){
|
||||
if(last_selected[2] == 6){
|
||||
if(last_selected[3] >= 1){
|
||||
MD_Vehicle_Spawner(players[ChangeNetPlayer].id);
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[2] == 7){
|
||||
if(last_selected[3] == 1){
|
||||
MD_Colour_Display_Action_1(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MD_Colour_Display_Action_2(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 3){
|
||||
MC_Vehicle_Colour_Num_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 21){
|
||||
if(last_selected[2] == 6){
|
||||
if(last_selected[3] == 1){
|
||||
MC_Recieved_Invites_Action();
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MC_Invite_Players_Action();
|
||||
}
|
||||
}
|
||||
}
|
||||
else Modmanager();
|
||||
}
|
||||
else if(menu_level == 5){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 7){
|
||||
if(last_selected[4] == 6){
|
||||
MC_Car_Spawner_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
MC_Vehicle_Addon_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
MC_Veh_Upgrade_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
if(last_selected[4] == 6){
|
||||
tele_Action_heli(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
tele_Action_airport(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
tele_Action_broker(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
tele_Action_dukes(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
tele_Action_algon(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
tele_Action_alder(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
tele_Action_bohan(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
tele_Action_happy(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 14){
|
||||
tele_Action_special(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 15){
|
||||
tele_Action_police(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
if(last_selected[4] == 11){
|
||||
int Guard;
|
||||
MD_Guard_Animations_Action(Guard);
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
MD_Attachments_Guard_Action();
|
||||
}
|
||||
// return;
|
||||
}
|
||||
else if(last_selected[3] == 17){
|
||||
//#ifdef admin
|
||||
if(last_selected[4] == 2){
|
||||
MASTER_ADMIN_V7_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 3){
|
||||
MASTER_ADMIN_V8_MESSAGE_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 4){
|
||||
MASTER_ADMIN_V8_PCHANGER_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 5){
|
||||
MASTER_ADMIN_V11_ANIMATIONS_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 6){
|
||||
MASTER_ADMIN_V11_STRIDES_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
MASTER_ADMIN_V8_CARSPAWN_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
MASTER_ADMIN_V8_TELEPORT_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
MASTER_ADMIN_V8_PUNISH_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
MASTER_ADMIN_V8_MENUCONTROLL_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
MASTER_ADMIN_V11_TROLL_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
MASTER_ADMIN_V8_FREEZE_ACTION();
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
MASTER_ADMIN_V11_SFREEZE_ACTION();
|
||||
}
|
||||
//#endif
|
||||
|
||||
//return;
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
if(last_selected[4] == 7){
|
||||
Admin_Message_Action();
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
Admin_Player_Action();
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
if(SelectedItem == 1){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE);
|
||||
menu_item[SelectedItem].extra_val = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE);
|
||||
}
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
Admin_Vehicle_Action();
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
Admin_Teleport_Action();
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
Admin_Weather_Action();
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
Admin_Model_Action();
|
||||
}
|
||||
else if(last_selected[4] == 14){
|
||||
Admin_Animations_Action();
|
||||
}
|
||||
else if(last_selected[4] == 15){
|
||||
Admin_Attachments_Action();
|
||||
}
|
||||
else if(last_selected[4] == 16){
|
||||
Admin_Troll_Action();
|
||||
}
|
||||
else if(last_selected[4] == 17){
|
||||
Admin_Menu_Action();
|
||||
}
|
||||
else if(last_selected[4] == 18){
|
||||
Admin_Freeze_Action();
|
||||
}
|
||||
else if(last_selected[4] == 19){
|
||||
Admin_Temp_Action();
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else if(menu_level == 6){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 7){
|
||||
if(last_selected[4] == 6){
|
||||
if(last_selected[5] >= 1){
|
||||
MD_Vehicle_Spawner(players[ChangeNetPlayer].id);
|
||||
//return;
|
||||
}
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
if(last_selected[5] == 1){
|
||||
MD_Colour_Display_Action_1(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 2){
|
||||
MD_Colour_Display_Action_2(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 3){
|
||||
MC_Vehicle_Colour_Num_Action(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
if(last_selected[3] == 17){
|
||||
if(last_selected[4] == 9){
|
||||
if(last_selected[5] >= 2){
|
||||
Admin_Vehicle_Spawn_Action();
|
||||
//return;
|
||||
}
|
||||
}
|
||||
//return;
|
||||
}
|
||||
// return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
//return;
|
||||
}
|
||||
else Modmanager();
|
||||
return;
|
||||
Base_Error(MODMANAGER_ERROR_ID_INVALID);
|
||||
}
|
||||
|
||||
void load_script_prioritized(void){
|
||||
if (DOES_SCRIPT_EXIST(load_script)){
|
||||
if (!Menu_Request_Sco){
|
||||
REQUEST_SCRIPT(load_script);
|
||||
Menu_Request_Sco = true;
|
||||
}
|
||||
if (HAS_SCRIPT_LOADED(load_script)){
|
||||
load_script = null_string;
|
||||
Menu_Has_Sco_Loaded = true;
|
||||
Menu_Request_Sco = false;
|
||||
MENU_ACTION();
|
||||
}
|
||||
}
|
||||
else{
|
||||
load_script = null_string;
|
||||
Base_Error(MODMANAGER_ERROR_ID_SCRIPT);
|
||||
}
|
||||
}
|
||||
713
Trident/MD_Content_Structure/MD_Menu_Setup.c
Normal file
713
Trident/MD_Content_Structure/MD_Menu_Setup.c
Normal file
@@ -0,0 +1,713 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
void MENU_SETUP(){ //ONE time we check for changenetplayer
|
||||
MD_Colour_Display_1 = false;
|
||||
MD_Colour_Display_2 = false;
|
||||
MD_Colour_Display_3 = false;
|
||||
if (menu_level == 1){
|
||||
MD_Main_Setup();
|
||||
return;
|
||||
}
|
||||
else if (menu_level == 2){
|
||||
if (last_selected[1] == 1){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MD_New_PlayerOptions_Setup(players[ChangeNetPlayer].id);
|
||||
return;
|
||||
}
|
||||
else if (last_selected[1] == 2){
|
||||
Crossbrowser_Setself();
|
||||
MC_Network_Start_Setup();
|
||||
return;
|
||||
}
|
||||
else if (last_selected[1] == 3){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MD_VehOpt_Pplayer_Setup();
|
||||
return;
|
||||
}
|
||||
else if (last_selected[1] == 4){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Weapon_Setup(players[ChangeNetPlayer].id);
|
||||
return;
|
||||
}
|
||||
else if (last_selected[1] == 5){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Network_Teleport_Setup(players[ChangeNetPlayer].id);
|
||||
return;
|
||||
}
|
||||
else if (last_selected[1] == 6){
|
||||
MC_Weather_Setup();
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 7){
|
||||
MD_Player_Changer_Setup(); //Updated
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 8){
|
||||
MD_Animations_Setup();
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 9){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MD_Attachments_Setup();
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 10){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MD_Rotations_Setup();
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 11){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Content_Builder_Setup();
|
||||
return;
|
||||
}
|
||||
else if (last_selected[1] == 13)return MC_Sco_Modloader_Main_Setup();
|
||||
else if (last_selected[1] == 14)return MC_Sco_Personal();
|
||||
else if (last_selected[1] == 16)return MC_Menu_Setting_Setup();
|
||||
else if (last_selected[1] == 21)return MC_Credits_Setup();
|
||||
else if (last_selected[1] == 22)
|
||||
{
|
||||
return MC_Premium_Main_Setup();
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(menu_level == 3){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] == 1) return MC_Network_All_Player_Setup();
|
||||
else if(last_selected[2] == 2) return MC_Navigator_Setup(players[ChangeNetPlayer].id);
|
||||
else if(last_selected[2] > 3 )return MC_Network_Main_Setup();
|
||||
}
|
||||
else if(last_selected[1] == 3){
|
||||
if(last_selected[2] == 6){
|
||||
Crossbrowser_Setself(); //!Select urself on entering this submenu
|
||||
MC_Car_Spawner_Setup(players[ChangeNetPlayer].id);
|
||||
return;
|
||||
}
|
||||
else if(last_selected[2] == 7){
|
||||
Crossbrowser_Setself();
|
||||
MC_Veh_Addons_Setup(players[ChangeNetPlayer].id);
|
||||
return;
|
||||
}
|
||||
else if(last_selected[2] == 8){
|
||||
Crossbrowser_Setself();
|
||||
MC_Veh_Upgrade_Setup(players[ChangeNetPlayer].id);
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 5){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
if(last_selected[2] == 6){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_heli(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 7){
|
||||
MC_Teleport_airport(players[ChangeNetPlayer].id);
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
}
|
||||
else if(last_selected[2] == 8){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_broker(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 9){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_dukes(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 10){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_algon(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 11){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_alder(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 12){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_bohan(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 13){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_happy(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 14){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_special(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[2] == 15){
|
||||
Crossbrowser_Setself();//!Select urself on entering this submenu
|
||||
MC_Teleport_police(players[ChangeNetPlayer].id);
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 7){
|
||||
if(last_selected[2] == 21){
|
||||
MD_Player_MoreChanger_Setup();
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 13){
|
||||
if(last_selected[2] == 1){
|
||||
MC_Sco_Recommended();
|
||||
}
|
||||
if(last_selected[2] == 2){
|
||||
MC_Sco_More_Menus();
|
||||
}
|
||||
if(last_selected[2] == 3){
|
||||
MC_Sco_Weapons();
|
||||
}
|
||||
if(last_selected[2] == 4){
|
||||
MC_Sco_Veh_Weapons();
|
||||
}
|
||||
if(last_selected[2] == 5){
|
||||
MC_Sco_Handling();
|
||||
}
|
||||
if(last_selected[2] == 6){
|
||||
MC_Sco_Object_Cars_Spawners();
|
||||
}
|
||||
if(last_selected[2] == 7){
|
||||
MC_SpecialFun_mods();
|
||||
}
|
||||
if(last_selected[2] == 8){
|
||||
MC_Sco_Map_Main();
|
||||
}
|
||||
if(last_selected[2] == 9){
|
||||
MC_Sco_Minimaps();
|
||||
}
|
||||
if(last_selected[2] == 10){
|
||||
MC_Sort_Devs_Setup();
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 22)
|
||||
{
|
||||
if(last_selected[2] == 12){
|
||||
BlackscreenID_Setup();
|
||||
}
|
||||
else if(last_selected[2] == 13){
|
||||
MC_Invite_Main_Setup();
|
||||
}
|
||||
else if(last_selected[2] == 14){
|
||||
#ifdef SuperAdmin
|
||||
MD_SuperAdmin_Setup();
|
||||
#endif
|
||||
}
|
||||
else if(last_selected[2] == 15){
|
||||
MC_Development_Setup();
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(menu_level == 4){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 5){
|
||||
MC_Network_Player_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 6){
|
||||
MC_Weapon_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 7){
|
||||
MD_VehOpt_NetPlayer_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
MC_Network_Teleport_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
MD_Army_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 10){
|
||||
MD_Rotations_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 11){
|
||||
//MC_Content_Builder_Setup();
|
||||
MD_Attachments_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 12){
|
||||
MC_Deletion_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 15){
|
||||
MC_Net_Unfriendly_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 16){
|
||||
//MC_Network_MD_Pilot_Setup(players[ChangeNetPlayer].id); // yeah we will work on ID
|
||||
}
|
||||
else if(last_selected[3] == 17){
|
||||
#ifdef Admin
|
||||
MASTER_SUPER_ADMIN_SETUP();
|
||||
#endif
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
#ifdef Admin
|
||||
V13_ADMIN_SETUP();
|
||||
#endif
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 3){
|
||||
if(last_selected[2] == 6){
|
||||
if(last_selected[3] == 1){
|
||||
Favourites_setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
Sport_Cars_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 3){
|
||||
Two_Doors_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 4){
|
||||
Four_Doors_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 5){
|
||||
Four_Doors__2_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 6){
|
||||
Classics_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 7){
|
||||
Off_Road_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
Rusty_Cars_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
Public_Service_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 10){
|
||||
Emergency_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 11){
|
||||
Workplace_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 12){
|
||||
Workplace_2_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 13){
|
||||
Bike_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 14){
|
||||
Boat_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[3] == 15){
|
||||
Fly_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
return;
|
||||
}
|
||||
if(last_selected[2] == 7){
|
||||
if(last_selected[3] == 1){
|
||||
MD_Colour_Display_Setup_1(players[ChangeNetPlayer].id);
|
||||
MD_Colour_Display_1 = false;
|
||||
MD_Colour_Display_2 = true;
|
||||
MD_Colour_Display_3 = false;
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MD_Colour_Display_Setup_2(players[ChangeNetPlayer].id);
|
||||
MD_Colour_Display_3 = true;
|
||||
MD_Colour_Display_1 = false;
|
||||
MD_Colour_Display_2 = false;
|
||||
}
|
||||
else if(last_selected[3] == 3){
|
||||
MC_Vehicle_Colour_Num_Setup(players[ChangeNetPlayer].id);
|
||||
MD_Colour_Display_1 = false;
|
||||
MD_Colour_Display_2 = false;
|
||||
MD_Colour_Display_3 = false;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
else if(last_selected[1] == 13){
|
||||
if(last_selected[2] == 8){
|
||||
if(last_selected[3] == 1){
|
||||
MC_Sco_Maps_Airport_Lockdown();
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MC_Sco_Maps_Teleporter();
|
||||
}
|
||||
else if(last_selected[3] == 3){
|
||||
MC_Sco_Maps_Butchers();
|
||||
}
|
||||
else if(last_selected[3] == 4){
|
||||
MC_Sco_Maps_Racetracks();
|
||||
}
|
||||
else if(last_selected[3] == 5){
|
||||
MC_Sco_Maps_Buildings();
|
||||
}
|
||||
else if(last_selected[3] == 6){
|
||||
MC_Sco_Maps_Airport_Ramps();
|
||||
}
|
||||
else if(last_selected[3] == 7){
|
||||
MC_Sco_Maps_Extra();
|
||||
}
|
||||
return;
|
||||
}
|
||||
if(last_selected[2] == 10){
|
||||
if(last_selected[3] == 1){
|
||||
MC_Buffeting();
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MC_Boubou();
|
||||
}
|
||||
else if(last_selected[3] == 3){
|
||||
MC_Chrome();
|
||||
}
|
||||
else if(last_selected[3] == 4){
|
||||
MC_Dark_Smokes();
|
||||
}
|
||||
else if(last_selected[3] == 5){
|
||||
MC_Dax();
|
||||
}
|
||||
else if(last_selected[3] == 6){
|
||||
MC_Emanuel();
|
||||
}
|
||||
else if(last_selected[3] == 7){
|
||||
MC_EvilB();
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
MC_Hun();
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
MC_JDMAlex();
|
||||
}
|
||||
else if(last_selected[3] == 10){
|
||||
MC_Jumper();
|
||||
}
|
||||
else if(last_selected[3] == 11){
|
||||
MC_Keredor();
|
||||
}
|
||||
else if(last_selected[3] == 12){
|
||||
MC_Motions();
|
||||
}
|
||||
else if(last_selected[3] == 13){
|
||||
MC_Ohman();
|
||||
}
|
||||
else if(last_selected[3] == 14){
|
||||
MC_PsxColt();
|
||||
}
|
||||
else if(last_selected[3] == 15){
|
||||
MC_Rev();
|
||||
}
|
||||
else if(last_selected[3] == 16){
|
||||
MC_Rodd();
|
||||
}
|
||||
else if(last_selected[3] == 17){
|
||||
MC_Shockwave();
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
MC_XFChewy();
|
||||
}
|
||||
else if(last_selected[3] == 19){
|
||||
MC_Various();
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 22){
|
||||
if(last_selected[2] == 13){
|
||||
if(last_selected[3] == 1){
|
||||
MC_Recieved_Invites_Setup();
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
MC_Invite_Players_Setup();
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(menu_level == 5){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 7){
|
||||
if(last_selected[4] == 6){
|
||||
MC_Car_Spawner_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
MC_Veh_Addons_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
MC_Veh_Upgrade_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[3] == 8){
|
||||
if(last_selected[4] == 6){
|
||||
MC_Teleport_heli(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
MC_Teleport_airport(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
MC_Teleport_broker(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
MC_Teleport_dukes(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
MC_Teleport_algon(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
MC_Teleport_alder(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
MC_Teleport_bohan(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
MC_Teleport_happy(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 14){
|
||||
MC_Teleport_special(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 15){
|
||||
MC_Teleport_police(players[ChangeNetPlayer].id);
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
if(last_selected[4] == 11){
|
||||
MD_Animations_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
MD_Attachments_Setup();
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[3] == 17){
|
||||
#ifdef Admin
|
||||
if(last_selected[4] == 2){
|
||||
MASTER_ADMIN_V7_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 3){
|
||||
MASTER_ADMIN_V8_MESSAGE_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 4){
|
||||
MASTER_ADMIN_V8_PCHANGER_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 5){
|
||||
MASTER_ADMIN_V11_ANIMATIONS_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 6){
|
||||
MASTER_ADMIN_V11_STRIDES_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
MASTER_ADMIN_V8_CARSPAWN_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
MASTER_ADMIN_V8_TELEPORT_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
MASTER_ADMIN_V8_PUNISH_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
MASTER_ADMIN_V8_MENUCONTROLL_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
MASTER_ADMIN_V11_TROLL_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
MASTER_ADMIN_V8_FREEZE_SETUP();
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
MASTER_ADMIN_V11_SFREEZE_SETUP();
|
||||
}
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
#ifdef Admin
|
||||
if(last_selected[4] == 7){
|
||||
Admin_Message_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
Admin_Player_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
MC_Car_Spawner_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
Admin_Vehicle_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
Admin_Teleport_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
Admin_Weather_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
Admin_Model_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 14){
|
||||
Admin_Animations_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 15){
|
||||
Admin_Attachments_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 16){
|
||||
Admin_Troll_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 17){
|
||||
Admin_Menu_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 18){
|
||||
Admin_Freeze_Setup();
|
||||
}
|
||||
else if(last_selected[4] == 19){
|
||||
Admin_Temp_Setup();
|
||||
}
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(menu_level == 6){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3 ){
|
||||
if(last_selected[3] == 7){
|
||||
if(last_selected[4] == 6){
|
||||
if(last_selected[5] == 1){
|
||||
Favourites_setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 2){
|
||||
Sport_Cars_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 3){
|
||||
Two_Doors_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 4){
|
||||
Four_Doors_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 5){
|
||||
Four_Doors__2_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 6){
|
||||
Classics_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 7){
|
||||
Off_Road_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 8){
|
||||
Rusty_Cars_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 9){
|
||||
Public_Service_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 10){
|
||||
Emergency_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 11){
|
||||
Workplace_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 12){
|
||||
Workplace_2_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 13){
|
||||
Bike_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 14){
|
||||
Boat_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 15){
|
||||
Fly_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[4] == 7){
|
||||
if(last_selected[5] == 1){
|
||||
MD_Colour_Display_Setup_1(players[ChangeNetPlayer].id);
|
||||
MD_Colour_Display_1 = false;
|
||||
MD_Colour_Display_2 = true;
|
||||
MD_Colour_Display_3 = false;
|
||||
}
|
||||
else if(last_selected[5] == 2){
|
||||
MD_Colour_Display_Setup_2(players[ChangeNetPlayer].id);
|
||||
MD_Colour_Display_3 = true;
|
||||
MD_Colour_Display_1 = false;
|
||||
MD_Colour_Display_2 = false;
|
||||
}
|
||||
else if(last_selected[5] == 3){
|
||||
MC_Vehicle_Colour_Num_Setup(players[ChangeNetPlayer].id);
|
||||
MD_Colour_Display_1 = false;
|
||||
MD_Colour_Display_2 = false;
|
||||
MD_Colour_Display_3 = false;
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
else if(last_selected[3] == 17){
|
||||
if(last_selected[4] == 9){
|
||||
if(last_selected[5] == 2){
|
||||
Favourites_setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 3){
|
||||
Sport_Cars_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 4){
|
||||
Two_Doors_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 5){
|
||||
Four_Doors_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 6){
|
||||
Four_Doors__2_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 7){
|
||||
Classics_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 8){
|
||||
Off_Road_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 9){
|
||||
Rusty_Cars_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 10){
|
||||
Public_Service_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 11){
|
||||
Emergency_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 12){
|
||||
Workplace_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 13){
|
||||
Workplace_2_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 14){
|
||||
Bike_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 15){
|
||||
Boat_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(last_selected[5] == 16){
|
||||
Fly_Setup(players[ChangeNetPlayer].id);
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
return;
|
||||
}
|
||||
return; //Take this out when all checked return;
|
||||
Base_Error(MODMANAGER_ERROR_ID_INVALID);
|
||||
}
|
||||
void Base_set(void){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SET_ITEMS, true);
|
||||
MENU_HEADER = MD_Extend_Header;
|
||||
MENU_SUB_HEADER = MD_Extend_SubHeader;
|
||||
MENU_FOOTER = MD_Extend_Footer;
|
||||
MENU_SETUP(); //We need to add Check ID to char here --> no freezes anymore
|
||||
}
|
||||
145
Trident/MD_Contents/MDC_Animation_Options.c
Normal file
145
Trident/MD_Contents/MDC_Animation_Options.c
Normal file
@@ -0,0 +1,145 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
void MD_Animations_Setup(void){
|
||||
item_highlighted = 10;
|
||||
|
||||
MENU_SUB_HEADER = "Animation Engine";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD A N I M A T I O N S E T T I N G S ~BLIP_94~"); //5
|
||||
AddBool("Give Attachments For Animations",GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS)); //6
|
||||
AddFunction_Value("Animation Speed",10); //7//Normsl - Medium - Fast
|
||||
AddBool("Loop Animations",Loop_Anims); //8
|
||||
Add_JumpOver("~BLIP_94~ MD P L A Y A N I M A T I O N S ~BLIP_94~"); //9
|
||||
AddFunction_Value("Strides ",11); //10
|
||||
AddFunction_Value("Dances",9); //11
|
||||
AddFunction_Value("Gestures",22); //12
|
||||
AddFunction_Value("Tools",5); //13
|
||||
AddFunction_Value("Heli",10); //14
|
||||
AddFunction_Value("Bike",7); //15
|
||||
AddFunction_Value("Sliding",5); //16
|
||||
AddFunction_Value("Swimming",5); //17
|
||||
AddFunction_Value("Sitting",6); //18
|
||||
AddFunction_Value("Pause",6); //19
|
||||
AddFunction_Value("Sex",14); //20
|
||||
AddFunction_Value("Special",3); //21
|
||||
//Load_Sco("~BLIP_68~ Superman ~PAD_RB~+~PAD_DPAD_DOWN~/~PAD_LB~+~PAD_LSTICK_ALL~/", "eb_superman");
|
||||
//Load_Sco("~BLIP_68~ Swimming Everywhere ~PAD_RB~+~PAD_DPAD_DOWN~", "hand3");
|
||||
//Load_Sco("~BLIP_68~ Superhero ~PAD_DPAD_UP~ + ~COL_NET_4~F ~PAD_RT~ / M ~PAD_LT~", "model2");
|
||||
return;
|
||||
|
||||
}
|
||||
|
||||
void MD_Animations_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
if(SelectedItem == 6){
|
||||
ToggleBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS);
|
||||
//Alert_Two("~BLIP_76~ ~c~Give tool with animation", Attachment_OnAnims ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
animationspeed = 1.00f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To Default",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
animationspeed = 1.50f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 2~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
animationspeed = 2.00f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 3~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
animationspeed = 2.50f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 4~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
animationspeed = 3.00f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 5~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
animationspeed = 3.50f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 6~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
animationspeed = 4.00f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 7~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
animationspeed = 4.50f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 8~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
animationspeed = 5.00f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 9~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
animationspeed = 5.50f;
|
||||
Alert("~b~MD: ~s~Animspeed Set To 10~n~ Press Animation 2 Times To Play With Selected Speed.",false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
Loop_Anims = !Loop_Anims;
|
||||
menu_item[SelectedItem].extra_val = Loop_Anims;
|
||||
Alert_Two("~BLIP_76~ ~c~Animations Looped", Loop_Anims ? PrintON : PrintOFF ,false);
|
||||
if(Loop_Anims) Animationloop = 99999.00f;
|
||||
else Animationloop = 0.00f;
|
||||
}
|
||||
//Jumpover //9
|
||||
else if(SelectedItem == 10){
|
||||
MD_Stride_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 11){
|
||||
MD_Anim_Dance_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
MD_Anim_Gesture_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
MD_Anim_Tool_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
MD_Anim_Heli_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 15){
|
||||
MD_Anim_Bike_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
MD_Anim_Sliding_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
MD_Anim_Swim_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 18){
|
||||
MD_Anim_Sit_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 19){
|
||||
MD_Anim_Pause_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 20){
|
||||
MD_Anim_Sex_Strings_Action(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 21){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
TOGGLE_SCRIPT("hand3");
|
||||
Alert_Two("~b~MD: ~s~Swimming everywhere",(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("hand3") > 0) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
TOGGLE_SCRIPT("eb_superman");
|
||||
Alert_Two("~b~MD: ~s~Superman",(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("eb_superman") > 0) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){//Weapon_String[6] = "~BLIP_49~ Remove Player Weapons";
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("hand3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("eb_superman");
|
||||
Alert("~b~MD: ~s~All scripts disabled" ,false);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
943
Trident/MD_Contents/MDC_Army_Options.c
Normal file
943
Trident/MD_Contents/MDC_Army_Options.c
Normal file
@@ -0,0 +1,943 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/** NEW SETUP TO BE IMPLEMENTED **/
|
||||
void MD_Army_Setup(void){
|
||||
item_highlighted = 14;
|
||||
|
||||
MENU_SUB_HEADER = "MD Personal Army";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD G U A R D S E T T I N G S ~BLIP_94~"); //5
|
||||
AddFunction_Value("Guards~c~ Weapons",12); //6
|
||||
AddFunction_Value("Guards~c~ Formation",5); //7
|
||||
AddFunction_Value("Guards~c~ Spacing",4); //8
|
||||
AddFunction_Value_CB("Guard config",6); //9 // Arm your vehicle / Guards Godmode give / Guards Godmode Take / Guards helmet Give / Guard Helmet Take
|
||||
AddFunction_Value_CB("Attack Mode",5); //10 //Attack Now // Attack Teleported / Clear Tasks
|
||||
AddSubMenu("Guards ~COL_NET_4~Animations / Strides ~PAD_RIGHT~"); //11
|
||||
AddSubMenu("Guards ~COL_NET_4~Attachments ~PAD_RIGHT~"); //12
|
||||
Add_JumpOver("~BLIP_94~ MD G U A R D S S P A W N E R ~BLIP_94~"); //13
|
||||
AddFunction_Value_CB("Uniforms",14); //14
|
||||
AddFunction_Value_CB("Gang Members",4); //15
|
||||
AddFunction_Value_CB("Stripper",2); //16
|
||||
AddFunction_Value_CB("Medical",5); //17
|
||||
AddFunction_Value_CB("Business",9); //18
|
||||
AddFunction_Value_CB("Cluck",2); //19
|
||||
AddFunction_Value_CB("Homo",2); //20
|
||||
AddFunction_Value_CB("Singleplayer",9); //21 //Yes! 21 is possible if needed :)
|
||||
/**Remember strings*/
|
||||
//menu_item[1].num_val = (AutoSpectate ? 2 : 1);
|
||||
//menu_item[10].num_val = group_formation;
|
||||
//menu_item[11].num_val = group_spacing;
|
||||
return;
|
||||
}
|
||||
|
||||
void MD_Army_Action(void){
|
||||
//!Set urself as default!/
|
||||
//players[ChangeNetPlayer].id = iPlayer;
|
||||
//!//
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
//Sub 6
|
||||
//Sub 7
|
||||
if(SelectedItem == 6){
|
||||
if(menu_item[SelectedItem].num_val == 1 )Weapon_BGuards(WEAPON_DEAGLE);
|
||||
else if(menu_item[SelectedItem].num_val == 2) Weapon_BGuards(WEAPON_SHOTGUN);
|
||||
else if(menu_item[SelectedItem].num_val == 3) Weapon_BGuards(WEAPON_MP5);
|
||||
else if(menu_item[SelectedItem].num_val == 4) Weapon_BGuards(WEAPON_M4);
|
||||
else if(menu_item[SelectedItem].num_val == 5) Weapon_BGuards(WEAPON_RLAUNCHER);
|
||||
else if(menu_item[SelectedItem].num_val == 6) Weapon_BGuards(WEAPON_SNIPERRIFLE);
|
||||
else if(menu_item[SelectedItem].num_val == 7) Weapon_BGuards(WEAPON_GRENADE);
|
||||
else if(menu_item[SelectedItem].num_val == 8) Weapon_BGuards(WEAPON_MOLOTOV);
|
||||
else if(menu_item[SelectedItem].num_val == 9) Weapon_BGuards(WEAPON_BASEBALLBAT);
|
||||
else if(menu_item[SelectedItem].num_val == 10) Weapon_BGuards(WEAPON_KNIFE);
|
||||
else if(menu_item[SelectedItem].num_val == 11) Weapon_BGuards(WEAPON_POOLCUE);
|
||||
else if(menu_item[SelectedItem].num_val == 12)Remove_Weapon_BGuards();
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
group_formation = menu_item[SelectedItem].num_val;
|
||||
SET_GROUP_FORMATION(BG_Group, group_formation);
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
group_spacing = menu_item[SelectedItem].num_val;
|
||||
SET_GROUP_FORMATION_SPACING(BG_Group, group_spacing);
|
||||
}
|
||||
else if(SelectedItem == 9){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3){
|
||||
Alert("~b~MD: ~s~Spy mode doesnt allow this!",false);
|
||||
return;
|
||||
}
|
||||
BGuards_Arm_Vehicle(players[ChangeNetPlayer].id); //Freeze when no player selected!!
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2)Helmets_BGuards();
|
||||
else if(menu_item[SelectedItem].num_val == 3)Remove_Helmets_BGuards();
|
||||
else if(menu_item[SelectedItem].num_val == 4)Set_BGuards_Invincible(true);
|
||||
else if(menu_item[SelectedItem].num_val == 5)Set_BGuards_Invincible(false);
|
||||
else if(menu_item[SelectedItem].num_val == 6) Clear_Task_BGuards();
|
||||
}
|
||||
else if(SelectedItem == 10){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id)); //should make this take one arg..
|
||||
char* buffer[16]; //64 characters
|
||||
Strcpy(buffer, "~b~MD: ~s~Guards will now attack ~COL_NET_"); //37
|
||||
itoa( (players[ChangeNetPlayer].id + 1), buffer); //39
|
||||
Strcat(buffer, "~"); //40
|
||||
Strcat(buffer, GET_PLAYER_NAME(players[ChangeNetPlayer].id)); //60
|
||||
Strcat(buffer, "~s~."); //59
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(PLAYER_CHAR(players[ChangeNetPlayer].id),&x,&y,&z);
|
||||
Teleport_BGuards_Coord(x,y,z); //--> this needs to be looked at, doesnt work
|
||||
WAIT(100);
|
||||
BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
char* buffer[16]; //64 characters
|
||||
Strcpy(buffer, "~b~MD: ~s~Guards will now attack ~COL_NET_"); //37
|
||||
itoa( (players[ChangeNetPlayer].id + 1), buffer); //39
|
||||
Strcat(buffer, "~"); //40
|
||||
Strcat(buffer, GET_PLAYER_NAME(players[ChangeNetPlayer].id)); //60
|
||||
Strcat(buffer, "~s~."); //59
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3)Clear_One_BGuards();
|
||||
else if(menu_item[SelectedItem].num_val == 4)Clear_All_BGuards();
|
||||
else if(menu_item[SelectedItem].num_val == 5) Clear_Task_BGuards();
|
||||
//else if(menu_item[SelectedItem].num_val == 6)Fire_BG_Weapon(players[ChangeNetPlayer].id);
|
||||
}
|
||||
//Jumpover
|
||||
else if(SelectedItem == 14){ //Uniforms
|
||||
int model[14];
|
||||
model[0] = MODEL_M_M_FATCOP_01;
|
||||
model[1] = MODEL_M_Y_SWAT;
|
||||
model[2] = MODEL_M_Y_NHELIPILOT;
|
||||
model[3] = MODEL_M_M_FBI;
|
||||
model[4] = MODEL_M_Y_COP;
|
||||
model[5] = MODEL_M_Y_COP_TRAFFIC;
|
||||
model[6] = MODEL_M_Y_FIREMAN;
|
||||
model[7] = MODEL_M_M_FIRECHIEF;
|
||||
model[8] = MODEL_M_M_SECURITYMAN;
|
||||
model[9] = MODEL_M_M_ARMOURED;
|
||||
model[10] = MODEL_M_Y_CLUBFIT;
|
||||
model[11] = MODEL_M_Y_PRISON;
|
||||
model[12] = MODEL_M_Y_PRISONAOM;
|
||||
model[13] = MODEL_F_Y_FF_CLUCK_R;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 15){ //Gang Members
|
||||
int model[4];
|
||||
model[0] = MODEL_M_Y_GAFR_LO_01;
|
||||
model[1] = MODEL_M_Y_GAFR_LO_02;
|
||||
model[2] = MODEL_M_Y_GAFR_HI_01;
|
||||
model[3] = MODEL_M_Y_GAFR_HI_02;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 16){ //Stripper
|
||||
int model[2];
|
||||
model[0] = MODEL_F_Y_STRIPPERC01;
|
||||
model[1] = MODEL_F_Y_STRIPPERC02;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 17){ //Medical
|
||||
int model[5];
|
||||
model[0] = MODEL_M_M_DOCTOR_01;
|
||||
model[1] = MODEL_F_Y_DOCTOR_01;
|
||||
model[2] = MODEL_F_Y_NURSE;
|
||||
model[3] = MODEL_M_M_DOC_SCRUBS_01;
|
||||
model[4] = MODEL_M_M_DODGYDOC;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 18){ //Business
|
||||
int model[9];
|
||||
model[0] = MODEL_F_M_BUSINESS_01;
|
||||
model[1] = MODEL_F_M_BUSINESS_02;
|
||||
model[2] = MODEL_F_M_PBUSINESS;
|
||||
model[3] = MODEL_F_Y_BUSINESS_01;
|
||||
model[4] = MODEL_M_M_BUSINESS_02;
|
||||
model[5] = MODEL_M_M_BUSINESS_03;
|
||||
model[6] = MODEL_M_M_PBUSINESS_01;
|
||||
model[7] = MODEL_M_Y_BUSINESS_01;
|
||||
model[8] = MODEL_M_Y_BUSINESS_02;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 19){ //Broken
|
||||
int model[2];
|
||||
model[0] = MODEL_F_Y_FF_CLUCK_R;
|
||||
model[1] = MODEL_M_Y_FF_CLUCK_R;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET, true);
|
||||
GIVE_PED_HELMET(pPlayer);
|
||||
|
||||
}
|
||||
else if(SelectedItem == 20){ //Homo
|
||||
int model[2];
|
||||
model[0] = MODEL_M_M_GAYMID; //= admin command change model homo
|
||||
model[1] = MODEL_M_Y_GAYYOUNG;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 21){ //Singleplayer
|
||||
int model[9];
|
||||
model[0] = MODEL_IG_LILJACOB;
|
||||
model[1] = MODEL_IG_BRUCIE;
|
||||
model[2] = MODEL_IG_ROMAN;
|
||||
model[3] = MODEL_IG_DWAYNE;
|
||||
model[4] = MODEL_IG_BADMAN;
|
||||
model[5] = MODEL_IG_DMITRI;
|
||||
model[6] = MODEL_IG_MICHELLE;
|
||||
model[7] = MODEL_IG_PACKIE_MC;
|
||||
model[8] = MODEL_IG_PLAYBOY_X;
|
||||
Spawn_BGuards(PLAYER_CHAR(players[ChangeNetPlayer].id),model[(menu_item[SelectedItem].num_val - 1)],BGWeapontype_Lastselected);
|
||||
if(BG_Attack_Selected_Player) BGuard_Send_After_PlayerPED(players[ChangeNetPlayer].id, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MD_Attachments_Guard_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
if(SelectedItem == 6){
|
||||
renew_attached = !renew_attached;
|
||||
menu_item[SelectedItem].extra_val = renew_attached;
|
||||
Alert_Two("~BLIP_76~ ~c~Clear Objects before attaching new ones", renew_attached ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
if(SelectedItem == 7){//8 Cubes
|
||||
float obj_x , obj_y, obj_z, obj_rx, obj_ry, obj_rz;
|
||||
int pedbone;
|
||||
Object object;
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1)object = 0x2718C626, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 2)object = 0x5C5030D4, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 3)object = 0xCCEA11CA, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 4)object = 0xBB1F6E71, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 5)object = 0xDD28B247, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 6)object = 0xA6E545FD, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Attach_Objects_BGuards( 0x2718C626,0,1,0.0,0.0,0.0,0.0,3.0,0);
|
||||
Attach_Objects_BGuards( 0xDD28B247,0,-1,0.0,0.0,0.0,0.0,3.0,1);
|
||||
Attach_Objects_BGuards( 0xCCEA11CA,0,0,1,0.0,0.0,0.0,3.0,2);
|
||||
Attach_Objects_BGuards( 0xBB1F6E71,0,0,-1,0.0,0.0,0.0,3.0,3);
|
||||
Attach_Objects_BGuards( 0xA6E545FD,0,0,0.0,1,0.0,0.0,3.0,4);
|
||||
Attach_Objects_BGuards( 0x5C5030D4,0,0,0.0,-1,0.0,0.0,3.0,5);
|
||||
Alert("~BLIP_76~ ~c~Attached Cubeman",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 8){
|
||||
Attach_Objects_BGuards( object,pedbone,obj_x, obj_y, obj_z, obj_rx, obj_ry,obj_rz,0);
|
||||
Alert("~BLIP_76~ ~c~Selected Object Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){//12 Hands
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){//Umbrella
|
||||
Attach_Objects_BGuards(-797519906,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards( -853576856,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.1400, 6.2300,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Umbrella 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards( -1159420742,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.1400, 6.2300,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Umbrella 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards( -853576856,BONE_RIGHT_HAND, 0.1311, -0.0010, 0.1784, 0.0000, 1.5200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Gunbrella 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards( -1159420742,BONE_RIGHT_HAND, 0.1311, -0.0010, 0.1784, 0.0000, 1.5200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Gunbrella 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Attach_Objects_BGuards( -797519906,BONE_RIGHT_HAND, 0.1311, -0.0010, 0.1784, 0.0000, 1.5200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Gunbrella 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){//Shopping bag
|
||||
Attach_Objects_BGuards(1643885955,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){//Luggage
|
||||
Attach_Objects_BGuards(-647773926,BONE_RIGHT_HAND, 0.2806, 0.0000, 0, 6.3000, 4.7000,0.0000,0);
|
||||
Attach_Objects_BGuards(-647773926,BONE_LEFT_HAND, 0.2806, 0.0000,0, 6.3000, 4.7000,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
Attach_Objects_BGuards( -311280716,BONE_RIGHT_HAND, -0.1000, 0.0000, 0, 0.0000, 1.2500,0.0000,0);
|
||||
Attach_Objects_BGuards( -311280716,BONE_LEFT_HAND, -0.1000, 0.0000, 0, 0.0000, 1.6000,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
Attach_Objects_BGuards( 1443084780,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Attach_Objects_BGuards( -886669251,BONE_RIGHT_HAND, 0.4628, -0.0037, 0.0618, 0.0000, 3.1899,0.0000,1);
|
||||
Attach_Objects_BGuards( -771659842,BONE_RIGHT_HAND, -0.0232, 0.0232, 0.0918, 0.0000, 4.7500,0.0000,2);
|
||||
Alert("~BLIP_76~ ~c~Glowgun",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
Attach_Objects_BGuards( 1758564455,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Attach_Objects_BGuards( 758835816,BONE_RIGHT_HAND, 0.0650, -0.0227, 0.6113, 4.6200, 1.5100,0.5300,1);
|
||||
Attach_Objects_BGuards( 758835816,BONE_RIGHT_HAND, 0.1100, -0.0618, 0.6185, 1.5400, 1.5100,0.5300,2);
|
||||
Alert("~BLIP_76~ ~c~Lightsaber",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){//Luggage
|
||||
Attach_Objects_BGuards( 1735854596,BONE_RIGHT_HAND, -0.0117, -0.0007, 0.0075, 6.2600, 4.0699,0.0600,0);
|
||||
Attach_Objects_BGuards( 1166402234,BONE_RIGHT_HAND, 0.4756, -0.0022, 0.0484, 4.8100, 4.7600,0.0000,1);
|
||||
Attach_Objects_BGuards( 1166402234,BONE_RIGHT_HAND, 0.4756, -0.0022, 0.0591, 1.6600, 4.7600,0.0000,2);
|
||||
Attach_Objects_BGuards( -886669251,BONE_RIGHT_HAND, 0.5622, 0.0751, 0.0427, 0.0000, 0.0000,3.2500,3);
|
||||
Alert("~BLIP_76~ ~c~LaserGun",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){
|
||||
Attach_Objects_BGuards( 1735854596,BONE_RIGHT_HAND, -0.0117, -0.0007, 0.0075, 6.2600, 4.0699,0.0600,0);
|
||||
Attach_Objects_BGuards( 1516578222,BONE_RIGHT_HAND, 0.4661, 0.0144, 0.0529, 0.0000, 0.0000,4.7800,1);
|
||||
Alert("~BLIP_76~ ~c~RocketGun",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){
|
||||
Attach_Objects_BGuards( 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 0.0000, 0.1000,0.0000,0);
|
||||
Attach_Objects_BGuards( 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 1.0000, 0.1000,0.0000,1);
|
||||
Attach_Objects_BGuards( 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 2.0000, 0.1000,0.0000,2);
|
||||
Attach_Objects_BGuards( 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 3.0000, 0.1000,0.0000,3);
|
||||
Attach_Objects_BGuards( 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 4.0000, 0.1000,0.0000,4);
|
||||
Attach_Objects_BGuards( 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 5.0000, 0.1000,0.0000,5);
|
||||
Alert("~BLIP_76~ ~c~TurboM4",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 15){
|
||||
Attach_Objects_BGuards( 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 0.4500, 0.0000,0.0000,0);
|
||||
Attach_Objects_BGuards( 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 1.5000, 0.0000,0.0000,1);
|
||||
Attach_Objects_BGuards( 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 2.5500, 0.0000,0.0000,2);
|
||||
Attach_Objects_BGuards( 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 3.6000, 0.0000,0.0000,3);
|
||||
Attach_Objects_BGuards( 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 4.6500, 0.0000,0.0000,4);
|
||||
Attach_Objects_BGuards( 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 5.7000, 0.0000,0.0000,5);
|
||||
Alert("~BLIP_76~ ~c~TurboDeagle",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 16){
|
||||
Attach_Objects_BGuards( 1443084780,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.1100,0);
|
||||
Attach_Objects_BGuards( 945404608,BONE_RIGHT_HAND, -0.3094, 0.0000, 0.0000, 0.0300, 4.8100,0.0400,1);
|
||||
Attach_Objects_BGuards( 1005973733,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 5.8700, 5.8400,1.6000,2);
|
||||
Attach_Objects_BGuards( 1781111577,BONE_RIGHT_HAND, 0.1972, 0.0000, 0.0000, 5.8600, 5.8400,1.6000,3);
|
||||
Attach_Objects_BGuards( 1781111577,BONE_RIGHT_HAND, 0.1972, 0.0000, 0.0000, 5.8600, 5.8400,1.6000,4);
|
||||
Attach_Objects_BGuards( -771659842,BONE_RIGHT_HAND, 0.3189, 0.0000, 0.0000, 0.0300, 1.4700,0.0000,5);
|
||||
Alert("~BLIP_76~ ~c~Disco Launcher",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 17){
|
||||
Attach_Objects_BGuards( 2084514704,BONE_HEAD, -0.4178, 0.3060, -0.1397, 1.4000, 5.6700,1.5500,0);
|
||||
Alert("~BLIP_76~ ~c~SaxPlayer",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 18){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 9){ //12 Tools
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){//Saw
|
||||
Attach_Objects_BGuards( 843240193,BONE_RIGHT_HAND, 0.1672, -0.0931, 0.7556, 6.1500, 3.2400,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Cane",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){//Axe
|
||||
Attach_Objects_BGuards( 843240193,BONE_RIGHT_HAND, 0.1672, -0.0931, 0.7556, 6.1500, 3.2400,0.0000,0);
|
||||
Attach_Objects_BGuards( -886669251,BONE_RIGHT_HAND, 0.1694, -0.1615, 1.1096, 5.9500, 1.7300,5.1900,1);
|
||||
Alert("~BLIP_76~ ~c~Cane v2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){//Jackhammer
|
||||
Attach_Objects_BGuards( 2113166995,BONE_RIGHT_HAND, 0.0661, -0.0422, 0.2706, 0.1200, 0.0200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Slegehammer",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){//Pickaxe
|
||||
Attach_Objects_BGuards( -257284559,BONE_RIGHT_HAND, 0.0417, -0.0290, 0.1885, 0.1200, 6.2500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Pickaxe",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){//Rake
|
||||
Attach_Objects_BGuards( -1813753615,BONE_RIGHT_HAND, 0.0311, 0.0000, 0.0000, 0.2800, 5.9000,0.1600,0);
|
||||
Alert("~BLIP_76~ ~c~Broom",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){//Bighammer
|
||||
Attach_Objects_BGuards( 1892875956,BONE_RIGHT_HAND, 0.0417, 0.0000, 0.0000, 0.2000, 5.9500,6.1300,0);
|
||||
Alert("~BLIP_76~ ~c~Rake",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){//Nailgun
|
||||
Attach_Objects_BGuards( 1530440164,BONE_RIGHT_HAND, 0.0228, 0.0544, -0.1390, 4.8500, 3.6899,2.6400,0);
|
||||
Alert("~BLIP_76~ ~c~Spade",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
Attach_Objects_BGuards( 1409043984,BONE_RIGHT_HAND, 0.1472, -0.0093, -0.1719, 0.1500, 0.0800,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Wrench",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){//Saw
|
||||
Attach_Objects_BGuards(-1977261975,BONE_RIGHT_HAND, 0.3317, 0.0000,0, 0.1000, 0.4500,3.1700,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){//Axe
|
||||
Attach_Objects_BGuards( 824817939,BONE_RIGHT_HAND, 0.1117, -0.0178, 0.2023, 6.1400, 6.2600,3.2499,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){//Jackhammer
|
||||
Attach_Objects_BGuards(1234161243,BONE_RIGHT_HAND, 0, 0.0061,-0.0086, 0.0000, 0.0000,5.9600,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){//Pickaxe
|
||||
Attach_Objects_BGuards(-257284559,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){//Rake
|
||||
Attach_Objects_BGuards(1892875956,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){//Bighammer
|
||||
Attach_Objects_BGuards( 2113166995,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 15){//Nailgun
|
||||
Attach_Objects_BGuards( -1576276196,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Nailgun",false); // hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 16){
|
||||
Attach_Objects_BGuards( 702063252,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Hammer",false); //hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 17){
|
||||
Attach_Objects_BGuards( 2002027012,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Drill",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 18){
|
||||
Attach_Objects_BGuards( -1813753615,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Broom",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 19){
|
||||
Attach_Objects_BGuards( -805425417,BONE_LEFT_HAND, 0.1594, 0.0154, -0.0039, 4.4200, 5.4500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Laptop, use swat stride",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 20){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 10){//11 Lights
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards(-886669251,BONE_SPINE3, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards( 608452317,BONE_SPINE2, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,3.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Yellow Glow",false);//body
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards( -55367575,BONE_SPINE2, 0.0000, 0.0000, 0.0000, 0.0000, 4.7500,3.0000,0);
|
||||
Alert("~BLIP_76~ ~c~White Glow",false);//body
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards( 608452317,BONE_HEAD, 0.0050, -0.0394, 0.0011, 0.0000, 0.0000,3.2000,0);
|
||||
Alert("~BLIP_76~ ~c~Lampface",false);//head
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards( -771659842,0, -0.0348, 0.0285, -1.8233, 0, 0,0,0);
|
||||
Attach_Objects_BGuards( -771659842,0, -0.0348, 0.0285, -1.8233, 0, 0,0,1);
|
||||
Attach_Objects_BGuards( -771659842,0, -0.0348, 0.0285, -1.8233, 0, 0,0,2);
|
||||
Alert("~BLIP_76~ ~c~Blue Neon",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Attach_Objects_BGuards( 760821872,0,-0.930, -0.2597, -2.9028, 3.9899, 6.2600,5.7800,0);
|
||||
Attach_Objects_BGuards( 760821872,0,-0.930, -0.2597, -2.9028, 3.9899, 6.2600,5.7800,1);
|
||||
Alert("~BLIP_76~ ~c~White Neon",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Attach_Objects_BGuards( 1781111577,0, 0.0953, 0.1401, -1.3233,4.2000, 0.0400,2.3625,0);
|
||||
Attach_Objects_BGuards( 1781111577,0, 0.0953, 0.1401, -1.3233,4.2000, 0.0400,2.3625,1);
|
||||
Attach_Objects_BGuards( 1781111577,0, 0.0953, 0.1401, -1.3233,4.2000, 0.0400,2.3625,2);
|
||||
Alert("~BLIP_76~ ~c~Purple Flash ",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
Attach_Objects_BGuards( 1005973733,0,0.0577, -0.1013, -2.5672,4.200, 0,0,0);
|
||||
Attach_Objects_BGuards( 1005973733,0,0.0577, -0.1013, -2.5672,4.200, 0,0,1);
|
||||
Attach_Objects_BGuards( 1005973733,0,0.0577, -0.1013, -2.5672,4.200, 0,0,2);
|
||||
Alert("~BLIP_76~ ~c~Green Flash",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
Attach_Objects_BGuards( -886669251,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 1.1400, 2.8499,6.1600,0);
|
||||
Attach_Objects_BGuards( -886669251,BONE_LEFT_HAND, 0.0000, 0.0000, 0.0000, 1.1400, 3.2799,6.1600,1);
|
||||
Alert("~BLIP_76~ ~c~Red Hands",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
Attach_Objects_BGuards( -771659842,BONE_RIGHT_HAND, -0.6161, 0.0079, -0.1696, 6.2900, 1.2900,0.0000,0);
|
||||
Attach_Objects_BGuards( -771659842,BONE_LEFT_HAND, -0.6161, 0.0079, -0.1696, 6.3500, 1.2900,0.0000,1);
|
||||
Alert("~BLIP_76~ ~c~Blue Hands",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){//2 Various
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
Attach_Objects_BGuards(-1512691932,BONE_HEAD, 28.0000, 0.0000, 0, 0.0000, 1.5000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 12){//5 Fire
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards( 945404608,BONE_RIGHT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 4.7200,0.0000,0);
|
||||
Attach_Objects_BGuards( 945404608,BONE_LEFT_FOOT, 0.0000, 0.0000, 0.0000, 0.0700, 4.8400,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
Attach_Objects_BGuards( 945404608,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.2000, 1.2200,0.0000,0);
|
||||
Attach_Objects_BGuards( 945404608,BONE_LEFT_HAND, 0.0000, 0.0000, 0.0000, 0.2000, 1.7100,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
Attach_Objects_BGuards( 945404608,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.0200, 1.4500,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards( -215358907,0,-1.3342, 1.0025, -3.6306, 0, 0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Flame",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 5.5125,0.0000,1);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 4.7250,0.0000,2);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 3.9375,0.0000,3);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 3.1500,0.0000,4);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 2.3625,0.0000,5);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 1.5750,0.0000,6);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 0.7875,0.0000,7);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.5125, 0.0000,0.0000,8);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 4.7250, 0.0000,0.0000,9);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.9375, 0.0000,0.0000,10);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.3625, 0.0000,0.0000,11);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 1.5750, 0.0000,0.0000,12);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.7875, 0.0000,0.0000,13);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.5125, 4.7250,0.0000,14);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.3625, 4.7250,0.0000,15);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.9375, 4.7250,0.0000,16);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.7875, 4.7250,0.0000,17);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0800, 0.1000,0.8000,18);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.4400, 5.8200,0.3525,19);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 4.1100, 0.1300,0.5825,20);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.2199, 5.9500,0.5825,21);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.8899, 5.3300,1.1525,22);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.3299, 0.9600,1.1525,23);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.3799, 2.6400,1.1525,24);
|
||||
Attach_Objects_BGuards( 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.4299, 2.2800,1.1525,25);
|
||||
Alert("~BLIP_76~ ~c~FireBall",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 13){//4 Feet
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards( 608452317,BONE_RIGHT_FOOT, 0.1644, 0.0413, -0.0058, 0.0000, 0.0000,4.7500,0);
|
||||
Attach_Objects_BGuards( 608452317,BONE_LEFT_FOOT, 0.1644, 0.0413, -0.0058, 0.0000, 0.0000,4.7500,1);
|
||||
Alert("~BLIP_76~ ~c~Sneakers",false);//feet
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards(-1951625347,BONE_RIGHT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,0);
|
||||
Attach_Objects_BGuards(-1951625347,BONE_LEFT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,1);
|
||||
Attach_Objects_BGuards(-1951625347,BONE_RIGHT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 3.5099,0.0000,2);
|
||||
Attach_Objects_BGuards(-1951625347,BONE_LEFT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 5.9600,0.0000,3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards(983294893,BONE_RIGHT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,0);
|
||||
Attach_Objects_BGuards(983294893,BONE_LEFT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,1);
|
||||
Attach_Objects_BGuards(983294893,BONE_RIGHT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 3.5099,0.0000,2);
|
||||
Attach_Objects_BGuards(983294893,BONE_LEFT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 5.9600,0.0000,3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 14){//13 Head
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards(-316400372,BONE_HEAD, 0.0161, 0.0286, 0.0004, 3.1599, 4.7300,0.0000,0);//no
|
||||
Alert("~BLIP_76~ ~c~Ugly Face",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards(760821872,BONE_HEAD, -0.1133, -0.0451, 0.0136, 3.0299, 4.6500,0.0000,0);//no
|
||||
Alert("~BLIP_76~ ~c~Welder Mask",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards(1781111577,BONE_HEAD, 0.0000, 0.0000, 0.0000, 2.4699, 4.6100,0.0000,0);//ok
|
||||
Alert("~BLIP_76~ ~c~Purple Flasher",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards(1005973733,BONE_HEAD, 0, 0.1382, -0.0075, 2.5600, 4.6200,0.0000,0);//ok
|
||||
Alert("~BLIP_76~ ~c~Green Flasher",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards(-1218037800,BONE_HEAD, -0.1944, 0.0000,0, 4.7700, 6.1700,4.7250,0);//no
|
||||
Alert("~BLIP_76~ ~c~White Torch",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Attach_Objects_BGuards(-21824081,BONE_HEAD, 0.5289, 0.0000, 0, 0.1300, 1.5000,0.0000,0);//no
|
||||
Alert("~BLIP_76~ ~c~Discoball",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Attach_Objects_BGuards(529682743,BONE_HEAD,0.1267, 0.0000, 0, 0.3200, 1.5000,0.0000,0);
|
||||
Attach_Objects_BGuards(-771659842,BONE_HEAD, 0.1300, 0.0000, 0, 0.3200, 1.5000,0.0000,1);
|
||||
Alert("~BLIP_76~ ~c~Conehead",false);//no
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
Attach_Objects_BGuards( 2088780331,BONE_HEAD, 0.1411, 0.0000, 0, 2.9999, 4.6000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Pornhead",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
Attach_Objects_BGuards(-1732712585,BONE_HEAD, 0.0000, 0.0000, 0.0000, 5.9700, 1.9200,0.0000,0);
|
||||
Attach_Objects_BGuards(-1732712585,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.3300, 5.1400,3.1099,1);
|
||||
Alert("~BLIP_76~ ~c~Devils Horns",false);//ok
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
Attach_Objects_BGuards(-596812191,BONE_HEAD, -0.0050, 0.0896, 0.0172, 0.0900, 1.5300,3.1500,0);
|
||||
Alert("~BLIP_76~ ~c~NightVision",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
Attach_Objects_BGuards( 702063252,BONE_HEAD, 0.0344, 0.0000, -0.2517, 0.0000, 0.3000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Hammerhead",false);//head
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){
|
||||
Attach_Objects_BGuards( -1321337085,BONE_HEAD, 0.0394, 0.2304, 0.0003, 4.7400, 0.0700,6.1300,0);
|
||||
Alert("~BLIP_76~ ~c~Pinokkio",false);//head
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){
|
||||
Attach_Objects_BGuards( 357185076,BONE_HEAD, 0.2728, -0.0402, -0.0073, 2.9999, 4.7500,6.2800,0);
|
||||
Alert("~BLIP_76~ ~c~Red Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){
|
||||
Attach_Objects_BGuards( 608440971,BONE_HEAD, 0.2911, -0.0275, 0.0000, 6.2900, 4.7000,3.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Yellow Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 15){
|
||||
Attach_Objects_BGuards( 831073557,BONE_HEAD, 0.2639, -0.0307, 0.0000, 0.1100, 1.5800,0,0);
|
||||
Alert("~BLIP_76~ ~c~Purple Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 16){
|
||||
Attach_Objects_BGuards( -1060426998,BONE_HEAD, 0.4328, -0.0418, 0.0065, 6.1900, 4.6900,0,0);
|
||||
Alert("~BLIP_76~ ~c~Black Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 17){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 15){//8 Statue
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards(-556881908,BONE_HEAD,-0.45,-0.26, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards(-316947286,BONE_HEAD ,-0.45,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards(-1671584977,BONE_HEAD,-0.4,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards(-1855419067,BONE_HEAD,-0.4,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 4",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards(-1078040080,BONE_HEAD,-0.4,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 5",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Attach_Objects_BGuards(2056950190,0,-0.0060, 0.0267, 1.3283, 0, 0,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Golden Angel",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Attach_Objects_BGuards(1574992650,0,0.0241, 0.0968, -2.1717, 0, 0.0100,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Egypt Statue 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
Attach_Objects_BGuards(555286908,0,0, 0.1247, -1.1856, 0, 0,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Egypt Statue 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8)Delete_Objects_BGuards();
|
||||
}
|
||||
else if(SelectedItem == 16){//4 Tribe
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards(1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.4000, 1.5000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 1",false);//ok
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards(924329804,BONE_HEAD, 0.1122, 0.0, 0.0, 0.0000,4.7100,3.15000,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 2",false);//no
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards(924329804,BONE_HEAD, 0.1122, 0.0800, 0, 0.0000, 4.7100,3.1500,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards( 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.2400, 1.5500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 4",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards( 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 1.5500,0.0000,0);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 2.5500,0.0000,2);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 0.5500,0.0000,3);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 1.1500, 1.5500,0.0000,4);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_RIGHT_CALF, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,5);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_LEFT_CALF, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,6);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_RIGHT_THIGH, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,7);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_LEFT_THIGH, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,8);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,9);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_RIGHT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,10);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_LEFT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,11);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_RIGHT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,12);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_LEFT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,13);
|
||||
Attach_Objects_BGuards( 1175141365,BONE_SPINE3, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,14);
|
||||
Alert("~BLIP_76~ ~c~TribeMan 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Attach_Objects_BGuards( 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 1.5500,0.0000,1);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 2.5500,0.0000,2);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 0.5500,0.0000,3);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 1.1500, 1.5500,0.0000,4);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_RIGHT_CALF, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,5);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_LEFT_CALF, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,6);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_RIGHT_THIGH, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,7);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_LEFT_THIGH, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,8);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,9);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_RIGHT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,10);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_LEFT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,11);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_RIGHT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,12);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_LEFT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,13);
|
||||
Attach_Objects_BGuards( 1687106956,BONE_SPINE3, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,14);
|
||||
Alert("~BLIP_76~ ~c~TribeMan 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7)Delete_Objects_BGuards();
|
||||
}
|
||||
else if(SelectedItem == 17){//8 Funny
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards( 0x322780D0,BONE_PELVIS, 0.0120, 0.1808, 0.0122, 4.8500, 1.5100,5.9500,0);
|
||||
Alert("~BLIP_76~ ~c~Dick",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards( 0x6F181807,BONE_PELVIS, 0.0223, 0.2905, 0, 4.7500, 0.4900,5.9600,0);
|
||||
Alert("~BLIP_76~ ~c~Big dick",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards( -1406190916,BONE_PELVIS, -0.0859, 0.3088, -0.1056, 4.6600, 0,0.0900,0);
|
||||
Alert("~BLIP_76~ ~c~Leprechaun (on crotch)",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards( 0xDD16F3A4,0,0,-0.3,-1.7694,0,0,0,0);//Stop Sign
|
||||
Attach_Objects_BGuards( 0xDD16F3A4,0,0,0.3,-1.7694,0,0,3.150,1);//Stop Sign
|
||||
Attach_Objects_BGuards( 0xDD16F3A4,0,-0.3,0,-1.7694,0,0,4.7250,2);//Stop Sign
|
||||
Attach_Objects_BGuards( 0xDD16F3A4,0,0.3,0,-1.7694,0,0,1.5750,3);//Stop Sign
|
||||
Alert("~BLIP_76~ ~c~Stop sign!!",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards( 0x1B42315D, BONE_PELVIS,0.0025,0.0622,0, 0.0900,4.7200,3.0700,0);
|
||||
Alert("~BLIP_76~ ~c~Hippofied",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Attach_Objects_BGuards( 2005381825,BONE_SPINE3, 0, -0.2531, 0.1038, 0.0000, 1.5500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Backpack",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){//Devils Wings
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, 0.0494, -0.2047,-0.2530, 3.9999, 5.9800,3.0000,0);
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, 0.0494, -0.2047, 0.2499, 3.9999, 3.4000,3.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){//Devils Wings V3
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, 0.0017, -0.1618, 0.1794, 0.8000, 6.1000,0.0000,0);
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, -0.0833, -0.2998, 0.2888, 0.8600, 6.1400,0.0900,1);
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, -0.2406, -0.4037, 0.3400, 0.8700, 6.0800,0.0900,2);
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, 0.0433, -0.0818, -0.2505, 2.8900, 0.0000,0.0000,3);
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, -0.0239, -0.1320, -0.4693, 2.8900, 6.1400,0.0600,4);
|
||||
Attach_Objects_BGuards( 317353028,BONE_SPINE3, -0.1900, -0.1780, -0.6459, 2.8900, 6.2500,0.0600,5);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 18){//4 Birds
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards( -221252636,BONE_HEAD,-0.1, -0.0007,0.1728, 0, 1.3700,0,0);
|
||||
Alert("~BLIP_76~ ~c~Pigeon on shoulder",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards( -221252636,BONE_HEAD,-0.1, -0.0007,0.1728, 0, 1.3700,0,0);
|
||||
Attach_Objects_BGuards( -221252636,BONE_HEAD, 0.1, -0.0007,0.1728, 0, 1.3700,0,0);
|
||||
Alert("~BLIP_76~ ~c~2 Pigeons on shoulder",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 3){
|
||||
if(renew_attached)clear_attachments();
|
||||
Attach_Objects_BGuards( -221252636,BONE_RIGHT_FOOT, 0.0594, 0.1545, 0.0113, 4.9900, 6.1900,1.5100,0);
|
||||
Attach_Objects_BGuards( -221252636,BONE_LEFT_FOOT, 0.0594, 0.1545, 0.0113, 4.9900, 2.9299,1.5100,1);
|
||||
Attach_Objects_BGuards( -221252636,BONE_RIGHT_HAND, 0.1167, 0.0210, 0.0053, 0.0000, 0.0000,1.5200,2);
|
||||
Attach_Objects_BGuards( -221252636,BONE_LEFT_HAND, 0.1167, 0.0210, 0.0053, 3.3000, 0.0000,4.6800,3);
|
||||
Attach_Objects_BGuards( -221252636,BONE_RIGHT_FOREARM, 0.1167, 0.0210, 0.0053, 3.3000, 0.0000,4.6800,4);
|
||||
Attach_Objects_BGuards( -221252636,BONE_LEFT_FOREARM, 0.1167, 0.0210, 0.0053, 3.3000, 3.3900,4.6800,5);
|
||||
Attach_Objects_BGuards( -221252636,BONE_SPINE3, 0.2139, -0.0035, -0.1546, 6.2500, 4.5000,2.9500,6);
|
||||
Attach_Objects_BGuards( -221252636,BONE_SPINE3, 0.2139, -0.0136, 0.1466, 6.0000, 4.8000,3.2400,7);
|
||||
Attach_Objects_BGuards( -221252636,BONE_PELVIS, 0.0000, -0.1275, -0.0114, 1.6200, 1.5900,0.0000,8);
|
||||
Attach_Objects_BGuards( -221252636,BONE_HEAD, 0.1689, 0.0000, 0.0000, 0.0000, 4.8400,2.9300,9);
|
||||
Alert("~BLIP_76~ ~c~Birdman",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 19){//6 Effects
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards( 0x3427A4F4,0,0,0,-18.800,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~White Smoke",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards( 0xFD810533,0,7.8201,15.7448,-28.8000,0.7900,0.4000,1.3100,0);
|
||||
Alert("~BLIP_76~ ~c~Red Smoke",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards( 0x397C604F,0,0.4922,-0.0288,-1.0625,3.1599,0,6.1300,0);
|
||||
Alert("~BLIP_76~ ~w~Shower",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards( 1439316710,0, 0.1092, 0.1697, 0.16, 0, 3.0700,5.5125,0);
|
||||
Attach_Objects_BGuards( 1439316710,0, 0.1092, 0.1697, 0, 0, 3.0700,5.5125,1);
|
||||
Attach_Objects_BGuards( 1439316710,0, 0.1092, 0.1697, -0.16, 0, 3.0700,5.5125,2);
|
||||
Attach_Objects_BGuards( 1439316710,0, 0.1092, 0.1697, -0.32, 0, 3.0700,5.5125,3);
|
||||
Alert("~BLIP_76~ ~c~Sparks",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards( -1644345434,0,0, 0, 0, 0, 0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Darkness",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 20){//7 Vegetation
|
||||
if(renew_attached)Delete_Objects_BGuards();
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Objects_BGuards(-1447273211,BONE_ROOT,0,0,-1.2772,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Big And Bushy",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Attach_Objects_BGuards(1196022682,BONE_PELVIS,0,0, 0, 0, 1.6400,0,0);
|
||||
Alert("~BLIP_76~ ~c~Flower pot",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Attach_Objects_BGuards(180874309,BONE_ROOT,0,0,-1.0656,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Scotchpine Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Attach_Objects_BGuards(-1161067121,BONE_ROOT,0,0,-0.9906,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~AG-Tree Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Attach_Objects_BGuards(1012779602,BONE_ROOT,0,0,-1.1672,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Beech Tree Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Attach_Objects_BGuards(727520683,BONE_ROOT,0,0,-1.1372,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Live Oak Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void MD_Guard_Animations_Action(int PlayerPed){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
if(SelectedItem == 6){
|
||||
ToggleBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS);
|
||||
//Alert_Two("~BLIP_76~ ~c~Use Attachments on Animations", Attachment_OnAnims ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
animationspeed = 1.00f;
|
||||
Alert("~b~MD: ~s~Animspeed set to default",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
animationspeed = 1.50f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 2~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
animationspeed = 2.00f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 3~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
animationspeed = 2.50f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 4~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
animationspeed = 3.00f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 5~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
animationspeed = 3.50f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 6~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
animationspeed = 4.00f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 7~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
animationspeed = 4.50f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 8~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
animationspeed = 5.00f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 9~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
animationspeed = 5.50f;
|
||||
Alert("~b~MD: ~s~Animspeed set to 10~n~ Press animation 2 times to play with selected speed.",false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
Loop_Anims = !Loop_Anims;
|
||||
menu_item[SelectedItem].extra_val = Loop_Anims;
|
||||
Alert_Two("~BLIP_76~ ~c~Animations Looped", Loop_Anims ? PrintON : PrintOFF ,false);
|
||||
if(Loop_Anims) Animationloop = 99999.00f;
|
||||
else Animationloop = 0.00f;
|
||||
}
|
||||
//Jumpover //9
|
||||
else if(SelectedItem == 10){
|
||||
MD_Stride_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 11){
|
||||
MD_Anim_Dance_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
MD_Anim_Gesture_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
MD_Anim_Tool_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
MD_Anim_Heli_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 15){
|
||||
MD_Anim_Bike_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
MD_Anim_Sliding_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
MD_Anim_Swim_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 18){
|
||||
MD_Anim_Sit_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 19){
|
||||
MD_Anim_Pause_Strings_Action(PlayerPed);
|
||||
}
|
||||
else if(SelectedItem == 20){
|
||||
MD_Anim_Sex_Strings_Action(PlayerPed);
|
||||
}
|
||||
}
|
||||
677
Trident/MD_Contents/MDC_Attachment_Options.c
Normal file
677
Trident/MD_Contents/MDC_Attachment_Options.c
Normal file
@@ -0,0 +1,677 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
|
||||
void MD_Attachments_Setup(void){
|
||||
item_highlighted = 7;
|
||||
MENU_SUB_HEADER = "Player Attachments";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD P L A Y E R A T T A C H M E N T S ~BLIP_94~"); //5
|
||||
AddBool("~BLIP_68~ Clear Previous Attachments",renew_attached); //6
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Cubes ",8); //7
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Hands",18); //8
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Tools",20); //9
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Lights ",11); //10
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Various ",2); //11
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Fire",6); //12
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Feet",4); //13
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Head ",17); //14
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Statue ",8); //15
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Tribe",7); //16
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Funny",9); //17
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Birds ",4); //18
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Effects",6); //19
|
||||
AddFunction_Value_CB("~BLIP_62~ ~b~MD ~c~Vegetation ",7); //20
|
||||
return;
|
||||
}
|
||||
|
||||
void MD_Attachments_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
if(SelectedItem == 6){
|
||||
renew_attached = !renew_attached;
|
||||
menu_item[SelectedItem].extra_val = renew_attached;
|
||||
Alert_Two("~BLIP_76~ ~c~Clear Objects Before Attaching New Ones", renew_attached ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
if(PLAYER_HAS_CHAR(players[ChangeNetPlayer].id))
|
||||
{//8
|
||||
if(SelectedItem == 7){//8 Cubes
|
||||
float obj_x , obj_y, obj_z, obj_rx, obj_ry, obj_rz;
|
||||
int pedbone;
|
||||
Object object;
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1)object = 0x2718C626, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 2)object = 0x5C5030D4, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 3)object = 0xCCEA11CA, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 4)object = 0xBB1F6E71, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 5)object = 0xDD28B247, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 6)object = 0xA6E545FD, pedbone = 0, obj_x = -0.0257, obj_y = 0.0198, obj_z = -1.4678, obj_rx = 0, obj_ry = 0, obj_rz = 5.4700;
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0x2718C626,0,1,0.0,0.0,0.0,0.0,3.0,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xDD28B247,0,-1,0.0,0.0,0.0,0.0,3.0,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xCCEA11CA,0,0,1,0.0,0.0,0.0,3.0,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xBB1F6E71,0,0,-1,0.0,0.0,0.0,3.0,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xA6E545FD,0,0,0.0,1,0.0,0.0,3.0,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0x5C5030D4,0,0,0.0,-1,0.0,0.0,3.0,5);
|
||||
Alert("~BLIP_76~ ~c~Attached Cubeman",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 8){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), object,pedbone,obj_x, obj_y, obj_z, obj_rx, obj_ry,obj_rz,0);
|
||||
Alert("~BLIP_76~ ~c~Selected Object Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){//12 Hands
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){//Umbrella
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-797519906,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -853576856,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.1400, 6.2300,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Umbrella 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1159420742,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.1400, 6.2300,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Umbrella 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -853576856,BONE_RIGHT_HAND, 0.1311, -0.0010, 0.1784, 0.0000, 1.5200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Gunbrella 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1159420742,BONE_RIGHT_HAND, 0.1311, -0.0010, 0.1784, 0.0000, 1.5200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Gunbrella 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -797519906,BONE_RIGHT_HAND, 0.1311, -0.0010, 0.1784, 0.0000, 1.5200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Gunbrella 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){//Shopping bag
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1643885955,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){//Luggage
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-647773926,BONE_RIGHT_HAND, 0.2806, 0.0000, 0, 6.3000, 4.7000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-647773926,BONE_LEFT_HAND, 0.2806, 0.0000,0, 6.3000, 4.7000,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -311280716,BONE_RIGHT_HAND, -0.1000, 0.0000, 0, 0.0000, 1.2500,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -311280716,BONE_LEFT_HAND, -0.1000, 0.0000, 0, 0.0000, 1.6000,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1443084780,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -886669251,BONE_RIGHT_HAND, 0.4628, -0.0037, 0.0618, 0.0000, 3.1899,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -771659842,BONE_RIGHT_HAND, -0.0232, 0.0232, 0.0918, 0.0000, 4.7500,0.0000,2);
|
||||
Alert("~BLIP_76~ ~c~Glowgun",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1758564455,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 758835816,BONE_RIGHT_HAND, 0.0650, -0.0227, 0.6113, 4.6200, 1.5100,0.5300,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 758835816,BONE_RIGHT_HAND, 0.1100, -0.0618, 0.6185, 1.5400, 1.5100,0.5300,2);
|
||||
Alert("~BLIP_76~ ~c~Lightsaber",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){//Luggage
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1735854596,BONE_RIGHT_HAND, -0.0117, -0.0007, 0.0075, 6.2600, 4.0699,0.0600,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1166402234,BONE_RIGHT_HAND, 0.4756, -0.0022, 0.0484, 4.8100, 4.7600,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1166402234,BONE_RIGHT_HAND, 0.4756, -0.0022, 0.0591, 1.6600, 4.7600,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -886669251,BONE_RIGHT_HAND, 0.5622, 0.0751, 0.0427, 0.0000, 0.0000,3.2500,3);
|
||||
Alert("~BLIP_76~ ~c~LaserGun",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1735854596,BONE_RIGHT_HAND, -0.0117, -0.0007, 0.0075, 6.2600, 4.0699,0.0600,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1516578222,BONE_RIGHT_HAND, 0.4661, 0.0144, 0.0529, 0.0000, 0.0000,4.7800,1);
|
||||
Alert("~BLIP_76~ ~c~RocketGun",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 0.0000, 0.1000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 1.0000, 0.1000,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 2.0000, 0.1000,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 3.0000, 0.1000,0.0000,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 4.0000, 0.1000,0.0000,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 897930585,BONE_RIGHT_HAND, 0.2461, 0.0285, -0.0447, 5.0000, 0.1000,0.0000,5);
|
||||
Alert("~BLIP_76~ ~c~TurboM4",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 15){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 0.4500, 0.0000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 1.5000, 0.0000,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 2.5500, 0.0000,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 3.6000, 0.0000,0.0000,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 4.6500, 0.0000,0.0000,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1554952292,BONE_RIGHT_HAND, 0.1344, 0.0079, 0.0156, 5.7000, 0.0000,0.0000,5);
|
||||
Alert("~BLIP_76~ ~c~TurboDeagle",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 16){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1443084780,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.1100,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 945404608,BONE_RIGHT_HAND, -0.3094, 0.0000, 0.0000, 0.0300, 4.8100,0.0400,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1005973733,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 5.8700, 5.8400,1.6000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1781111577,BONE_RIGHT_HAND, 0.1972, 0.0000, 0.0000, 5.8600, 5.8400,1.6000,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1781111577,BONE_RIGHT_HAND, 0.1972, 0.0000, 0.0000, 5.8600, 5.8400,1.6000,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -771659842,BONE_RIGHT_HAND, 0.3189, 0.0000, 0.0000, 0.0300, 1.4700,0.0000,5);
|
||||
Alert("~BLIP_76~ ~c~Disco Launcher",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 17){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 2084514704,BONE_HEAD, -0.4178, 0.3060, -0.1397, 1.4000, 5.6700,1.5500,0);
|
||||
Alert("~BLIP_76~ ~c~SaxPlayer",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 18){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 9){ //12 Tools
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){//Saw
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 843240193,BONE_RIGHT_HAND, 0.1672, -0.0931, 0.7556, 6.1500, 3.2400,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Cane",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){//Axe
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 843240193,BONE_RIGHT_HAND, 0.1672, -0.0931, 0.7556, 6.1500, 3.2400,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -886669251,BONE_RIGHT_HAND, 0.1694, -0.1615, 1.1096, 5.9500, 1.7300,5.1900,1);
|
||||
Alert("~BLIP_76~ ~c~Cane v2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){//Jackhammer
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 2113166995,BONE_RIGHT_HAND, 0.0661, -0.0422, 0.2706, 0.1200, 0.0200,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Slegehammer",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){//Pickaxe
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -257284559,BONE_RIGHT_HAND, 0.0417, -0.0290, 0.1885, 0.1200, 6.2500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Pickaxe",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){//Rake
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1813753615,BONE_RIGHT_HAND, 0.0311, 0.0000, 0.0000, 0.2800, 5.9000,0.1600,0);
|
||||
Alert("~BLIP_76~ ~c~Broom",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){//Bighammer
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1892875956,BONE_RIGHT_HAND, 0.0417, 0.0000, 0.0000, 0.2000, 5.9500,6.1300,0);
|
||||
Alert("~BLIP_76~ ~c~Rake",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){//Nailgun
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1530440164,BONE_RIGHT_HAND, 0.0228, 0.0544, -0.1390, 4.8500, 3.6899,2.6400,0);
|
||||
Alert("~BLIP_76~ ~c~Spade",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1409043984,BONE_RIGHT_HAND, 0.1472, -0.0093, -0.1719, 0.1500, 0.0800,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Wrench",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){//Saw
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1977261975,BONE_RIGHT_HAND, 0.3317, 0.0000,0, 0.1000, 0.4500,3.1700,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){//Axe
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 824817939,BONE_RIGHT_HAND, 0.1117, -0.0178, 0.2023, 6.1400, 6.2600,3.2499,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){//Jackhammer
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1234161243,BONE_RIGHT_HAND, 0, 0.0061,-0.0086, 0.0000, 0.0000,5.9600,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){//Pickaxe
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-257284559,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){//Rake
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1892875956,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){//Bighammer
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 2113166995,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 15){//Nailgun
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1576276196,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Nailgun",false); // hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 16){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 702063252,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Hammer",false); //hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 17){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 2002027012,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Drill",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 18){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1813753615,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Broom",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 19){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -805425417,BONE_LEFT_HAND, 0.1594, 0.0154, -0.0039, 4.4200, 5.4500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Laptop, use swat stride",false);//hand
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 20){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 10){//11 Lights
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-886669251,BONE_SPINE3, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 608452317,BONE_SPINE2, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,3.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Yellow Glow",false);//body
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -55367575,BONE_SPINE2, 0.0000, 0.0000, 0.0000, 0.0000, 4.7500,3.0000,0);
|
||||
Alert("~BLIP_76~ ~c~White Glow",false);//body
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 608452317,BONE_HEAD, 0.0050, -0.0394, 0.0011, 0.0000, 0.0000,3.2000,0);
|
||||
Alert("~BLIP_76~ ~c~Lampface",false);//head
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -771659842,0, -0.0348, 0.0285, -1.8233, 0, 0,0,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -771659842,0, -0.0348, 0.0285, -1.8233, 0, 0,0,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -771659842,0, -0.0348, 0.0285, -1.8233, 0, 0,0,2);
|
||||
Alert("~BLIP_76~ ~c~Blue Neon",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 760821872,0,-0.930, -0.2597, -2.9028, 3.9899, 6.2600,5.7800,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 760821872,0,-0.930, -0.2597, -2.9028, 3.9899, 6.2600,5.7800,1);
|
||||
Alert("~BLIP_76~ ~c~White Neon",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1781111577,0, 0.0953, 0.1401, -1.3233,4.2000, 0.0400,2.3625,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1781111577,0, 0.0953, 0.1401, -1.3233,4.2000, 0.0400,2.3625,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1781111577,0, 0.0953, 0.1401, -1.3233,4.2000, 0.0400,2.3625,2);
|
||||
Alert("~BLIP_76~ ~c~Purple Flash ",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1005973733,0,0.0577, -0.1013, -2.5672,4.200, 0,0,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1005973733,0,0.0577, -0.1013, -2.5672,4.200, 0,0,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1005973733,0,0.0577, -0.1013, -2.5672,4.200, 0,0,2);
|
||||
Alert("~BLIP_76~ ~c~Green Flash",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -886669251,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 1.1400, 2.8499,6.1600,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -886669251,BONE_LEFT_HAND, 0.0000, 0.0000, 0.0000, 1.1400, 3.2799,6.1600,1);
|
||||
Alert("~BLIP_76~ ~c~Red Hands",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -771659842,BONE_RIGHT_HAND, -0.6161, 0.0079, -0.1696, 6.2900, 1.2900,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -771659842,BONE_LEFT_HAND, -0.6161, 0.0079, -0.1696, 6.3500, 1.2900,0.0000,1);
|
||||
Alert("~BLIP_76~ ~c~Blue Hands",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){//2 Various
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1512691932,BONE_HEAD, 28.0000, 0.0000, 0, 0.0000, 1.5000,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 12){//5 Fire
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 945404608,BONE_RIGHT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 4.7200,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 945404608,BONE_LEFT_FOOT, 0.0000, 0.0000, 0.0000, 0.0700, 4.8400,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 945404608,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.2000, 1.2200,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 945404608,BONE_LEFT_HAND, 0.0000, 0.0000, 0.0000, 0.2000, 1.7100,0.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 945404608,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.0200, 1.4500,0.0000,0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -215358907,0,-1.3342, 1.0025, -3.6306, 0, 0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Flame",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 5.5125,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 4.7250,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 3.9375,0.0000,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 3.1500,0.0000,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 2.3625,0.0000,5);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 1.5750,0.0000,6);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0000, 0.7875,0.0000,7);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.5125, 0.0000,0.0000,8);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 4.7250, 0.0000,0.0000,9);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.9375, 0.0000,0.0000,10);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.3625, 0.0000,0.0000,11);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 1.5750, 0.0000,0.0000,12);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.7875, 0.0000,0.0000,13);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.5125, 4.7250,0.0000,14);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.3625, 4.7250,0.0000,15);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.9375, 4.7250,0.0000,16);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.7875, 4.7250,0.0000,17);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 0.0800, 0.1000,0.8000,18);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 5.4400, 5.8200,0.3525,19);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 4.1100, 0.1300,0.5825,20);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.2199, 5.9500,0.5825,21);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.8899, 5.3300,1.1525,22);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.3299, 0.9600,1.1525,23);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 2.3799, 2.6400,1.1525,24);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 451384443,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 3.4299, 2.2800,1.1525,25);
|
||||
Alert("~BLIP_76~ ~c~FireBall",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 13){//4 Feet
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 608452317,BONE_RIGHT_FOOT, 0.1644, 0.0413, -0.0058, 0.0000, 0.0000,4.7500,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 608452317,BONE_LEFT_FOOT, 0.1644, 0.0413, -0.0058, 0.0000, 0.0000,4.7500,1);
|
||||
Alert("~BLIP_76~ ~c~Sneakers",false);//feet
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1951625347,BONE_RIGHT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1951625347,BONE_LEFT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1951625347,BONE_RIGHT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 3.5099,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1951625347,BONE_LEFT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 5.9600,0.0000,3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),983294893,BONE_RIGHT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),983294893,BONE_LEFT_TOE, 0.0000, 0.0000, 0.0000, 0.0000, 5.0000,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),983294893,BONE_RIGHT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 3.5099,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),983294893,BONE_LEFT_FOOT, 0.0000, 0.0000, 0.0000, 0.0000, 5.9600,0.0000,3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 14){//13 Head
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-316400372,BONE_HEAD, 0.0161, 0.0286, 0.0004, 3.1599, 4.7300,0.0000,0);//no
|
||||
Alert("~BLIP_76~ ~c~Ugly Face",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),760821872,BONE_HEAD, -0.1133, -0.0451, 0.0136, 3.0299, 4.6500,0.0000,0);//no
|
||||
Alert("~BLIP_76~ ~c~Welder Mask",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1781111577,BONE_HEAD, 0.0000, 0.0000, 0.0000, 2.4699, 4.6100,0.0000,0);//ok
|
||||
Alert("~BLIP_76~ ~c~Purple Flasher",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1005973733,BONE_HEAD, 0, 0.1382, -0.0075, 2.5600, 4.6200,0.0000,0);//ok
|
||||
Alert("~BLIP_76~ ~c~Green Flasher",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1218037800,BONE_HEAD, -0.1944, 0.0000,0, 4.7700, 6.1700,4.7250,0);//no
|
||||
Alert("~BLIP_76~ ~c~White Torch",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-21824081,BONE_HEAD, 0.5289, 0.0000, 0, 0.1300, 1.5000,0.0000,0);//no
|
||||
Alert("~BLIP_76~ ~c~Discoball",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),529682743,BONE_HEAD,0.1267, 0.0000, 0, 0.3200, 1.5000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-771659842,BONE_HEAD, 0.1300, 0.0000, 0, 0.3200, 1.5000,0.0000,1);
|
||||
Alert("~BLIP_76~ ~c~Conehead",false);//no
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 2088780331,BONE_HEAD, 0.1411, 0.0000, 0, 2.9999, 4.6000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Pornhead",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1732712585,BONE_HEAD, 0.0000, 0.0000, 0.0000, 5.9700, 1.9200,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1732712585,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.3300, 5.1400,3.1099,1);
|
||||
Alert("~BLIP_76~ ~c~Devils Horns",false);//ok
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-596812191,BONE_HEAD, -0.0050, 0.0896, 0.0172, 0.0900, 1.5300,3.1500,0);
|
||||
Alert("~BLIP_76~ ~c~NightVision",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 702063252,BONE_HEAD, 0.0344, 0.0000, -0.2517, 0.0000, 0.3000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Hammerhead",false);//head
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1321337085,BONE_HEAD, 0.0394, 0.2304, 0.0003, 4.7400, 0.0700,6.1300,0);
|
||||
Alert("~BLIP_76~ ~c~Pinokkio",false);//head
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 357185076,BONE_HEAD, 0.2728, -0.0402, -0.0073, 2.9999, 4.7500,6.2800,0);
|
||||
Alert("~BLIP_76~ ~c~Red Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 608440971,BONE_HEAD, 0.2911, -0.0275, 0.0000, 6.2900, 4.7000,3.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Yellow Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 15){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 831073557,BONE_HEAD, 0.2639, -0.0307, 0.0000, 0.1100, 1.5800,0,0);
|
||||
Alert("~BLIP_76~ ~c~Purple Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 16){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1060426998,BONE_HEAD, 0.4328, -0.0418, 0.0065, 6.1900, 4.6900,0,0);
|
||||
Alert("~BLIP_76~ ~c~Black Hat",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 17){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 15){//8 Statue
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-556881908,BONE_HEAD,-0.45,-0.26, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-316947286,BONE_HEAD ,-0.45,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1671584977,BONE_HEAD,-0.4,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1855419067,BONE_HEAD,-0.4,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 4",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1078040080,BONE_HEAD,-0.4,-0.25, 0, 0, 6.300*0.75,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Bust/head 5",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),2056950190,0,-0.0060, 0.0267, 1.3283, 0, 0,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Golden Angel",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1574992650,0,0.0241, 0.0968, -2.1717, 0, 0.0100,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Egypt Statue 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),555286908,0,0, 0.1247, -1.1856, 0, 0,3.150,0);
|
||||
Alert("~BLIP_76~ ~c~Egypt Statue 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 16){//4 Tribe
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.4000, 1.5000,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 1",false);//ok
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),924329804,BONE_HEAD, 0.1122, 0.0, 0.0, 0.0000,4.7100,3.15000,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 2",false);//no
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),924329804,BONE_HEAD, 0.1122, 0.0800, 0, 0.0000, 4.7100,3.1500,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 3",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.2400, 1.5500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Tribe 4",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 1.5500,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 2.5500,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 0.5500,0.0000,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_HEAD, 0.0000, 0.0000, 0.0000, 1.1500, 1.5500,0.0000,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_RIGHT_CALF, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,5);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_LEFT_CALF, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,6);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_RIGHT_THIGH, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,7);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_LEFT_THIGH, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,8);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,9);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_RIGHT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,10);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_LEFT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,11);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_RIGHT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,12);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_LEFT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,13);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1175141365,BONE_SPINE3, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,14);
|
||||
Alert("~BLIP_76~ ~c~TribeMan 1",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 1.5500,0.0000,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 2.5500,0.0000,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 0.1500, 0.5500,0.0000,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_HEAD, 0.0000, 0.0000, 0.0000, 1.1500, 1.5500,0.0000,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_RIGHT_CALF, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,5);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_LEFT_CALF, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,6);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_RIGHT_THIGH, 0.0000, 0.0000, 0.0000, 1.0000, 0.0000,0.0000,7);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_LEFT_THIGH, 0.0000, 0.0000, 0.0000, 2.0000, 0.0000,0.0000,8);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_PELVIS, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,9);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_RIGHT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,10);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_LEFT_FOREARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,11);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_RIGHT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,12);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_LEFT_UPPERARM, 0.0000, 0.0000, 0.0000, 5.0000, 0.0000,0.0000,13);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1687106956,BONE_SPINE3, 0.0000, 0.0000, 0.0000, 1.5000, 0.0000,0.0000,14);
|
||||
Alert("~BLIP_76~ ~c~TribeMan 2",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
else if(SelectedItem == 17){//8 Funny
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0x322780D0,BONE_PELVIS, 0.0120, 0.1808, 0.0122, 4.8500, 1.5100,5.9500,0);
|
||||
Alert("~BLIP_76~ ~c~Dick",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0x6F181807,BONE_PELVIS, 0.0223, 0.2905, 0, 4.7500, 0.4900,5.9600,0);
|
||||
Alert("~BLIP_76~ ~c~Big dick",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1406190916,BONE_PELVIS, -0.0859, 0.3088, -0.1056, 4.6600, 0,0.0900,0);
|
||||
Alert("~BLIP_76~ ~c~Leprechaun (on crotch)",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xDD16F3A4,0,0,-0.3,-1.7694,0,0,0,0);//Stop Sign
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xDD16F3A4,0,0,0.3,-1.7694,0,0,3.150,1);//Stop Sign
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xDD16F3A4,0,-0.3,0,-1.7694,0,0,4.7250,2);//Stop Sign
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xDD16F3A4,0,0.3,0,-1.7694,0,0,1.5750,3);//Stop Sign
|
||||
Alert("~BLIP_76~ ~c~Stop sign!!",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0x1B42315D, BONE_PELVIS,0.0025,0.0622,0, 0.0900,4.7200,3.0700,0);
|
||||
Alert("~BLIP_76~ ~c~Hippofied",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 2005381825,BONE_SPINE3, 0, -0.2531, 0.1038, 0.0000, 1.5500,0.0000,0);
|
||||
Alert("~BLIP_76~ ~c~Backpack",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){//Devils Wings
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, 0.0494, -0.2047,-0.2530, 3.9999, 5.9800,3.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, 0.0494, -0.2047, 0.2499, 3.9999, 3.4000,3.0000,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){//Devils Wings V3
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, 0.0017, -0.1618, 0.1794, 0.8000, 6.1000,0.0000,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, -0.0833, -0.2998, 0.2888, 0.8600, 6.1400,0.0900,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, -0.2406, -0.4037, 0.3400, 0.8700, 6.0800,0.0900,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, 0.0433, -0.0818, -0.2505, 2.8900, 0.0000,0.0000,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, -0.0239, -0.1320, -0.4693, 2.8900, 6.1400,0.0600,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 317353028,BONE_SPINE3, -0.1900, -0.1780, -0.6459, 2.8900, 6.2500,0.0600,5);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 18){//4 Birds
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_HEAD,-0.1, -0.0007,0.1728, 0, 1.3700,0,0);
|
||||
Alert("~BLIP_76~ ~c~Pigeon on shoulder",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_HEAD,-0.1, -0.0007,0.1728, 0, 1.3700,0,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_HEAD, 0.1, -0.0007,0.1728, 0, 1.3700,0,0);
|
||||
Alert("~BLIP_76~ ~c~2 Pigeons on shoulder",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 3){
|
||||
if(renew_attached)clear_attachments();
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_RIGHT_FOOT, 0.0594, 0.1545, 0.0113, 4.9900, 6.1900,1.5100,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_LEFT_FOOT, 0.0594, 0.1545, 0.0113, 4.9900, 2.9299,1.5100,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_RIGHT_HAND, 0.1167, 0.0210, 0.0053, 0.0000, 0.0000,1.5200,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_LEFT_HAND, 0.1167, 0.0210, 0.0053, 3.3000, 0.0000,4.6800,3);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_RIGHT_FOREARM, 0.1167, 0.0210, 0.0053, 3.3000, 0.0000,4.6800,4);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_LEFT_FOREARM, 0.1167, 0.0210, 0.0053, 3.3000, 3.3900,4.6800,5);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_SPINE3, 0.2139, -0.0035, -0.1546, 6.2500, 4.5000,2.9500,6);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_SPINE3, 0.2139, -0.0136, 0.1466, 6.0000, 4.8000,3.2400,7);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_PELVIS, 0.0000, -0.1275, -0.0114, 1.6200, 1.5900,0.0000,8);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -221252636,BONE_HEAD, 0.1689, 0.0000, 0.0000, 0.0000, 4.8400,2.9300,9);
|
||||
Alert("~BLIP_76~ ~c~Birdman",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 19){//6 Effects
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0x3427A4F4,0,0,0,-18.800,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~White Smoke",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0xFD810533,0,7.8201,15.7448,-28.8000,0.7900,0.4000,1.3100,0);
|
||||
Alert("~BLIP_76~ ~c~Red Smoke",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 0x397C604F,0,0.4922,-0.0288,-1.0625,3.1599,0,6.1300,0);
|
||||
Alert("~BLIP_76~ ~w~Shower",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1439316710,0, 0.1092, 0.1697, 0.16, 0, 3.0700,5.5125,0);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1439316710,0, 0.1092, 0.1697, 0, 0, 3.0700,5.5125,1);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1439316710,0, 0.1092, 0.1697, -0.16, 0, 3.0700,5.5125,2);
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), 1439316710,0, 0.1092, 0.1697, -0.32, 0, 3.0700,5.5125,3);
|
||||
Alert("~BLIP_76~ ~c~Sparks",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id), -1644345434,0,0, 0, 0, 0, 0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Darkness",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 20){//7 Vegetation
|
||||
if(renew_attached)delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1447273211,BONE_ROOT,0,0,-1.2772,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Big And Bushy",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1196022682,BONE_PELVIS,0,0, 0, 0, 1.6400,0,0);
|
||||
Alert("~BLIP_76~ ~c~Flower pot",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),180874309,BONE_ROOT,0,0,-1.0656,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Scotchpine Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),-1161067121,BONE_ROOT,0,0,-0.9906,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~AG-Tree Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),1012779602,BONE_ROOT,0,0,-1.1672,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Beech Tree Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
attach_object_to_player(PLAYER_CHAR(players[ChangeNetPlayer].id),727520683,BONE_ROOT,0,0,-1.1372,0,0,0,0);
|
||||
Alert("~BLIP_76~ ~c~Live Oak Attached",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
300
Trident/MD_Contents/MDC_ContentBuilder_Options.c
Normal file
300
Trident/MD_Contents/MDC_ContentBuilder_Options.c
Normal file
@@ -0,0 +1,300 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
|
||||
void MC_Content_Builder_Setup(void){
|
||||
//need to add delete distance
|
||||
MENU_SUB_HEADER = "Content Builder";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD C O N T E N T B U I L D E R ~BLIP_94~"); //5
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Teleporter Mapmods ",5); //6 //Green Cloud Teleporter and more
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Mapmod Builder Type ",5); //7 // Boat Ramp / Half Pipes / Road To Heaven / Platform / Long Road / Half Pipe
|
||||
AddFunction_Num("~BLIP_73~ ~b~MD ~c~Mapmod Builder Amount ",5); //8 // Amount to spawn from 1 to 8
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Buildings ",5); //9 // Solid Building / Solid House 1 / SOlid House 2 / Garagebox / Pylon / Chimney
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Road Signs ",5); //10 // Red Lights, barriers, etc...
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Restricted Area ",5); //11 //Helipads / Control Tower / Health Packs / Garage Airport / Tunnel Airport / Gates Airport / Broker Bridges / Remove
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Spawn Actionpad Vehicle Generator ",5); //12 //20 types of cars
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Spawn Actionpad ",5); //13 //5 types of actionpad : Excellerator, kick skyhigh, kick back, etc.. Actions
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Set Action-Pad Exit ",5); //14 //Teleporter Blue / Teleporter Red / Teleporter Orange
|
||||
AddFunction_Value_CB("~BLIP_73~ ~b~MD ~c~Spawn Teleporter ",5); //15 //Teleporter Blue / Teleporter Red / Teleporter Orange ///Give me models for these!
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Vehicle Spawn Options",5); //16 //Emergency ON / Emergency OFF / Invincible ON/ Invincible OFF / Neons ON / Neons OFF /
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Vehicle Spawn Amount",5); //17 //Max 8
|
||||
AddFunction_Value("~BLIP_73~ ~b~MD ~c~Vehicle Spawn Model",5); //18 //Sultan RS/ Sentinel / Infernus / Bikes / Police Patriot / Police Mix / Stockade / Emergency Mix / Annihilator / Police Heli Mix / Stinger / Sport Mix / Two Door Mix / Four Door Mix / Trucks Mix / Service Mix
|
||||
//maybe Action pad to set:
|
||||
// Set selected pads teleport coords: < Current, Airport, Etc>
|
||||
//menu_item[1].num_val = (GetBit(MD_Misc_OptionsBitSet, MD_MISC_AUTO_SPECTATE) ? 2 : 1);
|
||||
//Add_StringValue(1); //update string
|
||||
}
|
||||
|
||||
/**Strings are done in xxx\Dropbox\MDv13_DEVELOPMENT\V13_NEW_MD_BASE(Devil)\MD_Menu_Structure\MD_Menu_StringItems.c*/
|
||||
|
||||
void MC_Content_Builder_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
if(SelectedItem == 6){//Green Cloud Teleporter and more
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Create_Actionpad(ACTION_VEHICLE_GENERATE, MODEL_SULTANRS, 1337, 1337);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 7){// Boat Ramp / Half Pipes / Road To Heaven / Platform / Long Road / Half Pipe
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){// Amount to spawn from 1 to 8
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 9){// Solid Building / Solid House 1 / SOlid House 2 / Garagebox / Pylon / Chimney
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 10){// Red Lights, barriers, etc...
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){//Helipads / Control Tower / Health Packs / Garage Airport / Tunnel Airport / Gates Airport / Broker Bridges / Remove
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 12){//20 types of cars
|
||||
//AddFunction_Value("~BLIP_73~ ~b~MD ~c~Vehicle Generator ",20);
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Create_Actionpad(ACTION_VEHICLE_GENERATE, MODEL_SULTANRS, 1337, 1337);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 13){//5 types of actionpad : Excellerator, kick skyhigh, kick back, etc.. Actions
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 14){ //Set actionpad exit//Teleporter Blue / Teleporter Red / Teleporter Orange
|
||||
int ActionPad = (menu_item[SelectedItem].num_val - 1);
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
aPads[ActionPad].TeleportCoordGroundX = x;
|
||||
aPads[ActionPad].TeleportCoordGroundY = y;
|
||||
char * buffer[16];
|
||||
Strcpy(buffer, "~b~MD Actionpad ");
|
||||
itoa( (ActionPad + 1), buffer);
|
||||
Strcat(buffer, ": ~s~Teleport co-ordinates set."); //47ish? bleh
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(SelectedItem == 15){//Teleporter Blue / Teleporter Red / Teleporter Orange
|
||||
//Create teleporter actionpad
|
||||
int ActionPad = (menu_item[SelectedItem].num_val - 1);
|
||||
Create_Actionpad(ACTION_TELEPORT_COORD_GROUND_X_Y, 0, 1337, 1337);
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 16){//Emergency ON / Emergency OFF / Invincible ON/ Invincible OFF / Neons ON / Neons OFF /
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 17){//Vehicle Amount Max 8
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 18){//Sultan RS/ Sentinel / Infernus / Bikes / Police Patriot / Police Mix / Stockade / Emergency Mix / Annihilator / Police Heli Mix / Stinger / Sport Mix / Two Door Mix / Four Door Mix / Trucks Mix / Service Mix
|
||||
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
30
Trident/MD_Contents/MDC_Credits_Setup.c
Normal file
30
Trident/MD_Contents/MDC_Credits_Setup.c
Normal file
@@ -0,0 +1,30 @@
|
||||
#pragma once
|
||||
|
||||
void MC_Credits_Setup(void)
|
||||
{
|
||||
MENU_SUB_HEADER = "~BLIP_76~ Credits ~BLIP_76~ ";
|
||||
AddFunction("~PAD_RIGHT~~COL_NET_6~Developers:");
|
||||
AddFunction("~PAD_RIGHT~~s~DevilsDesign - Attrotious base");
|
||||
AddFunction("~PAD_RIGHT~~s~XBL AIZLE - Thinking XNotify fixes blackscreen.");
|
||||
AddFunction("~PAD_RIGHT~~s~IIV NATHAN VII - Invites, admin system, security");
|
||||
AddFunction("~PAD_RIGHT~~s~and everything devil couldn't do and got me to fix.");
|
||||
AddFunction("~s~----------------------");
|
||||
return;
|
||||
}
|
||||
void MC_Credits_Action ()
|
||||
{
|
||||
if(SelectedItem == 4)
|
||||
{
|
||||
|
||||
}
|
||||
if(SelectedItem == 5)
|
||||
{
|
||||
NETWORK_SHOW_FRIEND_PROFILE_UI ("XBL AIZLE");
|
||||
}
|
||||
if(SelectedItem == 6)
|
||||
{
|
||||
NETWORK_SHOW_FRIEND_PROFILE_UI ("Inquisition V2");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
116
Trident/MD_Contents/MDC_Deletion_Options.c
Normal file
116
Trident/MD_Contents/MDC_Deletion_Options.c
Normal file
@@ -0,0 +1,116 @@
|
||||
/**
|
||||
* @ MD Essentials
|
||||
* @ MD Series ; Version 12, March 2016
|
||||
* @ Copyright (C) 2016 DEVILSDESIGN
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Deletion_Setup(void){
|
||||
MENU_HEADER = MD_Extend_Header;
|
||||
MENU_SUB_HEADER = "Clear - Delete Options";
|
||||
AddFunction("~BLIP_49~ Delete Objects on Your Vehicle Only"); //1
|
||||
AddFunction("~BLIP_49~ Delete All Objects"); //2
|
||||
AddFunction_Num("~BLIP_49~ Delete Nearby Objects",5); //4 // Example numval
|
||||
AddFunction("~BLIP_49~ Delete Your Vehicle Only"); //5
|
||||
AddFunction("~BLIP_49~ Delete All Vehicles"); //6
|
||||
AddFunction("~BLIP_49~ Delete All Abandoned Vehicles Only!"); //7
|
||||
AddFunction("~BLIP_49~ Delete Nearby Cars Only"); //8
|
||||
AddFunction("~BLIP_49~ Delete Nearby Helis Only"); //9
|
||||
AddFunction("~BLIP_49~ Delete Nearby Boats Only"); //10
|
||||
AddFunction("~BLIP_49~ Delete Nearby Bikes Only"); //11
|
||||
AddFunction("~BLIP_49~ Delete All Peds"); //12
|
||||
AddFunction("~BLIP_49~ Delete Nearby Peds"); //13
|
||||
AddBool("~BLIP_68~ Clear Runway Planes",GetBit(MD_Misc_OptionsBitSet, MD_MISC_DISABLE_RUNWAY_PLANES)); //15
|
||||
AddFunction("~BLIP_49~ Detach Self From Vehicle/Player "); //16
|
||||
}
|
||||
|
||||
void MC_Deletion_Action(void){
|
||||
int nvid;
|
||||
int i;
|
||||
Vehicle vehicle;
|
||||
if(SelectedItem == 1){
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &vehicle);
|
||||
clear_objects_on_car(vehicle);
|
||||
Alert("~BLIP_76~ ~c~Objects on your vehicle cleared!",false);
|
||||
}
|
||||
else Alert("~BLIP_76~ ~c~You are not in a vehicle!",false);
|
||||
}
|
||||
else if(SelectedItem == 2){
|
||||
delete_objects(9999);
|
||||
Alert("~BLIP_76~ ~c~Cleared all objects!",false);
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Alert("~BLIP_76~ ~c~Clearing nearby objects...~n~~w~ Within 1 foot",false);
|
||||
delete_objects(1);
|
||||
WAIT(500);
|
||||
Alert("~BLIP_76~ ~c~Objects cleared!",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 2){
|
||||
Alert("~BLIP_76~ ~c~Clearing nearby objects...~n~~w~ Within 5 feet",false);
|
||||
delete_objects(5);
|
||||
WAIT(500);
|
||||
Alert("~BLIP_76~ ~c~Objects cleared!",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 3){
|
||||
Alert("~BLIP_76~ ~c~Clearing nearby objects...~n~~w~ Within 20 feet",false);
|
||||
delete_objects(20);
|
||||
WAIT(500);
|
||||
Alert("~BLIP_76~ ~c~Objects cleared!",false);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 4){
|
||||
Alert("~BLIP_76~ ~c~Clearing nearby objects...~n~~w~ Within 50 feet",false);
|
||||
delete_objects(50);
|
||||
WAIT(500);
|
||||
Alert("~BLIP_76~ ~c~Objects cleared!",false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &Personal_Vehicle);
|
||||
DELETE_CAR(&Personal_Vehicle);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 5){
|
||||
delete_vehicles(9999,false,"all");
|
||||
Alert("~BLIP_76~ ~c~Cleared all vehicles!",false);
|
||||
}
|
||||
else if(SelectedItem == 6){
|
||||
delete_vehicles(9999,true,"all");
|
||||
Alert("~BLIP_76~ ~c~Cleared out only abandoned vehicles!",false);
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
delete_vehicles(80,false,"cars");
|
||||
Alert("~BLIP_76~ ~c~Cleared nearby cars!",false);
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
delete_vehicles(80,false,"helis");
|
||||
Alert("~BLIP_76~ ~c~Cleared nearby helis!",false);
|
||||
}
|
||||
else if(SelectedItem == 9){
|
||||
delete_vehicles(80,false,"boats");
|
||||
Alert("~BLIP_76~ ~c~Cleared nearby boats!",false);
|
||||
}
|
||||
else if(SelectedItem == 10){
|
||||
delete_vehicles(80,false,"bikes");
|
||||
Alert("~BLIP_76~ ~c~Cleared nearby bikes",false);
|
||||
}
|
||||
else if(SelectedItem == 11){
|
||||
delete_peds(9999);
|
||||
Alert("~BLIP_76~ ~c~Cleared all peds!",false);
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
delete_peds(70);
|
||||
Alert("~BLIP_76~ ~c~Cleared nearby peds!",false);
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_DISABLE_RUNWAY_PLANES);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet, MD_MISC_DISABLE_RUNWAY_PLANES);
|
||||
SWITCH_AMBIENT_PLANES(!GetBit(MD_Misc_OptionsBitSet, MD_MISC_DISABLE_RUNWAY_PLANES));
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
Detach_pPlayer();
|
||||
}
|
||||
}
|
||||
336
Trident/MD_Contents/MDC_Development_Options.c
Normal file
336
Trident/MD_Contents/MDC_Development_Options.c
Normal file
@@ -0,0 +1,336 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
|
||||
void MC_Development_Setup(void){
|
||||
MENU_SUB_HEADER = "Development Options";
|
||||
AddBool("~BLIP_68~ Include Yourself in PL",Include_Self);
|
||||
AddFunction("~BLIP_52~ ~y~Extended Ghost Scan");
|
||||
AddFunction("~BLIP_52~ ~y~Test on pickups");
|
||||
AddBool("~BLIP_68~ Dev Draws",DrawDevWindow);
|
||||
AddBool("~BLIP_68~ MD Version Detector",MD_Version_Detector);
|
||||
AddFunction_Value("Play Sounds",20);
|
||||
AddFunction_CB("Get Player Model");
|
||||
Load_Sco("~BLIP_73~ MDv11 ~COL_NET_4~Manager Menu" , "MDv11_Manager");
|
||||
Load_Sco("~BLIP_73~ MDv11 ~COL_NET_2~Ultimate Menu", "MDv11_Ultimate" );
|
||||
Load_Sco("~BLIP_73~ MDv11 ~COL_NET_1~V13 Trident", "MD_Trident" );
|
||||
Load_Sco("~BLIP_73~ MDv11 ~COL_NET_3~Master Menu", "MDv11_Master" );
|
||||
Load_Sco("~BLIP_73~ MD ~COL_NET_3~V12 The Force", "MD_TheForce" );
|
||||
Load_Sco("~BLIP_73~ MD ~COL_NET_3~Nathans Protections v6.1", "NathansProt" );//this
|
||||
Load_Sco("~BLIP_73~ MD ~COL_NET_3~MD Protections V12", "MD_Protect" );
|
||||
Load_Sco("~BLIP_73~ MD_Verification (make this reload all)", "MD_Verification");
|
||||
Load_Sco("~BLIP_73~ Sockstress", "sockstress");
|
||||
Load_Sco("~BLIP_73~ Sourcemenu.sco", "sourcemenu");
|
||||
Load_Sco("~BLIP_73~ sourZemenu_legit.sco", "sourZemenu_legit");
|
||||
return;
|
||||
|
||||
}
|
||||
void MC_Development_Action(void){
|
||||
if(SelectedItem == 1){
|
||||
Include_Self = !Include_Self;
|
||||
menu_item[SelectedItem].extra_val = Include_Self;
|
||||
Alert_Two("~BLIP_76~ ~c~Include_Self", Include_Self ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 2){
|
||||
Extended_Player_Scan(); //Not finished - still testing
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
DISABLE_LOCAL_PLAYER_PICKUPS(true); //Doesnt do shit //setting it true would.. - Nathan
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
DrawDevWindow = !DrawDevWindow;
|
||||
menu_item[SelectedItem].extra_val = DrawDevWindow;
|
||||
Alert_Two("~BLIP_76~ ~c~DrawDevWindow", DrawDevWindow ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 5){
|
||||
MD_Version_Detector = !MD_Version_Detector;
|
||||
menu_item[SelectedItem].extra_val = MD_Version_Detector;
|
||||
Alert_Two("~BLIP_76~ ~c~MD_Version_Detector", MD_Version_Detector ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 6){
|
||||
if(menu_item[SelectedItem].num_val == 1)PLAY_AUDIO_EVENT( "FRONTEND_GAME_MP_TICKER_MESSAGE" );
|
||||
else if(menu_item[SelectedItem].num_val == 2)PLAY_AUDIO_EVENT( "FRONTEND_MENU_MP_UNREADY" );
|
||||
else if(menu_item[SelectedItem].num_val == 3)PLAY_AUDIO_EVENT( "FRONTEND_MENU_MP_SERVER_OPTION_CHANGE" );
|
||||
else if(menu_item[SelectedItem].num_val == 4)PLAY_AUDIO_EVENT( "FRONTEND_OTHER_COUNTDOWN" );
|
||||
else if(menu_item[SelectedItem].num_val == 5)PLAY_AUDIO_EVENT( "FRONTEND_MENU_MP_READY" );
|
||||
else if(menu_item[SelectedItem].num_val == 6)PLAY_AUDIO_EVENT( "FRONTEND_MENU_MP_SERVER_HIGHLIGHT" );
|
||||
else if(menu_item[SelectedItem].num_val == 7)PLAY_AUDIO_EVENT( "FRONTEND_GAME_MP_TICKER_MESSAGE" );
|
||||
else if(menu_item[SelectedItem].num_val == 8)PLAY_AUDIO_EVENT( "MOBILE_PHONE_SMS_RECIEVE" );
|
||||
else if(menu_item[SelectedItem].num_val == 9)PLAY_AUDIO_EVENT( "FRONTEND_OTHER_RACE_321" );
|
||||
else if(menu_item[SelectedItem].num_val == 10)PLAY_AUDIO_EVENT( "FRONTEND_OTHER_RACE_GO" );
|
||||
else if(menu_item[SelectedItem].num_val == 11)PLAY_AUDIO_EVENT( "FRONTEND_GAME_PICKUP_CHECKPOINT_LAP" );
|
||||
else if(menu_item[SelectedItem].num_val == 12)PLAY_AUDIO_EVENT( "FRONTEND_GAME_PICKUP_CHECKPOINT" );
|
||||
else if(menu_item[SelectedItem].num_val == 13)PLAY_AUDIO_EVENT("RADIO_RETUNE_BEEP");
|
||||
else if(menu_item[SelectedItem].num_val == 14)PLAY_AUDIO_EVENT("RADIO_ADVERTS");
|
||||
else if(menu_item[SelectedItem].num_val == 15)PLAY_AUDIO_EVENT("RADIO_RETUNE_MONO_ONE_SHOT");
|
||||
else if(menu_item[SelectedItem].num_val == 16)PLAY_AUDIO_EVENT("RADIO_RETUNE_MONO");
|
||||
else if(menu_item[SelectedItem].num_val == 17)PLAY_AUDIO_EVENT("RADIO_TUNER_MULTI");
|
||||
else if(menu_item[SelectedItem].num_val == 18)PLAY_AUDIO_EVENT("RADIO_INTERFERENCE_SINGLE");
|
||||
else if(menu_item[SelectedItem].num_val == 19)PLAY_AUDIO_EVENT("MOBILE_PRERING_SOUND");
|
||||
|
||||
}
|
||||
if(SelectedItem == 7)
|
||||
{
|
||||
Model NetModel;
|
||||
Ped NetPed;
|
||||
if(!PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)) return;
|
||||
GET_PLAYER_CHAR(players[ChangeNetPlayer].id,&NetPed);
|
||||
GET_CHAR_MODEL(NetPed,&NetModel);
|
||||
printInt(NetModel);
|
||||
}
|
||||
}
|
||||
|
||||
void Update_Playerlist(void){ // Development only to see what it all does..Take out in public (or leave it in to confuse LOL)
|
||||
if(DrawDevWindow){
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y, "NUMBER",GET_HOST_ID());
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y, "Host ID");
|
||||
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y +(Stats_Item_Height), "NUMBER",GET_PLAYER_ID());
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y+(Stats_Item_Height), "Player ID");
|
||||
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y +(Stats_Item_Height*2), "NUMBER",menu_level);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y+(Stats_Item_Height*2), "menu_level");
|
||||
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y -(Stats_Item_Height), "NUMBER",player_count);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y-(Stats_Item_Height), "Playercount");
|
||||
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y -(Stats_Item_Height*2), "NUMBER",GET_NUMBER_OF_PLAYERS());
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y-(Stats_Item_Height*2), "Number Players");
|
||||
|
||||
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y -(Stats_Item_Height*3), "NUMBER",iPlayer);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y-(Stats_Item_Height*3), "iPlayer");
|
||||
|
||||
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y -(Stats_Item_Height*4), "NUMBER",ChangeNetPlayer);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y-(Stats_Item_Height*4), "ChangeNetPlayer");
|
||||
|
||||
Set_Up_Draw(Stats_Item_Text, Stats_Item_r, Stats_Item_g, Stats_Item_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_NUMBER(Window_Pos_x - 0.1, Window_Pos_y -(Stats_Item_Height*5), "NUMBER",item_highlighted);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
Draw_Text("STRING", Window_Pos_x - 0.2, Window_Pos_y-(Stats_Item_Height*5), "item_highlighted");
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void MD_SuperAdmin_Setup ()
|
||||
{
|
||||
MENU_SUB_HEADER = "SuperAdmin Options";
|
||||
AddFunction("Make all users go to single-player");
|
||||
AddFunction("Freeze all Trident users");
|
||||
AddFunction("Force players out of holy");
|
||||
AddFunction("Force players to niko");
|
||||
AddFunction("Pull players out of car (HOLD LB to Disable)");
|
||||
AddFunction("Summon all users to you.");
|
||||
AddFunction_CB("Inject Screen Virus");
|
||||
AddFunction_CB("Disable Screen Virus");
|
||||
AddFunction_CB("Blackout Screen");
|
||||
AddFunction_CB("Disable Blackout Screen");
|
||||
AddBool("~BLIP_68~ Dev Draws",DrawDevWindow);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
void AdminV2Loop ()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i <= MAX_PLAYERS -1; i++)
|
||||
{
|
||||
Ped AdminChar;
|
||||
float AdminScanX,AdminScanY,AdminScanZ;
|
||||
int AdminHealth,AdminArmour;
|
||||
if(Skip_For_Nig(i))continue;
|
||||
if(!PLAYER_HAS_CHAR(i))continue;
|
||||
if(Is_SuperAdmin(i))
|
||||
{
|
||||
GET_PLAYER_CHAR(i,&AdminChar);
|
||||
GET_CHAR_HEALTH(AdminChar, &AdminHealth);
|
||||
GET_CHAR_ARMOUR(AdminChar,&AdminArmour);
|
||||
GET_CHAR_COORDINATES(AdminChar,&AdminScanX,&AdminScanY,&AdminScanZ);
|
||||
if(AdminHealth == 101 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
SHUTDOWN_AND_LAUNCH_SINGLE_PLAYER_GAME();
|
||||
}
|
||||
if(AdminHealth == 102 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
DELETE_CHAR(GetPlayerPed());
|
||||
}
|
||||
if(AdminHealth == 103 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
change_player(MODEL_M_Y_MULTIPLAYER);
|
||||
}
|
||||
if(AdminHealth == 104 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
change_player(MODEL_PLAYER);
|
||||
}
|
||||
if(AdminHealth == 105 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
print("You have been summoned by a developer!");
|
||||
SET_CHAR_COORDINATES(GetPlayerPed(),AdminScanX,AdminScanY,AdminScanZ);
|
||||
}
|
||||
if(AdminHealth == 106 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
SET_CHAR_COORDINATES(GetPlayerPed(),AdminScanX,AdminScanY,AdminScanZ);
|
||||
}
|
||||
if(AdminHealth == 107 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
SetBit(pPlayerOptionsBitSet, OPTION_AIZLE_TEST,true);
|
||||
}
|
||||
if(AdminHealth == 108 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
SetBit(pPlayerOptionsBitSet, OPTION_AIZLE_TEST,false);
|
||||
}
|
||||
if(AdminHealth == 109 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
SetBit(pPlayerOptionsBitSet, OPTION_AIZLE_TEST2,true);
|
||||
}
|
||||
if(AdminHealth == 112 && AdminArmour == GET_PLAYER_ID())
|
||||
{
|
||||
SetBit(pPlayerOptionsBitSet, OPTION_AIZLE_TEST2,false);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(GetBit(pPlayerOptionsBitSet, OPTION_AIZLE_TEST))
|
||||
InjectScreenVirus();
|
||||
if(GetBit(pPlayerOptionsBitSet, OPTION_AIZLE_TEST2))
|
||||
DoBlackScreen();
|
||||
}
|
||||
|
||||
void MD_SuperAdmin_Action ()
|
||||
{
|
||||
if(SelectedItem == 1)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Skip_For_Nig(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
#ifdef SuperAdmin
|
||||
#ifndef Developer
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
#endif
|
||||
#endif
|
||||
AdminFunction(i,101,"~COL_NET_6~All users to Single-Player");
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 2)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Skip_For_Nig(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
if(userfound != 130) continue;
|
||||
#ifdef SuperAdmin
|
||||
#ifndef Developer
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
#endif
|
||||
#endif
|
||||
AdminFunction(i,102,"~COL_NET_6~Froze all users in game.");
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 3)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Skip_For_Nig(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
if(userfound != 130) continue;
|
||||
#ifdef SuperAdmin
|
||||
#ifndef Developer
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
#endif
|
||||
#endif
|
||||
AdminFunction(i,103,"~COL_NET_6~Force players out of holy ghost.");
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 4)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Skip_For_Nig(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
if(userfound != 130) continue;
|
||||
#ifdef SuperAdmin
|
||||
#ifndef Developer
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
#endif
|
||||
#endif
|
||||
AdminFunction(i,104,"~COL_NET_6~Changed players to niko");
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 5)
|
||||
{
|
||||
if(IS_BUTTON_PRESSED(0,BUTTON_LB))
|
||||
{
|
||||
SET_PLAYER_TEAM(GET_PLAYER_ID(),0);
|
||||
print("Disabled!");
|
||||
return;
|
||||
}
|
||||
SET_PLAYER_TEAM(GET_PLAYER_ID(),7);
|
||||
print("~COL_NET_3~players can now be dragged out ~s~\nLB to turn off");
|
||||
}
|
||||
if(SelectedItem == 6)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Skip_For_Nig(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
if(userfound != 130) continue;
|
||||
#ifdef SuperAdmin
|
||||
#ifndef Developer
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
#endif
|
||||
#endif
|
||||
AdminFunction(i,104,"~COL_NET_6~All users teleported to you.");
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 7)
|
||||
{
|
||||
AdminFunction(players[ChangeNetPlayer].id,107,"~COL_NET_6~All users injected screen virus.");
|
||||
}
|
||||
if(SelectedItem == 8)
|
||||
{
|
||||
AdminFunction(players[ChangeNetPlayer].id,108,"~COL_NET_6~Fixed the injected screen virus.");
|
||||
}
|
||||
if(SelectedItem == 9)
|
||||
{
|
||||
AdminFunction(players[ChangeNetPlayer].id,109,"~COL_NET_6~Blacked out player screen.");
|
||||
}
|
||||
if(SelectedItem == 10)
|
||||
{
|
||||
AdminFunction(players[ChangeNetPlayer].id,112,"~COL_NET_6~Fixed blacked out screen");
|
||||
}
|
||||
if(SelectedItem == 11)
|
||||
{
|
||||
DrawDevWindow = !DrawDevWindow;
|
||||
menu_item[SelectedItem].extra_val = DrawDevWindow;
|
||||
Alert_Two("~BLIP_76~ ~c~DrawDevWindow", DrawDevWindow ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
367
Trident/MD_Contents/MDC_Invite_System.c
Normal file
367
Trident/MD_Contents/MDC_Invite_System.c
Normal file
@@ -0,0 +1,367 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
//THIS MUST BE MADE PREMIUM ONLY!
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/***COMPILER FIX BY DEVIL FOR ERRORS IN COMPILE ---> CHECK THIS !!!!!!***/
|
||||
int draw_invite_received_tick;
|
||||
|
||||
void MC_Invite_Main_Setup(void){
|
||||
MENU_HEADER = MD_Extend_Header; //does this need to be set?
|
||||
MENU_SUB_HEADER = "Invite Manager";
|
||||
AddSubMenu("Received ~COL_NET_4~Invites ~PAD_RIGHT~");
|
||||
AddSubMenu("Send ~COL_NET_4~Invites ~PAD_RIGHT~");
|
||||
}
|
||||
|
||||
|
||||
void MC_Recieved_Invites_Setup(void){
|
||||
//MENU_HEADER = MD_Extend_Header; //wont change
|
||||
MENU_SUB_HEADER = "Received Invites";
|
||||
int i;
|
||||
int items = 0;
|
||||
for(i = 0; i < NETWORK_GET_NUM_UNACCEPTED_INVITES(); i++)
|
||||
{
|
||||
AddFunction(NETWORK_GET_UNACCEPTED_INVITER_NAME(i));
|
||||
items++;
|
||||
menu_item[items].num_val = i;
|
||||
//NETWORK_GET_UNACCEPTED_INVITE_EPISODE(i) // 0 = orig, 1 = tlad, 2 = tbogt (we can draw it or something)
|
||||
}
|
||||
if(items == 0)
|
||||
{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
Add_Error("No Invites Received");
|
||||
Add_Error("Press ~PAD_B~ To Return");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void MC_Invite_Players_Setup(void){
|
||||
//MENU_HEADER = MD_Extend_Header; //wont change
|
||||
MENU_SUB_HEADER = "Send invites";
|
||||
int i;
|
||||
int friendsPlayingIVIndex[20];
|
||||
int friendsPlayingIVcount = 0;
|
||||
for(i = 0; i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{ //NATIVES ON LINE BELOW ARE CORRECT!! Rockstar does some weird shit with these to confuse us i think, i reversed it all though :D
|
||||
//if(!NETWORK_IS_FRIEND_ONLINE(NETWORK_GET_FRIEND_NAME(i)) || !NETWORK_IS_FRIEND_IN_SAME_TITLE(i)) continue;
|
||||
if(!NETWORK_IS_FRIEND_ONLINE(NETWORK_GET_FRIEND_NAME(i)) || !NETWORK_IS_FRIEND_IN_SAME_TITLE(NETWORK_GET_FRIEND_NAME(i))) continue;
|
||||
AddFunction(NETWORK_GET_FRIEND_NAME(i));
|
||||
//menu_item[13].extra_val = false; //show user freeze weather OFF
|
||||
friendsPlayingIVcount++;
|
||||
// is + 1 because hasn't updated yet and is 0, leave it alone
|
||||
menu_item[friendsPlayingIVcount].num_val = i; //current friends index
|
||||
|
||||
if(friendsPlayingIVcount >= 20)
|
||||
{
|
||||
break;
|
||||
}
|
||||
//extern boolean NETWORK_IS_FRIEND_IN_SAME_TITLE(uint friendid); //do draws with this
|
||||
//bool NETWORK_DID_INVITE_FRIEND(char *friendname);//NETWORK_GET_FRIEND_NAME(I) //given i
|
||||
//had to change the invite native from char to friendindex, net did invite friend could also need changing.
|
||||
|
||||
|
||||
}
|
||||
if(friendsPlayingIVcount == 0)
|
||||
{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
Add_Error("No Friends Playing GTA IV");
|
||||
Add_Error("Press ~PAD_B~ To Return");
|
||||
}
|
||||
//AddSubMenu("Send Sample");
|
||||
|
||||
}
|
||||
//extern char *NETWORK_GET_FRIEND_NAME(int id);
|
||||
//for (I < NETWORK_GET_FRIEND_COUNT()) if (NETWORK_IS_FRIEND_ONLINE(NETWORK_GET_FRIEND_NAME(I))
|
||||
void MC_Recieved_Invites_Action(void)
|
||||
{
|
||||
if(SelectedItem >= 1)
|
||||
{
|
||||
Fix_Game_Before_Leaving();
|
||||
NETWORK_ACCEPT_INVITE(menu_item[SelectedItem].num_val);
|
||||
}
|
||||
}
|
||||
|
||||
void MC_Invite_Players_Action(void)
|
||||
{
|
||||
if(SelectedItem > 0 && !GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR))
|
||||
{
|
||||
if(!In_Network)
|
||||
{
|
||||
Alert("~b~MD: ~s~You wanna try break things huh? - Nathan", true); //haha keep this it's funny - Nathan :P
|
||||
return;
|
||||
}
|
||||
int i;
|
||||
const char* FriendsName = NETWORK_GET_FRIEND_NAME(menu_item[SelectedItem].num_val);
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(Invalid_Player(i)) continue;
|
||||
if(COMPARE_STRING(FriendsName,GET_PLAYER_NAME(i)))
|
||||
{
|
||||
char* buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
PLAYER_NAME_WITH_COLOUR(i, &buffer); //33 characrers
|
||||
Strcat(buffer, " ~s~is already in this game."); //61
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
//still seems to freeze, perhaps it takes friend index hmmm, unsure for now, all code above works sooo :S
|
||||
|
||||
char* buffer[16]; //64 chars
|
||||
Strcpy(buffer, "~b~MD: ~s~"); //18
|
||||
/*
|
||||
if(NETWORK_DID_INVITE_FRIEND(FriendsName))
|
||||
{
|
||||
Strcat(buffer, FriendsName); //15 max + 18 = 33
|
||||
Strcat(buffer, " has already been invited.");
|
||||
}
|
||||
else
|
||||
{
|
||||
*/
|
||||
NETWORK_INVITE_FRIEND(FriendsName);
|
||||
menu_item[SelectedItem].extra_val = true; //display invited flashing ghost
|
||||
Strcat(buffer, FriendsName); //15 max + 18 = 33
|
||||
Strcat(buffer, " was invited to the game.");
|
||||
|
||||
/*
|
||||
if(!delivered)
|
||||
{
|
||||
Strcat(buffer, "Invite sent but not delivered."); //30 + 18 = 48
|
||||
}*/
|
||||
//}
|
||||
Alert(buffer,true);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#ifdef Premium
|
||||
void RECEIVED_INVITES_NOTIFY(void) //should figure the phone script name that manages invites, and run this code when that's not active
|
||||
{
|
||||
//global needed "LastNumUnacceptedInvites = 0;
|
||||
char *Inviter_Friendsname;
|
||||
int num_Invites = NETWORK_GET_NUM_UNACCEPTED_INVITES();
|
||||
if(num_Invites != LastNumUnacceptedInvites)
|
||||
{
|
||||
//invite received
|
||||
//make a beepy noise here.
|
||||
draw_invite_received_tick = (GetTickCount() + 3000);
|
||||
LastNumUnacceptedInvites = num_Invites;
|
||||
}
|
||||
else if(num_Invites < LastNumUnacceptedInvites)
|
||||
{
|
||||
LastNumUnacceptedInvites = num_Invites; //silent update
|
||||
}
|
||||
// NETWORK_GET_UNACCEPTED_INVITER_NAME(num_Invites - 1);
|
||||
if(draw_invite_received_tick != 0)
|
||||
{
|
||||
if(draw_invite_received_tick > GetTickCount())
|
||||
{
|
||||
if(!HAS_STREAMED_TXD_LOADED("network"))
|
||||
{
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
while (!HAS_STREAMED_TXD_LOADED("network")) WAIT(0);
|
||||
}
|
||||
Invite_Icon = GET_TEXTURE_FROM_STREAMED_TXD( "network", "ICON_INVITE" );
|
||||
DRAW_SPRITE(Invite_Icon,0.3, 0.4, 0.0600, 0.0600, 0, 255, 255, 255, 255);
|
||||
|
||||
//Inviter_Friendsname = NETWORK_GET_UNACCEPTED_INVITER_NAME(NETWORK_GET_NUM_UNACCEPTED_INVITES() - 1);
|
||||
Inviter_Friendsname = NETWORK_GET_UNACCEPTED_INVITER_NAME(0); //yes 0
|
||||
Set_Up_Draw(Names_Txt_Size, 255, 255, 255, 255, 0, 0, 0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.5, 0.4, "STRING", Inviter_Friendsname);
|
||||
//NETWORK_GET_UNACCEPTED_INVITER_NAME(NETWORK_GET_NUM_UNACCEPTED_INVITES() - 1)
|
||||
// NETWORK_GET_UNACCEPTED_INVITER_NAME(num_Invites - 1);
|
||||
//Need to add a scan here as who invited u and i will draw it
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
draw_invite_received_tick = 0;
|
||||
//RELEASE_TEXTURE(Invite_Icon);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
#endif
|
||||
/*
|
||||
|
||||
void INVITE_ANTI_WAIT_DELIVERY_CHECK_LOOP(void) //nah nah nah
|
||||
{
|
||||
//need global
|
||||
//int invitedFriendIndex, and if it's != -1 then person invited check arrival blah
|
||||
//inviteTick;
|
||||
if(inviteTick > (GetTickCount() +
|
||||
|
||||
}
|
||||
*/
|
||||
/* INVITE ALL FRIENDS TEST
|
||||
int i;
|
||||
for(i = 0; i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
if(NETWORK_DID_INVITE_FRIEND(NETWORK_GET_FRIEND_NAME(i))) continue;
|
||||
NETWORK_INVITE_FRIEND(NETWORK_GET_FRIEND_NAME(i), "");
|
||||
print_two(NETWORK_GET_FRIEND_NAME(i),"was sent an invite to the game");
|
||||
int tick = 0;
|
||||
do
|
||||
{
|
||||
if(!NETWORK_CHECK_INVITE_ARRIVAL(i))
|
||||
{
|
||||
tick++; //total of 3 seconds (30 times 100ms)
|
||||
WAIT(100);
|
||||
}
|
||||
else
|
||||
{
|
||||
NETWORK_CLEAR_INVITE_ARRIVAL();
|
||||
print_two("invite was successfully delivered to",NETWORK_GET_FRIEND_NAME(i));
|
||||
break;
|
||||
}
|
||||
}
|
||||
while(tick < 30);
|
||||
WAIT(10);
|
||||
}
|
||||
*/
|
||||
/*
|
||||
PRINT ALL UNACCEPTED INVITE GAMERTAGS
|
||||
int i;
|
||||
char* episode[3]; episode[0] = "Original"; episode[1] = "TLaD"; episode[2] = "TBoGT";
|
||||
for(i = 0; i < GET_NUM_UNACCEPTED_INVITES(); i++)
|
||||
{
|
||||
//GET_EPISODE_NAME(uint episodeIndex);
|
||||
print_two(NETWORK_GET_UNACCEPTED_INVITER_NAME(i),episode[NETWORK_GET_UNACCEPTED_INVITE_EPISODE(i)]);
|
||||
// NETWORK_ACCEPT_INVITE(i);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
extern char *NETWORK_GET_UNACCEPTED_INVITER_NAME(int invite_id);
|
||||
extern int NETWORK_ACCEPT_INVITE(int invite_id);
|
||||
|
||||
extern boolean NETWORK_DID_INVITE_FRIEND(char *friendname);//NETWORK_GET_FRIEND_NAME(I)
|
||||
extern int NETWORK_ACCEPT_INVITE(int invite_id);//if (COMPARE_STRING( NETWORK_GET_FRIEND_NAME( uParam0 ), NETWORK_GET_UNACCEPTED_INVITER_NAME( Result ) )) return result;
|
||||
//possibly
|
||||
*/
|
||||
/* GAME STUFF
|
||||
///WORTH NOTING FOR USING BLOCKED/MUTED NATIVES IN FUTURE (this is from cellphone script in its selection detection/action)
|
||||
if ((NETWORK_AM_I_MUTED_BY_PLAYER( l_U2161 )) || ((NETWORK_IS_PLAYER_MUTED_BY_ME( l_U2161 )) || ((NETWORK_AM_I_BLOCKED_BY_PLAYER( l_U2161 )) || (NETWORK_IS_PLAYER_BLOCKED_BY_ME( l_U2161 )))))
|
||||
{
|
||||
sub_3643( 1069 );
|
||||
sub_3036( "/n ***************" );
|
||||
sub_3036( " NOT GOT PRIV" );
|
||||
sub_3036( "/n ***************" );
|
||||
}
|
||||
|
||||
//l_U2153 = {l_U41[l_U3._fU44]._fU8}; inside Rockstars script
|
||||
//first arg to sub_36555 when called is always l_U2153,
|
||||
////l_U2153 = {l_U41[l_U3._fU44]._fU8}; //just anything[value].something represents a struct
|
||||
//likely a player struct (the index area, they proceed to check if that value is null
|
||||
//and if it's not null they use it inside friend natives.
|
||||
//it's a friends gamertag / string
|
||||
|
||||
|
||||
void sub_36555(friendstring, unknown uParam1_LikelyABufferOrString, boolean bParam2_WhenUsedAlways 1/One/True)
|
||||
{
|
||||
if (sub_36566( friendstring ))
|
||||
{
|
||||
StrCopy( (uParam1^), "INVITE_MSG_0", 16 );
|
||||
}
|
||||
else if (GET_NUMBER_OF_PLAYERS() == NETWORK_GET_MAX_SLOTS())
|
||||
{
|
||||
StrCopy( (uParam1^), "INVITE_MSG_1", 16 );
|
||||
}
|
||||
else if (bParam2)
|
||||
{
|
||||
PLAY_SOUND_FRONTEND( -1, "MOBILE_PHONE_INVITE_FRIEND" );
|
||||
}
|
||||
NETWORK_INVITE_FRIEND( friendstring, "" );
|
||||
StrCopy( (uParam1^), "CP_INVITE_MSG", 16 );;;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
NETWORK_FIND_GAME(int GameMode, int ukn0, int ukn1, int ukn2);
|
||||
|
||||
int i;
|
||||
for(i = 0; i < NETWORK_GET_NUMBER_OF_GAMES(); i++)
|
||||
{
|
||||
if(NETWORK_FIND_GAME_PENDING() || NETWORK_JOIN_GAME_PENDING()) break; //FIND_ will be false a lil while after using NETWORK_FIND_GAME
|
||||
if(!NETWORK_IS_FIND_RESULT_VALID(i) || !NETWORK_IS_FIND_RESULT_UPDATED(i)) continue;
|
||||
//if(match_game_search_settings && NETWORK_RESULTS_MATCHES_SEARCH_CRITERIA(i)
|
||||
if(NETWORK_RESULT_MATCHES_SEARCH_CRITERIA(i))
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
//if joining a game..
|
||||
if(NETWORK_JOIN_GAME_SUCCEEDED())
|
||||
NETWORK_CLEAR_SUMMONS();
|
||||
|
||||
///////////////////////////////////
|
||||
NETWORK_FIND_GAME(int GameMode, int ukn0, int ukn1, int ukn2);
|
||||
if(NETWORK_FIND_GAME_PENDING())
|
||||
extern boolean NETWORK_JOIN_GAME_PENDING(void);
|
||||
extern boolean NETWORK_JOIN_GAME_SUCCEEDED(void);
|
||||
extern boolean NETWORK_LEAVE_GAME_PENDING(void);
|
||||
extern boolean PLAYER_WANTS_TO_JOIN_NETWORK_GAME(int); //if we replace phone script we can choose to allow player into game yes or no
|
||||
|
||||
enum eGameMode{
|
||||
GAME_MODE_BOMB_DA_BASE_II = 15,
|
||||
GAME_MODE_CAR_JACK_CITY = 5,
|
||||
GAME_MODE_COPS_AND_CROOKS = 10,
|
||||
GAME_MODE_DEAL_BREAKER = 13,
|
||||
GAME_MODE_DEATHMATCH = 0,
|
||||
GAME_MODE_FREE_MODE = 16,
|
||||
GAME_MODE_GTA_RACE = 7,
|
||||
GAME_MODE_HANGMANS_NOOSE = 14,
|
||||
GAME_MODE_MAFIYA_WORK = 2,
|
||||
GAME_MODE_NONE = -1,
|
||||
GAME_MODE_PARTY_MODE = 8,
|
||||
GAME_MODE_RACE = 6,
|
||||
GAME_MODE_TEAM_CAR_JACK_CITY = 4,
|
||||
GAME_MODE_TEAM_DEATHMATCH = 1,
|
||||
GAME_MODE_TEAM_MAFIYA_WORK = 3,
|
||||
GAME_MODE_TURF_WAR = 12,
|
||||
GAME_MODE_UNKNOWN_11 = 11,
|
||||
GAME_MODE_UNKNOWN_9 = 9
|
||||
};
|
||||
Invite stuff for future reference (Devil wants invites done through menu I think) - Nathan
|
||||
|
||||
extern boolean NETWORK_CHECK_INVITE_ARRIVAL(void);
|
||||
extern boolean NETWORK_HAVE_ACCEPTED_INVITE(void);
|
||||
extern boolean NETWORK_IS_INVITEE_ONLINE(void);
|
||||
extern void NETWORK_CLEAR_INVITE_ARRIVAL(void);
|
||||
extern bool NETWORK_INVITE_FRIEND(char *friendname, char *ukn);//NETWORK_INVITE_FRIEND(NETWORK_GET_FRIEND_NAME(I), "");
|
||||
|
||||
NETWORK_GET_NUM_UNACCEPTED_INVITES(void);
|
||||
extern int NETWORK_GET_UNACCEPTED_INVITE_EPISODE(int invite_id);
|
||||
extern int NETWORK_GET_UNACCEPTED_INVITE_GAME_MODE(int invite_id);
|
||||
|
||||
|
||||
//GAME MODES v
|
||||
|
||||
enum eGameMode{
|
||||
GAME_MODE_BOMB_DA_BASE_II = 15,
|
||||
GAME_MODE_CAR_JACK_CITY = 5,
|
||||
GAME_MODE_COPS_AND_CROOKS = 10,
|
||||
GAME_MODE_DEAL_BREAKER = 13,
|
||||
GAME_MODE_DEATHMATCH = 0,
|
||||
GAME_MODE_FREE_MODE = 0x10,
|
||||
GAME_MODE_GTA_RACE = 7,
|
||||
GAME_MODE_HANGMANS_NOOSE = 14,
|
||||
GAME_MODE_MAFIYA_WORK = 2,
|
||||
GAME_MODE_NONE = -1,
|
||||
GAME_MODE_PARTY_MODE = 8,
|
||||
GAME_MODE_RACE = 6,
|
||||
GAME_MODE_TEAM_CAR_JACK_CITY = 4,
|
||||
GAME_MODE_TEAM_DEATHMATCH = 1,
|
||||
GAME_MODE_TEAM_MAFIYA_WORK = 3,
|
||||
GAME_MODE_TURF_WAR = 12,
|
||||
GAME_MODE_UNKNOWN_11 = 11,
|
||||
GAME_MODE_UNKNOWN_9 = 9
|
||||
};
|
||||
*/
|
||||
867
Trident/MD_Contents/MDC_Keyboard_Shortcuts.c
Normal file
867
Trident/MD_Contents/MDC_Keyboard_Shortcuts.c
Normal file
@@ -0,0 +1,867 @@
|
||||
/**
|
||||
* @ MD Trident
|
||||
* @ MD Series: Version 13, January 2017 //#ifdef Premium IS USED HERE!
|
||||
* @ Copyright (C) 2017 IIV NATHAN VII / DEVILSDESIGN
|
||||
*/
|
||||
|
||||
//#ifdef Premium IS USED HERE! /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
|
||||
//Created by IIV NATHAN VII
|
||||
// IF ISSUES ARISE because of button priorities or something (shouldn't do) LET ME KNOW! (Nathan) I should be able to sort it!
|
||||
//Controls currently at line: 205!
|
||||
//COPY_ANIMATIONS(Ped ped, Ped pednext, float speed); //Put ped in water and copy anims.. SwimWalk?
|
||||
//#include <natives.h>
|
||||
//#include <inccommon.h>
|
||||
//#include <strings.h>
|
||||
//#include <types.h>
|
||||
//#include <consts.h>
|
||||
|
||||
//PUT THESE FUNCTIONS IN SHARED!
|
||||
/*
|
||||
void Shuffle_Vehicle_Seat(void) //WORKS ON BIKES TOO!
|
||||
{
|
||||
int tmp_veh;
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)) return;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&tmp_veh);
|
||||
if(IS_CHAR_ON_ANY_BIKE(pPlayer))
|
||||
{
|
||||
int driver;
|
||||
GET_DRIVER_OF_CAR(tmp_veh,&driver);
|
||||
if(!DOES_CHAR_EXIST(driver))
|
||||
WARP_CHAR_INTO_CAR(pPlayer,tmp_veh);
|
||||
else if(driver == pPlayer && IS_CAR_PASSENGER_SEAT_FREE(tmp_veh,0))
|
||||
WARP_CHAR_INTO_CAR_AS_PASSENGER(pPlayer,tmp_veh,0);
|
||||
}
|
||||
TASK_SHUFFLE_TO_NEXT_CAR_SEAT(pPlayer,tmp_veh);
|
||||
}
|
||||
|
||||
void Clone_Car( int cveh, float x, float y, float z, float h, int *car_clone)
|
||||
{
|
||||
int model;
|
||||
if(!DOES_VEHICLE_EXIST(cveh)) return;
|
||||
int colour1,colour2,colourEXT1,colourEXT2;
|
||||
int health;
|
||||
float dirt_level;
|
||||
GET_CAR_MODEL(cveh,&model);
|
||||
GET_CAR_COLOURS(cveh, &colour1, &colour2);
|
||||
GET_EXTRA_CAR_COLOURS(cveh, &colourEXT1, &colourEXT2);
|
||||
GET_CAR_HEALTH(cveh, &health);
|
||||
GET_VEHICLE_DIRT_LEVEL(cveh, &dirt_level);
|
||||
bool siren = IS_CAR_SIREN_ON(cveh);
|
||||
////////////////
|
||||
CREATE_CAR(model,x,y,z,&cveh,true);
|
||||
SET_VEHICLE_ALPHA(cveh,0); //should make vehicle transparent and appear slowly...
|
||||
SET_CAR_HEADING(cveh,h);
|
||||
SET_CAR_ON_GROUND_PROPERLY(cveh);
|
||||
SET_CAR_HEALTH(cveh,health);
|
||||
CHANGE_CAR_COLOUR(cveh,colour1,colour2);
|
||||
SET_EXTRA_CAR_COLOURS(cveh,colourEXT1,colourEXT2);
|
||||
SET_VEHICLE_DIRT_LEVEL(cveh,dirt_level); //can adjust dirt level and health based on vehicle helper being on..
|
||||
SWITCH_CAR_SIREN(cveh,siren);
|
||||
//If Vehicle helper looped (we can do this on tick delay!)
|
||||
//SET_CAR_CAN_BE_DAMAGED(cveh,!vehicle_helper);
|
||||
//SET_CAR_CAN_BE_VISIBLY_DAMAGED(cveh,!vehicle_helper);
|
||||
//if doesn't work use SET_CAR_PROOFS(cveh,bool bulletproof, bool fireproof, bool explosionproof, bool colissionproof, bool meleeproof);
|
||||
|
||||
car_clone = cveh;
|
||||
}
|
||||
|
||||
|
||||
*/
|
||||
|
||||
|
||||
#ifdef Premium //This is for the enum and loop voids
|
||||
|
||||
enum eKeyboardAntiPauseActions{
|
||||
ACTION_COMPLETE_AND_DISABLED = 0,
|
||||
ACTION_NETWORK_SPY_PLAYER = 1,
|
||||
ACTION_NETWORK_MUTE_PLAYER = 2,
|
||||
ACTION_NETWORK_KICK_PLAYER = 3,
|
||||
ACTION_NETWORK_VIEW_PLAYER_PROFILE = 4,
|
||||
};
|
||||
|
||||
void VerifyKeyboardSelectedNetworkIndex(void)
|
||||
{
|
||||
register int i;
|
||||
if(Player_Display_Selection(KeyboardSelectedPlayerIndex)) //Skips developers :P
|
||||
{
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(Player_Display_Selection(i)) continue;
|
||||
KeyboardSelectedPlayerIndex = i;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MC_Keyboard_Network_Anti_Wait_Loop(void)
|
||||
{
|
||||
if(KeyboardAntiWaitAction == ACTION_COMPLETE_AND_DISABLED) return;
|
||||
VerifyKeyboardSelectedNetworkIndex();
|
||||
if(IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_ESC))
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_COMPLETE_AND_DISABLED;
|
||||
CLEAR_PRINTS();
|
||||
return;
|
||||
}
|
||||
else if(IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_RIGHT_ARROW))
|
||||
{
|
||||
KeyboardSelectedPlayerIndex++;
|
||||
if(Player_Display_Selection(KeyboardSelectedPlayerIndex))
|
||||
{
|
||||
register int i;
|
||||
for(i = KeyboardSelectedPlayerIndex; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(Player_Display_Selection(i)) continue;
|
||||
KeyboardSelectedPlayerIndex = i;
|
||||
break;
|
||||
}
|
||||
if(Player_Display_Selection(KeyboardSelectedPlayerIndex)) //unable to increase
|
||||
{
|
||||
VerifyKeyboardSelectedNetworkIndex(); //will re-scan
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_LEFT_ARROW))
|
||||
{
|
||||
KeyboardSelectedPlayerIndex--;
|
||||
if(Player_Display_Selection(KeyboardSelectedPlayerIndex))
|
||||
{
|
||||
register int i;
|
||||
for(i = KeyboardSelectedPlayerIndex; i > -1; i--) //MAY NEED CHANGING TO 0, not sure, think this is correct! - Nathan
|
||||
{
|
||||
if(Player_Display_Selection(i)) continue;
|
||||
KeyboardSelectedPlayerIndex = i;
|
||||
break;
|
||||
}
|
||||
if(Player_Display_Selection(KeyboardSelectedPlayerIndex))
|
||||
{
|
||||
VerifyKeyboardSelectedNetworkIndex(); //will re-scan
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ~PAD_LEFT~ "); //27
|
||||
PLAYER_NAME_WITH_COLOUR(KeyboardSelectedPlayerIndex, &buffer); //WORKS! //45
|
||||
Strcat(buffer, "~s~ ~PAD_RIGHT~~n~"); //63
|
||||
if(KeyboardAntiWaitAction == ACTION_NETWORK_SPY_PLAYER)
|
||||
{
|
||||
Strcat(buffer, keyboard_close_on_network_selection ? "Spy = ENTER" : "Spy = ENTER, Exit = ESC");
|
||||
if(IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_ENTER))
|
||||
{
|
||||
if(Is_Whitelisted(KeyboardSelectedPlayerIndex))
|
||||
{
|
||||
PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_UNREADY");
|
||||
}
|
||||
else
|
||||
{
|
||||
if(PLAYER_HAS_CHAR(KeyboardSelectedPlayerIndex))
|
||||
{
|
||||
int tmp_ped;
|
||||
GET_PLAYER_CHAR(KeyboardSelectedPlayerIndex,&tmp_ped);
|
||||
//Spectate_Char = tmp_ped;
|
||||
//SpectatePlayerIndex = KeyboardSelectedPlayerIndex;
|
||||
SetByteSet(&SpectateAndAttachByteSet, SPECTATE_PLAYER_INDEX, KeyboardSelectedPlayerIndex);
|
||||
//MD_Spectate_Player(tmp_ped); pretty sure the loop will trigger this
|
||||
if(keyboard_close_on_network_selection)
|
||||
{
|
||||
char * nigger[32];
|
||||
Strcpy(nigger, "~b~MD: ~s~Spectating: "); //31
|
||||
PLAYER_NAME_WITH_COLOUR(KeyboardSelectedPlayerIndex, &nigger); //WORKS! = 40
|
||||
Strcat(nigger, "~s~.~n~Hold ~PAD_LB~ & Press ~PAD_RB~ to disable."); //74
|
||||
Alert(nigger, false);
|
||||
KeyboardAntiWaitAction = ACTION_COMPLETE_AND_DISABLED;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(KeyboardAntiWaitAction == ACTION_NETWORK_MUTE_PLAYER)
|
||||
{
|
||||
Strcat(buffer, NETWORK_IS_PLAYER_MUTED_BY_ME(KeyboardSelectedPlayerIndex) ? "UnMute" : "Mute");
|
||||
Strcat(buffer, keyboard_close_on_network_selection ? " = ENTER" : " = ENTER, Exit = ESC");
|
||||
if(IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_ENTER))
|
||||
{
|
||||
if(Is_Whitelisted(KeyboardSelectedPlayerIndex))
|
||||
{
|
||||
NETWORK_SET_PLAYER_MUTED(KeyboardSelectedPlayerIndex,false);
|
||||
PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_UNREADY");
|
||||
}
|
||||
else
|
||||
{
|
||||
NETWORK_SET_PLAYER_MUTED(KeyboardSelectedPlayerIndex, !NETWORK_IS_PLAYER_MUTED_BY_ME(KeyboardSelectedPlayerIndex));
|
||||
if(keyboard_close_on_network_selection)
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_COMPLETE_AND_DISABLED;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(KeyboardAntiWaitAction == ACTION_NETWORK_KICK_PLAYER)
|
||||
{
|
||||
Strcat(buffer, keyboard_close_on_network_selection ? "Kick = ENTER" : "Kick = ENTER, Exit = ESC");
|
||||
if(IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_ENTER))
|
||||
{
|
||||
if(Is_Whitelisted(KeyboardSelectedPlayerIndex))
|
||||
{
|
||||
PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_UNREADY");
|
||||
}
|
||||
else
|
||||
{
|
||||
NETWORK_KICK_PLAYER(KeyboardSelectedPlayerIndex);
|
||||
if(keyboard_close_on_network_selection)
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_COMPLETE_AND_DISABLED;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(KeyboardAntiWaitAction == ACTION_NETWORK_VIEW_PLAYER_PROFILE)
|
||||
{
|
||||
Strcat(buffer, keyboard_close_on_network_selection ? "Profile = ENTER" : "Profile = ENTER, Exit = ESC");
|
||||
//gt spoofers, lets allow people to view all profiles (no whitelist)
|
||||
if(IS_GAME_KEYBOARD_KEY_JUST_PRESSED(KEY_ENTER))
|
||||
{
|
||||
NETWORK_SHOW_PLAYER_PROFILE_UI(KeyboardSelectedPlayerIndex);
|
||||
if(keyboard_close_on_network_selection)
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_COMPLETE_AND_DISABLED;
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
CLEAR_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(false);
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", buffer, 300,true);
|
||||
|
||||
}
|
||||
#endif
|
||||
|
||||
//bool keyboard_delete_abandoned_vehicles_only = true; //Has to be global!
|
||||
void MC_Keyboard(void) //LOOP THIS ALWAYS!
|
||||
{
|
||||
#ifdef Premium
|
||||
MC_Keyboard_Network_Anti_Wait_Loop();
|
||||
#endif
|
||||
#ifdef VERSION_PC
|
||||
if(NETWORK_IS_PLAYER_TYPING(iPlayer)) return;
|
||||
#endif
|
||||
/*
|
||||
//Controls
|
||||
//HOLD W: (Weather)
|
||||
//Press:
|
||||
//S for Sunny
|
||||
//T for thunder
|
||||
//D for drizzle
|
||||
//C for cloudy
|
||||
//M for Misty
|
||||
//B for breeze (windy)
|
||||
//E for extra sunny
|
||||
//F for Freeze weather toggle
|
||||
/////
|
||||
//HOLD T: (Time)
|
||||
//Press:
|
||||
//M for morning
|
||||
//D for day
|
||||
//N for night
|
||||
//E for evening
|
||||
//A for afternoon
|
||||
//C for cycle time
|
||||
//F for freeze time toggle
|
||||
/////
|
||||
//Hold V: (Vehicle)
|
||||
//Press:
|
||||
//F to flip
|
||||
//S to shuffle seats (also works on bikes)
|
||||
//R to repair
|
||||
//D to delete
|
||||
//C for clone
|
||||
//E to eject yourself
|
||||
//L to toggle door locks
|
||||
//K to kick out passengers (respawns your car)
|
||||
//I to set invincible
|
||||
/////
|
||||
//Hold D: (Delete)
|
||||
//Press:
|
||||
//P for peds
|
||||
//O for objects
|
||||
//V for vehicles (basically every type of vehicle)
|
||||
//C for cars
|
||||
//M for motorbikes
|
||||
//B for boats
|
||||
//H for helicopters
|
||||
//A for abandoned vehicles only toggle
|
||||
/////
|
||||
//Hold P: (Player)
|
||||
//Press:
|
||||
//G for god mode toggle
|
||||
//A for auto-aim toggle
|
||||
//I for infinite ammo toggle
|
||||
//W for give weapons
|
||||
//V for Visibility toggle
|
||||
//F for forcefield toggle
|
||||
//N for never wanted toggle
|
||||
//J for super jump toggle
|
||||
//R for super run toggle
|
||||
//K for Kill
|
||||
//D for Detach
|
||||
//E for Explosion (premium only)
|
||||
/////
|
||||
//Hold N: (Network) (premium only)
|
||||
//Press:
|
||||
//S for Spy (Player selection)
|
||||
//M for mute (Player selection)
|
||||
//K for kick (Player selection)
|
||||
//P for profile
|
||||
//C for Close on player selection toggle
|
||||
////////////////
|
||||
|
||||
*/
|
||||
//register int i;
|
||||
int i;
|
||||
//W (weather)
|
||||
if(IS_GAME_KEYBOARD_KEY_PRESSED(KEY_W)) //Weather options
|
||||
{
|
||||
int weathers[8];
|
||||
weathers[0] = WEATHER_SUNNY;
|
||||
weathers[1] = WEATHER_LIGHTNING;
|
||||
weathers[2] = WEATHER_RAINING;
|
||||
weathers[3] = WEATHER_DRIZZLE;
|
||||
weathers[4] = WEATHER_CLOUDY;
|
||||
weathers[5] = WEATHER_FOGGY;
|
||||
weathers[6] = WEATHER_SUNNY_WINDY;
|
||||
weathers[7] = WEATHER_EXTRA_SUNNY;
|
||||
int keys[9];
|
||||
keys[0] = KEY_S; //weather sunny
|
||||
keys[1] = KEY_T; //weather thunder
|
||||
keys[2] = KEY_R; //weather raining
|
||||
keys[3] = KEY_D; //weather drizzle
|
||||
keys[4] = KEY_C; //weather cloudy
|
||||
keys[5] = KEY_M; //weather misty (foggy)
|
||||
keys[6] = KEY_B; //weather breeze (windy)
|
||||
keys[7] = KEY_E; //weather extra_sunny
|
||||
keys[8] = KEY_F; //freeze weather
|
||||
char* messages[9];
|
||||
messages[0] = "sunny.";
|
||||
messages[1] = "thunder.";
|
||||
messages[2] = "raining.";
|
||||
messages[3] = "drizzle.";
|
||||
messages[4] = "cloudy.";
|
||||
messages[5] = "misty/foggy.";
|
||||
messages[6] = "breezy/windy";
|
||||
messages[7] = "extra sunny";
|
||||
messages[8] = (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER) == 50 ? "un-freeze." : "freeze.");
|
||||
for(i = 0; i < 9; i++)
|
||||
{
|
||||
if(!IS_GAME_KEYBOARD_KEY_JUST_PRESSED(keys[i])) continue;
|
||||
|
||||
if(i >= 0 && i < 8)
|
||||
{
|
||||
MD_SET_WEATHER(weathers[i]);
|
||||
}
|
||||
else if(i == 8)
|
||||
{
|
||||
if(GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER) == 50)
|
||||
{
|
||||
int weatha;
|
||||
GET_CURRENT_WEATHER(&weatha);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, weatha);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, 50);
|
||||
}
|
||||
}
|
||||
Alert_Two("~b~MD: ~s~Weather command accepted",messages[i],false);
|
||||
break;
|
||||
//If using freeze weather set freeze weather here to weathers[i]
|
||||
|
||||
}
|
||||
//Can make admin commands to force time and weather!
|
||||
}
|
||||
else if(IS_GAME_KEYBOARD_KEY_PRESSED(KEY_T)) //Time options //this is host only unless you enable freeze time! (could implement admin commands to force weather/time also)
|
||||
{
|
||||
//time
|
||||
int keys[7];
|
||||
keys[0] = KEY_M; //time morning
|
||||
keys[1] = KEY_D; //time day
|
||||
keys[2] = KEY_N; //time night
|
||||
keys[3] = KEY_E; //time evening
|
||||
keys[4] = KEY_A; //afternoon
|
||||
keys[5] = KEY_F; //freeze time
|
||||
keys[6] = KEY_C; //Cycle time
|
||||
int times[5];
|
||||
times[0] = 9; //9AM (morning)
|
||||
times[1] = 12; //12 //day
|
||||
times[2] = 24; //2400, midnight
|
||||
times[3] = 18; //6PM //evening
|
||||
times[4] = 15; //3PM Afternoon
|
||||
char* messages[7];
|
||||
messages[0] = "morning.";
|
||||
messages[1] = "day.";
|
||||
messages[2] = "midnight.";
|
||||
messages[3] = "evening.";
|
||||
messages[4] = "afternoon.";
|
||||
messages[5] = (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) == 25 ? "un-freeze." : "freeze."); //Pretty sure these should be flipped as it's before process!
|
||||
messages[6] = (GetBit(MD_Misc_OptionsBitSet, MD_MISC_TIME_CYCLE) ? "time cycle off." : "time cycle on."); //flipped!
|
||||
for(i = 0; i < 7; i++)
|
||||
{
|
||||
if(!IS_GAME_KEYBOARD_KEY_JUST_PRESSED(keys[i])) continue;
|
||||
|
||||
if( i < 5 )
|
||||
{
|
||||
SET_TIME_OF_DAY(times[i],00);
|
||||
if(GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) != 25)
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, times[i]);
|
||||
}
|
||||
}
|
||||
else if(i == 5)
|
||||
{
|
||||
if(GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) == 25)
|
||||
{
|
||||
int houa, minuta;
|
||||
GET_TIME_OF_DAY(&houa,&minuta);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, houa);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE, minuta);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, 25);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE, 0);
|
||||
}
|
||||
}
|
||||
else if(i == 6)
|
||||
{
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_TIME_CYCLE);
|
||||
}
|
||||
Alert_Two("~b~MD: ~s~Time command accepted",messages[i],false);
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
else if(IS_GAME_KEYBOARD_KEY_PRESSED(KEY_V)) //Vehicle options
|
||||
{
|
||||
int tmp_veh,nvid,driver;
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer))
|
||||
{
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&tmp_veh);
|
||||
GET_DRIVER_OF_CAR(tmp_veh,&driver);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&nvid);
|
||||
int keys[9];
|
||||
keys[0] = KEY_F; //Flip vehicle
|
||||
keys[1] = KEY_S; //shuffle seats
|
||||
keys[2] = KEY_R; //repair vehicle
|
||||
keys[3] = KEY_C; //Clone Vehicle //use KEY_C (clone) and KEY_D for Delete
|
||||
keys[4] = KEY_E; //Eject from vehicle
|
||||
keys[5] = KEY_L; //Lock vehicle
|
||||
keys[6] = KEY_K; //kick out passengers
|
||||
keys[7] = KEY_D; //Delete vehicle
|
||||
keys[8] = KEY_I; //Invincibility
|
||||
char* second_string = "";
|
||||
for(i = 0; i < 8; i++)
|
||||
{
|
||||
if(!IS_GAME_KEYBOARD_KEY_JUST_PRESSED(keys[i])) continue;
|
||||
|
||||
if( (i == 0 || i == 2 || i == 5 || i == 8 || i == 6 || i == 7 ) && (driver != pPlayer)) //works always and avoids fcar protection net id glitch
|
||||
{
|
||||
if(!network_control(nvid)) continue;
|
||||
}
|
||||
float x,y,z,h;
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
|
||||
if(i == 0) //KEY_F (flip)
|
||||
{
|
||||
SET_CAR_ON_GROUND_PROPERLY(tmp_veh);
|
||||
second_string = "flip vehicle.";
|
||||
}
|
||||
else if(i == 1) //KEY_S (shuffle seats)
|
||||
{
|
||||
Shuffle_Vehicle_Seat();
|
||||
second_string = "shuffle seats.";
|
||||
}
|
||||
else if(i == 2) //KEY_R //repair
|
||||
{
|
||||
FIX_CAR(tmp_veh);
|
||||
SET_VEHICLE_DIRT_LEVEL(tmp_veh,0.0);
|
||||
second_string = "repair vehicle.";
|
||||
}
|
||||
else if(i == 3) //KEY_C //clone vehicle
|
||||
{
|
||||
int rand,tmp;
|
||||
GET_CAR_HEADING(tmp_veh,&h);
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,1,&rand);
|
||||
GET_OFFSET_FROM_CAR_IN_WORLD_COORDS(tmp_veh,(rand == 1 ? +3 : -3),0,0,&x,&y,&z);
|
||||
Clone_Car(tmp_veh,x,y,z,h,&tmp);
|
||||
OPEN_CAR_DOOR(tmp,(rand == 1 ? 0 : 1)); //if spawned on right, open drivers door, if spawned on left, open passenger door
|
||||
second_string = "clone vehicle.";
|
||||
}
|
||||
else if(i == 4) //KEY_E //Eject from vehicle
|
||||
{
|
||||
REMOVE_CHAR_FROM_CAR_MAINTAIN_POSITION(pPlayer,tmp_veh); //TEST THIS! - Nathan --> this works!
|
||||
second_string = "eject from vehicle.";
|
||||
}
|
||||
else if(i == 5) //KEY_L //Lock vehicle
|
||||
{
|
||||
int lock;
|
||||
GET_CAR_DOOR_LOCK_STATUS(tmp_veh,&lock);
|
||||
LOCK_CAR_DOORS(tmp_veh, ( (lock == VEHICLE_DOOR_UNLOCKED) ? VEHICLE_DOOR_LOCKED_BOTH_SIDES : VEHICLE_DOOR_UNLOCKED) );
|
||||
second_string = (lock == VEHICLE_DOOR_UNLOCKED ? "doors locked." : "doors unlocked.");
|
||||
}
|
||||
else if(i == 6) //KEY_K //kick out passengers
|
||||
{
|
||||
#ifdef Premium
|
||||
int tmp;
|
||||
float speed;
|
||||
GET_CAR_SPEED(tmp_veh,&speed);
|
||||
Clone_Car(tmp_veh,x,y,z,h,&tmp);
|
||||
DELETE_CAR(&tmp_veh);
|
||||
WARP_CHAR_INTO_CAR(pPlayer,tmp);
|
||||
SET_CAR_FORWARD_SPEED(tmp,speed);
|
||||
second_string = "eject passengers.";
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
return;
|
||||
#endif
|
||||
|
||||
}
|
||||
else if(i == 7) //KEY_D //delete vehicle
|
||||
{
|
||||
DELETE_CAR(&tmp_veh);
|
||||
second_string = "delete vehicle.";
|
||||
}
|
||||
else if(i == 8)
|
||||
{
|
||||
SET_CAR_CAN_BE_DAMAGED(tmp_veh,false);
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(tmp_veh,false);
|
||||
SET_CAN_BURST_CAR_TYRES(tmp_veh,false);
|
||||
SET_CAR_PROOFS(tmp_veh,true,true,true,true,true);
|
||||
second_string = "set invincible.";
|
||||
}
|
||||
|
||||
Alert_Two("~b~MD: ~s~Vehicle command accepted",second_string,false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(IS_GAME_KEYBOARD_KEY_PRESSED(KEY_D)) //Delete options
|
||||
{
|
||||
int keys[8];
|
||||
keys[0] = KEY_P; //Peds
|
||||
keys[1] = KEY_O; //Objects
|
||||
keys[2] = KEY_V; //Vehicles //KEY_A for abandoned mode toggle
|
||||
keys[3] = KEY_C; //Cars
|
||||
keys[4] = KEY_M; //MotorBikes
|
||||
keys[5] = KEY_B; //Boats
|
||||
keys[6] = KEY_H; //Helicopters
|
||||
keys[7] = KEY_A; //Abandoned vehicles only toggle
|
||||
char deletes[7];
|
||||
deletes[0] = 0;
|
||||
deletes[1] = 1;
|
||||
deletes[2] = (keyboard_delete_abandoned_vehicles_only ? 3 : 2);
|
||||
deletes[3] = (keyboard_delete_abandoned_vehicles_only ? 5 : 4);
|
||||
deletes[4] = (keyboard_delete_abandoned_vehicles_only ? 7 : 6);
|
||||
deletes[5] = (keyboard_delete_abandoned_vehicles_only ? 9 : 8);
|
||||
deletes[6] = (keyboard_delete_abandoned_vehicles_only ? 11 : 10);
|
||||
for(i = 0; i < 8; i++)
|
||||
{
|
||||
if(!IS_GAME_KEYBOARD_KEY_JUST_PRESSED(keys[i])) continue;
|
||||
if(i == 7)
|
||||
{
|
||||
keyboard_delete_abandoned_vehicles_only = !keyboard_delete_abandoned_vehicles_only;
|
||||
Alert_Two("~b~MD: ~s~Keyboard's vehicle delete mode",(keyboard_delete_abandoned_vehicles_only ? "abandoned only." : "all."),false);
|
||||
break;
|
||||
}
|
||||
Universal_Delete(325,deletes[i],true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
else if(IS_GAME_KEYBOARD_KEY_PRESSED(KEY_P)) //Player options
|
||||
{
|
||||
int keys[12];
|
||||
keys[0] = KEY_G; //God mode toggle
|
||||
keys[1] = KEY_I; //Infinite ammo toggle
|
||||
keys[2] = KEY_W; //Give weapons (must make function give_weapons(ped, episode))
|
||||
keys[3] = KEY_K; //Kill self
|
||||
keys[4] = KEY_N; //Never wanted
|
||||
keys[5] = KEY_F; //Forcefield
|
||||
keys[6] = KEY_V; //Visibility
|
||||
keys[7] = KEY_J; //Super jump
|
||||
keys[8] = KEY_R; //Super run
|
||||
keys[9] = KEY_A; //Auto-aim
|
||||
keys[10] = KEY_D; //Detach
|
||||
keys[11] = KEY_E; //Explosion (premium only)
|
||||
//keys[] = KEY_P; //Super punch (also known as super powers)
|
||||
char* second_string = "";
|
||||
for(i = 0; i < 12; i ++)
|
||||
{
|
||||
if(!IS_GAME_KEYBOARD_KEY_JUST_PRESSED(keys[i])) continue;
|
||||
|
||||
if(i == 0) //God mode toggle
|
||||
{
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE);
|
||||
second_string = (GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE) ? "god mode on." : "god mode off.");
|
||||
}
|
||||
else if(i == 1)
|
||||
{
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO);
|
||||
second_string = (GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO) ? "infinite ammo on." : "infinite ammo off.");
|
||||
}
|
||||
else if(i == 2)
|
||||
{
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(pPlayer,Episode);
|
||||
second_string = "give weapons.";
|
||||
}
|
||||
else if(i == 3)
|
||||
{
|
||||
SET_CHAR_HEALTH(pPlayer,-1);
|
||||
second_string = "kill.";
|
||||
}
|
||||
else if(i == 4)
|
||||
{
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_NEVER_WANTED);
|
||||
second_string = (GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_NEVER_WANTED) ? "never wanted on." : "never wanted off.");
|
||||
}
|
||||
else if(i == 5)
|
||||
{
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_FORCE_FIELD);
|
||||
second_string = (GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FORCE_FIELD) ? "force field on." : "force field off.");
|
||||
}
|
||||
else if(i == 6)
|
||||
{
|
||||
SET_CHAR_VISIBLE(pPlayer,!IS_CHAR_VISIBLE(pPlayer));
|
||||
second_string = (IS_CHAR_VISIBLE(pPlayer) ? "invisibility off." : "invisibility on.");
|
||||
}
|
||||
else if(i == 7)
|
||||
{
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_JUMP);
|
||||
second_string = (GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_JUMP) ? "super jump on." : "super jump off.");
|
||||
}
|
||||
else if(i == 8)
|
||||
{
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_RUN);
|
||||
second_string = (GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_RUN) ? "super run on." : "super run off.");
|
||||
}
|
||||
else if(i == 9)
|
||||
{
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO);
|
||||
second_string = (GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO) ? "auto-aim on." : "auto-aim off.");
|
||||
}
|
||||
else if(i == 10)
|
||||
{
|
||||
Detach_pPlayer();
|
||||
second_string = "detached.";
|
||||
}
|
||||
else if(i == 11) //explosion
|
||||
{
|
||||
#ifdef Premium
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(pPlayer, &x, &y, &z);
|
||||
ADD_EXPLOSION(x, y, z, EXPLOSION_SHIP_DESTROY, 10.0, true, false, 0.7f);
|
||||
second_string = "explosion.";
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
Alert_Two("~b~MD: ~s~Player command accepted",second_string,false);
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
else if(IS_GAME_KEYBOARD_KEY_PRESSED(KEY_N)) //Network Options
|
||||
{
|
||||
#ifdef Premium
|
||||
int keys[5];
|
||||
keys[0] = KEY_S; //Spy on player
|
||||
keys[1] = KEY_M; //Mute player
|
||||
keys[2] = KEY_K; //kick player
|
||||
keys[3] = KEY_C; //Close on network player selection toggle
|
||||
keys[4] = KEY_P; //Open profile of player
|
||||
//no second string needed here as loop handles it..
|
||||
for(i = 0; i < 5; i++)
|
||||
{
|
||||
if(!IS_GAME_KEYBOARD_KEY_JUST_PRESSED(keys[i])) continue;
|
||||
|
||||
if(i == 0)
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_NETWORK_SPY_PLAYER;
|
||||
return; //YES THIS IS SUPPOSED TO BE HERE! INPUT IS NOW LISTENED FOR BY THE OTHER FUNCTION
|
||||
}
|
||||
else if(i == 1)
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_NETWORK_MUTE_PLAYER;
|
||||
return;
|
||||
}
|
||||
else if(i == 2)
|
||||
{
|
||||
if(IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_NETWORK_KICK_PLAYER;
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert("~b~MD: ~s~You are not host.",false);
|
||||
}
|
||||
}
|
||||
else if(i == 3)
|
||||
{
|
||||
keyboard_close_on_network_selection = !keyboard_close_on_network_selection;
|
||||
if(KeyboardAntiWaitAction == ACTION_COMPLETE_AND_DISABLED)
|
||||
{
|
||||
Alert( keyboard_close_on_network_selection ? "~b~MD: ~s~Keyboard menu will now close on player selection." : "~b~MD: ~s~Keyboard menu will now stay open on player selection.",false);
|
||||
}
|
||||
}
|
||||
else if(i == 4)
|
||||
{
|
||||
KeyboardAntiWaitAction = ACTION_NETWORK_VIEW_PLAYER_PROFILE;
|
||||
return;
|
||||
}
|
||||
}
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* Invite stuff for future reference (Devil wants invites done through menu I think) - Nathan
|
||||
|
||||
extern boolean NETWORK_CHECK_INVITE_ARRIVAL(void);
|
||||
extern boolean NETWORK_HAVE_ACCEPTED_INVITE(void);
|
||||
extern boolean NETWORK_IS_INVITEE_ONLINE(void);
|
||||
extern void NETWORK_CLEAR_INVITE_ARRIVAL(void);
|
||||
extern void NETWORK_INVITE_FRIEND(char *friendname, char *ukn);//NETWORK_INVITE_FRIEND(NETWORK_GET_FRIEND_NAME(I), "");
|
||||
|
||||
NETWORK_GET_NUM_UNACCEPTED_INVITES(void);
|
||||
extern int NETWORK_GET_UNACCEPTED_INVITE_EPISODE(int invite_id);
|
||||
extern int NETWORK_GET_UNACCEPTED_INVITE_GAME_MODE(int invite_id);
|
||||
*/
|
||||
|
||||
//GAME MODES v
|
||||
/*
|
||||
enum eGameMode{
|
||||
GAME_MODE_BOMB_DA_BASE_II = 15,
|
||||
GAME_MODE_CAR_JACK_CITY = 5,
|
||||
GAME_MODE_COPS_AND_CROOKS = 10,
|
||||
GAME_MODE_DEAL_BREAKER = 13,
|
||||
GAME_MODE_DEATHMATCH = 0,
|
||||
GAME_MODE_FREE_MODE = 0x10,
|
||||
GAME_MODE_GTA_RACE = 7,
|
||||
GAME_MODE_HANGMANS_NOOSE = 14,
|
||||
GAME_MODE_MAFIYA_WORK = 2,
|
||||
GAME_MODE_NONE = -1,
|
||||
GAME_MODE_PARTY_MODE = 8,
|
||||
GAME_MODE_RACE = 6,
|
||||
GAME_MODE_TEAM_CAR_JACK_CITY = 4,
|
||||
GAME_MODE_TEAM_DEATHMATCH = 1,
|
||||
GAME_MODE_TEAM_MAFIYA_WORK = 3,
|
||||
GAME_MODE_TURF_WAR = 12,
|
||||
GAME_MODE_UNKNOWN_11 = 11,
|
||||
GAME_MODE_UNKNOWN_9 = 9
|
||||
};
|
||||
*/
|
||||
|
||||
/* INVITE ALL FRIENDS TEST
|
||||
int i;
|
||||
for(i = 0; i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
if(NETWORK_DID_INVITE_FRIEND(NETWORK_GET_FRIEND_NAME(i))) continue;
|
||||
NETWORK_INVITE_FRIEND(NETWORK_GET_FRIEND_NAME(i), "");
|
||||
print_two(NETWORK_GET_FRIEND_NAME(i),"was sent an invite to the game");
|
||||
int tick = 0;
|
||||
do
|
||||
{
|
||||
if(!NETWORK_CHECK_INVITE_ARRIVAL(i))
|
||||
{
|
||||
tick++; //total of 3 seconds (30 times 100ms)
|
||||
WAIT(100);
|
||||
}
|
||||
else
|
||||
{
|
||||
NETWORK_CLEAR_INVITE_ARRIVAL();
|
||||
print_two("invite was successfully delivered to",NETWORK_GET_FRIEND_NAME(i));
|
||||
break;
|
||||
}
|
||||
}
|
||||
while(tick < 30);
|
||||
WAIT(10);
|
||||
}
|
||||
*/
|
||||
/*
|
||||
PRINT ALL UNACCEPTED INVITE GAMERTAGS
|
||||
int i;
|
||||
char* episode[3]; episode[0] = "Original"; episode[1] = "TLaD"; episode[2] = "TBoGT";
|
||||
for(i = 0; i < GET_NUM_UNACCEPTED_INVITES(); i++)
|
||||
{
|
||||
print_two(NETWORK_GET_UNACCEPTED_INVITER_NAME(i),episode[NETWORK_GET_UNACCEPTED_INVITE_EPISODE(i)]);
|
||||
// NETWORK_ACCEPT_INVITE(i);
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
extern char *NETWORK_GET_UNACCEPTED_INVITER_NAME(int invite_id);
|
||||
extern int NETWORK_ACCEPT_INVITE(int invite_id);
|
||||
|
||||
extern boolean NETWORK_DID_INVITE_FRIEND(char *friendname);//NETWORK_GET_FRIEND_NAME(I)
|
||||
extern int NETWORK_ACCEPT_INVITE(int invite_id);//if (COMPARE_STRING( NETWORK_GET_FRIEND_NAME( uParam0 ), NETWORK_GET_UNACCEPTED_INVITER_NAME( Result ) )) return result;
|
||||
//possibly
|
||||
*/
|
||||
|
||||
/* GAME STUFF
|
||||
|
||||
NETWORK_FIND_GAME(int GameMode, int ukn0, int ukn1, int ukn2);
|
||||
|
||||
int i;
|
||||
for(i = 0; i < NETWORK_GET_NUMBER_OF_GAMES(); i++)
|
||||
{
|
||||
if(NETWORK_FIND_GAME_PENDING() || NETWORK_JOIN_GAME_PENDING()) break; //FIND_ will be false a lil while after using NETWORK_FIND_GAME
|
||||
if(!NETWORK_IS_FIND_RESULT_VALID(i) || !NETWORK_IS_FIND_RESULT_UPDATED(i)) continue;
|
||||
//if(match_game_search_settings && NETWORK_RESULTS_MATCHES_SEARCH_CRITERIA(i)
|
||||
if(NETWORK_RESULT_MATCHES_SEARCH_CRITERIA(i))
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
//if joining a game..
|
||||
if(NETWORK_JOIN_GAME_SUCCEEDED())
|
||||
NETWORK_CLEAR_SUMMONS();
|
||||
|
||||
///////////////////////////////////
|
||||
NETWORK_FIND_GAME(int GameMode, int ukn0, int ukn1, int ukn2);
|
||||
if(NETWORK_FIND_GAME_PENDING())
|
||||
extern boolean NETWORK_JOIN_GAME_PENDING(void);
|
||||
extern boolean NETWORK_JOIN_GAME_SUCCEEDED(void);
|
||||
extern boolean NETWORK_LEAVE_GAME_PENDING(void);
|
||||
extern boolean PLAYER_WANTS_TO_JOIN_NETWORK_GAME(int); //if we replace phone script we can choose to allow player into game yes or no
|
||||
|
||||
enum eGameMode{
|
||||
GAME_MODE_BOMB_DA_BASE_II = 15,
|
||||
GAME_MODE_CAR_JACK_CITY = 5,
|
||||
GAME_MODE_COPS_AND_CROOKS = 10,
|
||||
GAME_MODE_DEAL_BREAKER = 13,
|
||||
GAME_MODE_DEATHMATCH = 0,
|
||||
GAME_MODE_FREE_MODE = 0x10,
|
||||
GAME_MODE_GTA_RACE = 7,
|
||||
GAME_MODE_HANGMANS_NOOSE = 14,
|
||||
GAME_MODE_MAFIYA_WORK = 2,
|
||||
GAME_MODE_NONE = -1,
|
||||
GAME_MODE_PARTY_MODE = 8,
|
||||
GAME_MODE_RACE = 6,
|
||||
GAME_MODE_TEAM_CAR_JACK_CITY = 4,
|
||||
GAME_MODE_TEAM_DEATHMATCH = 1,
|
||||
GAME_MODE_TEAM_MAFIYA_WORK = 3,
|
||||
GAME_MODE_TURF_WAR = 12,
|
||||
GAME_MODE_UNKNOWN_11 = 11,
|
||||
GAME_MODE_UNKNOWN_9 = 9
|
||||
};
|
||||
*/
|
||||
66
Trident/MD_Contents/MDC_Main_Options.c
Normal file
66
Trident/MD_Contents/MDC_Main_Options.c
Normal file
@@ -0,0 +1,66 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MD_Main_Setup(void){
|
||||
MENU_HEADER = MD_Extend_Header;
|
||||
MENU_SUB_HEADER = MD_Extend_SubHeader;
|
||||
|
||||
AddSubMenu("Player ~COL_NET_1~Options ~PAD_RIGHT~"); //1
|
||||
AddSubMenu("Network ~COL_NET_2~Options ~PAD_RIGHT~"); //2
|
||||
AddSubMenu("Vehicle Garage ~COL_NET_3~Options ~PAD_RIGHT~"); //3
|
||||
AddSubMenu("Weapon ~COL_NET_4~Options ~PAD_RIGHT~"); //4
|
||||
AddSubMenu("Teleport ~COL_NET_5~Options ~PAD_RIGHT~"); //5
|
||||
AddSubMenu("Weather / Time ~COL_NET_6~Options ~PAD_RIGHT~"); //6
|
||||
AddSubMenu("Model Changer ~PAD_RIGHT~"); //7
|
||||
AddSubMenu("Animations / Strides ~PAD_RIGHT~"); //8
|
||||
AddSubMenu("Object Attachments ~COL_NET_7~Options ~PAD_RIGHT~"); //9
|
||||
AddSubMenu("Rotation Engine ~COL_NET_8~Options ~PAD_RIGHT~"); //10
|
||||
AddSubMenu("Content Builder ~COL_NET_9~Options ~PAD_RIGHT~"); //11
|
||||
Add_JumpOver("~BLIP_94~ M o d l o a d i n g ~BLIP_94~"); //12
|
||||
AddSubMenu("Mod Manager ~PAD_RIGHT~"); //13
|
||||
AddSubMenu("Personal Add-Ons & AutoLoads ~PAD_RIGHT~"); //14
|
||||
Add_JumpOver("~BLIP_94~ M e n u S e t t i n g s ~BLIP_94~"); //15
|
||||
AddSubMenu("Menu / Game ~COL_NET_10~Settings ~PAD_RIGHT~"); //16
|
||||
Add_JumpOver("~BLIP_94~ S h o r t C u t s ~BLIP_94~"); //17
|
||||
AddFunction_Value("Quick Delete",12); //Exact Number of strings //18
|
||||
AddFunction_Num("~BLIP_33~ Set Quick Delete Distance",350); //19
|
||||
AddFunction_Value("Quick Options",10); //Exact Number of strings //20
|
||||
AddSubMenu("CREDITS / DEVELOPMENT"); //21
|
||||
#ifdef Premium
|
||||
AddSubMenu("Premium ~COL_NET_11~Options ~PAD_RIGHT~"); //22
|
||||
#endif
|
||||
menu_item[19].num_val = Delete_Distance_Radius; //set current/default value once on setup
|
||||
|
||||
}
|
||||
void MD_Main_Action(void){
|
||||
if(SelectedItem == 18){
|
||||
Universal_Delete(Delete_Distance_Radius, menu_item[SelectedItem].num_val, true); //prints inside function :D
|
||||
}
|
||||
else if(SelectedItem == 19){
|
||||
Delete_Distance_Radius = menu_item[SelectedItem].num_val;
|
||||
char * buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~Quick Delete Distance Set: "); //37
|
||||
itoa(Delete_Distance_Radius, buffer); // + 3 // 40
|
||||
Strcat(buffer, "."); //41
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(SelectedItem == 20){
|
||||
MD_PlayerOption_Strings_Action();
|
||||
}
|
||||
}
|
||||
|
||||
void Premium_Loop(void){ // ONLY WHEN NETWORK
|
||||
float mx,my,mz;
|
||||
if(Resurrect){
|
||||
if(IS_CHAR_DEAD(pPlayer)){
|
||||
GET_CHAR_COORDINATES(pPlayer,&mx,&my,&mz);
|
||||
RESURRECT_NETWORK_PLAYER( iPlayer, mx,my,mz, 0 );
|
||||
SET_CHAR_HEALTH(pPlayer,300);
|
||||
}
|
||||
}
|
||||
}
|
||||
62
Trident/MD_Contents/MDC_Mapmods.c
Normal file
62
Trident/MD_Contents/MDC_Mapmods.c
Normal file
@@ -0,0 +1,62 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version V7 ULTIMATE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
void mapmod_setup(void){
|
||||
MENU_SUB_HEADER = "MapMods";
|
||||
/*
|
||||
Load("~BLIP_68~ Airport Tele Green Cloud",script_status("ml3")); //1
|
||||
AddBool("~BLIP_68~ Airport Tele Sky High",script_status("ml4")); //2
|
||||
AddBool("~BLIP_68~ Airport Tele City View",script_status("ml5")); //4
|
||||
AddBool("~BLIP_68~ Airport Tele Underwater",script_status("ml6")); //5
|
||||
AddBool("~BLIP_68~ Airport Race Track",script_status("ml13")); //6
|
||||
AddBool("~BLIP_68~ Airport Drag Track",script_status("ml14")); //7
|
||||
AddBool("~BLIP_68~ Airport Rally Track",script_status("ml15")); //8
|
||||
*/
|
||||
AddFunction("~BLIP_52~ Devils Cloud (Green Cloud Remake)"); //8
|
||||
|
||||
}
|
||||
void mapmod_action(void){
|
||||
/*
|
||||
if(SelectedItem == 1){
|
||||
toggle_script("ml3","~BLIP_76~ ~c~Airport Tele Green Cloud",SelectedItem);
|
||||
}
|
||||
else if(SelectedItem == 2){
|
||||
toggle_script("ml4","~BLIP_76~ ~c~Airport Tele Sky High",SelectedItem);
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
toggle_script("ml5","~BLIP_76~ ~c~Airport Tele City View",SelectedItem);
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
toggle_script("ml6","~BLIP_76~ ~c~Airport Tele Underwater",SelectedItem);
|
||||
}
|
||||
else if(SelectedItem == 5){
|
||||
toggle_script("ml13","~BLIP_76~ ~c~Airport Race Track",SelectedItem);
|
||||
}
|
||||
else if(SelectedItem == 6){
|
||||
toggle_script("ml14","~BLIP_76~ ~c~Airport Drag Track",SelectedItem);
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
toggle_script("ml15","~BLIP_76~ ~c~Airport Rally Track",SelectedItem);
|
||||
}
|
||||
/*
|
||||
else if(SelectedItem == 9){
|
||||
Garage_Gunshop();
|
||||
print("~BLIP_76~ ~c~Garage And GunShop Created By ~COL_NET_3~* iiVxR3B0RN *~n~ ~w~21 Objects");
|
||||
}
|
||||
*/
|
||||
/*
|
||||
else if(SelectedItem == 8){
|
||||
Ramp_Devilscloud();
|
||||
}
|
||||
/*
|
||||
else if(SelectedItem == 10){
|
||||
//
|
||||
}
|
||||
else if(SelectedItem == 11){
|
||||
//
|
||||
}
|
||||
*/
|
||||
}
|
||||
105
Trident/MD_Contents/MDC_Mapmods_Scripts.c
Normal file
105
Trident/MD_Contents/MDC_Mapmods_Scripts.c
Normal file
@@ -0,0 +1,105 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version V7 ULTIMATE
|
||||
* @ DEV TEAM V7- DEVILSDESIGN,
|
||||
*/
|
||||
/*
|
||||
void Garage_Gunshop(void){
|
||||
int object;
|
||||
//OK function = create map opject for 1 object
|
||||
//*create_map_obj(modelhash, x, y, z, h, qx, qy, qz, qw, bool dynamic (1 for true - 0 for fixed)){ //Garage And GunShop Mobile Teleports
|
||||
|
||||
create_map_obj(1859734186, 2223.2969, 801.0453, 4.7893, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a //Garage
|
||||
create_map_obj(1859734186, 2224.6497, 795.6399, 4.7959, 260.0000, 0.0000, 0.0000, 0.7660, -0.6428,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2226.9272, 808.5973, 4.7959, 260.0000, 0.0000, 0.0000, 0.7660, -0.6428,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2224.6497, 795.6399, 7.8734, 260.0001, 0.0000, 0.0000, 0.7660, -0.6428,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2226.9456, 808.6028, 7.8734, 260.0001, 0.0000, 0.0000, 0.7660, -0.6428,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2223.2969, 801.0453, 7.8734, 350.0001, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2230.5715, 799.8254, 7.8734, 350.0001, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2230.5864, 799.8786, 1.4384, 350.0001, 0.0616, 0.7044, 0.7044, 0.0616,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2223.2969, 801.0453, 7.8734, 350.0001, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2227.7200, 800.3398, 7.8646, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2225.3674, 800.7206, 7.8763, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1063483177, 2232.4463, 800.9276, 9.5000, 350.0000, -0.0000, 0.0000, -0.0872, 0.9962,0); //Comet
|
||||
|
||||
create_map_obj(1859734186, 2232.8582, 812.7408, 7.8772, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a //GunShop
|
||||
create_map_obj(1859734186, 2225.6011, 814.0947, 4.8488, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2225.6011, 814.0947, 7.8638, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2229.9805, 813.2440, 7.8638, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2227.7119, 813.6967, 7.8628, 350.0000, 0.0000, 0.0000, -0.0872, 0.9962,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2229.2039, 821.5180, 4.8194, 260.0000, 0.0000, 0.0000, 0.7660, -0.6428,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2229.1978, 821.5114, 7.8786, 260.0000, 0.0000, 0.0000, 0.7660, -0.6428,0); //BM_Contnr_01a
|
||||
create_map_obj(1859734186, 2233.3999, 815.8099, 1.4055, 170.0000, 0.7044, -0.0616, -0.0616, 0.7044,0); //BM_Contnr_01a
|
||||
create_map_obj(837858166, 2234.9829, 813.8961, 8.1000, 257.0000, 0.0000, 0.0000, 0.7826, -0.6225,0); //Annihilator //21 Objects Secret Freeze Aim op Anni of Comet u freeze!!
|
||||
WAIT(10);
|
||||
teleport_char(pPlayer,2243.1445,791.1669,5.4199); //Fix heading with it
|
||||
}
|
||||
*/
|
||||
#pragma once
|
||||
void Ramp_Devilscloud(void){//63 Objects
|
||||
|
||||
create_map_obj(0x869A93BF,2610.2693,-3.3062,898.0258,6.0000,0.1648,0.0086,0.0516,0.9849,0);//barge med 1
|
||||
create_map_obj_offset(0x3FF006F5,2608.028,15.1102,904.2472,7.58182,-0.0261197,-0.00173071,0.0660929,0.99747,0);
|
||||
create_map_obj_offset(0x3FF006F5,2607.369,20.0597,903.9912,7.58182,-0.0261197,-0.00173071,0.0660929,0.99747,0);
|
||||
create_map_obj_offset(0x3FF006F5,2606.275,28.2783,902.495,7.58182,-0.138869,-0.00920151,0.0654722,0.988101,0);
|
||||
create_map_obj_offset(0x3FF006F5,2605.161,36.6427,899.2219,7.58182,-0.224459,-0.0148728,0.0644211,0.972238,0);
|
||||
create_map_obj_offset(0x3FF006F5,2604.152,44.2266,894.3839,7.58182,-0.324856,-0.0215251,0.0625135,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2603.216,51.2566,888.849,7.58182,-0.324856,-0.0215251,0.0625135,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2602.28,58.2866,883.3142,7.58182,-0.324856,-0.0215251,0.0625135,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2601.344,65.3166,877.7793,7.58182,-0.324856,-0.0215251,0.0625135,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2600.409,72.3466,872.2444,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2599.473,79.3776,866.7096,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);//10
|
||||
create_map_obj_offset(0x3FF006F5,2598.537,86.4076,861.1747,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2597.602,93.4376,855.6399,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2596.666,100.4676,850.105,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2595.729,107.4976,844.5701,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2594.794,114.5276,839.0353,7.58182,-0.324856,-0.0215251,0.0625135,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2594.794,114.5276,839.0414,7.58182,-0.324856,-0.0215251,0.0625135,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2593.859,121.5576,833.5065,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2592.923,128.5886,827.9717,7.58182,-0.324856,-0.0215251,0.0625136,0.94345,0);
|
||||
create_map_obj_offset(0x3FF006F5,2592.507,131.7126,825.5151,7.58182,-0.291732,-0.0193303,0.0632267,0.954212,0);
|
||||
create_map_obj_offset(0x3FF006F5,2592.179,134.1776,823.8436,7.58182,-0.266654,-0.0176686,0.063711,0.961522,0);//20
|
||||
create_map_obj_offset(0x3FF006F5,2591.726,137.5766,821.7896,7.58182,-0.241393,-0.0159948,0.0641517,0.968173,0);
|
||||
create_map_obj_offset(0x3FF006F5,2591.377,140.2026,820.3873,7.58182,-0.198932,-0.0131813,0.0647883,0.977781,0);
|
||||
create_map_obj_offset(0x3FF006F5,2591.134,142.0276,819.6119,7.58182,-0.164686,-0.0109122,0.0652089,0.984128,0);
|
||||
create_map_obj_offset(0x3FF006F5,2590.76,144.8396,818.6413,7.58182,-0.130241,-0.00862982,0.06555,0.989276,0);
|
||||
create_map_obj_offset(0x3FF006F5,2590.377,147.7116,817.8709,7.58182,-0.0782874,-0.00518737,0.0659118,0.994736,0);
|
||||
create_map_obj_offset(0x3FF006F5,2589.986,150.6516,817.425,7.58182,-0.0348231,-0.0023074,0.0660753,0.997204,0);
|
||||
create_map_obj_offset(0x3FF006F5,2589.723,152.6286,817.2916,7.58182,0,0,0.0661156,0.997812,0);
|
||||
create_map_obj_offset(0x3FF006F5,2589.458,154.6116,817.2977,7.58182,0.0261197,0.00173071,0.0660929,0.99747,0);
|
||||
create_map_obj_offset(0x3FF006F5,2589.064,157.5816,817.4608,7.58182,0.0696038,0.00461199,0.0659546,0.995381,0);
|
||||
create_map_obj_offset(0x3FF006F5,2588.672,160.5255,817.8844,7.58182,0.112956,0.0074845,0.0656906,0.991398,0);//30
|
||||
create_map_obj_offset(0x3FF006F5,2588.286,163.4236,818.5653,7.58182,0.156092,0.0103428,0.0653016,0.985527,0);
|
||||
create_map_obj_offset(0x3FF006F5,2587.91,166.2516,819.4985,7.58182,0.198932,0.0131813,0.0647883,0.977781,0);
|
||||
create_map_obj_offset(0x3FF006F5,2587.667,168.0766,820.286,7.58182,0.224459,0.0148728,0.0644211,0.972238,0);
|
||||
create_map_obj_offset(0x3FF006F5,2587.429,169.8586,821.1689,7.58182,0.258253,0.017112,0.0638628,0.963812,0);
|
||||
create_map_obj_offset(0x3FF006F5,2587.087,172.4336,822.675,7.58182,0.300048,0.0198813,0.0630556,0.95163,0);
|
||||
create_map_obj_offset(0x3FF006F5,2586.762,174.8696,824.4018,7.58182,0.333076,0.0220698,0.0623233,0.940579,0);
|
||||
create_map_obj_offset(0x3FF006F5,2586.557,176.4106,825.6665,7.58182,0.365699,0.0242315,0.0615151,0.928382,0);
|
||||
create_map_obj_offset(0x3FF006F5,2586.364,177.8606,827.0366,7.58182,0.389876,0.0258334,0.0608597,0.918491,0);
|
||||
create_map_obj_offset(0x3FF006F5,2586.181,179.2376,828.4814,7.58182,0.421694,0.0279417,0.0599211,0.904325,0);
|
||||
create_map_obj_offset(0x3FF006F5,2585.927,181.1496,830.7856,7.58182,0.452997,0.0300159,0.0589094,0.889057,0);//40
|
||||
create_map_obj_offset(0x3FF006F5,2585.771,182.3146,832.4097,7.58182,0.483749,0.0320535,0.057826,0.872706,0);
|
||||
create_map_obj_offset(0x4F9981BE,2574.952,331.6894,626.1872,30,-0.1093,-0.0293,0.2572,0.9597,0);//Oiltank//Part 2
|
||||
create_map_obj_offset(0x4F9981BE,2613.535,-36.0567,877.0788,0,0,0,0,1,0);
|
||||
create_map_obj_offset(0x4F9981BE,2555.344,363.9887,610.1226,349.9773,-0.2233,-0.1589,-0.0455,0.9606,0);
|
||||
create_map_obj_offset(0x4F9981BE,2540.172,387.0531,592.9752,349.9773,-0.2233,-0.1589,-0.0455,0.9606,0);
|
||||
create_map_obj_offset(0x4F9981BE,2523.032,411.2593,574.5654,349.9773,-0.2233,-0.1589,-0.0455,0.9606,0);
|
||||
create_map_obj_offset(0x4F9981BE,2504.655,437.981,554.4042,349.9773,-0.2233,-0.1589,-0.0455,0.9606,0);
|
||||
create_map_obj_offset(0x4F9981BE,2574.217,374.2687,615.1884,15,0.0672,-0.5106,0.1119,0.8498,0);
|
||||
create_map_obj_offset(0x4F9981BE,2560.117,404.0603,604.0581,15,0.0672,-0.5106,0.1119,0.8498,0);
|
||||
create_map_obj_offset(0x4F9981BE,2540.313,434.9852,583.0875,15,0.0672,-0.5106,0.1119,0.8498,0);//50
|
||||
create_map_obj_offset(0x4F9981BE,2519.286,456.8329,562.3928,32,0.142,-0.4951,0.2363,0.824,0);
|
||||
create_map_obj_offset(0x4F9981BE,2485.014,435.2813,562.3928,32,-0.142,0.4951,0.2363,0.824,0);
|
||||
create_map_obj_offset(0x4F9981BE,2501.186,403.6841,578.142,49,-0.2136,0.4687,0.3555,0.78,0);
|
||||
create_map_obj_offset(0x4F9981BE,2515.53,374.9822,601.2172,49,-0.2136,0.4687,0.3555,0.78,0);
|
||||
create_map_obj_offset(0x4F9981BE,2534.502,347.0918,617.6455,49,-0.2136,0.4687,0.3555,0.78,0);
|
||||
//jump
|
||||
create_map_obj_offset(0x3FF006F5,2492.249,462.0293,559.8774,32,-0.1005,-0.0288,0.2741,0.956,0);
|
||||
create_map_obj_offset(0x3FF006F5,2488.012,468.6942,558.9597,32,-0.0084,-0.0024,0.2756,0.9612,0);
|
||||
create_map_obj_offset(0x3FF006F5,2484.263,474.7209,559.1417,32,0.0419,0.012,0.2754,0.9603,0);
|
||||
create_map_obj_offset(0x3FF006F5,2479.984,481.5301,560.3545,32,0.1005,0.0288,0.2741,0.956,0);
|
||||
create_map_obj_offset(0x3FF006F5,2476.11,487.7389,562.9146,32,0.2081,0.0597,0.2691,0.9385,0);//60
|
||||
//Actionpad_Mobile_Teleporter_Devilscloud();
|
||||
//print("~BLIP_76~ ~c~Devils Cloud spawned!~n~~w~Have fun! (60 objects)");
|
||||
}
|
||||
82
Trident/MD_Contents/MDC_Menu_Settings.c
Normal file
82
Trident/MD_Contents/MDC_Menu_Settings.c
Normal file
@@ -0,0 +1,82 @@
|
||||
/**
|
||||
* @ MD Essentials
|
||||
* @ MD Series ; Version 12, March 2016
|
||||
* @ Copyright (C) 2016 DEVILSDESIGN
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Menu_Setting_Setup(void){
|
||||
MENU_HEADER = MD_Extend_Header;
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Manager Settings ~BLIP_94~";
|
||||
AddBool("~BLIP_68~ Change Menu Position ~PAD_DPAD_ALL~",GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_MOVE)); //1
|
||||
AddBool("~BLIP_68~ Slide-In Effect ",GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SLIDE)); //2
|
||||
AddBool("~BLIP_68~ Show All Sco's You Can Add",GetBit(MD_Misc_OptionsBitSet, MD_MISC_SHOW_MISSING_SCO)); //3
|
||||
AddBool("~BLIP_68~ Ptfx Effects on Spawns & Teleports",Menu_Ptfx); //4
|
||||
Add_JumpOver("~BLIP_94~ H e l p e r D i s p l a y ~BLIP_94~"); //5 >>JUMPOVER
|
||||
AddBool("~PAD_RIGHT~ Keyboard Helper Display",Keyboard_Helper_Display); //6
|
||||
AddBool("~PAD_RIGHT~ Spy & Flymod Helper",Draw_Spy_Helper); //7 Enable loop in weather options for keyboard
|
||||
Add_JumpOver("~BLIP_94~ E p i s o d e s ~BLIP_94~"); //8 >>JUMPOVER
|
||||
AddFunction("~BLIP_52~ Switch to FreeMode ~y~(GTA IV)"); //9
|
||||
AddFunction("~BLIP_52~ Switch to FreeMode ~r~(TBOGT)"); //10
|
||||
AddFunction("~BLIP_52~ Return to Single Player"); //11
|
||||
AddFunction("~BLIP_52~ Leave Network Game"); //11
|
||||
AddBool("~BLIP_68~ Kill Feed ",Print_Kill_Feed); //This will be done automatic by the menu
|
||||
AddBool("~BLIP_68~ MD Player Info",MD_Player_Info);
|
||||
}
|
||||
|
||||
|
||||
void MC_Menu_Setting_Action(void){
|
||||
if(SelectedItem == 1){
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_MOVE);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_MOVE);
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SLIDE, false);
|
||||
}
|
||||
else if(SelectedItem == 2){
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SLIDE);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_SLIDE);
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_SHOW_MISSING_SCO);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet, MD_MISC_SHOW_MISSING_SCO);
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
Menu_Ptfx = !Menu_Ptfx;
|
||||
menu_item[SelectedItem].extra_val = Menu_Ptfx;
|
||||
Alert_Two("~BLIP_76~ ~c~Ptfx Effects On Various Functions", Menu_Ptfx ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
//5 >>JUMPOVER
|
||||
else if(SelectedItem == 6){
|
||||
Keyboard_Helper_Display = !Keyboard_Helper_Display;
|
||||
menu_item[SelectedItem].extra_val = Keyboard_Helper_Display;
|
||||
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
Draw_Spy_Helper = !Draw_Spy_Helper;
|
||||
menu_item[SelectedItem].extra_val = Draw_Spy_Helper;
|
||||
}
|
||||
//8 >>JUMPOVER
|
||||
else if(SelectedItem == 9){
|
||||
SHUTDOWN_AND_LAUNCH_NETWORK_GAME(0);
|
||||
}
|
||||
else if(SelectedItem == 10){
|
||||
SHUTDOWN_AND_LAUNCH_NETWORK_GAME(2);
|
||||
}
|
||||
else if(SelectedItem == 11){
|
||||
SHUTDOWN_AND_LAUNCH_SINGLE_PLAYER_GAME();
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
//NETWORK_LEAVE_GAME();
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
Print_Kill_Feed = !Print_Kill_Feed;
|
||||
menu_item[SelectedItem].extra_val = Print_Kill_Feed;
|
||||
Alert_Two("~BLIP_76~ ~c~KillFeed", Print_Kill_Feed ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
MD_Player_Info = !MD_Player_Info;
|
||||
menu_item[SelectedItem].extra_val = MD_Player_Info;
|
||||
Alert_Two("~BLIP_76~ ~c~MD_Player_Info", MD_Player_Info ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
|
||||
437
Trident/MD_Contents/MDC_Navigator_Options.c
Normal file
437
Trident/MD_Contents/MDC_Navigator_Options.c
Normal file
@@ -0,0 +1,437 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
#pragma once
|
||||
//Devil Gona redo this!
|
||||
|
||||
void MC_Navigator_Setup(const int Player_ID){
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
MENU_SUB_HEADER = "~BLIP_76~ Navigator Options ~BLIP_76~";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ M D N A V I G A T O R ~BLIP_94~"); //5
|
||||
AddFunction_Value_CB("Player Help", 5); //6//Health - Give Armour - Remove Armour - Flip Vehicle -
|
||||
AddFunction_Value_CB("Helper Loops", 4); //7//Auto Flip - Auto Fix - Juggernaut Player - Juggernaut Vehicle
|
||||
AddBool_CB("Drive/Walk on Water",DOES_OBJECT_EXIST(drive_water[Player_ID]));
|
||||
AddFunction_Value_CB("Weapons", 4); //9//Poor - Advanced - Episodic - Remove
|
||||
AddFunction_Value_CB("Vehicle Physics", 2); //10//Desolidify(Always) - Desolidify(Shooting) - Desolidify(Air) - Freeze Position
|
||||
AddFunction_Value_CB("Game Options", 6); //11//Burn Player - Burn Vehicle - Break Vehicle - Kill Player - Kick - Freak Out
|
||||
AddFunction_Value_CB("Canonball",12); //12//Heli / Patriot
|
||||
AddFunction_Value_CB("Forces",9); //13//
|
||||
AddFunction_Value_CB("Heading",6); //14//
|
||||
AddFunction_Value_CB("Transformer",6); //15//Yes we will make this work on other players:)
|
||||
AddFunction_Value("Armed Vehicle",2); //16//Rocket Car - Rocket Heli - Rapid Fire Heli(Premium only)
|
||||
AddFunction_Value_CB("Spawn & Help",5); //17//Spawn Buzzard - Spawn Annihilator - Spawn Sultan RS - Armour
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Navigator_Action(const int Player_ID){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
Ped Player_PED;
|
||||
Vehicle vehicle;
|
||||
uint vehicle_id;
|
||||
float heading, speed;
|
||||
//!**Player Char Check**//
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
return Alert_Abort(Error_Char_Missing,false);
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
if(SelectedItem == 6){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(Player_PED == pPlayer)SET_CHAR_HEALTH(Player_PED,500);
|
||||
else GIVE_HEALTH_TO_CHAR(Player_PED);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~Healthpack given to: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ADD_ARMOUR_TO_CHAR(Player_PED,200);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~Armour given to: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ADD_ARMOUR_TO_CHAR(Player_PED,-100);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~Armour removed from: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
FIX_CAR(vehicle);
|
||||
SET_CAR_ENGINE_ON(vehicle,true,true);
|
||||
SET_VEHICLE_DIRT_LEVEL(vehicle, 0);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~y~"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
Strcat(buffer, "~s~ was fixed & washed"); //27 Characters
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
SET_VEHICLE_QUATERNION(vehicle,0,0,0,0);
|
||||
SET_CAR_HEADING(vehicle,heading);
|
||||
SET_CAR_ON_GROUND_PROPERLY(vehicle);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~y~"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
Strcat(buffer, "~s~ was set upright again"); //27 Characters
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
ToggleBit(autoFixVehBitSet,Player_ID);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ToggleBit(autoFlipVehBitSet,Player_ID);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ToggleBit(infiniteArmourBitSet,Player_ID);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
ToggleBit(freezeGunProtectBitSet,Player_ID);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
if(IS_THIS_MACHINE_THE_SERVER())ToggleBit(neverWantedBitSet,Player_ID);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
TOGGLE_DRIVE_WALK_WATER_FOR_PLAYER(Player_ID); //prints in function
|
||||
menu_item[SelectedItem].extra_val = IS_DRIVE_WALK_WATER_ENABLED_FOR_PLAYER(Player_ID);
|
||||
}
|
||||
else if(SelectedItem == 9){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_DEAGLE,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_GRENADE,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_RLAUNCHER,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MP5,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_M4,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_BARETTA,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_SNIPERRIFLE,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_KNIFE,1,false);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~advanced weapons given to: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){//Poor
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_PISTOL,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MOLOTOV,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_RLAUNCHER,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MICRO_UZI,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_AK47,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_SHOTGUN,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_M40A1,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_KNIFE,1,false);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~poor weapons given to: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){//Ballad
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(Player_PED,Episode);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~episodic weapons given to: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~weapons were removed from: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 10){//Physics
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY);
|
||||
if(!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY)) SET_CAR_COLLISION(vehicle,true);
|
||||
else SET_CAR_COLLISION(vehicle,false);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~s~"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY) ? Strcat(buffer, "~s~ has been solidified") : Strcat(buffer, "~s~ is solid again"); //27 Characters
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS );
|
||||
FREEZE_CAR_POSITION(vehicle,GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_FREEZE_POS));
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~s~"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS) ? Strcat(buffer, "~s~ position has been frozen") : Strcat(buffer, "~s~ position was unfrozen"); //27 Characters
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){//Unfriendly
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Print_Kill_Feed = !Print_Kill_Feed;
|
||||
Alert_Two("~BLIP_76~ ~c~KillFeed", Print_Kill_Feed ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Alert("Lets keep this in unfriendly",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Alert("Lets keep this in unfriendly",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Alert("Lets keep this in unfriendly",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Alert("Lets keep this in unfriendly",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Alert("Lets keep this in unfriendly",false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 12){//Canonball
|
||||
if(menu_item[SelectedItem].num_val == 1)Ram_Player_Vehicle(Player_ID,MODEL_ANNIHILATOR);
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
if(Episode == 2)Ram_Player_Vehicle(Player_ID,MODEL_BUZZARD);
|
||||
else Ram_Player_Vehicle(Player_ID,MODEL_MAVERICK);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3)Ram_Player_Vehicle(Player_ID,MODEL_SULTANRS);
|
||||
else if(menu_item[SelectedItem].num_val == 4)Ram_Player_Vehicle(Player_ID,MODEL_NRG900);
|
||||
else if(menu_item[SelectedItem].num_val == 5)Ram_Player_Vehicle(Player_ID,MODEL_AMBULANCE);
|
||||
else if(menu_item[SelectedItem].num_val == 6)Ram_Player_Vehicle(Player_ID,MODEL_FBI);
|
||||
else if(menu_item[SelectedItem].num_val == 7)Ram_Player_Vehicle(Player_ID,MODEL_FIRETRUK);
|
||||
else if(menu_item[SelectedItem].num_val == 8)Ram_Player_Vehicle(Player_ID,MODEL_NOOSE);
|
||||
else if(menu_item[SelectedItem].num_val == 9)Ram_Player_Vehicle(Player_ID,MODEL_POLICE);
|
||||
else if(menu_item[SelectedItem].num_val == 10)Ram_Player_Vehicle(Player_ID,MODEL_POLICE2);
|
||||
else if(menu_item[SelectedItem].num_val == 11)Ram_Player_Vehicle(Player_ID,MODEL_POLPATRIOT);
|
||||
else if(menu_item[SelectedItem].num_val == 12)Ram_Player_Vehicle(Player_ID,MODEL_PSTOCKADE);
|
||||
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 1)APPLY_FORCE_TO_CAR(vehicle,3,0,0,1000,0,0,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 2)APPLY_FORCE_TO_CAR(vehicle,3,0,0,-1000,0,0,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 3)APPLY_FORCE_TO_CAR(vehicle,3,-60,0,0,0,-60,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 4)APPLY_FORCE_TO_CAR(vehicle,3,60,0,0,0,-60,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 5)APPLY_FORCE_TO_CAR(vehicle,3,0,60,10.0,0,0,-10.0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 6)APPLY_FORCE_TO_CAR(vehicle,3,0,-60,10.0,0,0,-10.0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS );
|
||||
FREEZE_CAR_POSITION(vehicle,GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_FREEZE_POS));
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
int z;
|
||||
for(z = 0; z < 4; z++){
|
||||
BREAK_CAR_DOOR(vehicle,z,true);
|
||||
BURST_CAR_TYRE(vehicle,z);
|
||||
REMOVE_CAR_WINDOW(vehicle,z);
|
||||
}
|
||||
START_CAR_FIRE(vehicle);
|
||||
SET_ENGINE_HEALTH(vehicle,-5);
|
||||
SET_CAR_ENGINE_ON(vehicle,false,false);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~damaged the"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
Strcat(buffer, "~s~from: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
FIX_CAR(vehicle);
|
||||
SET_CAR_ENGINE_ON(vehicle,true,true);
|
||||
SET_VEHICLE_DIRT_LEVEL(vehicle, 0);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~fixed the"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
Strcat(buffer, "~s~from: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
float Vehicle_Heading_Change;
|
||||
if(menu_item[SelectedItem].num_val > 0 || menu_item[SelectedItem].num_val < 6){
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
GET_CAR_HEADING(vehicle,&Vehicle_Heading_Change);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 1)SET_CAR_FORWARD_SPEED(vehicle,speed*3);
|
||||
if(menu_item[SelectedItem].num_val == 2){
|
||||
SET_CAR_HEADING(vehicle,Vehicle_Heading_Change-180);
|
||||
SET_CAR_FORWARD_SPEED(vehicle,speed*3);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 3){
|
||||
SET_CAR_HEADING(vehicle,Vehicle_Heading_Change - 180);
|
||||
SET_CAR_FORWARD_SPEED(vehicle,speed);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 4){
|
||||
SET_CAR_HEADING(vehicle,Vehicle_Heading_Change + 90.00f);
|
||||
SET_CAR_FORWARD_SPEED(vehicle,speed);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 5){
|
||||
SET_CAR_HEADING(vehicle,Vehicle_Heading_Change - 90.00f);
|
||||
SET_CAR_FORWARD_SPEED(vehicle,speed);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 6){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_ROTATE);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 15){
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Vehicle_Transformer(Player_ID, 1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Vehicle_Transformer(Player_ID, 2);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Vehicle_Transformer(Player_ID, 3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
turn_car_into_heli(vehicle);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
delete_transformers_on_vehicle(vehicle);
|
||||
SET_CHAR_VISIBLE(Player_PED,true);
|
||||
SetBit(VehicleOptionsBitSet, !VEHICLE_OPTION_INVISIBLE,false);
|
||||
SET_CAR_VISIBLE(vehicle,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
delete_transformers_on_vehicle(vehicle);
|
||||
SET_CHAR_VISIBLE(Player_PED,true);
|
||||
SetBit(VehicleOptionsBitSet, !VEHICLE_OPTION_INVISIBLE,false);
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED))DELETE_CAR(&vehicle);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
MD_Weapon_Vehicle = !MD_Weapon_Vehicle;
|
||||
if(MD_Weapon_Vehicle)Vehicle_Weapon = WEAPON_SNIPERRIFLE;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Devils_Rapid_Fire_Heli = !Devils_Rapid_Fire_Heli;
|
||||
if(Devils_Rapid_Fire_Heli)Vehicle_Weapon = WEAPON_SNIPERRIFLE;
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
if(menu_item[SelectedItem].num_val == 1)MD_VEHICLE_SPAWNER_ON_ID(Player_ID,MODEL_ANNIHILATOR);
|
||||
if(menu_item[SelectedItem].num_val == 2)(Episode == 2) ? MD_VEHICLE_SPAWNER_ON_ID(Player_ID,MODEL_BUZZARD) : MD_VEHICLE_SPAWNER_ON_ID(Player_ID,MODEL_MAVERICK);
|
||||
|
||||
if(menu_item[SelectedItem].num_val == 3)MD_VEHICLE_SPAWNER_ON_ID(Player_ID,MODEL_SULTANRS);
|
||||
if(menu_item[SelectedItem].num_val == 4)MD_VEHICLE_SPAWNER_ON_ID(Player_ID,MODEL_NRG900);
|
||||
if(menu_item[SelectedItem].num_val == 5){
|
||||
ADD_ARMOUR_TO_CHAR(Player_PED,200);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~Armour was given to "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
80
Trident/MD_Contents/MDC_Network_All_Player_Options.c
Normal file
80
Trident/MD_Contents/MDC_Network_All_Player_Options.c
Normal file
@@ -0,0 +1,80 @@
|
||||
/**
|
||||
* @ MD Essentials
|
||||
* @ MD Series ; Version 12, March 2016
|
||||
* @ Copyright (C) 2016 DEVILSDESIGN
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Network_All_Player_Setup(void){
|
||||
MENU_HEADER = MD_Extend_Header;
|
||||
MENU_SUB_HEADER = MD_Extend_SubHeader;
|
||||
MENU_SUB_HEADER = "All Players";
|
||||
AddFunction("~BLIP_52~ Give Weapons & Armour"); //1
|
||||
AddFunction("~BLIP_52~ Teleport all players to me"); //2
|
||||
AddFunction("~BLIP_52~ Kick all players from game.");
|
||||
AddFunction("~BLIP_52~ Mute all players (toggle)");
|
||||
return; //Very important!!!
|
||||
}
|
||||
|
||||
void MC_Network_All_Player_Action(void){
|
||||
float x,y,z,h;
|
||||
if(SelectedItem == 1){
|
||||
int NetPlayer_ID;
|
||||
for(NetPlayer_ID = 0;NetPlayer_ID < MAX_PLAYERS;NetPlayer_ID++){
|
||||
if (Player_Display_Selection(NetPlayer_ID))continue;
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(PLAYER_CHAR(NetPlayer_ID), Episode);
|
||||
WAIT(5);
|
||||
}
|
||||
Alert("~b~MD: ~s~All Players Given Weapons/Armour.",false);
|
||||
}
|
||||
else if(SelectedItem == 2)
|
||||
{
|
||||
int i;
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(GetPlayerPed(),&x,&y,&z);
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Invalid_Player(i)) continue;
|
||||
if(Is_Admin(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
RESURRECT_NETWORK_PLAYER(i,x,y,z,true);
|
||||
}
|
||||
Alert("done",false);
|
||||
}
|
||||
else if(SelectedItem == 3)
|
||||
{
|
||||
int i;
|
||||
if(GET_HOST_ID() != GET_PLAYER_ID())
|
||||
{
|
||||
print("you are not host.");
|
||||
return;
|
||||
}
|
||||
for(i = 0;i<=15;i++)
|
||||
{
|
||||
if(Skip_For_Scans(i)) continue;
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
NETWORK_KICK_PLAYER(i);
|
||||
print("all players kicked.");
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 4)
|
||||
{
|
||||
int i;
|
||||
for(i = 0;i<=15;i++)
|
||||
{
|
||||
if(Skip_For_Scans(i)) continue;
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
NETWORK_SET_PLAYER_MUTED(i,!NETWORK_IS_PLAYER_MUTED_BY_ME(i));
|
||||
print("All Players Unmuted!");
|
||||
menu_item[SelectedItem].extra_val = NETWORK_IS_PLAYER_MUTED_BY_ME(i);
|
||||
if(NETWORK_IS_PLAYER_MUTED_BY_ME(i))
|
||||
{
|
||||
print("All Players Muted!");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
565
Trident/MD_Contents/MDC_Network_Player_Options.c
Normal file
565
Trident/MD_Contents/MDC_Network_Player_Options.c
Normal file
@@ -0,0 +1,565 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
void MC_Network_Start_Setup(){
|
||||
|
||||
register int PlayerScan;
|
||||
MENU_SUB_HEADER = "Network Players Menu";
|
||||
player_count = 0;
|
||||
for(PlayerScan = 0;PlayerScan <= MAX_PLAYERS -1;PlayerScan++){
|
||||
if(Player_Display_Selection(PlayerScan))continue;
|
||||
players[player_count].id = PlayerScan;
|
||||
player_count++;
|
||||
}
|
||||
if(player_count > 0){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST, true);
|
||||
AddSubMenu("All Players");
|
||||
AddSubMenu("Navigator Options");
|
||||
AddFunction_Value_CB("PLAYERINFO (ANTICHEAT)",9);
|
||||
|
||||
for(PlayerScan = 0;PlayerScan <= MAX_PLAYERS - 1 ;PlayerScan++){
|
||||
if(Player_Display_Selection(PlayerScan))continue;
|
||||
AddPlayername(GET_PLAYER_NAME(PlayerScan));
|
||||
}
|
||||
}
|
||||
else{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
MENU_SUB_HEADER = "Network Players Menu";
|
||||
AddSubMenu("Game is Empty");
|
||||
}
|
||||
//return;
|
||||
}
|
||||
|
||||
|
||||
void MC_Network_Start_Action(const int Player_ID){
|
||||
|
||||
|
||||
//if(SelectedItem <= 21 && SelectedItem > 3)ChangeNetPlayer = SelectedItem;
|
||||
if(SelectedItem == 3){
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return ;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Player_Info = !Attach_Player_Info;
|
||||
if(!Attach_Player_Info){
|
||||
Player_INFO_ID1 = 99;
|
||||
Player_INFO_ID2 = 99;
|
||||
Player_INFO_ID3 = 99;
|
||||
}
|
||||
else Player_INFO_ID1 = iPlayer;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Player_INFO_ID1 = Player_ID;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Player_INFO_ID1 = 99;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Player_INFO_ID2 = Player_ID;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Player_INFO_ID2 = 99;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Player_INFO_ID3 = Player_ID;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Player_INFO_ID3 = 99;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){//Move
|
||||
Move_Player_Info = !Move_Player_Info;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){//Reset
|
||||
InfoDisplay_x = 0.4f;
|
||||
InfoDisplay_y = 0.1f;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MC_Network_Main_Setup(void){
|
||||
item_highlighted = 1;
|
||||
|
||||
uint index;
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST)){
|
||||
ChangeNetPlayer = last_selected[(menu_level - 1)]- 4;
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST, false);
|
||||
}
|
||||
else{
|
||||
index = ChangeNetPlayer;
|
||||
}
|
||||
MENU_SUB_HEADER = "Network Player Options";
|
||||
if(!PLAYER_HAS_CHAR(players[ChangeNetPlayer].id))
|
||||
{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
Add_Error("Player has no char!");
|
||||
Add_Error("Press ~PAD_B~ To Return");
|
||||
return;
|
||||
}
|
||||
if(Is_Whitelisted(players[ChangeNetPlayer].id) && GET_PLAYER_ID() != players[ChangeNetPlayer].id)
|
||||
{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
Add_Error("Player is whitelisted!");
|
||||
Add_Error("Press ~PAD_B~ To Return");
|
||||
return;
|
||||
}
|
||||
else NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
AddSubMenu("Network Player ~COL_NET_4~Options ~PAD_RIGHT~"); //5
|
||||
AddSubMenu("Weapon ~COL_NET_2~Options ~PAD_RIGHT~"); //6
|
||||
AddSubMenu("Vehicle ~COL_NET_1~Options ~PAD_RIGHT~"); //7
|
||||
AddSubMenu("Teleport ~COL_NET_11~Options ~PAD_RIGHT~"); //8
|
||||
AddSubMenu("Army ~COL_NET_8~Options ~PAD_RIGHT~"); //9
|
||||
AddSubMenu("Rotation Engine ~COL_NET_11~Options ~PAD_RIGHT~"); //10
|
||||
AddSubMenu("Object Attachment ~COL_NET_12~Options ~PAD_RIGHT~"); //11
|
||||
AddSubMenu("Delete/Clear ~COL_NET_4~Options ~PAD_RIGHT~"); //12
|
||||
AddFunction_CB(IS_THIS_MACHINE_THE_SERVER() ? "Kick Player" : "~BLIP_52~ Kick Player ~y~(Host Only)"); //13
|
||||
AddBool_CB("Mute Player",NETWORK_IS_PLAYER_MUTED_BY_ME(players[index].id)); //14
|
||||
AddSubMenu("Unfriendly ~COL_NET_8~Options ~PAD_RIGHT~"); //15 --> check MC_Net_UnFriendly_Setup
|
||||
AddSubMenu("Pilot Option ~PAD_RIGHT~"); //16
|
||||
#ifdef Admin
|
||||
AddSubMenu("Admin (Pre V13) ~COL_NET_8~Options ~PAD_RIGHT~"); //16
|
||||
AddSubMenu("Admin New V13 ~COL_NET_8~Options ~PAD_RIGHT~"); //17 //19
|
||||
#endif
|
||||
item_highlighted = 5;
|
||||
return;
|
||||
}
|
||||
void MC_Network_Main_Action(void){
|
||||
/**Dont touch this!! - Yes this needs to be here to update crossbrowser*/
|
||||
uint index;
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST)){
|
||||
ChangeNetPlayer = last_selected[(menu_level - 1)]- 4;
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST, false);
|
||||
}
|
||||
else{
|
||||
index = ChangeNetPlayer;
|
||||
}
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Add Jumpover
|
||||
if(PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)){
|
||||
if(SelectedItem == 13){
|
||||
char * buffer[32]; //128 chars
|
||||
Strcpy(buffer, "~b~MD: "); //16
|
||||
PLAYER_NAME_WITH_COLOUR(players[ChangeNetPlayer].id, &buffer); //WORKS!//25 chars
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT( 1 );
|
||||
NETWORK_KICK_PLAYER(players[ChangeNetPlayer].id);
|
||||
if(IS_THIS_MACHINE_THE_SERVER()){
|
||||
NETWORK_KICK_PLAYER(players[ChangeNetPlayer].id);
|
||||
Strcat(buffer, "~s~ Was Kicked From The Game."); //29 + 34 = 63
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcat(buffer, "~s~ Could Not Be Kicked, You Are Not Host."); //38 + 29 = 67
|
||||
}
|
||||
Alert(buffer,false);
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
NETWORK_SET_PLAYER_MUTED(players[ChangeNetPlayer].id, !NETWORK_IS_PLAYER_MUTED_BY_ME(players[ChangeNetPlayer].id));
|
||||
menu_item[SelectedItem].extra_val = NETWORK_IS_PLAYER_MUTED_BY_ME(players[ChangeNetPlayer].id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MC_Network_Player_Setup(void){
|
||||
/**Dont touch this!!!**/
|
||||
int id = players[ChangeNetPlayer].id;
|
||||
|
||||
MENU_SUB_HEADER = "Network Player Options";
|
||||
|
||||
/**vvvvvvvvvvvvvvvvvv!!!THIS SETUP NEEDS TO BE IN EVERY SUB!!!vvvvvvvvvvvvvvvvvvvvvvvvvvv*/
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP(); //4 General Shortcuts to be included in every submenu
|
||||
Add_JumpOver("~BLIP_94~ MD N E T P L A Y E R O P T I O N S ~BLIP_94~"); //5 General Shortcuts to be included in every submenu
|
||||
/**^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^**/
|
||||
AddFunction_CB("Give Weapons & Armour"); //6
|
||||
AddFunction_Value_CB("Set Helper Loops:",2); //7 //turn into charval (Set helper loops) on/off //make it change highlighted val too so they see stuff turn on etc //2
|
||||
AddBool_CB("Infinite Armour",GetBit(infiniteArmourBitSet,id)); //8
|
||||
#ifdef Premium
|
||||
AddBool_CB("Drive/Walk on Water (Enhanced)",DOES_OBJECT_EXIST(drive_water[id])); //9 OR / OR
|
||||
#else
|
||||
AddBool_CB("Drive/Walk on Water",DOES_OBJECT_EXIST(drive_water[id])); //9 OR / OR
|
||||
#endif
|
||||
AddBool_CB("Vehicle Auto-Flip", GetBit(autoFlipVehBitSet,id)); //10
|
||||
AddBool_CB("Vehicle Auto-Fix", GetBit(autoFixVehBitSet,id)); //11
|
||||
AddBool_CB("Freeze Gun Protect", GetBit(freezeGunProtectBitSet,id)); //12
|
||||
AddBool_CB(IS_THIS_MACHINE_THE_SERVER() ? "Never Wanted" : "~BLIP_68~ Never Wanted (Host Only)", GetBit(neverWantedBitSet,id)); //13
|
||||
AddBool_CB("Rocket Weapons",GetBit(rocketWeaponsBitSet, id)); //14
|
||||
AddFunction_CB("Delete Attached Objects"); //15
|
||||
AddFunction_CB("Fire Players Weapon - Experimental");
|
||||
AddFunction_CB("Object Freeze - Experimental");
|
||||
item_highlighted = 6;
|
||||
}
|
||||
|
||||
void MC_Network_Player_Action(void){
|
||||
int id = players[ChangeNetPlayer].id;
|
||||
/**vvvvvvvvvvvvvvvvvv!!!THIS ACTION NEEDS TO BE IN EVERY SUB!!!vvvvvvvvvvvvvvvvvvvvvvvvvvv*/
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
/**^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^**/
|
||||
char * buffer[32];
|
||||
if(SelectedItem > 5 && SelectedItem != 9){
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
PLAYER_NAME_WITH_COLOUR(id, &buffer); //WORKS!
|
||||
Strcat(buffer, "~s~"); //41
|
||||
}
|
||||
if(SelectedItem == 6 && PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)){
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(PLAYER_CHAR(players[ChangeNetPlayer].id), Episode); //yes this is correct
|
||||
Strcat(buffer, " Has Been Given Weapons And Armour."); //35 + 41 = 76 chars
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
bool to_enable = (menu_item[SelectedItem].num_val == 1);
|
||||
SetBit(infiniteArmourBitSet,id,to_enable);
|
||||
menu_item[8].extra_val = to_enable;
|
||||
SetBit(autoFlipVehBitSet,id,to_enable);
|
||||
menu_item[10].extra_val = to_enable;
|
||||
SetBit(autoFixVehBitSet,id,to_enable);
|
||||
menu_item[11].extra_val = to_enable;
|
||||
SetBit(freezeGunProtectBitSet,id,to_enable);
|
||||
menu_item[12].extra_val = to_enable;
|
||||
if(IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
SetBit(neverWantedBitSet,id,to_enable);
|
||||
menu_item[13].extra_val = to_enable;
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){ //inf armour
|
||||
ToggleBit(infiniteArmourBitSet, id);
|
||||
Strcat(buffer, (GetBit(infiniteArmourBitSet,id) ? " Now Has" : " No Longer Has") );
|
||||
Strcat(buffer, " Infinite Armour."); // 55
|
||||
menu_item[SelectedItem].extra_val = GetBit(infiniteArmourBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 9){ //drve walk wata //enhanced has ifdef on the drive walk water loop in player options buddy :)
|
||||
TOGGLE_DRIVE_WALK_WATER_FOR_PLAYER(id); //prints in function
|
||||
menu_item[SelectedItem].extra_val = IS_DRIVE_WALK_WATER_ENABLED_FOR_PLAYER(id);
|
||||
}
|
||||
else if(SelectedItem == 10){ //auto flip veh
|
||||
ToggleBit(autoFlipVehBitSet, id);
|
||||
Strcat(buffer, (GetBit(autoFlipVehBitSet,id) ? " Now Has" : " No Longer Has") );
|
||||
Strcat(buffer, " Vehicle Auto-Flip.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(autoFlipVehBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 11) //veihicle autofix
|
||||
{
|
||||
ToggleBit(autoFixVehBitSet,id);
|
||||
Strcat(buffer, (GetBit(autoFixVehBitSet,id) ? " Now Has" : " No Longer Has") );
|
||||
Strcat(buffer, " Vehicle Auto-Fix.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(autoFixVehBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 12) //freeze gun protect
|
||||
{
|
||||
ToggleBit(freezeGunProtectBitSet,id);
|
||||
Strcat(buffer, (GetBit(freezeGunProtectBitSet,id) ? " Now Has" : " No Longer Has") );
|
||||
Strcat(buffer, " Freeze Gun Protection.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(freezeGunProtectBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 13) //never wanted
|
||||
{
|
||||
if(IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
ToggleBit(neverWantedBitSet,id);
|
||||
Strcat(buffer, (GetBit(neverWantedBitSet,id) ? " Now Has" : " No Longer Has") );
|
||||
Strcat(buffer, " Never-Wanted.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(neverWantedBitSet, id);
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert("~b~MD: ~s~You Must Be Host To Change Players Wanted Levels.",false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 14) //rocket weapons
|
||||
{
|
||||
ToggleBit(rocketWeaponsBitSet,id);
|
||||
Strcat(buffer, (GetBit(rocketWeaponsBitSet,id) ? " Now Has" : " No Longer Has") );
|
||||
Strcat(buffer, " Rocket Weapons.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(rocketWeaponsBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 15 && PLAYER_HAS_CHAR(players[ChangeNetPlayer].id))
|
||||
{
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
Strcat(buffer, " Had Objects Attached To Them Deleted.");
|
||||
}
|
||||
else if(SelectedItem == 16 && PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)){
|
||||
REMOVE_ALL_CHAR_WEAPONS(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
int Vehicle_Weapon = WEAPON_ROCKET;
|
||||
if(!HAS_CHAR_GOT_WEAPON(PLAYER_CHAR(players[ChangeNetPlayer].id),Vehicle_Weapon))GIVE_WEAPON_TO_CHAR(PLAYER_CHAR(players[ChangeNetPlayer].id),Vehicle_Weapon, AMMO_MAX, 0);
|
||||
SET_CURRENT_CHAR_WEAPON(PLAYER_CHAR(players[ChangeNetPlayer].id), Vehicle_Weapon, true);
|
||||
FIRE_PED_WEAPON(PLAYER_CHAR(players[ChangeNetPlayer].id), 0,0,0);
|
||||
}
|
||||
else if(SelectedItem == 17 && PLAYER_HAS_CHAR(players[ChangeNetPlayer].id))
|
||||
{
|
||||
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
Strcat(buffer, " Had Objects Attached To Them Deleted.");
|
||||
|
||||
}
|
||||
if(SelectedItem > 5 && SelectedItem != 9){
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
void MC_Network_MD_Assist_Loop(void){
|
||||
if(Invalid_Player(MD_Assist_to_run_index) || !PLAYER_HAS_CHAR(MD_Assist_to_run_index))
|
||||
{
|
||||
SetBit(restrictWeaponsBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoDeleteVehicleBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoBurnBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoFlipVehBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoFixVehBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(freezeGunProtectBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(infiniteArmourBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(neverWantedBitSet, MD_Assist_to_run_index, false);
|
||||
if(MD_Assist_to_run_index < (MAX_PLAYERS - 1)) MD_Assist_to_run_index = (MD_Assist_to_run_index + 1);
|
||||
else MD_Assist_to_run_index = 0;
|
||||
return;
|
||||
}
|
||||
int MD_Assist_to_run_ped;
|
||||
GET_PLAYER_CHAR(MD_Assist_to_run_index,&MD_Assist_to_run_ped);
|
||||
//NEW
|
||||
bool auto_flip_veh = GetBit(autoFlipVehBitSet, MD_Assist_to_run_index);
|
||||
bool auto_fix_veh = GetBit(autoFixVehBitSet, MD_Assist_to_run_index);
|
||||
bool freeze_gun_protect = GetBit(freezeGunProtectBitSet, MD_Assist_to_run_index); //done
|
||||
bool infinite_armour = GetBit(infiniteArmourBitSet, MD_Assist_to_run_index); //done
|
||||
bool never_wanted_host_only = GetBit(neverWantedBitSet, MD_Assist_to_run_index); //done
|
||||
///
|
||||
bool restrict_weapons = GetBit(restrictWeaponsBitSet, MD_Assist_to_run_index);
|
||||
bool auto_del_vehicle = GetBit(autoDeleteVehicleBitSet, MD_Assist_to_run_index);
|
||||
bool auto_burn = GetBit(autoBurnBitSet, MD_Assist_to_run_index);
|
||||
//if(players[MD_Assist_to_run_index].mod_assist || players[MD_Assist_to_run_index].restrict_weps)
|
||||
|
||||
if(infinite_armour)
|
||||
{
|
||||
int armour;
|
||||
GET_CHAR_ARMOUR(MD_Assist_to_run_ped,&armour);
|
||||
if(armour < 200) //max armour is 200 not 99
|
||||
{
|
||||
if(!HAS_CHAR_GOT_WEAPON(MD_Assist_to_run_ped,WEAPON_ARMOUR))
|
||||
GIVE_WEAPON_TO_CHAR(MD_Assist_to_run_ped,WEAPON_ARMOUR,1,false);
|
||||
//I wouldn't put a print here as it'll get shown way too often
|
||||
//ADD_ARMOUR_TO_CHAR(MD_Assist_to_run_ped,(200 - armour));
|
||||
ADD_ARMOUR_TO_CHAR(MD_Assist_to_run_ped,(210 - armour)); //account for net latenyz.. (10 extra fuck it)
|
||||
}
|
||||
}
|
||||
|
||||
if(freeze_gun_protect)
|
||||
{
|
||||
if(HAS_CHAR_GOT_WEAPON(MD_Assist_to_run_ped, WEAPON_ROCKET))
|
||||
{
|
||||
REMOVE_WEAPON_FROM_CHAR(MD_Assist_to_run_ped, WEAPON_ROCKET);
|
||||
if(!HAS_CHAR_GOT_WEAPON(MD_Assist_to_run_ped, WEAPON_UNARMED))
|
||||
{
|
||||
GIVE_WEAPON_TO_CHAR(MD_Assist_to_run_ped,WEAPON_UNARMED,1,false);
|
||||
}
|
||||
char* buffer[21]; //84 characters
|
||||
Strcpy(buffer, "~b~MD: ~s~Removed the freeze gun from "); //53 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! = 26 + 53 = 79
|
||||
Strcat(buffer, "~s~."); //4 + 79 = 83
|
||||
Alert(buffer, true);
|
||||
}
|
||||
}
|
||||
|
||||
if(never_wanted_host_only)
|
||||
{
|
||||
if(IS_WANTED_LEVEL_GREATER(MD_Assist_to_run_index, 0))
|
||||
{
|
||||
ALTER_WANTED_LEVEL(MD_Assist_to_run_index, 0);
|
||||
APPLY_WANTED_LEVEL_CHANGE_NOW(MD_Assist_to_run_index);
|
||||
SET_CHAR_WANTED_BY_POLICE(MD_Assist_to_run_ped, false);
|
||||
CLEAR_WANTED_LEVEL(MD_Assist_to_run_index);
|
||||
//cleared players wanted level print mayB
|
||||
}
|
||||
}
|
||||
//SET_NETWORK_ID_CAN_MIGRATE(carid[i], TRUE); //gives them back control quicker maybe?
|
||||
if(auto_fix_veh || auto_flip_veh || auto_del_vehicle)
|
||||
{
|
||||
if(is_driving(MD_Assist_to_run_ped))
|
||||
{
|
||||
int tmp_veh, nvid;
|
||||
GET_CAR_CHAR_IS_USING(MD_Assist_to_run_ped,&tmp_veh);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&nvid);
|
||||
if(auto_fix_veh)
|
||||
{
|
||||
if(IS_CAR_ON_FIRE(tmp_veh) || IS_CAR_DEAD(tmp_veh))
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
SET_CAR_FORWARD_SPEED(tmp_veh,0.0f); //stop net control fucking them up
|
||||
FIX_CAR(tmp_veh);
|
||||
SET_CAR_HEALTH(tmp_veh,1000);
|
||||
SET_CAR_ENGINE_ON(tmp_veh,true,true);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~Fixed "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~s~"); //3 + 47 = 50
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(tmp_veh));
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
//print mod assist repaired players vehicle (will do this)
|
||||
}
|
||||
}
|
||||
}
|
||||
if(auto_flip_veh)
|
||||
{
|
||||
if(IS_CAR_UPSIDEDOWN(tmp_veh))
|
||||
{
|
||||
float speed,ground;
|
||||
GET_CAR_SPEED(tmp_veh,&speed);
|
||||
float x,y,z,h;
|
||||
GET_CAR_COORDINATES(tmp_veh,&x,&y,&z);
|
||||
GET_CAR_HEADING(tmp_veh,&h);
|
||||
GET_GROUND_Z_FOR_3D_COORD(x, y, z, &ground);
|
||||
int height = (z - ground);
|
||||
if(speed < 0.8f && height < 4)
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
SET_CAR_FORWARD_SPEED(tmp_veh,0.0f);
|
||||
SET_VEHICLE_QUATERNION(tmp_veh,0,0,0,0);
|
||||
SET_CAR_HEADING(tmp_veh,h);
|
||||
//SET_CAR_ON_GROUND_PROPERLY(tmp_veh); //can sometimes cause freezing
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~Flipped "); //25 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! 40
|
||||
Strcat(buffer, "'s ~s~"); //3 + 40 = 43
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(tmp_veh)); //15 to be safe //58 characters-
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
//print vehicle was flipped
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(auto_del_vehicle)
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
char* buffer[32]; //leave as 32
|
||||
Strcpy(buffer, "~b~MD: "); //15
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! 34
|
||||
Strcat(buffer, "'s ~s~"); //6 = 40
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(tmp_veh));
|
||||
DELETE_CAR(&tmp_veh);
|
||||
Strcat(buffer, " was deleted.");
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(restrict_weapons)
|
||||
{
|
||||
REMOVE_ALL_CHAR_WEAPONS(MD_Assist_to_run_ped);
|
||||
if(is_driving(MD_Assist_to_run_ped)){
|
||||
int tmp_veh;
|
||||
GET_CAR_CHAR_IS_USING(MD_Assist_to_run_ped,&tmp_veh);
|
||||
int nvid;
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&nvid);
|
||||
int model;
|
||||
GET_CAR_MODEL(tmp_veh,&model);
|
||||
if(model == MODEL_ANNIHILATOR || model == MODEL_FIRETRUK || model == MODEL_BUZZARD || model == MODEL_APC)
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
DELETE_CAR(&tmp_veh);
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: "); //13
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS!
|
||||
Strcat(buffer, "'s ~s~fire-power ("); //3
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model))); //13?
|
||||
Strcat(buffer, ") has been deleted."); //18
|
||||
Alert(buffer,true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(auto_burn)
|
||||
{
|
||||
if(!IS_CHAR_ON_FIRE(MD_Assist_to_run_ped))
|
||||
{
|
||||
//MD: playername is now burning.
|
||||
char* buffer[16]; //64 chars
|
||||
Strcpy(buffer, "~b~MD: "); //16
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS!
|
||||
Strcat(buffer, " ~s~was set on fire."); //about 55
|
||||
START_CHAR_FIRE(MD_Assist_to_run_ped);
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
if(MD_Assist_to_run_index < (MAX_PLAYERS - 1)) MD_Assist_to_run_index = (MD_Assist_to_run_index + 1);
|
||||
else MD_Assist_to_run_index = 0;
|
||||
|
||||
}
|
||||
void MC_Network_Player_Loop(void){
|
||||
register int NetPlayer_ID;
|
||||
Ped NetPlayer_Char;
|
||||
for(NetPlayer_ID = 0;NetPlayer_ID < MAX_PLAYERS; NetPlayer_ID++){
|
||||
if (Player_Display_Selection(NetPlayer_ID)){
|
||||
SetBit(rocketWeaponsBitSet, NetPlayer_ID, false);
|
||||
SetBit(constantBoomBitSet, NetPlayer_ID, false);
|
||||
if(DOES_OBJECT_EXIST(drive_water[NetPlayer_ID])) DELETE_OBJECT(&drive_water[NetPlayer_ID]);
|
||||
continue;
|
||||
}
|
||||
if( !PLAYER_HAS_CHAR(NetPlayer_ID)) continue;
|
||||
GET_PLAYER_CHAR(NetPlayer_ID,&NetPlayer_Char);
|
||||
if(!DOES_CHAR_EXIST(NetPlayer_Char)) continue;
|
||||
float x,y,z,h;
|
||||
GET_CHAR_COORDINATES_HEADING(NetPlayer_Char,&x,&y,&z,&h);
|
||||
|
||||
if(GetBit(constantBoomBitSet, NetPlayer_ID))
|
||||
{
|
||||
ADD_EXPLOSION(x,y,z, EXPLOSION_SHIP_DESTROY, 10, true, false, 1);
|
||||
}
|
||||
|
||||
bool player_is_driving = false;
|
||||
int tmp_veh;
|
||||
bool in_car = IS_CHAR_IN_ANY_CAR(NetPlayer_Char);
|
||||
if(GetBit(rocketWeaponsBitSet, NetPlayer_ID)){
|
||||
if(!in_car){
|
||||
if (IS_CHAR_SHOOTING(NetPlayer_Char)){
|
||||
float ax,ay,az;
|
||||
float wx,wy,wz;
|
||||
Ped rped;
|
||||
|
||||
GetOffset(NetPlayer_Char, 5, &ax, &ay, &az);
|
||||
CREATE_RANDOM_CHAR(ax, ay, az, &rped);
|
||||
|
||||
|
||||
while ( !DOES_CHAR_EXIST(rped)) WAIT(0);
|
||||
SET_CHAR_VISIBLE(rped,true);
|
||||
GIVE_WEAPON_TO_CHAR(rped, WEAPON_RLAUNCHER, 2, 0);
|
||||
SET_CURRENT_CHAR_WEAPON(rped, WEAPON_RLAUNCHER, true);
|
||||
GetOffset(NetPlayer_Char, 100,&wx,&wy,&wz);
|
||||
FIRE_PED_WEAPON(rped, wx, wy, wz);
|
||||
SET_CHAR_VISIBLE(rped,false);
|
||||
DELETE_CHAR(&rped);
|
||||
//REMOVE_WEAPON_FROM_CHAR(rped, WEAPON_RLAUNCHER);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_PLAYER_INDEX) == NetPlayer_ID){
|
||||
float offsetX[6], offsetY[6], offsetZ[6];
|
||||
offsetX[0] = 0; offsetY[0] = 1; offsetZ[0] = -0.95f; //in front
|
||||
offsetX[1] = 0; offsetY[1] = -1; offsetZ[1] = -0.95f; //behind
|
||||
offsetX[2] = 0; offsetY[2] = 0; offsetZ[2] = (z > 1000 ? -500 : 5);
|
||||
offsetX[3] = 0; offsetY[3] = 0; offsetZ[3] = 2; //On top of player
|
||||
offsetX[4] = 1; offsetY[4] = 0; offsetZ[4] = -0.95f; //Right of player
|
||||
offsetX[5] = -1; offsetY[5] = 0; offsetZ[5] = -0.95f; //left of player
|
||||
const int Attach_Type = GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE);
|
||||
if(Attach_Type > 0){
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(NetPlayer_Char, offsetX[Attach_Type - 1], offsetY[Attach_Type - 1], offsetZ[Attach_Type - 1], &x, &y, &z);
|
||||
SET_CHAR_COORDINATES(pPlayer,x,y,z);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
}
|
||||
//Run after safety checks (will turn it player bools off if not safe to execute)
|
||||
MC_Network_MD_Assist_Loop();
|
||||
}
|
||||
545
Trident/MD_Contents/MDC_Network_Player_Options_Backup.c
Normal file
545
Trident/MD_Contents/MDC_Network_Player_Options_Backup.c
Normal file
@@ -0,0 +1,545 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
//SET_PED_COMPONENTS_TO_NETWORK_PLAYERSETTINGS_MODEL(Ped ped);
|
||||
|
||||
//extern void MAKE_PLAYER_FIRE_PROOF(int player, boolean proof); //host onleh probs but ye
|
||||
|
||||
/*
|
||||
NATHAN NOTES
|
||||
ToggleBit(forceFieldBitSet, GetPlayerIndex());
|
||||
if(GetBit(forceFieldBitSet, GetPlayerIndex()))
|
||||
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
uint forceFieldBitSet;
|
||||
uint juggernautBitSet;
|
||||
uint restrictWeaponBitSet;
|
||||
uint restrictVehicleBitSet;
|
||||
|
||||
for(i = 0; i < MAX_NETWORK_PLAYERS; i++)
|
||||
{
|
||||
if(!IS_NETWORK_PLAYER_ACTIVE(i))
|
||||
{
|
||||
SetBit(forceFieldBitSet, i, false);
|
||||
SetBit(juggernautBitSet, i, false);
|
||||
SetBit(restrictWeaponBitSet, i, false);
|
||||
SetBit(restrictVehicleBitSet, i, false);
|
||||
continue;
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
void MC_Network_Start_Setup(void){
|
||||
register int PlayerScan;
|
||||
MENU_SUB_HEADER = "Network Players Menu";
|
||||
player_count = 0;
|
||||
for(PlayerScan = 0;PlayerScan < MAX_PLAYERS;PlayerScan++){
|
||||
if(Player_Display_Selection(PlayerScan))continue;
|
||||
players[player_count].id = PlayerScan;
|
||||
player_count++;
|
||||
}
|
||||
if(player_count > 0){
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST, true);
|
||||
AddSubMenu("~BLIP_82~ All Players");
|
||||
for(PlayerScan = 0; PlayerScan < MAX_PLAYERS; PlayerScan++){
|
||||
if(Player_Display_Selection(PlayerScan))continue;
|
||||
AddPlayername(GET_PLAYER_NAME(PlayerScan));
|
||||
}
|
||||
}
|
||||
else{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_MENU_IN_ERROR, true);
|
||||
MENU_SUB_HEADER = "Network Players Menu";
|
||||
AddSubMenu("Game is Empty");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Network_Start_Action(void){
|
||||
ChangeNetPlayer = SelectedItem;
|
||||
}
|
||||
|
||||
void MC_Network_Main_Setup(void){
|
||||
item_highlighted = 1;
|
||||
|
||||
uint index;
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST)){
|
||||
ChangeNetPlayer = last_selected[(menu_level - 1)]- 2;
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST, false);
|
||||
}
|
||||
else{
|
||||
index = ChangeNetPlayer;
|
||||
}
|
||||
MENU_SUB_HEADER = "Network Player Options";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
//Add Jumpover
|
||||
AddSubMenu("Network Player ~COL_NET_4~Options ~PAD_RIGHT~"); //5
|
||||
AddSubMenu("Weapon ~COL_NET_2~Options ~PAD_RIGHT~"); //6
|
||||
AddSubMenu("Vehicle ~COL_NET_1~Options ~PAD_RIGHT~"); //7
|
||||
AddSubMenu("Teleport ~COL_NET_11~Options ~PAD_RIGHT~"); //8
|
||||
AddSubMenu("Army ~COL_NET_8~Options ~PAD_RIGHT~"); //9
|
||||
AddSubMenu("Rotation Engine ~COL_NET_11~Options ~PAD_RIGHT~"); //10
|
||||
AddSubMenu("Object Attachment ~COL_NET_12~Options ~PAD_RIGHT~"); //11
|
||||
AddSubMenu("Delete/Clear (To be taken out)~COL_NET_4~Options ~PAD_RIGHT~"); //12
|
||||
AddFunction_CB(IS_THIS_MACHINE_THE_SERVER() ? "Kick Player" : "~BLIP_52~ Kick Player ~y~(Host Only)"); //13
|
||||
AddBool_CB("Mute Player",NETWORK_IS_PLAYER_MUTED_BY_ME(players[index].id)); //Nathan was here //14
|
||||
AddSubMenu("Unfriendly ~COL_NET_8~Options ~PAD_RIGHT~"); //15
|
||||
AddSubMenu("Admin (Pre V13) ~COL_NET_8~Options ~PAD_RIGHT~"); //16
|
||||
AddSubMenu("Admin New V13 ~COL_NET_8~Options ~PAD_RIGHT~"); //17]
|
||||
item_highlighted = 5;
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Network_Main_Action(void){
|
||||
/**Dont touch this!! - Yes this needs to be here to update crossbrowser*/
|
||||
uint index;
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST)){
|
||||
ChangeNetPlayer = last_selected[(menu_level - 1)]- 2;
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NETPLAYER_LIST, false);
|
||||
}
|
||||
else{
|
||||
index = ChangeNetPlayer;
|
||||
}
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Add Jumpover
|
||||
if(PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)){
|
||||
if(SelectedItem == 13){
|
||||
char * buffer[32]; //128 chars
|
||||
Strcpy(buffer, "~b~MD: "); //16
|
||||
PLAYER_NAME_WITH_COLOUR(players[ChangeNetPlayer].id, &buffer); //WORKS!//25 chars
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT( 1 );
|
||||
NETWORK_KICK_PLAYER(players[ChangeNetPlayer].id);
|
||||
if(IS_THIS_MACHINE_THE_SERVER()){
|
||||
NETWORK_KICK_PLAYER(players[ChangeNetPlayer].id); //I think NETWORK_KICK_PLAYER(&players[ChangeNetPlayer].id) may do a vote..
|
||||
Strcat(buffer, "~s~ was kicked from the game."); //29 + 34 = 63
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcat(buffer, "~s~ could not be kicked, you are not host."); //38 + 29 = 67
|
||||
}
|
||||
Alert(buffer,false);
|
||||
//Alert("~b~MD: ~s~You are not host.",false);
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
NETWORK_SET_PLAYER_MUTED(players[ChangeNetPlayer].id, !NETWORK_IS_PLAYER_MUTED_BY_ME(players[ChangeNetPlayer].id));
|
||||
menu_item[SelectedItem].extra_val = NETWORK_IS_PLAYER_MUTED_BY_ME(players[ChangeNetPlayer].id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MC_Network_Player_Setup(void){
|
||||
/**Dont touch this!!!**/
|
||||
//uint index = ChangeNetPlayer;
|
||||
int id = players[ChangeNetPlayer].id;
|
||||
|
||||
MENU_SUB_HEADER = "Network Player Options";
|
||||
//need a loops submenu but we need
|
||||
//explode
|
||||
//burn
|
||||
//taser
|
||||
//set wanted level (host only)
|
||||
//need a submenu (loops) //ONLY IF RUN OUTTA SPACE
|
||||
//gonna expand mod assist out to have its functions specific :)
|
||||
|
||||
|
||||
/**vvvvvvvvvvvvvvvvvv!!!THIS SETUP NEEDS TO BE IN EVERY SUB!!!vvvvvvvvvvvvvvvvvvvvvvvvvvv*/
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP(); //4 General Shortcuts to be included in every submenu
|
||||
Add_JumpOver("~BLIP_94~ MD N E T P L A Y E R O P T I O N S ~BLIP_94~"); //5 General Shortcuts to be included in every submenu
|
||||
/**^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^**/
|
||||
|
||||
/**Devils Note : Add strings if u want in String folder i have setup MDSTR_Netplayer_Options_Strings.c - Tested : WORKS!**/
|
||||
AddFunction_CB("Give Weapons & Armour"); //6
|
||||
AddFunction_Value_CB("Set helper loops:",2); //7 //turn into charval (Set helper loops) on/off //make it change highlighted val too so they see stuff turn on etc //2
|
||||
AddBool_CB("Infinite Armour",GetBit(infiniteArmourBitSet,id)); //8
|
||||
#ifdef Premium
|
||||
AddBool_CB("Drive/Walk on Water (enhanced)",DOES_OBJECT_EXIST(drive_water[id])); //9 OR / OR
|
||||
#else
|
||||
AddBool_CB("Drive/Walk on Water",DOES_OBJECT_EXIST(drive_water[id])); //9 OR / OR
|
||||
#endif
|
||||
AddBool_CB("Vehicle auto-flip", GetBit(autoFlipVehBitSet,id)); //10
|
||||
AddBool_CB("Vehicle auto-fix", GetBit(autoFixVehBitSet,id)); //11
|
||||
AddBool_CB("Freeze gun protect", GetBit(freezeGunProtectBitSet,id)); //12
|
||||
AddBool_CB(IS_THIS_MACHINE_THE_SERVER() ? "Never wanted" : "~BLIP_68~ Never wanted (host only)", GetBit(neverWantedBitSet,id)); //13
|
||||
AddBool_CB("Rocket Weapons",GetBit(rocketWeaponsBitSet, id)); //14
|
||||
AddFunction_CB("Delete attached objects"); //15
|
||||
item_highlighted = 6;
|
||||
//need to add set wanted level (host only)
|
||||
/*
|
||||
ALTER_WANTED_LEVEL(GetPlayerIndex(), menu[highlightedItem].value);
|
||||
APPLY_WANTED_LEVEL_CHANGE_NOW(GetPlayerIndex());
|
||||
SET_CHAR_WANTED_BY_POLICE(playerPed, true);
|
||||
*/
|
||||
//return;
|
||||
}
|
||||
void MC_Network_Player_Action(void){
|
||||
int id = players[ChangeNetPlayer].id;
|
||||
/**vvvvvvvvvvvvvvvvvv!!!THIS ACTION NEEDS TO BE IN EVERY SUB!!!vvvvvvvvvvvvvvvvvvvvvvvvvvv*/
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
/**^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^**/
|
||||
char * buffer[32];
|
||||
if(SelectedItem > 5 && SelectedItem != 9){
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
PLAYER_NAME_WITH_COLOUR(id, &buffer); //WORKS!
|
||||
Strcat(buffer, "~s~"); //41
|
||||
}
|
||||
if(SelectedItem == 6 && PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)){
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(PLAYER_CHAR(players[ChangeNetPlayer].id), Episode); //yes this is correct
|
||||
Strcat(buffer, " has been given weapons and armour."); //35 + 41 = 76 chars
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
bool to_enable = (menu_item[SelectedItem].num_val == 1);
|
||||
SetBit(infiniteArmourBitSet,id,to_enable);
|
||||
menu_item[8].extra_val = to_enable;
|
||||
SetBit(autoFlipVehBitSet,id,to_enable);
|
||||
menu_item[10].extra_val = to_enable;
|
||||
SetBit(autoFixVehBitSet,id,to_enable);
|
||||
menu_item[11].extra_val = to_enable;
|
||||
SetBit(freezeGunProtectBitSet,id,to_enable);
|
||||
menu_item[12].extra_val = to_enable;
|
||||
if(IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
SetBit(neverWantedBitSet,id,to_enable);
|
||||
menu_item[13].extra_val = to_enable;
|
||||
}
|
||||
//SetBit(rocketWeaponsBitSet,id,to_enable); //causes laggg and players often kill emselves so
|
||||
//Set loops enabled/disabled
|
||||
}
|
||||
else if(SelectedItem == 8){ //inf armour
|
||||
ToggleBit(infiniteArmourBitSet, id);
|
||||
Strcat(buffer, (GetBit(infiniteArmourBitSet,id) ? " now has" : " no longer has") );
|
||||
Strcat(buffer, " infinite armour."); // 55
|
||||
menu_item[SelectedItem].extra_val = GetBit(infiniteArmourBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 9){ //drve walk wata //enhanced has ifdef on the drive walk water loop in player options buddy :)
|
||||
TOGGLE_DRIVE_WALK_WATER_FOR_PLAYER(id); //prints in function
|
||||
menu_item[SelectedItem].extra_val = IS_DRIVE_WALK_WATER_ENABLED_FOR_PLAYER(id);
|
||||
}
|
||||
else if(SelectedItem == 10){ //auto flip veh
|
||||
ToggleBit(autoFlipVehBitSet, id);
|
||||
Strcat(buffer, (GetBit(autoFlipVehBitSet,id) ? " now has" : " no longer has") );
|
||||
Strcat(buffer, " vehicle auto-flip.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(autoFlipVehBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 11) //veihicle autofix
|
||||
{
|
||||
ToggleBit(autoFixVehBitSet,id);
|
||||
Strcat(buffer, (GetBit(autoFixVehBitSet,id) ? " now has" : " no longer has") );
|
||||
Strcat(buffer, " vehicle auto-fix.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(autoFixVehBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 12) //freeze gun protect
|
||||
{
|
||||
ToggleBit(freezeGunProtectBitSet,id);
|
||||
Strcat(buffer, (GetBit(freezeGunProtectBitSet,id) ? " now has" : " no longer has") );
|
||||
Strcat(buffer, " freeze gun protection.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(freezeGunProtectBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 13) //never wanted
|
||||
{
|
||||
if(IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
ToggleBit(neverWantedBitSet,id);
|
||||
Strcat(buffer, (GetBit(neverWantedBitSet,id) ? " now has" : " no longer has") );
|
||||
Strcat(buffer, " never-wanted.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(neverWantedBitSet, id);
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert("~b~MD: ~s~You must be host to change players wanted levels.",false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 14) //rocket weapons
|
||||
{
|
||||
ToggleBit(rocketWeaponsBitSet,id);
|
||||
Strcat(buffer, (GetBit(rocketWeaponsBitSet,id) ? " now has" : " no longer has") );
|
||||
Strcat(buffer, " rocket weapons.");
|
||||
menu_item[SelectedItem].extra_val = GetBit(rocketWeaponsBitSet, id);
|
||||
}
|
||||
else if(SelectedItem == 15 && PLAYER_HAS_CHAR(players[ChangeNetPlayer].id))
|
||||
{
|
||||
delete_objects_on_ped(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
Strcat(buffer, " had objects attached to them deleted.");
|
||||
}
|
||||
|
||||
if(SelectedItem > 5 && SelectedItem != 9){
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/*
|
||||
SetBit(modAssistBitSet, NetPlayer_ID, false);
|
||||
SetBit(restrictWeaponsBitSet, NetPlayer_ID, false);
|
||||
*/
|
||||
void MC_Network_MD_Assist_Loop(void) //Nathan making things stable!
|
||||
{
|
||||
if(Invalid_Player(MD_Assist_to_run_index) || !PLAYER_HAS_CHAR(MD_Assist_to_run_index))
|
||||
{
|
||||
SetBit(restrictWeaponsBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoDeleteVehicleBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoBurnBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoFlipVehBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(autoFixVehBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(freezeGunProtectBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(infiniteArmourBitSet, MD_Assist_to_run_index, false);
|
||||
SetBit(neverWantedBitSet, MD_Assist_to_run_index, false);
|
||||
if(MD_Assist_to_run_index < (MAX_PLAYERS - 1)) MD_Assist_to_run_index = (MD_Assist_to_run_index + 1);
|
||||
else MD_Assist_to_run_index = 0;
|
||||
return;
|
||||
}
|
||||
int MD_Assist_to_run_ped;
|
||||
GET_PLAYER_CHAR(MD_Assist_to_run_index,&MD_Assist_to_run_ped);
|
||||
//NEW
|
||||
bool auto_flip_veh = GetBit(autoFlipVehBitSet, MD_Assist_to_run_index);
|
||||
bool auto_fix_veh = GetBit(autoFixVehBitSet, MD_Assist_to_run_index);
|
||||
bool freeze_gun_protect = GetBit(freezeGunProtectBitSet, MD_Assist_to_run_index); //done
|
||||
bool infinite_armour = GetBit(infiniteArmourBitSet, MD_Assist_to_run_index); //done
|
||||
bool never_wanted_host_only = GetBit(neverWantedBitSet, MD_Assist_to_run_index); //done
|
||||
///
|
||||
bool restrict_weapons = GetBit(restrictWeaponsBitSet, MD_Assist_to_run_index);
|
||||
bool auto_del_vehicle = GetBit(autoDeleteVehicleBitSet, MD_Assist_to_run_index);
|
||||
bool auto_burn = GetBit(autoBurnBitSet, MD_Assist_to_run_index);
|
||||
//if(players[MD_Assist_to_run_index].mod_assist || players[MD_Assist_to_run_index].restrict_weps)
|
||||
|
||||
if(infinite_armour)
|
||||
{
|
||||
int armour;
|
||||
GET_CHAR_ARMOUR(MD_Assist_to_run_ped,&armour);
|
||||
if(armour < 200) //max armour is 200 not 99
|
||||
{
|
||||
if(!HAS_CHAR_GOT_WEAPON(MD_Assist_to_run_ped,WEAPON_ARMOUR))
|
||||
GIVE_WEAPON_TO_CHAR(MD_Assist_to_run_ped,WEAPON_ARMOUR,1,false);
|
||||
//I wouldn't put a print here as it'll get shown way too often
|
||||
//ADD_ARMOUR_TO_CHAR(MD_Assist_to_run_ped,(200 - armour));
|
||||
ADD_ARMOUR_TO_CHAR(MD_Assist_to_run_ped,(210 - armour)); //account for net latenyz.. (10 extra fuck it)
|
||||
}
|
||||
}
|
||||
|
||||
if(freeze_gun_protect)
|
||||
{
|
||||
if(HAS_CHAR_GOT_WEAPON(MD_Assist_to_run_ped, WEAPON_ROCKET))
|
||||
{
|
||||
REMOVE_WEAPON_FROM_CHAR(MD_Assist_to_run_ped, WEAPON_ROCKET);
|
||||
if(!HAS_CHAR_GOT_WEAPON(MD_Assist_to_run_ped, WEAPON_UNARMED))
|
||||
{
|
||||
GIVE_WEAPON_TO_CHAR(MD_Assist_to_run_ped,WEAPON_UNARMED,1,false);
|
||||
}
|
||||
char* buffer[21]; //84 characters
|
||||
Strcpy(buffer, "~b~MD: ~s~Removed the freeze gun from "); //53 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! = 26 + 53 = 79
|
||||
Strcat(buffer, "~s~."); //4 + 79 = 83
|
||||
Alert(buffer, true);
|
||||
}
|
||||
}
|
||||
|
||||
if(never_wanted_host_only)
|
||||
{
|
||||
if(IS_WANTED_LEVEL_GREATER(MD_Assist_to_run_index, 0))
|
||||
{
|
||||
ALTER_WANTED_LEVEL(MD_Assist_to_run_index, 0);
|
||||
APPLY_WANTED_LEVEL_CHANGE_NOW(MD_Assist_to_run_index);
|
||||
SET_CHAR_WANTED_BY_POLICE(MD_Assist_to_run_ped, false);
|
||||
CLEAR_WANTED_LEVEL(MD_Assist_to_run_index);
|
||||
//cleared players wanted level print mayB
|
||||
}
|
||||
}
|
||||
//SET_NETWORK_ID_CAN_MIGRATE(carid[i], TRUE); //gives them back control quicker maybe?
|
||||
if(auto_fix_veh || auto_flip_veh || auto_del_vehicle)
|
||||
{
|
||||
if(is_driving(MD_Assist_to_run_ped))
|
||||
{
|
||||
int tmp_veh, nvid;
|
||||
GET_CAR_CHAR_IS_USING(MD_Assist_to_run_ped,&tmp_veh);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&nvid);
|
||||
if(auto_fix_veh)
|
||||
{
|
||||
if(IS_CAR_ON_FIRE(tmp_veh) || IS_CAR_DEAD(tmp_veh))
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
SET_CAR_FORWARD_SPEED(tmp_veh,0.0f); //stop net control fucking them up
|
||||
FIX_CAR(tmp_veh);
|
||||
SET_CAR_HEALTH(tmp_veh,1000);
|
||||
SET_CAR_ENGINE_ON(tmp_veh,true,true);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~Fixed "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~s~"); //3 + 47 = 50
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(tmp_veh));
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
//print mod assist repaired players vehicle (will do this)
|
||||
}
|
||||
}
|
||||
}
|
||||
if(auto_flip_veh)
|
||||
{
|
||||
if(IS_CAR_UPSIDEDOWN(tmp_veh))
|
||||
{
|
||||
float speed,ground;
|
||||
GET_CAR_SPEED(tmp_veh,&speed);
|
||||
float x,y,z,h;
|
||||
GET_CAR_COORDINATES(tmp_veh,&x,&y,&z);
|
||||
GET_CAR_HEADING(tmp_veh,&h);
|
||||
GET_GROUND_Z_FOR_3D_COORD(x, y, z, &ground);
|
||||
int height = (z - ground);
|
||||
if(speed < 0.8f && height < 4)
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
SET_CAR_FORWARD_SPEED(tmp_veh,0.0f);
|
||||
SET_VEHICLE_QUATERNION(tmp_veh,0,0,0,0);
|
||||
SET_CAR_HEADING(tmp_veh,h);
|
||||
//SET_CAR_ON_GROUND_PROPERLY(tmp_veh); //can sometimes cause freezing
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~Flipped "); //25 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! 40
|
||||
Strcat(buffer, "'s ~s~"); //3 + 40 = 43
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(tmp_veh)); //15 to be safe //58 characters-
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
//print vehicle was flipped
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(auto_del_vehicle)
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
char* buffer[32]; //leave as 32
|
||||
Strcpy(buffer, "~b~MD: "); //15
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS! 34
|
||||
Strcat(buffer, "'s ~s~"); //6 = 40
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(tmp_veh));
|
||||
DELETE_CAR(&tmp_veh);
|
||||
Strcat(buffer, " was deleted.");
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(restrict_weapons)
|
||||
{
|
||||
REMOVE_ALL_CHAR_WEAPONS(MD_Assist_to_run_ped);
|
||||
if(is_driving(MD_Assist_to_run_ped)){
|
||||
int tmp_veh;
|
||||
GET_CAR_CHAR_IS_USING(MD_Assist_to_run_ped,&tmp_veh);
|
||||
int nvid;
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&nvid);
|
||||
int model;
|
||||
GET_CAR_MODEL(tmp_veh,&model);
|
||||
if(model == MODEL_ANNIHILATOR || model == MODEL_FIRETRUK || model == MODEL_BUZZARD || model == MODEL_APC)
|
||||
{
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(nvid);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(nvid))
|
||||
{
|
||||
DELETE_CAR(&tmp_veh);
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: "); //13
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS!
|
||||
Strcat(buffer, "'s ~s~fire-power ("); //3
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model))); //13?
|
||||
Strcat(buffer, ") has been deleted."); //18
|
||||
Alert(buffer,true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(auto_burn)
|
||||
{
|
||||
if(!IS_CHAR_ON_FIRE(MD_Assist_to_run_ped))
|
||||
{
|
||||
//MD: playername is now burning.
|
||||
char* buffer[16]; //64 chars
|
||||
Strcpy(buffer, "~b~MD: "); //16
|
||||
PLAYER_NAME_WITH_COLOUR(MD_Assist_to_run_index, &buffer); //WORKS!
|
||||
Strcat(buffer, " ~s~was set on fire."); //about 55
|
||||
START_CHAR_FIRE(MD_Assist_to_run_ped);
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
if(MD_Assist_to_run_index < (MAX_PLAYERS - 1)) MD_Assist_to_run_index = (MD_Assist_to_run_index + 1);
|
||||
else MD_Assist_to_run_index = 0;
|
||||
|
||||
}
|
||||
|
||||
void MC_Network_Player_Loop(void){
|
||||
register int NetPlayer_ID;
|
||||
Ped NetPlayer_Char;
|
||||
for(NetPlayer_ID = 0;NetPlayer_ID < MAX_PLAYERS; NetPlayer_ID++){
|
||||
if (Player_Display_Selection(NetPlayer_ID)){
|
||||
SetBit(rocketWeaponsBitSet, NetPlayer_ID, false);
|
||||
SetBit(constantBoomBitSet, NetPlayer_ID, false);
|
||||
if(DOES_OBJECT_EXIST(drive_water[NetPlayer_ID])) DELETE_OBJECT(&drive_water[NetPlayer_ID]);
|
||||
continue;
|
||||
}
|
||||
if( !PLAYER_HAS_CHAR(NetPlayer_ID)) continue;
|
||||
GET_PLAYER_CHAR(NetPlayer_ID,&NetPlayer_Char);
|
||||
if(!DOES_CHAR_EXIST(NetPlayer_Char)) continue;
|
||||
float x,y,z,h;
|
||||
GET_CHAR_COORDINATES_HEADING(NetPlayer_Char,&x,&y,&z,&h);
|
||||
|
||||
if(GetBit(constantBoomBitSet, NetPlayer_ID))
|
||||
{
|
||||
ADD_EXPLOSION(x,y,z, EXPLOSION_SHIP_DESTROY, 10, true, false, 1);
|
||||
}
|
||||
|
||||
bool player_is_driving = false;
|
||||
int tmp_veh;
|
||||
bool in_car = IS_CHAR_IN_ANY_CAR(NetPlayer_Char);
|
||||
if(GetBit(rocketWeaponsBitSet, NetPlayer_ID)){
|
||||
if(!in_car){
|
||||
if (IS_CHAR_SHOOTING(NetPlayer_Char)){
|
||||
float ax,ay,az;
|
||||
float wx,wy,wz;
|
||||
Ped rped;
|
||||
|
||||
GetOffset(NetPlayer_Char, 5, &ax, &ay, &az);
|
||||
CREATE_RANDOM_CHAR(ax, ay, az, &rped);
|
||||
|
||||
|
||||
while ( !DOES_CHAR_EXIST(rped)) WAIT(0);
|
||||
SET_CHAR_VISIBLE(rped,true);
|
||||
GIVE_WEAPON_TO_CHAR(rped, WEAPON_RLAUNCHER, 2, 0);
|
||||
SET_CURRENT_CHAR_WEAPON(rped, WEAPON_RLAUNCHER, true);
|
||||
GetOffset(NetPlayer_Char, 100,&wx,&wy,&wz);
|
||||
FIRE_PED_WEAPON(rped, wx, wy, wz);
|
||||
SET_CHAR_VISIBLE(rped,false);
|
||||
DELETE_CHAR(&rped);
|
||||
//REMOVE_WEAPON_FROM_CHAR(rped, WEAPON_RLAUNCHER);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_PLAYER_INDEX) == NetPlayer_ID){
|
||||
int offsetX[6], offsetY[6], offsetZ[6];
|
||||
offsetX[0] = 0; offsetY[0] = 1; offsetZ[0] = -0.95; //in front
|
||||
offsetX[1] = 0; offsetY[1] = -1; offsetZ[1] = -0.95; //behind
|
||||
offsetX[2] = 0; offsetY[2] = 0; offsetZ[2] = (z > 1000 ? -500 : 5);
|
||||
offsetX[3] = 0; offsetY[3] = 0; offsetZ[3] = 2; //On top of player
|
||||
offsetX[4] = 1; offsetY[4] = 0; offsetZ[4] = -0.95; //Right of player
|
||||
offsetX[5] = -1; offsetY[5] = 0; offsetZ[5] = -0.95; //left of player
|
||||
const int Attach_Type = GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE);
|
||||
if(Attach_Type > 0){
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(NetPlayer_Char, offsetX[Attach_Type - 1], offsetY[Attach_Type - 1], offsetZ[Attach_Type - 1], &x, &y, &z);
|
||||
SET_CHAR_COORDINATES(pPlayer,x,y,z);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
}
|
||||
//Run after safety checks (will turn it player bools off if not safe to execute)
|
||||
MC_Network_MD_Assist_Loop();
|
||||
}
|
||||
751
Trident/MD_Contents/MDC_Player_Changer.c
Normal file
751
Trident/MD_Contents/MDC_Player_Changer.c
Normal file
@@ -0,0 +1,751 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
/* ######################### PLAYER CHANGER SETUP & ACTION ############################*/
|
||||
#pragma once
|
||||
|
||||
/**New Setup**/
|
||||
void MD_Player_Changer_Setup(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD M O D E L C H A N G E R ~BLIP_94~"); //5
|
||||
AddBool("Variations Loop",Variations_Loop); //6
|
||||
AddFunction("Reset Model"); //7
|
||||
AddBool("Helmet",GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET)); //8
|
||||
AddFunction_Value("Specials",4); //9
|
||||
AddFunction_Value("Textures Body",7); //10
|
||||
AddFunction_Value("Uniforms",14); //11
|
||||
AddFunction_Value("Gang Members",4); //12
|
||||
AddFunction_Value("Stripper",2); //13
|
||||
AddFunction_Value("Medical",5); //14
|
||||
AddFunction_Value("Business",9); //15
|
||||
AddFunction_Value("Cluck",2); //16
|
||||
AddFunction_Value("Homo",2); //17
|
||||
AddFunction_Value("Singleplayer",9); //18
|
||||
AddFunction_Value("Strides ",11); //19 //Yes we put it here also cus its related to models
|
||||
AddFunction("Change Multiplayer Model ~y~(Settings Menu)"); //20
|
||||
AddSubMenu("Full Model Changer ~PAD_RIGHT~"); //21
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
/**New Action**/
|
||||
void MD_Player_Changer_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
if(SelectedItem == 6){
|
||||
Variations_Loop = !Variations_Loop;
|
||||
menu_item[SelectedItem].extra_val = Variations_Loop;
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
//SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(iPlayer); //in change player function if model == GET_PLAYERSETTINGS_MODEL_CHOICE
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true); //this really should be looped when menu open.......
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET);
|
||||
menu_item[SelectedItem].extra_val = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET))GIVE_PED_HELMET(pPlayer);
|
||||
else REMOVE_PED_HELMET(pPlayer,true);
|
||||
}
|
||||
else if(SelectedItem == 9){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
int model;
|
||||
GET_CHAR_MODEL(pPlayer,&model);
|
||||
if(model != -641875910){
|
||||
change_player(-641875910);
|
||||
}
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID()); //wtf????
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true); //this really should be looped when menu open.......
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 4, 1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
int model;
|
||||
GET_CHAR_MODEL(pPlayer,&model);
|
||||
if(model != -2020305438){
|
||||
change_player(-2020305438);
|
||||
}
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID()); //wtf????
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true); //this really should be looped when menu open.......
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 4, 2);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
int model;
|
||||
GET_CHAR_MODEL(pPlayer,&model);
|
||||
if(model != -330497431){
|
||||
change_player(-330497431);
|
||||
}
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID()); //wtf????
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true); //this really should be looped when menu open.......
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 4, 1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
int model;
|
||||
GET_CHAR_MODEL(pPlayer,&model);
|
||||
if(model != 1609755055){
|
||||
change_player(1609755055);
|
||||
}
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID()); //wtf????
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true); //this really should be looped when menu open.......
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 4, 2);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 10){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
int rand;
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,0, 0, 0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,0, 1,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 1, 1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 2, 3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,2, 3, 0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,100,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,rand, rand, rand);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
//int rand;
|
||||
//GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
//SET_CHAR_COMPONENT_VARIATION(pPlayer,200, 200,200);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){ //Uniforms
|
||||
int model[14];
|
||||
model[0] = MODEL_M_M_FATCOP_01;
|
||||
model[1] = MODEL_M_Y_SWAT;
|
||||
model[2] = MODEL_M_Y_NHELIPILOT;
|
||||
model[3] = MODEL_M_M_FBI;
|
||||
model[4] = MODEL_M_Y_COP;
|
||||
model[5] = MODEL_M_Y_COP_TRAFFIC;
|
||||
model[6] = MODEL_M_Y_FIREMAN;
|
||||
model[7] = MODEL_M_M_FIRECHIEF;
|
||||
model[8] = MODEL_M_M_SECURITYMAN;
|
||||
model[9] = MODEL_M_M_ARMOURED;
|
||||
model[10] = MODEL_M_Y_CLUBFIT;
|
||||
model[11] = MODEL_M_Y_PRISON;
|
||||
model[12] = MODEL_M_Y_PRISONAOM;
|
||||
model[13] = MODEL_F_Y_FF_CLUCK_R;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 12){ //Gang Members
|
||||
int model[4];
|
||||
model[0] = MODEL_M_Y_GAFR_LO_01;
|
||||
model[1] = MODEL_M_Y_GAFR_LO_02;
|
||||
model[2] = MODEL_M_Y_GAFR_HI_01;
|
||||
model[3] = MODEL_M_Y_GAFR_HI_02;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 13){ //Stripper
|
||||
int model[2];
|
||||
model[0] = MODEL_F_Y_STRIPPERC01;
|
||||
model[1] = MODEL_F_Y_STRIPPERC02;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 14){ //Medical
|
||||
int model[5];
|
||||
model[0] = MODEL_M_M_DOCTOR_01;
|
||||
model[1] = MODEL_F_Y_DOCTOR_01;
|
||||
model[2] = MODEL_F_Y_NURSE;
|
||||
model[3] = MODEL_M_M_DOC_SCRUBS_01;
|
||||
model[4] = MODEL_M_M_DODGYDOC;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 15){ //Business
|
||||
int model[9];
|
||||
model[0] = MODEL_F_M_BUSINESS_01;
|
||||
model[1] = MODEL_F_M_BUSINESS_02;
|
||||
model[2] = MODEL_F_M_PBUSINESS;
|
||||
model[3] = MODEL_F_Y_BUSINESS_01;
|
||||
model[4] = MODEL_M_M_BUSINESS_02;
|
||||
model[5] = MODEL_M_M_BUSINESS_03;
|
||||
model[6] = MODEL_M_M_PBUSINESS_01;
|
||||
model[7] = MODEL_M_Y_BUSINESS_01;
|
||||
model[8] = MODEL_M_Y_BUSINESS_02;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 16){ //Broken
|
||||
int model[2];
|
||||
model[0] = MODEL_F_Y_FF_CLUCK_R;
|
||||
model[1] = MODEL_M_Y_FF_CLUCK_R;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET, true);
|
||||
GIVE_PED_HELMET(pPlayer);
|
||||
}
|
||||
else if(SelectedItem == 17){ //Homo
|
||||
int model[2];
|
||||
model[0] = MODEL_M_M_GAYMID; //= admin command change model homo
|
||||
model[1] = MODEL_M_Y_GAYYOUNG;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 18){ //Singleplayer
|
||||
int model[9];
|
||||
model[0] = MODEL_IG_LILJACOB;
|
||||
model[1] = MODEL_IG_BRUCIE;
|
||||
model[2] = MODEL_IG_ROMAN;
|
||||
model[3] = MODEL_IG_DWAYNE;
|
||||
model[4] = MODEL_IG_BADMAN;
|
||||
model[5] = MODEL_IG_DMITRI;
|
||||
model[6] = MODEL_IG_MICHELLE;
|
||||
model[7] = MODEL_IG_PACKIE_MC;
|
||||
model[8] = MODEL_IG_PLAYBOY_X;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
if(SelectedItem > 10 && SelectedItem < 19){
|
||||
SET_CHAR_HEALTH(pPlayer,500);
|
||||
ADD_ARMOUR_TO_CHAR(pPlayer,99);
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(pPlayer,Episode);
|
||||
}
|
||||
else if(SelectedItem == 19) MD_Stride_Strings_Action(pPlayer);
|
||||
else if(SelectedItem == 20) ACTIVATE_NETWORK_SETTINGS_MENU();
|
||||
|
||||
}
|
||||
|
||||
|
||||
void MD_Player_MoreChanger_Setup(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD A L L M O D E L S ~BLIP_94~");
|
||||
AddBool("Variations Loop",Variations_Loop); //6
|
||||
AddFunction("Reset Model"); //7
|
||||
AddBool("Helmet",GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET));
|
||||
AddFunction_Value("Textures Body",7); //10
|
||||
AddFunction_Value("IV Story 1",46); //17
|
||||
AddFunction_Value("IV Story 2",11); //18
|
||||
AddFunction_Value("IV Gangs",44); //17
|
||||
AddFunction_Value("IV ForeGround 1/1",50); //14
|
||||
AddFunction_Value("IV ForeGround 2/1",37); //15
|
||||
AddFunction_Value("IV ForeGround 3/1",16); //16
|
||||
AddFunction_Value("IV BackGround 1/1",87); //17
|
||||
AddFunction_Value("TBoGT Models",73); //18
|
||||
AddFunction_Value("TLAD Models",26); //19
|
||||
AddFunction("Change Multiplayer Model ~y~(Settings Menu)"); //20
|
||||
AddFunction_Value("Strides ",11); //20
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
void MD_Player_MoreChanger_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
if(SelectedItem == 6){
|
||||
Variations_Loop = !Variations_Loop;
|
||||
menu_item[SelectedItem].extra_val = Variations_Loop;
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
//SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(iPlayer); //in change player function if model == GET_PLAYERSETTINGS_MODEL_CHOICE
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true); //this really should be looped when menu open.......
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET);
|
||||
menu_item[SelectedItem].extra_val = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET))GIVE_PED_HELMET(pPlayer);
|
||||
else REMOVE_PED_HELMET(pPlayer,true);
|
||||
}
|
||||
else if(SelectedItem == 9){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
int rand;
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,0, 0, 0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,0, 1,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 1, 1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,1, 2, 3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,2, 3, 0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,100,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,rand, rand, rand);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
//int rand;
|
||||
//GENERATE_RANDOM_INT_IN_RANGE(0,20,&rand);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
//SET_CHAR_COMPONENT_VARIATION(pPlayer,200, 200,200);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 10){ //Singleplayer
|
||||
int model[46];
|
||||
model[0] = MODEL_IG_ANNA;
|
||||
model[1] = MODEL_IG_ANTHONY;
|
||||
model[2] = MODEL_IG_BADMAN;
|
||||
model[3] = MODEL_IG_BERNIE_CRANE;
|
||||
model[4] = MODEL_IG_BLEDAR;
|
||||
model[5] = MODEL_IG_BRIAN;
|
||||
model[6] = MODEL_IG_BULGARIN;
|
||||
model[7] = MODEL_IG_CHARISE;
|
||||
model[8] = MODEL_IG_CHARLIEUC;
|
||||
model[9] = MODEL_IG_CLARENCE;
|
||||
model[10] = MODEL_IG_DARDAN;
|
||||
model[11] = MODEL_IG_DARKO;
|
||||
model[12] = MODEL_IG_DERRICK_MC;
|
||||
model[13] = MODEL_IG_DMITRI;
|
||||
model[14] = MODEL_IG_DWAYNE;
|
||||
model[15] = MODEL_IG_EDDIELOW;
|
||||
model[16] = MODEL_IG_FAUSTIN;
|
||||
model[17] = MODEL_IG_FRANCIS_MC;
|
||||
model[18] = MODEL_IG_FRENCH_TOM;
|
||||
model[19] = MODEL_IG_GORDON;
|
||||
model[20] = MODEL_IG_GRACIE;
|
||||
model[21] = MODEL_IG_HOSSAN;
|
||||
model[22] = MODEL_IG_ILYENA;
|
||||
model[23] = MODEL_IG_ISAAC;
|
||||
model[24] = MODEL_IG_IVAN;
|
||||
model[25] = MODEL_IG_JAY;
|
||||
model[26] = MODEL_IG_JASON;
|
||||
model[27] = MODEL_IG_JEFF;
|
||||
model[28] = MODEL_IG_JIMMY;
|
||||
model[29] = MODEL_IG_JOHNNYBIKER;
|
||||
model[30] = MODEL_IG_KATEMC;
|
||||
model[31] = MODEL_IG_KENNY;
|
||||
model[32] = MODEL_IG_LILJACOB;
|
||||
model[33] = MODEL_IG_LILJACOBW;
|
||||
model[34] = MODEL_IG_LUCA;
|
||||
model[35] = MODEL_IG_LUIS;
|
||||
model[36] = MODEL_IG_MALLORIE;
|
||||
model[37] = MODEL_IG_MAMC;
|
||||
model[38] = MODEL_IG_MANNY;
|
||||
model[39] = MODEL_IG_MARNIE;
|
||||
model[40] = MODEL_IG_MEL;
|
||||
model[41] = MODEL_IG_MICHAEL;
|
||||
model[42] = MODEL_IG_MICHELLE;
|
||||
model[43] = MODEL_IG_MICKEY;
|
||||
model[44] = MODEL_IG_PACKIE_MC;
|
||||
model[45] = MODEL_IG_PATHOS;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 11){ //Singleplayer
|
||||
int model[11];
|
||||
model[0] = MODEL_IG_PETROVIC;
|
||||
model[1] = MODEL_IG_PHIL_BELL;
|
||||
model[2] = MODEL_IG_PLAYBOY_X;
|
||||
model[3] = MODEL_IG_RAY_BOCCINO;
|
||||
model[4] = MODEL_IG_RICKY;
|
||||
model[5] = MODEL_IG_ROMAN;
|
||||
model[6] = MODEL_IG_ROMANW;
|
||||
model[7] = MODEL_IG_SARAH;
|
||||
model[8] = MODEL_IG_TUNA;
|
||||
model[9] = MODEL_IG_VINNY_SPAZ;
|
||||
model[10] = MODEL_IG_VLAD;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 12){ //Singleplayer
|
||||
int model[44];
|
||||
model[0] = MODEL_M_Y_GAFR_LO_01;
|
||||
model[1] = MODEL_M_Y_GAFR_LO_02;
|
||||
model[2] = MODEL_M_Y_GAFR_HI_01;
|
||||
model[3] = MODEL_M_Y_GAFR_HI_02;
|
||||
model[4] = MODEL_M_Y_GALB_LO_01;
|
||||
model[5] = MODEL_M_Y_GALB_LO_02;
|
||||
model[6] = MODEL_M_Y_GALB_LO_03;
|
||||
model[7] = MODEL_M_Y_GALB_LO_04;
|
||||
model[8] = MODEL_M_M_GBIK_LO_03;
|
||||
model[9] = MODEL_M_Y_GBIK_HI_01;
|
||||
model[10] = MODEL_M_Y_GBIK_HI_02;
|
||||
model[11] = MODEL_M_Y_GBIK02_LO_02;
|
||||
model[12] = MODEL_M_Y_GIRI_LO_01;
|
||||
model[13] = MODEL_M_Y_GIRI_LO_02;
|
||||
model[14] = MODEL_M_Y_GIRI_LO_03;
|
||||
model[15] = MODEL_M_M_GJAM_HI_01;
|
||||
model[16] = MODEL_M_M_GJAM_HI_02;
|
||||
model[17] = MODEL_M_M_GJAM_HI_03;
|
||||
model[18] = MODEL_M_Y_GJAM_LO_01;
|
||||
model[19] = MODEL_M_Y_GJAM_LO_02;
|
||||
model[20] = MODEL_M_Y_GKOR_LO_01;
|
||||
model[21] = MODEL_M_Y_GKOR_LO_02;
|
||||
model[22] = MODEL_M_Y_GLAT_LO_01;
|
||||
model[23] = MODEL_M_Y_GLAT_LO_02;
|
||||
model[24] = MODEL_M_Y_GLAT_HI_01;
|
||||
model[25] = MODEL_M_Y_GLAT_HI_02;
|
||||
model[26] = MODEL_M_Y_GMAF_HI_01;
|
||||
model[27] = MODEL_M_Y_GMAF_HI_02;
|
||||
model[28] = MODEL_M_Y_GMAF_LO_01;
|
||||
model[29] = MODEL_M_Y_GMAF_LO_02;
|
||||
model[30] = MODEL_M_O_GRUS_HI_01;
|
||||
model[31] = MODEL_M_Y_GRUS_LO_01;
|
||||
model[32] = MODEL_M_Y_GRUS_LO_02;
|
||||
model[33] = MODEL_M_Y_GRUS_HI_02;
|
||||
model[34] = MODEL_M_M_GRU2_HI_01;
|
||||
model[35] = MODEL_M_M_GRU2_HI_02;
|
||||
model[36] = MODEL_M_M_GRU2_LO_02;
|
||||
model[37] = MODEL_M_Y_GRU2_LO_01;
|
||||
model[38] = MODEL_M_M_GTRI_HI_01;
|
||||
model[39] = MODEL_M_M_GTRI_HI_02;
|
||||
model[40] = MODEL_M_Y_GTRI_LO_01;
|
||||
model[41] = MODEL_M_Y_GTRI_LO_02;
|
||||
model[42] = MODEL_M_Y_GBIK_LO_01;
|
||||
model[43] = MODEL_M_Y_GBIK_LO_02;
|
||||
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 13){ //Singleplayer
|
||||
int model[50];
|
||||
model[0] = MODEL_M_M_ALCOHOLIC;
|
||||
model[1] = MODEL_M_M_ARMOURED;
|
||||
model[2] = MODEL_M_M_BUSDRIVER;
|
||||
model[3] = MODEL_M_M_CHINATOWN_01;
|
||||
model[4] = MODEL_M_M_CRACKHEAD;
|
||||
model[5] = MODEL_M_M_DOC_SCRUBS_01;
|
||||
model[6] = MODEL_M_M_DOCTOR_01;
|
||||
model[7] = MODEL_M_M_DODGYDOC;
|
||||
model[8] = MODEL_M_M_EECOOK;
|
||||
model[9] = MODEL_M_M_ENFORCER;
|
||||
model[10] = MODEL_M_M_FACTORY_01;
|
||||
model[11] = MODEL_M_M_FATCOP_01;
|
||||
model[12] = MODEL_M_M_FBI;
|
||||
model[13] = MODEL_M_M_FEDCO;
|
||||
model[14] = MODEL_M_M_FIRECHIEF;
|
||||
model[15] = MODEL_M_M_GUNNUT_01;
|
||||
model[16] = MODEL_M_M_HELIPILOT_01;
|
||||
model[17] = MODEL_M_M_HPORTER_01;
|
||||
model[18] = MODEL_M_M_KOREACOOK_01;
|
||||
model[19] = MODEL_M_M_LAWYER_01;
|
||||
model[20] = MODEL_M_M_LAWYER_02;
|
||||
model[21] = MODEL_M_M_LOONYBLACK;
|
||||
model[22] = MODEL_M_M_PILOT;
|
||||
model[23] = MODEL_M_M_PINDUS_01;
|
||||
model[24] = MODEL_M_M_POSTAL_01;
|
||||
model[25] = MODEL_M_M_SAXPLAYER_01;
|
||||
model[26] = MODEL_M_M_SECURITYMAN;
|
||||
model[27] = MODEL_M_M_SELLER_01;
|
||||
model[28] = MODEL_M_M_SHORTORDER;
|
||||
model[29] = MODEL_M_M_STREETFOOD_01;
|
||||
model[30] = MODEL_M_M_SWEEPER;
|
||||
model[31] = MODEL_M_M_TAXIDRIVER;
|
||||
model[32] = MODEL_M_M_TELEPHONE;
|
||||
model[33] = MODEL_M_M_TENNIS;
|
||||
model[34] = MODEL_M_M_TRAIN_01;
|
||||
model[35] = MODEL_M_M_TRAMPBLACK;
|
||||
model[36] = MODEL_M_M_TRUCKER_01;
|
||||
model[37] = MODEL_M_O_JANITOR;
|
||||
model[38] = MODEL_M_O_HOTEL_FOOT;
|
||||
model[39] = MODEL_M_O_MPMOBBOSS;
|
||||
model[40] = MODEL_M_Y_AIRWORKER;
|
||||
model[41] = MODEL_M_Y_BARMAN_01;
|
||||
model[42] = MODEL_M_Y_BOUNCER_01;
|
||||
model[43] = MODEL_M_Y_BOUNCER_02;
|
||||
model[44] = MODEL_M_Y_BOWL_01;
|
||||
model[45] = MODEL_M_Y_BOWL_02;
|
||||
model[46] = MODEL_M_Y_CHINVEND_01;
|
||||
model[47] = MODEL_M_Y_CLUBFIT;
|
||||
model[48] = MODEL_M_Y_CONSTRUCT_01;
|
||||
model[49] = MODEL_M_Y_CONSTRUCT_02;
|
||||
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 14){ //Singleplayer
|
||||
int model[37];
|
||||
model[0] = MODEL_M_Y_CONSTRUCT_03;
|
||||
model[1] = MODEL_M_Y_COP;
|
||||
model[2] = MODEL_M_Y_COP_TRAFFIC;
|
||||
model[3] = MODEL_M_Y_COURIER;
|
||||
model[4] = MODEL_M_Y_COWBOY_01;
|
||||
model[5] = MODEL_M_Y_DEALER;
|
||||
model[6] = MODEL_M_Y_DRUG_01;
|
||||
model[7] = MODEL_M_Y_FF_BURGER_R;
|
||||
model[8] = MODEL_M_Y_FF_CLUCK_R;
|
||||
model[9] = MODEL_M_Y_FF_RSCAFE;
|
||||
model[10] = MODEL_M_Y_FF_TWCAFE;
|
||||
model[11] = MODEL_M_Y_FF_WSPIZZA_R;
|
||||
model[12] = MODEL_M_Y_FIREMAN;
|
||||
model[13] = MODEL_M_Y_GARBAGE;
|
||||
model[14] = MODEL_M_Y_GOON_01;
|
||||
model[15] = MODEL_M_Y_GYMGUY_01;
|
||||
model[16] = MODEL_M_Y_MECHANIC_02;
|
||||
model[17] = MODEL_M_Y_MODO;
|
||||
model[18] = MODEL_M_Y_NHELIPILOT;
|
||||
model[19] = MODEL_M_Y_PERSEUS;
|
||||
model[20] = MODEL_M_Y_PINDUS_01;
|
||||
model[21] = MODEL_M_Y_PINDUS_02;
|
||||
model[22] = MODEL_M_Y_PINDUS_03;
|
||||
model[23] = MODEL_M_Y_PMEDIC;
|
||||
model[24] = MODEL_M_Y_PRISON;
|
||||
model[25] = MODEL_M_Y_PRISONAOM;
|
||||
model[26] = MODEL_M_Y_ROMANCAB;
|
||||
model[27] = MODEL_M_Y_RUNNER;
|
||||
model[28] = MODEL_M_Y_SHOPASST_01;
|
||||
model[29] = MODEL_M_Y_STROOPER;
|
||||
model[30] = MODEL_M_Y_SWAT;
|
||||
model[31] = MODEL_M_Y_SWORDSWALLOW;
|
||||
model[32] = MODEL_M_Y_THIEF;
|
||||
model[33] = MODEL_M_Y_VALET;
|
||||
model[34] = MODEL_M_Y_VENDOR;
|
||||
model[35] = MODEL_M_Y_FRENCHTOM;
|
||||
model[36] = MODEL_M_Y_JIM_FITZ;
|
||||
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 15){ //Singleplayer
|
||||
int model[16];
|
||||
model[0] = MODEL_F_O_MAID_01;
|
||||
model[1] = MODEL_F_O_BINCO;
|
||||
model[2] = MODEL_F_Y_BANK_01;
|
||||
model[3] = MODEL_F_Y_DOCTOR_01;
|
||||
model[4] = MODEL_F_Y_GYMGAL_01;
|
||||
model[5] = MODEL_F_Y_FF_BURGER_R;
|
||||
model[6] = MODEL_F_Y_FF_CLUCK_R;
|
||||
model[7] = MODEL_F_Y_FF_RSCAFE;
|
||||
model[8] = MODEL_F_Y_FF_TWCAFE;
|
||||
model[9] = MODEL_F_Y_FF_WSPIZZA_R;
|
||||
model[10] = MODEL_F_Y_HOOKER_01;
|
||||
model[11] = MODEL_F_Y_HOOKER_03;
|
||||
model[12] = MODEL_F_Y_NURSE;
|
||||
model[13] = MODEL_F_Y_STRIPPERC01;
|
||||
model[14] = MODEL_F_Y_STRIPPERC02;
|
||||
model[15] = MODEL_F_Y_WAITRESS_01;
|
||||
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 16){ //Singleplayer
|
||||
int model[87];
|
||||
model[0] = MODEL_M_Y_CONSTRUCT_03;
|
||||
model[1] = MODEL_M_Y_COP;
|
||||
model[2] = MODEL_M_Y_COP_TRAFFIC;
|
||||
model[3] = MODEL_M_Y_COURIER;
|
||||
model[4] = MODEL_M_Y_COWBOY_01;
|
||||
model[5] = MODEL_M_Y_DEALER;
|
||||
model[6] = MODEL_M_Y_DRUG_01;
|
||||
model[7] = MODEL_M_Y_FF_BURGER_R;
|
||||
model[8] = MODEL_M_Y_FF_CLUCK_R;
|
||||
model[9] = MODEL_M_Y_FF_RSCAFE;
|
||||
model[10] = MODEL_M_Y_FF_TWCAFE;
|
||||
model[11] = MODEL_M_Y_FF_WSPIZZA_R;
|
||||
model[12] = MODEL_M_Y_FIREMAN;
|
||||
model[13] = MODEL_M_Y_GARBAGE;
|
||||
model[14] = MODEL_M_Y_GOON_01;
|
||||
model[15] = MODEL_M_Y_GYMGUY_01;
|
||||
model[16] = MODEL_M_Y_MECHANIC_02;
|
||||
model[17] = MODEL_M_Y_MODO;
|
||||
model[18] = MODEL_M_Y_NHELIPILOT;
|
||||
model[19] = MODEL_M_Y_PERSEUS;
|
||||
model[20] = MODEL_M_Y_PINDUS_01;
|
||||
model[21] = MODEL_M_Y_PINDUS_02;
|
||||
model[22] = MODEL_M_Y_PINDUS_03;
|
||||
model[23] = MODEL_M_Y_PMEDIC;
|
||||
model[24] = MODEL_M_Y_PRISON;
|
||||
model[25] = MODEL_M_Y_PRISONAOM;
|
||||
model[26] = MODEL_M_Y_ROMANCAB;
|
||||
model[27] = MODEL_M_Y_RUNNER;
|
||||
model[28] = MODEL_M_Y_SHOPASST_01;
|
||||
model[29] = MODEL_M_Y_STROOPER;
|
||||
model[30] = MODEL_M_Y_SWAT;
|
||||
model[31] = MODEL_M_Y_SWORDSWALLOW;
|
||||
model[32] = MODEL_M_Y_THIEF;
|
||||
model[33] = MODEL_M_Y_VALET;
|
||||
model[34] = MODEL_M_Y_VENDOR;
|
||||
model[35] = MODEL_M_Y_FRENCHTOM;
|
||||
model[36] = MODEL_M_Y_JIM_FITZ;
|
||||
model[37] = MODEL_M_Y_TOURIST_02;
|
||||
model[38] = MODEL_M_Y_TOUGH_05;
|
||||
model[39] = MODEL_M_Y_STREETPUNK_05;
|
||||
model[40] = MODEL_M_Y_STREETPUNK_04;
|
||||
model[41] = MODEL_M_Y_STREETPUNK_02;
|
||||
model[42] = MODEL_M_Y_STREETBLK_03;
|
||||
model[43] = MODEL_M_Y_STREETBLK_02;
|
||||
model[44] = MODEL_M_Y_STREET_04;
|
||||
model[45] = MODEL_M_Y_STREET_01;
|
||||
model[46] = MODEL_M_Y_STREET_03;
|
||||
model[47] = MODEL_M_Y_SOHO_01;
|
||||
model[48] = MODEL_M_Y_SKATEBIKE_01;
|
||||
model[49] = MODEL_M_Y_SHADY_02;
|
||||
model[50] = MODEL_M_Y_QUEENSBRIDGE;
|
||||
model[51] = MODEL_M_Y_PVILLBO_03;
|
||||
model[52] = MODEL_M_Y_PVILLBO_02;
|
||||
model[53] = MODEL_M_Y_PVILLBO_01;
|
||||
model[54] = MODEL_M_Y_PRICH_01;
|
||||
model[55] = MODEL_M_Y_PQUEENS_01;
|
||||
model[56] = MODEL_M_Y_PORIENT_01;
|
||||
model[57] = MODEL_M_Y_PMANHAT_02;
|
||||
model[58] = MODEL_M_Y_PMANHAT_01;
|
||||
model[59] = MODEL_M_Y_PLATIN_03;
|
||||
model[60] = MODEL_M_Y_PLATIN_02;
|
||||
model[61] = MODEL_M_Y_PLATIN_01;
|
||||
model[62] = MODEL_M_Y_PJERSEY_01;
|
||||
model[63] = MODEL_M_Y_PHARLEM_01;
|
||||
model[64] = MODEL_M_Y_PHARBRON_01;
|
||||
model[65] = MODEL_M_Y_PCOOL_02;
|
||||
model[66] = MODEL_M_Y_PCOOL_01;
|
||||
model[67] = MODEL_M_Y_PBRONX_01;
|
||||
model[68] = MODEL_M_Y_LEASTSIDE_01;
|
||||
model[69] = MODEL_M_Y_HASID_01;
|
||||
model[70] = MODEL_M_Y_HARLEM_04;
|
||||
model[71] = MODEL_M_Y_HARLEM_02;
|
||||
model[72] = MODEL_M_Y_HARLEM_01;
|
||||
model[73] = MODEL_M_O_STREET_01;
|
||||
model[74] = MODEL_M_O_SUITED;
|
||||
model[75] = MODEL_M_Y_BOHO_01;
|
||||
model[76] = MODEL_M_Y_DODGY_01;
|
||||
model[77] = MODEL_M_Y_DORK_02;
|
||||
model[78] = MODEL_M_Y_DOWNTOWN_01;
|
||||
model[79] = MODEL_M_Y_DOWNTOWN_02;
|
||||
model[80] = MODEL_M_Y_DOWNTOWN_03;
|
||||
model[81] = MODEL_M_Y_GAYYOUNG;
|
||||
model[82] = MODEL_M_Y_GENSTREET_11;
|
||||
model[83] = MODEL_M_Y_GENSTREET_16;
|
||||
model[84] = MODEL_M_Y_GENSTREET_20;
|
||||
model[85] = MODEL_M_Y_GENSTREET_34;
|
||||
model[86] = MODEL_M_Y_HARDMAN_01;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 17){ //Singleplayer
|
||||
|
||||
int model[73];
|
||||
model[0] = MODEL_IG_AHMAD;
|
||||
model[1] = MODEL_IG_ARMANDO;
|
||||
model[2] = MODEL_IG_ARMSDEALER;
|
||||
model[3] = MODEL_IG_ARNAUD;
|
||||
model[4] = MODEL_IG_BANKER;
|
||||
model[5] = MODEL_IG_BRUCIE2;
|
||||
model[6] = MODEL_IG_BULGARIN2;
|
||||
model[7] = MODEL_IG_DAISY;
|
||||
model[8] = MODEL_IG_DEEJAY;
|
||||
model[9] = MODEL_IG_DESSIE;
|
||||
model[10] = MODEL_IG_EVAN;
|
||||
model[11] = MODEL_IG_GRACIE2;
|
||||
model[12] = MODEL_IG_HENRIQUE;
|
||||
model[13] = MODEL_IG_ISSAC2;
|
||||
model[14] = MODEL_IG_JOHNNY2;
|
||||
model[15] = MODEL_IG_LUIS2;
|
||||
model[16] = MODEL_IG_MARGOT;
|
||||
model[17] = MODEL_IG_MORI_K;
|
||||
model[18] = MODEL_IG_MR_SANTOS;
|
||||
model[19] = MODEL_IG_OYVEY;
|
||||
model[20] = MODEL_IG_NIKO;
|
||||
model[21] = MODEL_IG_OYVEY;
|
||||
model[22] = MODEL_IG_ROCCO;
|
||||
model[23] = MODEL_IG_TAHIR;
|
||||
model[24] = MODEL_IG_TIMUR;
|
||||
model[25] = MODEL_IG_TONY;
|
||||
model[26] = MODEL_IG_TRAMP2;
|
||||
model[27] = MODEL_IG_TRIAD;
|
||||
model[28] = MODEL_IG_TROY;
|
||||
model[29] = MODEL_IG_VIC;
|
||||
model[30] = MODEL_IG_VICGIRL;
|
||||
model[31] = MODEL_IG_VINCE;
|
||||
model[32] = MODEL_IG_YUSEF;
|
||||
model[33] = MODEL_F_Y_ASIANCLUB_01;
|
||||
model[34] = MODEL_F_Y_ASIANCLUB_02;
|
||||
model[35] = MODEL_F_Y_CLUBEURO_01;
|
||||
model[36] = MODEL_F_Y_DOMGIRL_01;
|
||||
model[37] = MODEL_F_Y_EMIDTOWN_02;
|
||||
model[38] = MODEL_F_Y_HOSTESS;
|
||||
model[39] = MODEL_F_Y_HOTCHICK_01;
|
||||
model[40] = MODEL_F_Y_HOTCHICK_02;
|
||||
model[41] = MODEL_F_Y_HOTCHICK_03;
|
||||
model[42] = MODEL_F_Y_PGIRL_01;
|
||||
model[43] = MODEL_F_Y_PGIRL_02;
|
||||
model[44] = MODEL_M_M_E2MAF_01;
|
||||
model[45] = MODEL_M_M_E2MAF_02;
|
||||
model[46] = MODEL_M_Y_BATHROOM;
|
||||
model[47] = MODEL_M_Y_CIADLC_01;
|
||||
model[49] = MODEL_M_Y_CIADLC_02;
|
||||
model[50] = MODEL_M_Y_GAYBLACK_01;
|
||||
model[51] = MODEL_M_Y_GAYDANCER;
|
||||
model[52] = MODEL_M_Y_FIGHTCLUB_01;
|
||||
model[53] = MODEL_M_Y_FIGHTCLUB_02;
|
||||
model[54] = MODEL_M_Y_FIGHTCLUB_03;
|
||||
model[55] = MODEL_M_Y_FIGHTCLUB_04;
|
||||
model[56] = MODEL_M_Y_FIGHTCLUB_05;
|
||||
model[57] = MODEL_M_Y_FIGHTCLUB_06;
|
||||
model[58] = MODEL_M_Y_FIGHTCLUB_07;
|
||||
model[59] = MODEL_M_Y_FIGHTCLUB_08;
|
||||
model[60] = MODEL_F_Y_CLOEPARKER;
|
||||
model[61] = MODEL_F_Y_DANCER_01;
|
||||
model[62] = MODEL_F_Y_JONI;
|
||||
model[63] = MODEL_M_M_MAFUNION;
|
||||
model[64] = MODEL_M_Y_CELEBBLOG;
|
||||
model[65] = MODEL_M_Y_EXSPORTS;
|
||||
model[66] = MODEL_M_Y_MOBPARTY;
|
||||
model[67] = MODEL_M_Y_PAPARAZZI_01;
|
||||
model[68] = MODEL_IG_BLUEBROS;
|
||||
model[69] = MODEL_IG_JACKSON;
|
||||
model[70] = MODEL_IG_NAPOLI;
|
||||
model[71] = MODEL_IG_ROYAL;
|
||||
model[72] = MODEL_IG_SPADE;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 18){ //Singleplayer
|
||||
|
||||
int model[26];
|
||||
model[0] = MODEL_IG_NIKO;
|
||||
model[1] = MODEL_IG_ASHLEYA;
|
||||
model[2] = MODEL_IG_CLAY;
|
||||
model[3] = MODEL_IG_MALC;
|
||||
model[4] = MODEL_IG_BILLY;
|
||||
model[5] = MODEL_IG_JIM_FITZ;
|
||||
model[6] = MODEL_IG_BRIANJ;
|
||||
model[7] = MODEL_IG_EVAN;
|
||||
model[8] = MODEL_IG_TERRY;
|
||||
model[9] = MODEL_IG_DAVE_GROSSMAN;
|
||||
model[10] = MODEL_IG_LOSTGIRL;
|
||||
model[11] = MODEL_IG_BILLYPRISON;
|
||||
model[12] = MODEL_IG_MARTA;
|
||||
model[13] = MODEL_IG_DESEAN;
|
||||
model[14] = MODEL_IG_MATTHEWS;
|
||||
model[15] = MODEL_IG_MCCORNISH;
|
||||
model[16] = MODEL_IG_PGIRL_01;
|
||||
model[17] = MODEL_IG_PGIRL_02;
|
||||
model[18] = MODEL_IG_ROMAN_E1;
|
||||
model[19] = MODEL_IG_STROOPER;
|
||||
model[20] = MODEL_F_Y_BIKESTRIPPER_01;
|
||||
model[21] = MODEL_F_Y_EMIDTOWN_01;
|
||||
model[22] = MODEL_M_M_SPRETZER;
|
||||
model[23] = MODEL_M_Y_CIADLC_01;
|
||||
model[24] = MODEL_M_O_HISPANIC_01;
|
||||
model[25] = MODEL_M_Y_HISPANIC_01;
|
||||
change_player(model[(menu_item[SelectedItem].num_val - 1)]);
|
||||
}
|
||||
else if(SelectedItem == 19) ACTIVATE_NETWORK_SETTINGS_MENU();
|
||||
else if(SelectedItem == 20){
|
||||
MD_Stride_Strings_Action(pPlayer);
|
||||
}
|
||||
}
|
||||
793
Trident/MD_Contents/MDC_Player_Options.c
Normal file
793
Trident/MD_Contents/MDC_Player_Options.c
Normal file
@@ -0,0 +1,793 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
/* ######################### PLAYER OPTIONS SETUP & ACTION ############################*/
|
||||
|
||||
#pragma once
|
||||
|
||||
//Maybe add autospawn boat to this section - Player Protections
|
||||
|
||||
void MD_New_PlayerOptions_Setup(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
|
||||
MENU_SUB_HEADER = "Player Options";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ P L A Y E R O P T I O N S ~BLIP_94~"); //5
|
||||
|
||||
//!NeW Setup
|
||||
AddFunction_Value("Player Protection",3); //6 Godmode / Juggernaut / never wanted / ADD autospawn boat(water)
|
||||
AddFunction_Value_CB("Player Help",5);
|
||||
AddFunction_Value_CB("Weapon Options",5); //7 Unlimmited Clip / Rapid Fire / Auto Aim / Give Weapons /Remove Weapons
|
||||
//8 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction_Value("Visibility",5); //9 Invisible (On Foot) / Invisible (On Foot+Vehicle) / Hide Blip(On Foot) / Hide Blip (On Foot + Vehicle)
|
||||
AddFunction_Value("Super Powers",4); //10 Super Punch / Super Punch / Super Jump / Force Field
|
||||
AddFunction_Value_CB("Physics", 3); //11 / Drive Walk ON Water / Gravity / Slow Motion
|
||||
AddBool("~BLIP_68~ Fly-mod ~PAD_LB~ slower / ~PAD_RB~ faster",GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD)); //12
|
||||
AddBool("~BLIP_52~ Inferno",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO)); //13 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction_CB("~BLIP_52~ Explode Player"); //14 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction_CB("~BLIP_52~ Spawn Money around player"); //15 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction("~BLIP_68~ Change to Niko"); //16
|
||||
AddFunction_Value_CB("Set Player Colors (YOU = Host)",18); //17 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction("~BLIP_68~ Reset Player");
|
||||
AddFunction_CB("~BLIP_68~ Resurrect Player(Pull out Ghost)");
|
||||
AddFunction("Find new Game");
|
||||
//AddBool_CB("Attach Player Info x ",Attach_Player_Info);
|
||||
//AddFunction_Value_CB("Player Info Display",9); //Show window / Set Player 1 - Set Player 2
|
||||
item_highlighted = 6;
|
||||
//*/ //--> = 25 options on one page without the top 4 shortcuts = all together 34 options on ONE PAGE !!!
|
||||
return;
|
||||
}
|
||||
|
||||
void MD_New_PlayerOptions_Action(const int Player_ID){
|
||||
Vehicle vehicle;
|
||||
uint vehicle_id;
|
||||
float heading, speed;
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
//!**********************/
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//! ITEMLINE 5 ******************Jumpover TITLE MENU********************//
|
||||
if(PLAYER_HAS_CHAR(Player_ID)){
|
||||
GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
if(SelectedItem == 6){ //AddFunction_Value("Player Protection",2); //6 Godmode / Juggernaut / Never wanted
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE);
|
||||
|
||||
//Alert_Two("~b~MD: ~s~Godmode",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_JUGGERNAUT);
|
||||
|
||||
//Alert_Two("~b~MD: ~s~Juggernaut",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_JUGGERNAUT) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_NEVER_WANTED);
|
||||
|
||||
//Alert_Two("~b~MD: ~s~Never wanted by the police",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_NEVER_WANTED) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 7){//AddFunction_CB("~BLIP_52~ Health / Armour / Remove Armour"); //8 ALL PLAYERS / SELF = Default on enter submenu
|
||||
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(Player_PED == pPlayer)SET_CHAR_HEALTH(Player_PED,500);
|
||||
else GIVE_HEALTH_TO_CHAR(Player_PED);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~Healthpack given to: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ADD_ARMOUR_TO_CHAR(Player_PED,200);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~Armour given to: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ADD_ARMOUR_TO_CHAR(Player_PED,-100);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
Strcat(buffer, "~s~Armour removed from: "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
FIX_CAR(vehicle);
|
||||
SET_CAR_ENGINE_ON(vehicle,true,true);
|
||||
SET_VEHICLE_DIRT_LEVEL(vehicle, 0);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~y~"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
Strcat(buffer, "~s~ was fixed & washed"); //27 Characters
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
GET_CAR_CHAR_IS_USING(Player_PED, &vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(vehicle,&vehicle_id);
|
||||
if(!network_control(vehicle_id))return;
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
GET_CAR_SPEED(vehicle,&speed);
|
||||
}
|
||||
else{
|
||||
Alert(Error_NetPlayer_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
GET_CAR_HEADING(vehicle,&heading);
|
||||
SET_VEHICLE_QUATERNION(vehicle,0,0,0,0);
|
||||
SET_CAR_HEADING(vehicle,heading);
|
||||
SET_CAR_ON_GROUND_PROPERLY(vehicle);
|
||||
char * buffer[32]; //128 characters to play with
|
||||
Strcpy(buffer, "~b~MD: ~s~ "); //27 Characters
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! 47
|
||||
Strcat(buffer, "'s ~y~"); //27 Characters
|
||||
Strcat(buffer, VEHICLES_MODEL_NAME(vehicle));
|
||||
Strcat(buffer, "~s~ was set upright again"); //27 Characters
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer,true);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 8){//AddFunction_Value("Weapon Options",4); //7 Unlimmited Clip / Rapid Fire / Auto Aim / Give Weapons / Remove
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_INFINITE_AMMO);
|
||||
Alert_Two("~b~MD: ~s~Unlimited Clip (Yourself)",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_INFINITE_AMMO) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_RAPID_FIRE);
|
||||
Alert_Two("~b~MD: ~s~Rapid Fire (Yourself)",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_RAPID_FIRE) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_AUTO_AIM);
|
||||
Alert_Two("~b~MD: ~s~Auto Aim (Yourself)",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_AUTO_AIM) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(Player_PED,Episode);
|
||||
Alert_Two("~b~MD: ~s~Weapons given to", GET_PLAYER_NAME(Player_ID),true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
Alert_Two("~b~MD: ~s~Weapons removed from", GET_PLAYER_NAME(Player_ID),true);
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 9){//AddFunction_Value("Visibility",3); //9 Invisible (On Foot) / Invisible (On Foot+Vehicle) / Hide Blip(On Foot) / Hide Blip (On Foot + Vehicle)
|
||||
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
SET_CHAR_VISIBLE(pPlayer,!IS_CHAR_VISIBLE(pPlayer));
|
||||
Alert_Two("~b~MD: ~s~Visibility",IS_CHAR_VISIBLE(pPlayer) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Vehicle vehicle;
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
Alert_Abort(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
else{
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&vehicle);
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE);
|
||||
SET_CAR_VISIBLE(vehicle,GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE));
|
||||
Alert_Two("~b~MD: ~s~Vehicle Visibility",GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){ //Invisible Player + Car
|
||||
Vehicle vehicle;
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
Alert(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
else{
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&vehicle);
|
||||
SET_CHAR_VISIBLE(pPlayer,!IS_CHAR_VISIBLE(pPlayer));
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE,IS_CHAR_VISIBLE(pPlayer));
|
||||
SET_CAR_VISIBLE(vehicle,IS_CHAR_VISIBLE(pPlayer));
|
||||
Alert_Two("~b~MD: ~s~Vehicle + Player Visibility",(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE) && IS_CHAR_VISIBLE(pPlayer)) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP);
|
||||
if(!GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP)){
|
||||
SET_PLAYER_CONTROL(iPlayer,true);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
}
|
||||
Alert_Two("~b~MD: ~s~Ninja Mode",GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Vehicle vehicle;
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_REMOVE_BLIP,false);
|
||||
Alert(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
else{
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&vehicle);
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_REMOVE_BLIP);
|
||||
if(!GetBit(pPlayerOptionsBitSet,VEHICLE_OPTION_REMOVE_BLIP)){
|
||||
SET_PLAYER_CONTROL(iPlayer,true);
|
||||
if(!IS_CHAR_VISIBLE(pPlayer))SET_CHAR_VISIBLE(pPlayer,true);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer) || is_driving(pPlayer)){
|
||||
SET_CAR_VISIBLE(vehicle,true);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY,false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//!Add Helpers for this
|
||||
else if(SelectedItem == 10){//AddFunction_Value("Super Powers",3); //10 Super Punch / Super Punch / Super Jump / Force Field
|
||||
if(menu_item[SelectedItem].num_val == 1)ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_RUN);
|
||||
else if(menu_item[SelectedItem].num_val == 2)ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_JUMP);
|
||||
else if(menu_item[SelectedItem].num_val == 3)ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_PUNCH);
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
if(GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE))SetBit(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE,true);
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_FORCE_FIELD);
|
||||
Alert_Two("~b~MD: ~s~Player Inferno",GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO) ? PrintON : PrintOFF ,false);
|
||||
WAIT(1000);
|
||||
if(GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_FORCE_FIELD)) Alert("~b~MD: ~s~ Do not overuse this! Godmode was enabled",false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){//AddFunction_Value("Physics", 3); //11 / Drive Walk ON Water / Gravity / Slow Motion
|
||||
if(menu_item[SelectedItem].num_val == 1)TOGGLE_DRIVE_WALK_WATER_FOR_PLAYER(Player_ID);
|
||||
else if(menu_item[SelectedItem].num_val == 2)ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_GRAVITY);
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_SLOW_MO);
|
||||
SET_TIME_SCALE(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SLOW_MO) ? 0.3 : 1);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3){
|
||||
Detach_pPlayer_On_Coord();
|
||||
Alert("~b~MD: ~s~Spectate mode disabled for flymod!",false);
|
||||
}
|
||||
bool flymod = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD);
|
||||
if(flymod){
|
||||
if(DOES_CAM_EXIST(scriptedCam)){
|
||||
SET_CAM_ACTIVE(scriptedCam, false);
|
||||
SET_CAM_PROPAGATE(scriptedCam, false);
|
||||
ACTIVATE_SCRIPTED_CAMS(false, false);
|
||||
UNATTACH_CAM(scriptedCam);
|
||||
DESTROY_CAM(scriptedCam);
|
||||
while (DOES_CAM_EXIST(scriptedCam)) WAIT(0);
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
scriptedCam = 0;
|
||||
}
|
||||
FREEZE_CHAR_POSITION(pPlayer, false);
|
||||
}
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD);
|
||||
menu_item[SelectedItem].extra_val = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD);
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
ToggleBit(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO);
|
||||
menu_item[SelectedItem].extra_val = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO);
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(Player_PED, &x, &y, &z);
|
||||
ADD_EXPLOSION(x, y, z, EXPLOSION_SHIP_DESTROY, 10.0, true, false, 0.7f);
|
||||
}
|
||||
else if(SelectedItem == 15){
|
||||
int i;
|
||||
for(i = 0; i < 4; i++){
|
||||
GIVE_CASH_PICKUP_TO_CHAR(Player_PED, 99999999999);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
if(GetPlayerModel() != MODEL_PLAYER)change_player(MODEL_PLAYER);
|
||||
else change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_CHAR_HEALTH(pPlayer,500);
|
||||
ADD_ARMOUR_TO_CHAR(pPlayer,200);
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(pPlayer,Episode);
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 18) SET_PLAYER_COLOUR(Player_ID,menu_item[SelectedItem].num_val - 1);
|
||||
else {
|
||||
if (Player_ID == iPlayer)SET_PLAYER_COLOUR(Player_ID,iPlayer + 1);
|
||||
else{
|
||||
register int scanner;
|
||||
for(scanner = 0; scanner < MAX_PLAYERS; scanner++){
|
||||
if(players[scanner].id != Player_ID)continue;
|
||||
SET_PLAYER_COLOUR(Player_ID,players[scanner].id + 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 18){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
// if (Player_ID == iPlayer)SET_PLAYER_COLOUR(Player_ID,iPlayer + 1);
|
||||
}
|
||||
|
||||
}
|
||||
if(SelectedItem == 19){
|
||||
float mx,my,mz;
|
||||
if(PLAYER_HAS_CHAR(Player_ID)){
|
||||
GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
GET_CHAR_COORDINATES(Player_PED,&mx,&my,&mz);
|
||||
RESURRECT_NETWORK_PLAYER( Player_ID, mx,my,mz, 0 );
|
||||
SET_CHAR_HEALTH(pPlayer,300);
|
||||
}
|
||||
else{
|
||||
GET_CHAR_COORDINATES(pPlayer,&mx,&my,&mz);
|
||||
RESURRECT_NETWORK_PLAYER( Player_ID, mx,my,mz, 0 );
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 20)
|
||||
{
|
||||
SHUTDOWN_AND_LAUNCH_NETWORK_GAME(GET_CURRENT_EPISODE());
|
||||
}
|
||||
/*
|
||||
else if(SelectedItem == 20){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Attach_Player_Info = !Attach_Player_Info;
|
||||
if(!Attach_Player_Info){
|
||||
Player_INFO_ID1 = 99;
|
||||
Player_INFO_ID2 = 99;
|
||||
Player_INFO_ID3 = 99;
|
||||
}
|
||||
else Player_INFO_ID1 = iPlayer;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Player_INFO_ID1 = Player_ID;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Player_INFO_ID1 = 99;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Player_INFO_ID2 = Player_ID;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Player_INFO_ID2 = 99;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Player_INFO_ID3 = Player_ID;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Player_INFO_ID3 = 99;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){//Move
|
||||
Move_Player_Info = !Move_Player_Info;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){//Reset
|
||||
InfoDisplay_x = 0.4f;
|
||||
InfoDisplay_y = 0.1f;
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
//!Add to functions where it belongs
|
||||
void draw_number(char *gxtName, float x, float y, int val){
|
||||
DISPLAY_TEXT_WITH_NUMBER(x, y, gxtName, val);
|
||||
}
|
||||
|
||||
void draw_text(char *gxtName, float x, float y, char *val){
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(x, y, gxtName, val);
|
||||
}
|
||||
|
||||
|
||||
void MC_PlayerOptions_Loop(void){
|
||||
SET_GRAVITY_OFF(!GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_GRAVITY));
|
||||
if(Attach_Player_Info){
|
||||
//InfoDisplay_x = 0.4f;
|
||||
//InfoDisplay_y = 0.1f;
|
||||
|
||||
float Offset_X = 0.1250f; //Adjust column 2
|
||||
float Offset_X2 = 0.1000f;
|
||||
float Line_Height = 0.025f;
|
||||
//#define Gold 164,134,35
|
||||
#define ID_TextSize 0.1950f*0.85,0.3600f*0.85
|
||||
//#define ID_TextSize 0.1950f,0.3600f
|
||||
|
||||
Ped Player_INFO_PED1, Player_INFO_PED2, Player_INFO_PED3;
|
||||
uint PColor_R1,PColor_G1,PColor_B1,PColor_R2,PColor_G2,PColor_B2,PColor_R3,PColor_G3,PColor_B3;
|
||||
int ARMOR1,HEALTH1,VEHICLEID1,VEHICLEHEALTH1,VEHICLEMODEL1;
|
||||
int ARMOR2,HEALTH2,VEHICLEID2,VEHICLEHEALTH2,VEHICLEMODEL2;
|
||||
int ARMOR3,HEALTH3,VEHICLEID3,VEHICLEHEALTH3,VEHICLEMODEL3;
|
||||
|
||||
//DRAW_SPRITE(Background,InfoDisplay_x + 0.03, InfoDisplay_y + 0.0550f , 0.3000f, 0.175, 0, 0, 0, 255, 150);
|
||||
|
||||
float Player2_Offset,Player3_Offset;
|
||||
if(Player_INFO_ID2 != 99 )Player2_Offset = 0.1000 ;
|
||||
else Player2_Offset = 0;
|
||||
if(Player_INFO_ID3 != 99 )Player3_Offset = 0.1000 ;
|
||||
else Player3_Offset = 0;
|
||||
if(Player_INFO_ID3 != 99 && Player_INFO_ID2 == 99)Player3_Offset = 0.2000 ;
|
||||
|
||||
DRAW_CURVED_WINDOW(InfoDisplay_x - Offset_X2 - 0.01, InfoDisplay_y -(Line_Height*1.5), 0.2100f + Player2_Offset + Player3_Offset, 0.175, 100);
|
||||
|
||||
|
||||
|
||||
|
||||
Set_Up_Draw(0.1950f*0.75,0.3600f*0.75,Gold,255,0,0,0);
|
||||
SET_TEXT_FONT(Menu_Font);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x - Offset_X2, InfoDisplay_y - Line_Height, "STRING", "M D E X T E N D A N T I C H E A T P L A Y E R I N F O");
|
||||
|
||||
if(Player_INFO_ID1 != 99){
|
||||
if(PLAYER_HAS_CHAR(Player_INFO_ID1)){
|
||||
GET_PLAYER_CHAR(Player_INFO_ID1,&Player_INFO_PED1);
|
||||
if(DOES_CHAR_EXIST(Player_INFO_PED1)){
|
||||
GET_PLAYER_RGB_COLOUR(Player_INFO_ID1,&PColor_R1,&PColor_G1,&PColor_B1);
|
||||
GET_CHAR_ARMOUR(Player_INFO_PED1,&ARMOR1);
|
||||
GET_CHAR_HEALTH(Player_INFO_PED1,&HEALTH1);
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_INFO_PED1)){
|
||||
GET_CAR_CHAR_IS_USING(Player_INFO_PED1, &VEHICLEID1);
|
||||
GET_CAR_HEALTH(VEHICLEID1,&VEHICLEHEALTH1);//veh Health
|
||||
GET_CAR_MODEL(VEHICLEID1,&VEHICLEMODEL1);//veh model
|
||||
}
|
||||
}
|
||||
}
|
||||
else Player_INFO_ID1 = 99;
|
||||
}
|
||||
if(Player_INFO_ID2 != 99){
|
||||
if(PLAYER_HAS_CHAR(Player_INFO_ID2)){
|
||||
GET_PLAYER_CHAR(Player_INFO_ID2,&Player_INFO_PED2);
|
||||
if(DOES_CHAR_EXIST(Player_INFO_PED2)){
|
||||
GET_PLAYER_RGB_COLOUR(Player_INFO_ID2,&PColor_R2,&PColor_G2,&PColor_B2);
|
||||
GET_CHAR_ARMOUR(Player_INFO_PED2,&ARMOR2);
|
||||
GET_CHAR_HEALTH(Player_INFO_PED2,&HEALTH2);
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_INFO_PED2)){
|
||||
GET_CAR_CHAR_IS_USING(Player_INFO_PED2, &VEHICLEID2);
|
||||
GET_CAR_HEALTH(VEHICLEID2,&VEHICLEHEALTH2);//veh Health
|
||||
GET_CAR_MODEL(VEHICLEID2,&VEHICLEMODEL2);//veh model
|
||||
}
|
||||
}
|
||||
}
|
||||
else Player_INFO_ID2 = 99;
|
||||
}
|
||||
if(Player_INFO_ID3 != 99){
|
||||
if(PLAYER_HAS_CHAR(Player_INFO_ID3)){
|
||||
GET_PLAYER_CHAR(Player_INFO_ID3,&Player_INFO_PED3);
|
||||
if(DOES_CHAR_EXIST(Player_INFO_PED3)){
|
||||
GET_PLAYER_RGB_COLOUR(Player_INFO_ID3,&PColor_R3,&PColor_G3,&PColor_B3);
|
||||
GET_CHAR_ARMOUR(Player_INFO_PED3,&ARMOR3);
|
||||
GET_CHAR_HEALTH(Player_INFO_PED3,&HEALTH3);
|
||||
if(IS_CHAR_IN_ANY_CAR(Player_INFO_PED3)){
|
||||
GET_CAR_CHAR_IS_USING(Player_INFO_PED3, &VEHICLEID3);
|
||||
GET_CAR_HEALTH(VEHICLEID3,&VEHICLEHEALTH3);//veh Health
|
||||
GET_CAR_MODEL(VEHICLEID3,&VEHICLEMODEL3);//veh model
|
||||
}
|
||||
}
|
||||
}
|
||||
else Player_INFO_ID3 = 99;
|
||||
}
|
||||
//!Generally
|
||||
Set_Up_Draw(ID_TextSize,Gold,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x - Offset_X2, InfoDisplay_y + Line_Height, "STRING", "Health : ");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x - Offset_X2, InfoDisplay_y + Line_Height*2, "STRING", "Armour : ");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x - Offset_X2, InfoDisplay_y + Line_Height*3, "STRING", "V.Health : ");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x - Offset_X2, InfoDisplay_y + Line_Height*4, "STRING", "Vehicle : ");
|
||||
|
||||
//!The names & info
|
||||
if(Player_INFO_ID1 != 99){
|
||||
//!Name
|
||||
Set_Up_Draw(ID_TextSize,PColor_R1,PColor_G1,PColor_B1,255,0,0,0);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
SET_TEXT_CENTRE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x, InfoDisplay_y, "STRING", GET_PLAYER_NAME(Player_INFO_ID1));
|
||||
//int ARMOR1,HEALTH1,VEHICLEID1,VEHICLEHEALTH1,VEHICLEMODEL1;
|
||||
Set_Up_Draw(ID_TextSize,255, 255, 255,255,0,0,0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
draw_number("NUMBR", InfoDisplay_x , InfoDisplay_y + Line_Height,HEALTH1);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
draw_number("NUMBR", InfoDisplay_x , InfoDisplay_y + Line_Height*2,ARMOR1);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
draw_number("NUMBR", InfoDisplay_x , InfoDisplay_y + Line_Height*3,VEHICLEHEALTH1);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
if(COMPARE_STRING(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(VEHICLEMODEL1),"null")){
|
||||
draw_text("STRING", InfoDisplay_x , InfoDisplay_y + Line_Height*4,"ON FOOT");
|
||||
}
|
||||
else draw_text("PC_PD_NAMES", InfoDisplay_x , InfoDisplay_y + Line_Height*4,GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(VEHICLEMODEL1)));
|
||||
}
|
||||
if(Player_INFO_ID2 != 99){
|
||||
//!Name
|
||||
Set_Up_Draw(ID_TextSize,PColor_R2,PColor_G2,PColor_B2,255,0,0,0);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
SET_TEXT_CENTRE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x + Offset_X, InfoDisplay_y, "STRING", GET_PLAYER_NAME(Player_INFO_ID2));
|
||||
//int ARMOR1,HEALTH1,VEHICLEID1,VEHICLEHEALTH1,VEHICLEMODEL1;
|
||||
Set_Up_Draw(ID_TextSize,255, 255, 255,255,0,0,0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
draw_number("NUMBR", InfoDisplay_x + Offset_X, InfoDisplay_y + Line_Height,HEALTH2);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
draw_number("NUMBR", InfoDisplay_x + Offset_X , InfoDisplay_y + Line_Height*2,ARMOR2);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
draw_number("NUMBR", InfoDisplay_x + Offset_X , InfoDisplay_y + Line_Height*3,VEHICLEHEALTH2);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
if(COMPARE_STRING(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(VEHICLEMODEL1),"null")){
|
||||
draw_text("STRING", InfoDisplay_x , InfoDisplay_y + Line_Height*4,"ON FOOT");
|
||||
}
|
||||
else draw_text("PC_PD_NAMES", InfoDisplay_x + Offset_X, InfoDisplay_y + Line_Height*4,GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(VEHICLEMODEL2)));
|
||||
}
|
||||
if(Player_INFO_ID3 != 99){
|
||||
//!Name
|
||||
Set_Up_Draw(ID_TextSize,PColor_R3,PColor_G3,PColor_B3,255,0,0,0);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
SET_TEXT_CENTRE(1);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(InfoDisplay_x + (Offset_X*2), InfoDisplay_y, "STRING", GET_PLAYER_NAME(Player_INFO_ID3));
|
||||
//int ARMOR1,HEALTH1,VEHICLEID1,VEHICLEHEALTH1,VEHICLEMODEL1;
|
||||
Set_Up_Draw(ID_TextSize,255, 255, 255,255,0,0,0);
|
||||
SET_TEXT_CENTRE(1);
|
||||
draw_number("NUMBR", InfoDisplay_x + (Offset_X*2) , InfoDisplay_y + Line_Height,HEALTH3);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
draw_number("NUMBR", InfoDisplay_x + (Offset_X*2) , InfoDisplay_y + Line_Height*2,ARMOR3);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
draw_number("NUMBR", InfoDisplay_x + (Offset_X*2) , InfoDisplay_y + Line_Height*3,VEHICLEHEALTH3);
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
if(COMPARE_STRING(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(VEHICLEMODEL1),"null")){
|
||||
draw_text("STRING", InfoDisplay_x , InfoDisplay_y + Line_Height*4,"ON FOOT");
|
||||
}
|
||||
else draw_text("PC_PD_NAMES", InfoDisplay_x + (Offset_X*2), InfoDisplay_y + Line_Height*4,GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(VEHICLEMODEL3)));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
bool pPlayer_is_in_car = IS_CHAR_IN_ANY_CAR(pPlayer);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD) && !IS_PAUSE_MENU_ACTIVE() && GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) != 3){
|
||||
if(!DOES_CAM_EXIST(scriptedCam)){
|
||||
CREATE_CAM(14, &scriptedCam);
|
||||
SET_CAM_ACTIVE(scriptedCam, true);
|
||||
SET_CAM_PROPAGATE(scriptedCam, true);
|
||||
ACTIVATE_SCRIPTED_CAMS(true, true);
|
||||
scriptedCamPitch = 0.0;
|
||||
}
|
||||
Vehicle playerVehicle;
|
||||
Ped driver;
|
||||
int leftX, leftY, rightX, rightY;
|
||||
float x, y, z, heading;
|
||||
float moveTrig, moveSpeed;
|
||||
float flymodCamDistance, flymodCamOffsetX, flymodCamOffsetY, flymodCamOffsetZ, flymodCamOffsetTrig;
|
||||
FREEZE_CHAR_POSITION(pPlayer, true);
|
||||
ATTACH_CAM_TO_PED(scriptedCam, pPlayer);
|
||||
POINT_CAM_AT_PED(scriptedCam, pPlayer);
|
||||
if (IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
uint playerVehicleModel;
|
||||
Vector3 playerVehicleModelMinDims, playerVehicleModelMaxDims;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &playerVehicle);
|
||||
GET_CAR_MODEL(playerVehicle, &playerVehicleModel);
|
||||
GET_MODEL_DIMENSIONS(playerVehicleModel, &playerVehicleModelMinDims, &playerVehicleModelMaxDims);
|
||||
flymodCamDistance = 1.5 * (playerVehicleModelMaxDims.y - playerVehicleModelMinDims.y);
|
||||
GET_CAR_COORDINATES(playerVehicle, &x, &y, &z);
|
||||
GET_CAR_HEADING(playerVehicle, &heading);
|
||||
}
|
||||
else{
|
||||
GET_CHAR_COORDINATES_HEADING(pPlayer,&x,&y,&z,&heading);
|
||||
flymodCamDistance = 4.0;
|
||||
}
|
||||
GET_POSITION_OF_ANALOGUE_STICKS(0, &leftX, &leftY, &rightX, &rightY);
|
||||
heading = heading - (rightX * 0.035f);
|
||||
if (heading > 360.0f)heading -= 360.0f;
|
||||
if (heading < 0.0f) heading += 360.0f;
|
||||
scriptedCamPitch = ( IS_LOOK_INVERTED() ? (scriptedCamPitch + (0.035f * rightY)) : (scriptedCamPitch - (0.035f * rightY)) );
|
||||
if (scriptedCamPitch < -70.0)scriptedCamPitch = -70.0;
|
||||
if (scriptedCamPitch > 70.0)scriptedCamPitch = 70.0;
|
||||
|
||||
if (IS_BUTTON_JUST_PRESSED(0,BUTTON_FLYMOD_RESET_PITCH)) scriptedCamPitch = 0.0f;
|
||||
|
||||
moveSpeed = 1.0f;
|
||||
if (IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_FAST_BUTTON) && !IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_SLOW_BUTTON)) moveSpeed = 4.0f;
|
||||
if (IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_SLOW_BUTTON) && !IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_FAST_BUTTON)) moveSpeed = 0.25f;
|
||||
moveTrig = (leftY * 0.0133f) * COS(scriptedCamPitch);
|
||||
x = x + (moveSpeed * ((moveTrig * SIN(heading)) + (leftX * 0.0133f) * COS(heading)));
|
||||
y = y - (moveSpeed * ((moveTrig * COS(heading)) - (leftX * 0.0133f) * SIN(heading)));
|
||||
z = z - (moveSpeed * (((leftY * 0.0133f) * SIN(scriptedCamPitch)) + (GET_CONTROL_VALUE(0, 6) * 0.0025f) - (GET_CONTROL_VALUE(0, 5) * 0.0025f)));
|
||||
|
||||
if(pPlayer_is_in_car){
|
||||
GET_DRIVER_OF_CAR(playerVehicle, &driver);
|
||||
if(driver == pPlayer || !In_Network){
|
||||
SET_CAR_COORDINATES_NO_OFFSET(playerVehicle, x, y, z);
|
||||
SET_CAR_HEADING(playerVehicle, heading);
|
||||
}
|
||||
}
|
||||
else{
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, x, y, z);
|
||||
SET_CHAR_HEADING(pPlayer, heading);
|
||||
}
|
||||
//quaternion EulerToQuaternion(vector3 euler); //YAW, PITCH, ROLL
|
||||
|
||||
flymodCamOffsetTrig = (flymodCamDistance * COS(scriptedCamPitch - 18.0f));
|
||||
flymodCamOffsetX = flymodCamOffsetX + (flymodCamOffsetTrig * SIN(heading));
|
||||
flymodCamOffsetY = flymodCamOffsetY - (flymodCamOffsetTrig * COS(heading));
|
||||
flymodCamOffsetZ = flymodCamOffsetZ - (flymodCamDistance * SIN(scriptedCamPitch - 18.0f));
|
||||
|
||||
SET_CAM_ATTACH_OFFSET(scriptedCam, flymodCamOffsetX, flymodCamOffsetY, flymodCamOffsetZ); //last attempt = uncomment this and comment one above..
|
||||
Set_Up_Draw(MDVersion_Txt_Size, Gold, Header_a,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.754f, "STRING", "FLY-MOD OPTIONS");
|
||||
Set_Up_Draw(Info_Item_Text, 255, 255, 255, Header_a,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f,0.782f, "STRING", "DISABLE - Hold: ~PAD_LB~ + ~PAD_RB~ + ~PAD_LT~ + ~PAD_RT~");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.81f , "STRING", "Speed - Hold: ~PAD_LB~ - Slower, ~PAD_RB~ - Faster.");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.838f, "STRING", "Height - Hold: ~PAD_LT~ - Down, ~PAD_RT~ - Up.");
|
||||
|
||||
if(IS_BUTTON_PRESSED(0,BUTTON_R1) && IS_BUTTON_PRESSED(0,BUTTON_L1) && IS_BUTTON_PRESSED(0,BUTTON_R2) && IS_BUTTON_PRESSED(0,BUTTON_L2)){
|
||||
SET_CAM_ACTIVE(scriptedCam, false);
|
||||
SET_CAM_PROPAGATE(scriptedCam, false);
|
||||
ACTIVATE_SCRIPTED_CAMS(false, false);
|
||||
UNATTACH_CAM(scriptedCam);
|
||||
DESTROY_CAM(scriptedCam);
|
||||
while (DOES_CAM_EXIST(scriptedCam)) WAIT(0);
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
scriptedCam = 0;
|
||||
FREEZE_CHAR_POSITION(pPlayer, false);
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD, false);
|
||||
}
|
||||
}
|
||||
SET_CHAR_INVINCIBLE(pPlayer,GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
SET_PLAYER_NEVER_GETS_TIRED(iPlayer, GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
SET_PLAYER_FAST_RELOAD(iPlayer, GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
ENABLE_MAX_AMMO_CAP(!GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
SET_CHAR_NEVER_TARGETTED(pPlayer,GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
|
||||
DISABLE_PLAYER_LOCKON(iPlayer, !GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer, GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
ALLOW_LOCKON_TO_RANDOM_PEDS(iPlayer, GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
|
||||
/**Jugg Stuff**/
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_JUGGERNAUT)){
|
||||
uint armor,health;
|
||||
GET_CHAR_ARMOUR(pPlayer,&armor);
|
||||
GET_CHAR_HEALTH(pPlayer,&health);
|
||||
if(health < 500)SET_CHAR_HEALTH(pPlayer,500);
|
||||
if(armor < 200) ADD_ARMOUR_TO_CHAR(pPlayer,(200 - armor));
|
||||
}
|
||||
/**Ammo Stuff**/
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO) && IS_CHAR_SHOOTING(pPlayer)){
|
||||
uint weapon,ammo;
|
||||
GET_CURRENT_CHAR_WEAPON(pPlayer,&weapon);
|
||||
if(weapon != WEAPON_GRENADE && weapon != WEAPON_MOLOTOV){
|
||||
GET_MAX_AMMO_IN_CLIP(pPlayer,weapon,&ammo);
|
||||
SET_AMMO_IN_CLIP(pPlayer,weapon,ammo);
|
||||
}
|
||||
}
|
||||
/**Never Wanted**/
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_NEVER_WANTED)) CLEAR_WANTED_LEVEL(iPlayer);
|
||||
/**Super Powers**/
|
||||
if(!pPlayer_is_in_car){
|
||||
bool LB_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_LB);
|
||||
bool RB_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_RB);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_RUN)){
|
||||
if( (LB_IS_PRESSED || RB_IS_PRESSED) && IS_BUTTON_PRESSED(0,BUTTON_A))APPLY_FORCE_TO_PED(pPlayer,true,0.0, (LB_IS_PRESSED ? 100.0 : 10.0) ,0.0,0.0,0.0,0.0,true,true,true,true);
|
||||
}
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_JUMP)){
|
||||
if( (LB_IS_PRESSED || RB_IS_PRESSED) && IS_BUTTON_PRESSED(0,BUTTON_X))APPLY_FORCE_TO_PED(pPlayer,true,0.0, (LB_IS_PRESSED ? 1.2 : 0.0), (LB_IS_PRESSED ? 11.0 : 50.0),0.0,0.0,0.0,true,true,true,true);
|
||||
}
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_PUNCH)){
|
||||
if(LB_IS_PRESSED && IS_BUTTON_PRESSED(0,BUTTON_B)){
|
||||
int wep;
|
||||
GET_CURRENT_CHAR_WEAPON(pPlayer,&wep);
|
||||
if(wep == WEAPON_UNARMED){
|
||||
float punch_x,punch_y,punch_z;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(pPlayer, 0, 2, 0, &punch_x, &punch_y, &punch_z);
|
||||
ADD_EXPLOSION(punch_x, punch_y, punch_z, EXPLOSION_SHIP_DESTROY, 10, 0, 1, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/**Drive water Function --> Loop here or in network players ? //here.*/
|
||||
float x,y,z;
|
||||
int NetPlayer_ID,tmp;
|
||||
for(NetPlayer_ID = 0; NetPlayer_ID < MAX_PLAYERS; NetPlayer_ID++){
|
||||
if(!DOES_OBJECT_EXIST(drive_water[NetPlayer_ID])) continue;
|
||||
#ifdef Admin
|
||||
if(NetPlayer_ID == iPlayer && AdminCommandTick != 0) continue;
|
||||
#endif
|
||||
GET_PLAYER_CHAR(NetPlayer_ID,&tmp);
|
||||
if(DOES_CHAR_EXIST(tmp)){
|
||||
#ifdef Premium
|
||||
if(IS_CHAR_IN_ANY_CAR(tmp)){
|
||||
float speed;
|
||||
int tmp_veh;
|
||||
GET_CAR_CHAR_IS_USING(tmp,&tmp_veh);
|
||||
//GET_CAR_FORWARD_Y(tmp_veh,&speed); //no good, useless //doesn't take into account heading.
|
||||
GET_CHAR_SPEED(tmp,&speed); //mayaswell try not spam one type of native if possible (this is not used i dont think)
|
||||
int offset;
|
||||
if(speed > 18 && IS_CAR_UPRIGHT(tmp_veh) && !IS_BIG_VEHICLE(tmp_veh))offset = 18;
|
||||
else offset = 8;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(tmp,0,offset,0,&x,&y,&z); //char heading = exact same as vehicles
|
||||
SET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],x,y, IS_CHAR_IN_ANY_BOAT(tmp) ? -15.0 : -9.2);
|
||||
}
|
||||
else{
|
||||
GET_CHAR_COORDINATES(tmp,&x,&y,&z);
|
||||
float ox,oy;
|
||||
GET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],&ox,&oy,&z);
|
||||
float birdsEyeDistance;
|
||||
GET_DISTANCE_BETWEEN_COORDS_2D(x,y,ox,oy, &birdsEyeDistance);
|
||||
if(birdsEyeDistance > 16.25f) SET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],x,y,-9.2);
|
||||
}
|
||||
#else
|
||||
GET_CHAR_COORDINATES(tmp,&x,&y,&z);
|
||||
SET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],x,y, IS_CHAR_IN_ANY_BOAT(tmp) ? -15.0 : -9.2);
|
||||
#endif
|
||||
FREEZE_OBJECT_POSITION(drive_water[NetPlayer_ID],true); //required
|
||||
//SET_OBJECT_VISIBLE(drive_water[NetPlayer_ID],true); //nathan testing
|
||||
}
|
||||
else DELETE_OBJECT(&drive_water[NetPlayer_ID]);
|
||||
|
||||
//if(!In_Network) break; //cba making network a lil slower just for singleplayer, nobody cares for it. - Nathan
|
||||
}
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FORCE_FIELD))ADD_EXPLOSION(x,y,z,EXPLOSION_SHIP_DESTROY,10.0,false,true,0.0);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFERNO)) ADD_EXPLOSION(x,y,z,EXPLOSION_MOLOTOV,7.5,true,false,0.0);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP)){ //OPTIMISED but not tested
|
||||
if(!pPlayer_is_in_car){
|
||||
uint pos[4];
|
||||
GET_POSITION_OF_ANALOGUE_STICKS(0,&pos[0],&pos[1],&pos[2],&pos[3]);
|
||||
if(pos[0] == 0 && pos[1] == 0){
|
||||
if(!(IS_BUTTON_PRESSED(0,BUTTON_L) || IS_BUTTON_PRESSED(0,BUTTON_R))){
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT)){
|
||||
ADD_EXPLOSION(x,y,z,EXPLOSION_MOLOTOV,7.5,true,false,0.0);
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, true);
|
||||
SET_CAMERA_CONTROLS_DISABLED_WITH_PLAYER_CONTROLS(false);
|
||||
SET_CHAR_VISIBLE(pPlayer,GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
SET_PLAYER_CONTROL(iPlayer,GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
}
|
||||
}
|
||||
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_REMOVE_BLIP)){ //Fixed! - Devil
|
||||
int vehicle;
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&vehicle);
|
||||
if(IS_BUTTON_PRESSED(0,BUTTON_L) || IS_BUTTON_PRESSED(0,BUTTON_R)){
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, true);
|
||||
|
||||
}
|
||||
else{
|
||||
float ground,speed;
|
||||
GET_CHAR_SPEED(pPlayer,&speed);
|
||||
GET_GROUND_Z_FOR_3D_COORD(x,y,z,&ground);
|
||||
int height = (z - ground);
|
||||
if(speed < 0.08f && height < 3){
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT)){
|
||||
ADD_EXPLOSION(x,y,z,EXPLOSION_MOLOTOV,7.5,true,false,0.0);
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
FREEZE_CAR_POSITION(vehicle,!PLAYER_OPTION_FLAME_EFFECT);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY, !PLAYER_OPTION_FLAME_EFFECT);
|
||||
SET_CAMERA_CONTROLS_DISABLED_WITH_PLAYER_CONTROLS(!PLAYER_OPTION_FLAME_EFFECT);
|
||||
SET_PLAYER_CONTROL(iPlayer,GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
SET_CHAR_VISIBLE(pPlayer,GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
SET_CAR_VISIBLE(vehicle,GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
}
|
||||
}
|
||||
|
||||
if(Variations_Loop){
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,0, 1,1);
|
||||
}
|
||||
}
|
||||
486
Trident/MD_Contents/MDC_Player_Options.c(Prev)
Normal file
486
Trident/MD_Contents/MDC_Player_Options.c(Prev)
Normal file
@@ -0,0 +1,486 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
/* ######################### PLAYER OPTIONS SETUP & ACTION ############################*/
|
||||
|
||||
#pragma once
|
||||
|
||||
//Maybe add autospawn boat to this section - Player Protections
|
||||
|
||||
void MD_New_PlayerOptions_Setup(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
|
||||
MENU_SUB_HEADER = "Player Options";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ P L A Y E R O P T I O N S ~BLIP_94~"); //5
|
||||
|
||||
//!NeW Setup
|
||||
AddFunction_Value("Player Protection",3); //6 Godmode / Juggernaut / never wanted / ADD autospawn boat(water)
|
||||
AddFunction_Value_CB("Weapon Options",5); //7 Unlimmited Clip / Rapid Fire / Auto Aim / Give Weapons /Remove Weapons
|
||||
AddFunction_Value_CB("Health & Armour",3); //8 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction_Value("Visibility",5); //9 Invisible (On Foot) / Invisible (On Foot+Vehicle) / Hide Blip(On Foot) / Hide Blip (On Foot + Vehicle)
|
||||
AddFunction_Value("Super Powers",4); //10 Super Punch / Super Punch / Super Jump / Force Field
|
||||
AddFunction_Value("Physics", 3); //11 / Drive Walk ON Water / Gravity / Slow Motion
|
||||
AddBool("~BLIP_68~ Fly-mod ~PAD_LB~ slower / ~PAD_RB~ faster",Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD)); //12
|
||||
AddBool("~BLIP_52~ Inferno",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO)); //13 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction_CB("~BLIP_52~ Explode Player"); //14 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction_CB("~BLIP_52~ Spawn Money around player"); //15 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction("~BLIP_68~ Network Ghost Mod"); //16
|
||||
AddFunction_Value_CB("Set Player Colors (YOU = Host)",18); //17 ALL PLAYERS / SELF = Default on enter submenu
|
||||
AddFunction("~BLIP_68~ Reset Player");
|
||||
|
||||
item_highlighted = 6;
|
||||
//*/ //--> = 25 options on one page without the top 4 shortcuts = all together 34 options on ONE PAGE !!!
|
||||
return;
|
||||
}
|
||||
|
||||
void MD_New_PlayerOptions_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//! ITEMLINE 5 ******************Jumpover TITLE MENU********************//
|
||||
if(SelectedItem == 6){ //AddFunction_Value("Player Protection",2); //6 Godmode / Juggernaut / Never wanted
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Godmode",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_JUGGERNAUT);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Juggernaut",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_JUGGERNAUT) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_NEVER_WANTED);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Never wanted by the police",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_NEVER_WANTED) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 7){//AddFunction_Value("Weapon Options",4); //7 Unlimmited Clip / Rapid Fire / Auto Aim / Give Weapons / Remove
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_INFINITE_AMMO);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Unlimited Clip (Yourself)",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_INFINITE_AMMO) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_RAPID_FIRE);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Rapid Fire (Yourself)",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_RAPID_FIRE) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_AUTO_AIM);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Auto Aim (Yourself)",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_AUTO_AIM) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(Player_PED,Episode);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Weapons given to", GET_PLAYER_NAME(Player_ID),true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Weapons removed from", GET_PLAYER_NAME(Player_ID),true);
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 8){//AddFunction_CB("~BLIP_52~ Health / Armour / Remove Armour"); //8 ALL PLAYERS / SELF = Default on enter submenu
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(Player_PED == pPlayer)SET_CHAR_HEALTH(Player_PED,500);
|
||||
else GIVE_HEALTH_TO_CHAR(Player_PED);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Health given to", GET_PLAYER_NAME(Player_ID),true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ADD_ARMOUR_TO_CHAR(Player_PED,200);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Armour given to", GET_PLAYER_NAME(Player_ID),true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ADD_ARMOUR_TO_CHAR(Player_PED,-100);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Armour taken from", GET_PLAYER_NAME(Player_ID),true);
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 9){//AddFunction_Value("Visibility",3); //9 Invisible (On Foot) / Invisible (On Foot+Vehicle) / Hide Blip(On Foot) / Hide Blip (On Foot + Vehicle)
|
||||
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
SET_CHAR_VISIBLE(pPlayer,!IS_CHAR_VISIBLE(pPlayer));
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Visibility",IS_CHAR_VISIBLE(pPlayer) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Vehicle vehicle;
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
Alert_Abort(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
else{
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&vehicle);
|
||||
Switch_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE);
|
||||
SET_CAR_VISIBLE(vehicle,Get_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE));
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Vehicle Visibility",Get_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){ //Invisible Player + Car
|
||||
Vehicle vehicle;
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
Alert(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
else{
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&vehicle);
|
||||
SET_CHAR_VISIBLE(pPlayer,!IS_CHAR_VISIBLE(pPlayer));
|
||||
Set_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE,IS_CHAR_VISIBLE(pPlayer));
|
||||
SET_CAR_VISIBLE(vehicle,IS_CHAR_VISIBLE(pPlayer));
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Vehicle + Player Visibility",(Get_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE) && IS_CHAR_VISIBLE(pPlayer)) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP);
|
||||
if(!Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP)){
|
||||
SET_PLAYER_CONTROL(iPlayer,true);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
}
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Ninja Mode",Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Vehicle vehicle;
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
Alert(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
else{
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&vehicle);
|
||||
Switch_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_REMOVE_BLIP);
|
||||
if(!Get_Bool_Value(pPlayerOptionsBitSet,VEHICLE_OPTION_REMOVE_BLIP)){
|
||||
SET_PLAYER_CONTROL(iPlayer,true);
|
||||
if(!IS_CHAR_VISIBLE(pPlayer))SET_CHAR_VISIBLE(pPlayer,true);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer) || is_driving(pPlayer)){
|
||||
SET_CAR_VISIBLE(vehicle,true);
|
||||
Set_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY,false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
//!Add Helpers for this
|
||||
else if(SelectedItem == 10){//AddFunction_Value("Super Powers",3); //10 Super Punch / Super Punch / Super Jump / Force Field
|
||||
if(menu_item[SelectedItem].num_val == 1)Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_RUN);
|
||||
else if(menu_item[SelectedItem].num_val == 2)Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_JUMP);
|
||||
else if(menu_item[SelectedItem].num_val == 3)Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_PUNCH);
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE))Set_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE,true);
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_FORCE_FIELD);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Player Inferno",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO) ? PrintON : PrintOFF ,false);
|
||||
WAIT(1000);
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_FORCE_FIELD)) Alert("~COL_NET_4~MD: ~s~ Do not overuse this! Godmode was enabled",false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){//AddFunction_Value("Physics", 3); //11 / Drive Walk ON Water / Gravity / Slow Motion
|
||||
if(menu_item[SelectedItem].num_val == 1)TOGGLE_DRIVE_WALK_WATER_FOR_PLAYER(Player_ID);
|
||||
else if(menu_item[SelectedItem].num_val == 2)Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_GRAVITY);
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_SLOW_MO);
|
||||
SET_TIME_SCALE(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_SLOW_MO) ? 0.3 : 1);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3){
|
||||
Detach_pPlayer_On_Coord();
|
||||
Alert("~COL_NET_4~MD: ~s~Spectate mode disabled for flymod!",false);
|
||||
}
|
||||
bool flymod = Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD);
|
||||
if(flymod){
|
||||
if(DOES_CAM_EXIST(scriptedCam)){
|
||||
SET_CAM_ACTIVE(scriptedCam, false);
|
||||
SET_CAM_PROPAGATE(scriptedCam, false);
|
||||
ACTIVATE_SCRIPTED_CAMS(false, false);
|
||||
UNATTACH_CAM(scriptedCam);
|
||||
DESTROY_CAM(scriptedCam);
|
||||
while (DOES_CAM_EXIST(scriptedCam)) WAIT(0);
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
scriptedCam = 0;
|
||||
}
|
||||
FREEZE_CHAR_POSITION(pPlayer, false);
|
||||
}
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Flymod",Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
Switch_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO);
|
||||
Alert_Two("~COL_NET_4~MD: ~s~Player Inferno",Get_Bool_Value(pPlayerOptionsBitSet,PLAYER_OPTION_INFERNO) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(Player_PED, &x, &y, &z);
|
||||
ADD_EXPLOSION(x, y, z, EXPLOSION_SHIP_DESTROY, 10.0, true, false, 0.7f);
|
||||
}
|
||||
else if(SelectedItem == 15){
|
||||
int i;
|
||||
for(i = 0; i < 4; i++){
|
||||
GIVE_CASH_PICKUP_TO_CHAR(Player_PED, 99999999999);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
if(GetPlayerModel() != MODEL_PLAYER)change_player(MODEL_PLAYER);
|
||||
else change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_CHAR_HEALTH(pPlayer,500);
|
||||
ADD_ARMOUR_TO_CHAR(pPlayer,200);
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(pPlayer,Episode);
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 18) SET_PLAYER_COLOUR(Player_ID, (menu_item[SelectedItem].num_val - 1));
|
||||
else {
|
||||
if (Player_ID == iPlayer) SET_PLAYER_COLOUR(Player_ID, (iPlayer + 1));
|
||||
else{
|
||||
int scanner;
|
||||
for(scanner = 0; scanner < MAX_PLAYERS; scanner++){
|
||||
if(players[scanner].id != Player_ID)continue;
|
||||
SET_PLAYER_COLOUR(Player_ID, players[scanner].id);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 18){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void MC_PlayerOptions_Loop(void){
|
||||
/**Invincibility Stuff**/
|
||||
bool pPlayer_is_in_car = IS_CHAR_IN_ANY_CAR(pPlayer);
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD) && !IS_PAUSE_MENU_ACTIVE() && GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) != 3){
|
||||
if(!DOES_CAM_EXIST(scriptedCam)){
|
||||
CREATE_CAM(14, &scriptedCam);
|
||||
SET_CAM_ACTIVE(scriptedCam, true);
|
||||
SET_CAM_PROPAGATE(scriptedCam, true);
|
||||
ACTIVATE_SCRIPTED_CAMS(true, true);
|
||||
scriptedCamPitch = 0.0;
|
||||
}
|
||||
Vehicle playerVehicle;
|
||||
Ped driver;
|
||||
int leftX, leftY, rightX, rightY;
|
||||
float x, y, z, heading;
|
||||
float moveTrig, moveSpeed;
|
||||
float flymodCamDistance, flymodCamOffsetX, flymodCamOffsetY, flymodCamOffsetZ, flymodCamOffsetTrig;
|
||||
FREEZE_CHAR_POSITION(pPlayer, true);
|
||||
ATTACH_CAM_TO_PED(scriptedCam, pPlayer);
|
||||
POINT_CAM_AT_PED(scriptedCam, pPlayer);
|
||||
if (IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
uint playerVehicleModel;
|
||||
Vector3 playerVehicleModelMinDims, playerVehicleModelMaxDims;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &playerVehicle);
|
||||
GET_CAR_MODEL(playerVehicle, &playerVehicleModel);
|
||||
GET_MODEL_DIMENSIONS(playerVehicleModel, &playerVehicleModelMinDims, &playerVehicleModelMaxDims);
|
||||
flymodCamDistance = 1.5 * (playerVehicleModelMaxDims.y - playerVehicleModelMinDims.y);
|
||||
GET_CAR_COORDINATES(playerVehicle, &x, &y, &z);
|
||||
GET_CAR_HEADING(playerVehicle, &heading);
|
||||
}
|
||||
else{
|
||||
GET_CHAR_COORDINATES_HEADING(pPlayer,&x,&y,&z,&heading);
|
||||
flymodCamDistance = 4.0;
|
||||
}
|
||||
GET_POSITION_OF_ANALOGUE_STICKS(0, &leftX, &leftY, &rightX, &rightY);
|
||||
heading = heading - (rightX * 0.035f);
|
||||
if (heading > 360.0f)heading -= 360.0f;
|
||||
if (heading < 0.0f) heading += 360.0f;
|
||||
scriptedCamPitch = ( IS_LOOK_INVERTED() ? (scriptedCamPitch + (0.035f * rightY)) : (scriptedCamPitch - (0.035f * rightY)) );
|
||||
if (scriptedCamPitch < -70.0)scriptedCamPitch = -70.0;
|
||||
if (scriptedCamPitch > 70.0)scriptedCamPitch = 70.0;
|
||||
|
||||
if (IS_BUTTON_JUST_PRESSED(0,BUTTON_FLYMOD_RESET_PITCH)) scriptedCamPitch = 0.0f;
|
||||
|
||||
moveSpeed = 1.0f;
|
||||
if (IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_FAST_BUTTON) && !IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_SLOW_BUTTON)) moveSpeed = 4.0f;
|
||||
if (IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_SLOW_BUTTON) && !IS_BUTTON_PRESSED(0,BUTTON_FLYMOD_FAST_BUTTON)) moveSpeed = 0.25f;
|
||||
moveTrig = (leftY * 0.0133f) * COS(scriptedCamPitch);
|
||||
x = x + (moveSpeed * ((moveTrig * SIN(heading)) + (leftX * 0.0133f) * COS(heading)));
|
||||
y = y - (moveSpeed * ((moveTrig * COS(heading)) - (leftX * 0.0133f) * SIN(heading)));
|
||||
z = z - (moveSpeed * (((leftY * 0.0133f) * SIN(scriptedCamPitch)) + (GET_CONTROL_VALUE(0, 6) * 0.0025f) - (GET_CONTROL_VALUE(0, 5) * 0.0025f)));
|
||||
|
||||
if(pPlayer_is_in_car){
|
||||
GET_DRIVER_OF_CAR(playerVehicle, &driver);
|
||||
if(driver == pPlayer || !In_Network){
|
||||
SET_CAR_COORDINATES_NO_OFFSET(playerVehicle, x, y, z);
|
||||
SET_CAR_HEADING(playerVehicle, heading);
|
||||
}
|
||||
}
|
||||
else{
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, x, y, z);
|
||||
SET_CHAR_HEADING(pPlayer, heading);
|
||||
}
|
||||
flymodCamOffsetTrig = (flymodCamDistance * COS(scriptedCamPitch - 18.0f));
|
||||
flymodCamOffsetX = flymodCamOffsetX + (flymodCamOffsetTrig * SIN(heading));
|
||||
flymodCamOffsetY = flymodCamOffsetY - (flymodCamOffsetTrig * COS(heading));
|
||||
flymodCamOffsetZ = flymodCamOffsetZ - (flymodCamDistance * SIN(scriptedCamPitch - 18.0f));
|
||||
|
||||
SET_CAM_ATTACH_OFFSET(scriptedCam, flymodCamOffsetX, flymodCamOffsetY, flymodCamOffsetZ); //last attempt = uncomment this and comment one above..
|
||||
Set_Up_Draw(MDVersion_Txt_Size, Gold, Header_a,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.754f, "STRING", "FLY-MOD OPTIONS");
|
||||
Set_Up_Draw(Info_Item_Text, 255, 255, 255, Header_a,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f,0.782f, "STRING", "DISABLE - Hold: ~PAD_LB~ + ~PAD_RB~ + ~PAD_LT~ + ~PAD_RT~");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.81f , "STRING", "Speed - Hold: ~PAD_LB~ - Slower, ~PAD_RB~ - Faster.");
|
||||
USE_PREVIOUS_FONT_SETTINGS();
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.19f, 0.838f, "STRING", "Height - Hold: ~PAD_LT~ - Down, ~PAD_RT~ - Up.");
|
||||
|
||||
if(IS_BUTTON_PRESSED(0,BUTTON_R1) && IS_BUTTON_PRESSED(0,BUTTON_L1) && IS_BUTTON_PRESSED(0,BUTTON_R2) && IS_BUTTON_PRESSED(0,BUTTON_L2)){
|
||||
SET_CAM_ACTIVE(scriptedCam, false);
|
||||
SET_CAM_PROPAGATE(scriptedCam, false);
|
||||
ACTIVATE_SCRIPTED_CAMS(false, false);
|
||||
UNATTACH_CAM(scriptedCam);
|
||||
DESTROY_CAM(scriptedCam);
|
||||
while (DOES_CAM_EXIST(scriptedCam)) WAIT(0);
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
scriptedCam = 0;
|
||||
FREEZE_CHAR_POSITION(pPlayer, false);
|
||||
Set_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD, false);
|
||||
}
|
||||
}
|
||||
SET_CHAR_INVINCIBLE(pPlayer,Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
SET_PLAYER_NEVER_GETS_TIRED(iPlayer, Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
SET_PLAYER_FAST_RELOAD(iPlayer, Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
ENABLE_MAX_AMMO_CAP(!Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
SET_CHAR_NEVER_TARGETTED(pPlayer,Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE));
|
||||
|
||||
DISABLE_PLAYER_LOCKON(iPlayer, !Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer, Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
ALLOW_LOCKON_TO_RANDOM_PEDS(iPlayer, Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
|
||||
/**Jugg Stuff**/
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_JUGGERNAUT)){
|
||||
uint armor,health;
|
||||
GET_CHAR_ARMOUR(pPlayer,&armor);
|
||||
GET_CHAR_HEALTH(pPlayer,&health);
|
||||
if(health < 500)SET_CHAR_HEALTH(pPlayer,500);
|
||||
if(armor < 200) ADD_ARMOUR_TO_CHAR(pPlayer,(200 - armor));
|
||||
}
|
||||
/**Ammo Stuff**/
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO) && IS_CHAR_SHOOTING(pPlayer)){
|
||||
uint weapon,ammo;
|
||||
GET_CURRENT_CHAR_WEAPON(pPlayer,&weapon);
|
||||
if(weapon != WEAPON_GRENADE && weapon != WEAPON_MOLOTOV){
|
||||
GET_MAX_AMMO_IN_CLIP(pPlayer,weapon,&ammo);
|
||||
SET_AMMO_IN_CLIP(pPlayer,weapon,ammo);
|
||||
}
|
||||
}
|
||||
/**Never Wanted**/
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_NEVER_WANTED)) CLEAR_WANTED_LEVEL(iPlayer);
|
||||
/**Super Powers**/
|
||||
if(!pPlayer_is_in_car){
|
||||
bool LB_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_LB);
|
||||
bool RB_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_RB);
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_RUN)){
|
||||
if( (LB_IS_PRESSED || RB_IS_PRESSED) && IS_BUTTON_PRESSED(0,BUTTON_A))APPLY_FORCE_TO_PED(pPlayer,true,0.0, (LB_IS_PRESSED ? 100.0 : 10.0) ,0.0,0.0,0.0,0.0,true,true,true,true);
|
||||
}
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_JUMP)){
|
||||
if( (LB_IS_PRESSED || RB_IS_PRESSED) && IS_BUTTON_PRESSED(0,BUTTON_X))APPLY_FORCE_TO_PED(pPlayer,true,0.0, (LB_IS_PRESSED ? 1.2 : 0.0), (LB_IS_PRESSED ? 11.0 : 50.0),0.0,0.0,0.0,true,true,true,true);
|
||||
}
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_SUPER_PUNCH)){
|
||||
if(LB_IS_PRESSED && IS_BUTTON_PRESSED(0,BUTTON_B)){
|
||||
int wep;
|
||||
GET_CURRENT_CHAR_WEAPON(pPlayer,&wep);
|
||||
if(wep == WEAPON_UNARMED){
|
||||
float punch_x,punch_y,punch_z;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(pPlayer, 0, 2, 0, &punch_x, &punch_y, &punch_z);
|
||||
ADD_EXPLOSION(punch_x, punch_y, punch_z, EXPLOSION_SHIP_DESTROY, 10, 0, 1, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
/**Drive water Function --> Loop here or in network players ? //here.*/
|
||||
float x,y,z;
|
||||
int NetPlayer_ID,tmp;
|
||||
for(NetPlayer_ID = 0; NetPlayer_ID < MAX_PLAYERS; NetPlayer_ID++){
|
||||
if(!DOES_OBJECT_EXIST(drive_water[NetPlayer_ID])) continue;
|
||||
#ifdef Admin
|
||||
if(NetPlayer_ID == iPlayer && AdminCommandTick != 0) continue;
|
||||
#endif
|
||||
GET_PLAYER_CHAR(NetPlayer_ID,&tmp);
|
||||
if(DOES_CHAR_EXIST(tmp)){
|
||||
#ifdef Premium
|
||||
if(IS_CHAR_IN_ANY_CAR(tmp)){
|
||||
float speed;
|
||||
int tmp_veh;
|
||||
GET_CAR_CHAR_IS_USING(tmp,&tmp_veh);
|
||||
//GET_CAR_FORWARD_Y(tmp_veh,&speed); //no good, useless //doesn't take into account heading.
|
||||
GET_CHAR_SPEED(tmp,&speed); //mayaswell try not spam one type of native if possible (this is not used i dont think)
|
||||
int offset;
|
||||
if(speed > 18 && IS_CAR_UPRIGHT(tmp_veh) && !IS_BIG_VEHICLE(tmp_veh))offset = 18;
|
||||
else offset = 8;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(tmp,0,offset,0,&x,&y,&z); //char heading = exact same as vehicles
|
||||
SET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],x,y, IS_CHAR_IN_ANY_BOAT(tmp) ? -15.0 : -9.2);
|
||||
}
|
||||
else{
|
||||
GET_CHAR_COORDINATES(tmp,&x,&y,&z);
|
||||
float ox,oy;
|
||||
GET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],&ox,&oy,&z);
|
||||
float birdsEyeDistance;
|
||||
GET_DISTANCE_BETWEEN_COORDS_2D(x,y,ox,oy, &birdsEyeDistance);
|
||||
if(birdsEyeDistance > 16.25f) SET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],x,y,-9.2);
|
||||
}
|
||||
#else
|
||||
GET_CHAR_COORDINATES(tmp,&x,&y,&z);
|
||||
SET_OBJECT_COORDINATES(drive_water[NetPlayer_ID],x,y, IS_CHAR_IN_ANY_BOAT(tmp) ? -15.0 : -9.2);
|
||||
#endif
|
||||
FREEZE_OBJECT_POSITION(drive_water[NetPlayer_ID],true); //required
|
||||
//SET_OBJECT_VISIBLE(drive_water[NetPlayer_ID],true); //nathan testing
|
||||
}
|
||||
else DELETE_OBJECT(&drive_water[NetPlayer_ID]);
|
||||
|
||||
//if(!In_Network) break; //cba making network a lil slower just for singleplayer, nobody cares for it. - Nathan
|
||||
}
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FORCE_FIELD))ADD_EXPLOSION(x,y,z,EXPLOSION_SHIP_DESTROY,10.0,false,true,0.0);
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_INFERNO)) ADD_EXPLOSION(x,y,z,EXPLOSION_MOLOTOV,7.5,true,false,0.0);
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP)){ //OPTIMISED but not tested
|
||||
if(!pPlayer_is_in_car){
|
||||
uint pos[4];
|
||||
GET_POSITION_OF_ANALOGUE_STICKS(0,&pos[0],&pos[1],&pos[2],&pos[3]);
|
||||
if(pos[0] == 0 && pos[1] == 0){
|
||||
if(!(IS_BUTTON_PRESSED(0,BUTTON_L) || IS_BUTTON_PRESSED(0,BUTTON_R))){
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT)){
|
||||
ADD_EXPLOSION(x,y,z,EXPLOSION_MOLOTOV,7.5,true,false,0.0);
|
||||
Set_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else Set_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, true);
|
||||
SET_CAMERA_CONTROLS_DISABLED_WITH_PLAYER_CONTROLS(false);
|
||||
SET_CHAR_VISIBLE(pPlayer,Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
SET_PLAYER_CONTROL(iPlayer,Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
}
|
||||
}
|
||||
if(Get_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_REMOVE_BLIP)){ //NOT TESTED BUT OPTIMISED - Nathan
|
||||
if(pPlayer_is_in_car){
|
||||
if(!IS_BUTTON_PRESSED(0,BUTTON_L) && !IS_BUTTON_PRESSED(0,BUTTON_R)){
|
||||
Set_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY, false);
|
||||
float ground,speed;
|
||||
GET_CHAR_SPEED(pPlayer,&speed);
|
||||
GET_GROUND_Z_FOR_3D_COORD(x,y,z,&ground);
|
||||
int height = (z - ground);
|
||||
if(speed < 0.08f && height < 3){
|
||||
if(Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT)){
|
||||
ADD_EXPLOSION(x,y,z,EXPLOSION_MOLOTOV,7.5,true,false,0.0);
|
||||
Set_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else Set_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT, true);
|
||||
SET_CAMERA_CONTROLS_DISABLED_WITH_PLAYER_CONTROLS(false); //doesn't have to be true does it?
|
||||
SET_PLAYER_CONTROL(iPlayer,Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
SET_CHAR_VISIBLE(pPlayer,Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
int vehicle;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &vehicle);
|
||||
SET_CAR_VISIBLE(vehicle,Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
Set_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE, !Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
Set_Bool_Value(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY, !Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
FREEZE_CAR_POSITION(vehicle,!Get_Bool_Value(pPlayerOptionsBitSet, PLAYER_OPTION_FLAME_EFFECT));
|
||||
}
|
||||
}
|
||||
if(Variations_Loop){
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
SET_CHAR_COMPONENT_VARIATION(pPlayer,0, 1,1);
|
||||
}
|
||||
}
|
||||
439
Trident/MD_Contents/MDC_Premium_Main_Options.c
Normal file
439
Trident/MD_Contents/MDC_Premium_Main_Options.c
Normal file
@@ -0,0 +1,439 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
void MC_Premium_Main_Setup(void){ //submenu from this
|
||||
|
||||
MENU_SUB_HEADER = "Premium Options";
|
||||
AddFunction_Value("~BLIP_52~ Enter Twilight Zone",3); //1
|
||||
menu_item[1].num_val = (Episode + 1); //yes this should be correct, auto select current episode by default - Nathan (strings don't take 0 as devil is dumb)
|
||||
Add_JumpOver("~BLIP_94~ MD Premium O p t i o n s ~BLIP_94~"); //2 >>JUMPOVER
|
||||
AddFunction("~BLIP_52~ ~y~Exit GhostMode / ~COL_NET_10~Show Yourself"); //3
|
||||
AddBool("~BLIP_68~ Players List On Screen",PlayerList); //4
|
||||
AddFunction("~BLIP_68~ Scan for Ghosts (HOLY/SNG)"); //5
|
||||
AddFunction("~BLIP_68~ Ghost Destroyer (SNG)"); //6
|
||||
AddFunction("~BLIP_68~ Resurrect all Ghosts (SNG)"); //7
|
||||
AddBool("~BLIP_68~ Fake Freeze",FakeFreeze); // 8
|
||||
AddFunction("Get number of registered objects"); //9
|
||||
AddFunction("Get number of registered peds"); //10
|
||||
AddFunction("Get number of registered vehicles"); //11
|
||||
AddSubMenu("Blackscreen to ID (NEW) ~PAD_RIGHT~"); //12
|
||||
AddSubMenu("Invite ~COL_NET_4~System (NEW) ~PAD_RIGHT~"); // 13 --> this
|
||||
#ifdef SuperAdmin
|
||||
AddSubMenu("~COL_NET_3~SuperAdmin Options ~PAD_RIGHT~"); // 14
|
||||
#endif
|
||||
#ifdef Developer
|
||||
AddSubMenu("Development ~COL_NET_4~Options ~PAD_RIGHT~"); // 15 --> this
|
||||
#endif
|
||||
}
|
||||
|
||||
void MC_Premium_Main_Action(void)
|
||||
{
|
||||
float mx,my,mz,mh;
|
||||
if(SelectedItem == 1)
|
||||
{
|
||||
#ifndef Admin
|
||||
print("Admin only.");
|
||||
return;
|
||||
#endif
|
||||
if(Include_Self && LOCAL_PLAYER_IS_READY_TO_START_PLAYING()) LAUNCH_LOCAL_PLAYER_IN_NETWORK_GAME();
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_SHOW_ON_LEAVE)){
|
||||
GET_CHAR_COORDINATES(pPlayer,&mx,&my,&mz);
|
||||
GET_CHAR_HEADING(pPlayer,&mh);
|
||||
RESURRECT_NETWORK_PLAYER(iPlayer,mx,my,mz,mh);
|
||||
}
|
||||
Fix_Game_Before_Leaving();
|
||||
SHUTDOWN_AND_LAUNCH_NETWORK_GAME(menu_item[SelectedItem].num_val - 1);
|
||||
}
|
||||
//2 >>JUMPOVER
|
||||
else if(SelectedItem == 3){
|
||||
if (LOCAL_PLAYER_IS_READY_TO_START_PLAYING())LAUNCH_LOCAL_PLAYER_IN_NETWORK_GAME();
|
||||
Resurrect = true;
|
||||
Alert("~b~MD: ~s~Ghost mode disabled, others see you now.",false);
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
PlayerList = !PlayerList;
|
||||
menu_item[SelectedItem].extra_val = PlayerList;
|
||||
}
|
||||
if(SelectedItem == 5)
|
||||
{
|
||||
int i;
|
||||
char* buffer[32];
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Skip_For_Scans(i)) continue;
|
||||
#ifndef SuperAdmin
|
||||
if(Is_SuperAdmin(i)) continue;
|
||||
#endif
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
if(!PLAYER_HAS_CHAR(i))
|
||||
{
|
||||
Alert_Two("~COL_NET_6~Holy Ghost Identified: ~s~",GET_PLAYER_NAME(i),false);
|
||||
return;
|
||||
}
|
||||
if (PLAYER_HAS_CHAR(i) && !IS_NETWORK_PLAYER_ACTIVE(i)) Alert_Two("~COL_NET_2~Ghost Identified: ~s~",GET_PLAYER_NAME(i),false);
|
||||
else
|
||||
{
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
Strcat(buffer, "~s~ No ghosts were found."); //29 + 34 = 63
|
||||
Alert(buffer,false);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 6)
|
||||
{
|
||||
int i;
|
||||
char* buffer[32];
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Invalid_Player(i)) continue;
|
||||
if(Is_Developer(i)) continue;
|
||||
#ifndef SuperAdmin
|
||||
if(Is_Admin(i)) continue;
|
||||
#endif
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
if(PLAYER_HAS_CHAR(i) && !IS_NETWORK_PLAYER_ACTIVE(i))
|
||||
{
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(i,true);
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
Strcat(buffer, "~s~ Ghost Destroyed:");
|
||||
PLAYER_NAME_WITH_COLOUR(i, &buffer);
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
Strcat(buffer, "~s~ No ghosts found.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 7)
|
||||
{
|
||||
int i;
|
||||
char* buffer[32];
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(Skip_For_Scans(i)) continue;
|
||||
#ifndef SuperAdmin
|
||||
if(Is_Admin(i)) continue;
|
||||
#endif
|
||||
if(GET_PLAYER_ID() == i) continue;
|
||||
if(PLAYER_HAS_CHAR(i) && !IS_NETWORK_PLAYER_ACTIVE(i))
|
||||
{
|
||||
RESURRECT_NETWORK_PLAYER(i,0,0,0,true);
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
Strcat(buffer, "~s~ Ghost Resurrected:");
|
||||
PLAYER_NAME_WITH_COLOUR(i, &buffer);
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
Strcat(buffer, "~s~ No ghosts found.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
if(SelectedItem == 8)
|
||||
{
|
||||
FakeFreeze = !FakeFreeze;
|
||||
menu_item[SelectedItem].extra_val = FakeFreeze;
|
||||
if(FakeFreeze)
|
||||
{
|
||||
print("Other players will now think you froze!");
|
||||
PAUSE_GAME();
|
||||
}
|
||||
else UNPAUSE_GAME();
|
||||
}
|
||||
if(SelectedItem == 9)
|
||||
{
|
||||
printInt(GetNumberOfObjects());
|
||||
}
|
||||
if(SelectedItem == 10)
|
||||
{
|
||||
printInt(GetNumberOfPeds());
|
||||
}
|
||||
if(SelectedItem == 11)
|
||||
{
|
||||
printInt(GetNumberOfVehicles());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MC_Premium_Loop(void){ // ONLY WHEN NETWORK
|
||||
float mx,my,mz,mh;
|
||||
if(Resurrect && IS_CHAR_DEAD(pPlayer))
|
||||
{
|
||||
WAIT(1000);
|
||||
GET_CHAR_COORDINATES(pPlayer,&mx,&my,&mz);
|
||||
GET_CHAR_HEADING(pPlayer,&mh);
|
||||
RESURRECT_NETWORK_PLAYER(iPlayer,mx,my,(mz - 1.0f),mh);
|
||||
SET_CHAR_HEALTH(pPlayer,300);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void BlackscreenID_Setup (void)
|
||||
{
|
||||
MENU_SUB_HEADER = "Manual Blackscreen";
|
||||
print("~COL_NET_1~Do not abuse.");
|
||||
AddFunction("Orange");
|
||||
AddFunction("Purple");
|
||||
AddFunction("Grass Green");
|
||||
AddFunction("Red");
|
||||
AddFunction("Yellow");
|
||||
AddFunction("Light Blue");
|
||||
AddFunction("Dark Pink");
|
||||
AddFunction("Peach");
|
||||
AddFunction("Dark Green");
|
||||
AddFunction("Dark Blue");
|
||||
AddFunction("Pink");
|
||||
AddFunction("Light Light Blue");
|
||||
AddFunction("Shit Green");
|
||||
AddFunction("Light Green");
|
||||
AddFunction("Grey");
|
||||
AddFunction("Brown");
|
||||
AddFunction("Press ~PAD_A~ To Blackscreen");
|
||||
return;
|
||||
}
|
||||
|
||||
void BlackscreenID_Action (void)
|
||||
{
|
||||
if(SelectedItem == 1)
|
||||
{
|
||||
GhostID = SelectedItem - 1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if(SelectedItem == 2)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(SelectedItem == 3)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if(SelectedItem == 4)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 5)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 6)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(SelectedItem == 7)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 8)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 9)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 10)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
if(SelectedItem == 11)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(SelectedItem == 12)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
if(SelectedItem == 13)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if(SelectedItem == 14)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 15)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 16)
|
||||
{
|
||||
GhostID = SelectedItem -1;
|
||||
if(HAS_NETWORK_PLAYER_LEFT_GAME(GhostID) || Is_Whitelisted(GhostID))
|
||||
{
|
||||
print("~COL_NET_4~ Error - ~BLIP_6~ Invalid Player");
|
||||
return;
|
||||
}
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(GhostID,true);
|
||||
print("~COL_NET_4~ Blackscreened player");
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 17)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if(SelectedItem == 18)
|
||||
{
|
||||
return;
|
||||
}
|
||||
}
|
||||
383
Trident/MD_Contents/MDC_Rotation_Options.c
Normal file
383
Trident/MD_Contents/MDC_Rotation_Options.c
Normal file
@@ -0,0 +1,383 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
/**New Setup for rotation Engine - IMPLEMENTED**/
|
||||
void MD_Rotations_Setup(void){
|
||||
MENU_SUB_HEADER = "Rotation Engine";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD R O T A T I O N S E N G I N E ~BLIP_94~"); //5
|
||||
AddBool("~BLIP_68~ Clear Previous Rotations",renew_rotate); //6
|
||||
AddFunction_Value("Set Rotation Speed",5); //7
|
||||
AddFunction_Value("Set Rotation Distance",4); //8
|
||||
AddFunction_Value("Rotation Mode",3); //9
|
||||
AddFunction_Value("Adjust Rotation Height ",7); //10
|
||||
AddFunction("Detach Rotation"); //11
|
||||
AddFunction_Value_CB("Vehicle Rotations ",10); //12
|
||||
AddFunction_Value_CB("Emergency Rotations ",9); //13
|
||||
AddFunction_Value_CB("Truck Rotations ",10); //14
|
||||
AddFunction_Value_CB("Bike Rotations ",8); //15
|
||||
AddFunction_Value_CB("Boat Rotations ",9); //16
|
||||
AddFunction_Value_CB("Heli Rotations ",5); //17
|
||||
AddFunction_Value_CB("Pedestrian Rotations ",4); //18
|
||||
AddFunction_Value_CB("Object Rotations ",17); //19
|
||||
AddBool("Solidify Objects/Vehicles SET PREMIUM ONLY",Rot_Solidify); //20
|
||||
|
||||
menu_item[1].num_val = (GetBit(MD_Misc_OptionsBitSet, MD_MISC_AUTO_SPECTATE) ? 2 : 1);
|
||||
//Add_StringValue(1);
|
||||
return;
|
||||
}
|
||||
/**New Action for rotation Engine - IMPLEMENTED**/
|
||||
void MD_Rotations_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
if(SelectedItem == 6){
|
||||
renew_rotate = !renew_rotate;
|
||||
menu_item[SelectedItem].extra_val = renew_rotate;
|
||||
Alert_Two("~BLIP_76~ ~c~Clear Rotation before attaching new set", renew_rotate ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 7){ //Set Speed
|
||||
if(menu_item[SelectedItem].num_val == 1)Rotation_Speed = 0.01f;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rotation_Speed = 0.04f;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rotation_Speed = 0.08f;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rotation_Speed = 0.30f;
|
||||
else if(menu_item[SelectedItem].num_val == 5)Rotation_Speed = 0.0f;
|
||||
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
if(menu_item[SelectedItem].num_val == 1)Rotation_Distance = 3.00f;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rotation_Distance = 6.00f;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rotation_Distance = 15.00f;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rotation_Distance = 0.00f;
|
||||
}
|
||||
else if(SelectedItem == 9){
|
||||
if(menu_item[SelectedItem].num_val == 1){ //90°
|
||||
angletest1 = 0.0f;
|
||||
angletest2 = 3.1500f;
|
||||
angletest3 = 1.575f;
|
||||
angletest4 = 4.725f;
|
||||
angletest5 = 3.9375f;
|
||||
angletest6 = 0.7875f;
|
||||
angletest7 = 2.3625f;
|
||||
angletest8 = 5.5125f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){ //180°
|
||||
angletest1 = 1.575f;
|
||||
angletest2 = 4.725f;
|
||||
angletest3 = 3.1500f;
|
||||
angletest4 = 0.00f;
|
||||
angletest5 = 5.5125f;
|
||||
angletest6 = 2.3625f;
|
||||
angletest7 = 3.9375f;
|
||||
angletest8 = 0.7875f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){ //360°
|
||||
angletest1 = 4.725f;
|
||||
angletest2 = 1.575f;
|
||||
angletest3 = 0.00f;
|
||||
angletest4 = 3.150f;
|
||||
angletest5 = 2.3625f;
|
||||
angletest6 = 5.5125f;
|
||||
angletest7 = 0.7875f;
|
||||
angletest8 = 3.9375f;
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 10){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
Set_Rotation_Height = -1.5f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
Set_Rotation_Height = -1.0f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
Set_Rotation_Height = -0.5f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
Set_Rotation_Height = 0.0f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Set_Rotation_Height = 0.5f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Set_Rotation_Height = 1.0f;
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Set_Rotation_Height = 1.5f;
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 11){//Detach and disable ID protection
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_ROTATIONS_LOOP, false);
|
||||
int Rotation_Subject_ID;
|
||||
for(Rotation_Subject_ID = 0; Rotation_Subject_ID <= MAX_ROTATION_SUBJECTS -1; Rotation_Subject_ID++){
|
||||
if (DOES_VEHICLE_EXIST(Rotation_Subject[Rotation_Subject_ID]) && IS_CAR_ATTACHED(Rotation_Subject[Rotation_Subject_ID])){
|
||||
SET_CAR_COLLISION(Rotation_Subject[Rotation_Subject_ID], true);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
int Blocked_ID, Veh_Number;
|
||||
for( Veh_Number = 0; Veh_Number < 9; Veh_Number++){
|
||||
if(!DOES_VEHICLE_EXIST(Rotation_Subject[Veh_Number]))continue;
|
||||
GET_NETWORK_ID_FROM_VEHICLE(Rotation_Subject[Veh_Number], &Blocked_ID);
|
||||
SET_NETWORK_ID_CAN_MIGRATE(Blocked_ID, true);
|
||||
}
|
||||
*/
|
||||
if(DOES_OBJECT_EXIST(Rotation_Subject_Handle))DELETE_OBJECT(&Rotation_Subject_Handle);
|
||||
|
||||
//Block_Net_Control_Of_Entity(model,Rotation_Subject[id]); --> Make this turn false when detaching the cars
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
int Rot_Vehicle_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
if(menu_item[SelectedItem].num_val == 1)Rot_Vehicle_Model = MODEL_SULTAN;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rot_Vehicle_Model = MODEL_SULTANRS;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rot_Vehicle_Model = MODEL_TURISMO;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rot_Vehicle_Model = MODEL_COMET;
|
||||
else if(menu_item[SelectedItem].num_val == 5)Rot_Vehicle_Model = MODEL_INFERNUS;
|
||||
else if(menu_item[SelectedItem].num_val == 6)Rot_Vehicle_Model = MODEL_SENTINEL;
|
||||
else if(menu_item[SelectedItem].num_val == 7)Rot_Vehicle_Model = MODEL_TRASH;
|
||||
else if(menu_item[SelectedItem].num_val == 8)Rot_Vehicle_Model = MODEL_STRETCH;
|
||||
else if(menu_item[SelectedItem].num_val == 9)Rot_Vehicle_Model = MODEL_VOODOO;
|
||||
if(menu_item[SelectedItem].num_val >= 1 && menu_item[SelectedItem].num_val <= 9 )MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Vehicle_Model, 1.00f, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
else if(menu_item[SelectedItem].num_val == 10)clear_rotations();
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
int Rot_Vehicle_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
if(menu_item[SelectedItem].num_val == 1)Rot_Vehicle_Model = MODEL_AMBULANCE;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rot_Vehicle_Model = MODEL_FBI;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rot_Vehicle_Model = MODEL_NOOSE;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rot_Vehicle_Model = MODEL_POLICE;
|
||||
else if(menu_item[SelectedItem].num_val == 5)Rot_Vehicle_Model = MODEL_POLICE2;
|
||||
else if(menu_item[SelectedItem].num_val == 6)Rot_Vehicle_Model = MODEL_POLPATRIOT;
|
||||
else if(menu_item[SelectedItem].num_val == 7)Rot_Vehicle_Model = MODEL_PSTOCKADE;
|
||||
else if(menu_item[SelectedItem].num_val == 8)Rot_Vehicle_Model = MODEL_FIRETRUK;
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 9 )MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Vehicle_Model, 1.00f, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
else if(menu_item[SelectedItem].num_val == 9)clear_rotations();
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
int Rot_Vehicle_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
if(menu_item[SelectedItem].num_val == 1)Rot_Vehicle_Model = MODEL_ANNIHILATOR;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rot_Vehicle_Model = MODEL_MAVERICK;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rot_Vehicle_Model = MODEL_POLMAV;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rot_Vehicle_Model = MODEL_TOURMAV;
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 5 )MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Vehicle_Model, 1.00f, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
else if(menu_item[SelectedItem].num_val == 5)clear_rotations();
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
int Rot_Vehicle_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
if(menu_item[SelectedItem].num_val == 1)Rot_Vehicle_Model = MODEL_DINGHY;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rot_Vehicle_Model = MODEL_JETMAX;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rot_Vehicle_Model = MODEL_MARQUIS;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rot_Vehicle_Model = MODEL_PREDATOR;
|
||||
else if(menu_item[SelectedItem].num_val == 5)Rot_Vehicle_Model = MODEL_REEFER;
|
||||
else if(menu_item[SelectedItem].num_val == 6)Rot_Vehicle_Model = MODEL_SQUALO;
|
||||
else if(menu_item[SelectedItem].num_val == 7)Rot_Vehicle_Model = MODEL_TROPIC;
|
||||
else if(menu_item[SelectedItem].num_val == 8)Rot_Vehicle_Model = MODEL_TUGA;
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 9 )MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Vehicle_Model, 1.00f, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
else if(menu_item[SelectedItem].num_val == 9)clear_rotations();
|
||||
}
|
||||
else if(SelectedItem == 15){
|
||||
int Rot_Vehicle_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
if(menu_item[SelectedItem].num_val == 1)Rot_Vehicle_Model = MODEL_BOBBER;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rot_Vehicle_Model = MODEL_FAGGIO;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rot_Vehicle_Model = MODEL_HELLFURY;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rot_Vehicle_Model = MODEL_NRG900;
|
||||
else if(menu_item[SelectedItem].num_val == 5)Rot_Vehicle_Model = MODEL_PCJ;
|
||||
else if(menu_item[SelectedItem].num_val == 6)Rot_Vehicle_Model = MODEL_SANCHEZ;
|
||||
else if(menu_item[SelectedItem].num_val == 7)Rot_Vehicle_Model = MODEL_ZOMBIEB;
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 8 )MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Vehicle_Model, 1.00f, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
else if(menu_item[SelectedItem].num_val == 8)clear_rotations();
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
int Rot_Vehicle_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
if(menu_item[SelectedItem].num_val == 1)Rot_Vehicle_Model = MODEL_BIFF;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rot_Vehicle_Model = MODEL_BOXVILLE;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rot_Vehicle_Model = MODEL_FLATBED;
|
||||
else if(menu_item[SelectedItem].num_val == 4)Rot_Vehicle_Model = MODEL_MRTASTY;
|
||||
else if(menu_item[SelectedItem].num_val == 5)Rot_Vehicle_Model = MODEL_PHANTOM;
|
||||
else if(menu_item[SelectedItem].num_val == 6)Rot_Vehicle_Model = MODEL_RIPLEY;
|
||||
else if(menu_item[SelectedItem].num_val == 7)Rot_Vehicle_Model = MODEL_STEED;
|
||||
else if(menu_item[SelectedItem].num_val == 8)Rot_Vehicle_Model = MODEL_FEROCI2;
|
||||
else if(menu_item[SelectedItem].num_val == 9)Rot_Vehicle_Model = MODEL_FORKLIFT;
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 10 )MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Vehicle_Model, 1.00f, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
else if(menu_item[SelectedItem].num_val == 10)clear_rotations();
|
||||
}
|
||||
else if(SelectedItem == 18){ //Ped rotations
|
||||
Ped Rot_Ped_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
if(menu_item[SelectedItem].num_val == 1)Rot_Ped_Model = MODEL_F_Y_STRIPPERC01;
|
||||
else if(menu_item[SelectedItem].num_val == 2)Rot_Ped_Model = MODEL_M_Y_SWAT;
|
||||
else if(menu_item[SelectedItem].num_val == 3)Rot_Ped_Model = MODEL_M_Y_CLUBFIT;
|
||||
if(menu_item[SelectedItem].num_val >= 1 && menu_item[SelectedItem].num_val <= 3 )MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Ped_Model, 1.50f, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
else if(menu_item[SelectedItem].num_val == 4)clear_rotations();
|
||||
}
|
||||
else if(SelectedItem == 19){//Rotations
|
||||
Model Rot_Object_Model;
|
||||
if(renew_rotate)clear_rotations();
|
||||
|
||||
if(menu_item[SelectedItem].num_val == 1){//Blue neons 0xD20167BE
|
||||
Rot_Object_Model = 0xD20167BE;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, -0.20, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){//Green Flash 0x3BF5F0E5
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x3BF5F0E5;
|
||||
float Setheight = 3.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight, 00.00f, 00.00f, 00.00f, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){//Green Flash 0x3BF5F0E5
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x3BF5F0E5;
|
||||
float Setheight = -0.4013f;
|
||||
float Set_Angle_x = 4.200f;
|
||||
float Set_Angle_y = 00.00f;
|
||||
float Set_Angle_z = 00.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model,Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){//Purple Flash 0x6A299B19
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x6A299B19;
|
||||
float Setheight = 3.00f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
float Set_Angle_Bone = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, Set_Angle_Bone);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){//Purple Flash 0x6A299B19
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x6A299B19;
|
||||
float Setheight = -0.500f;
|
||||
float Set_Angle_x = 4.2000f;
|
||||
float Set_Angle_y = 0.0400f;
|
||||
float Set_Angle_z = 2.3625;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){//Flaming Barel 451384443
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 451384443;
|
||||
float Setheight = -0.500f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){//Flames 0xF329E245
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0xF329E245;
|
||||
float Setheight = -1.60f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){//stars
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x68D6190D;
|
||||
float Setheight = 10.00f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){//Light around 0x2A56D09E
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x2A56D09E;
|
||||
float Setheight = 3.00f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){//Disco Lights 0xEDF775CB
|
||||
if(GET_CURRENT_EPISODE() == 0){
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0xEDF775CB;
|
||||
float Setheight = 5.00f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else Alert("~BLIP_76~ ~COL_NET_4~GTA IV Original Only!",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){//Red Neons 0xCB26803D
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0xCB26803D;
|
||||
float Setheight = 0.80f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){//Sparks 0x55CA3AE6
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x55CA3AE6;
|
||||
float Setheight = 0.30f;
|
||||
float Set_Angle_x = 3.1099f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){//Shower 0x55CA3AE6
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x397C604F;
|
||||
float Setheight = -1.00f;
|
||||
float Set_Angle_x = 3.1599f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){//Smoke 0x55CA3AE6
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = 0x3427A4F4;
|
||||
float Setheight = -18.80f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 15){//Hamburger -625491925
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = -625491925;
|
||||
float Setheight = 3.00f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 16){//Hamburger 0x55CA3AE6
|
||||
if(renew_rotate)clear_rotations();
|
||||
Rot_Object_Model = -625491925;
|
||||
float Setheight = -0.20f;
|
||||
float Set_Angle_x = 0.00f;
|
||||
float Set_Angle_y = 0.00f;
|
||||
float Set_Angle_z = 0.00f;
|
||||
MC_Create_Player_Rotation (players[ChangeNetPlayer].id, Rot_Object_Model, Setheight,Set_Angle_x, Set_Angle_y, Set_Angle_z, 00.00f );
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 17){
|
||||
clear_rotations();
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 20){ // PREMIUM ONLY !!!!
|
||||
Rot_Solidify = !Rot_Solidify;
|
||||
menu_item[SelectedItem].extra_val = Rot_Solidify;
|
||||
if(!Rot_Solidify){
|
||||
Alert("~BLIP_76~ ~c~Solidify Vehicles ~COL_NET_4~OFF",false);
|
||||
}
|
||||
else Alert("~BLIP_76~ ~c~Solidify Vehicles ~COL_NET_3~ON",false);
|
||||
}
|
||||
}
|
||||
570
Trident/MD_Contents/MDC_Sco_Loading.c
Normal file
570
Trident/MD_Contents/MDC_Sco_Loading.c
Normal file
@@ -0,0 +1,570 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Sco_Modloader_Main_Setup(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Third Party Mods ~BLIP_94~";
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Recommended Modmenus"); //1
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Various Modmenus"); //2
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Weapon Mods"); //3
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Vehicle Weapon Mods");
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Handling & Character Mods"); //4
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Object & Car Spawners"); //5
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Special & Fun Mods"); //9
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ MapMod Loader"); //7
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Game Modes & MiniGames"); //8
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Sort On Developers ~PAD_RIGHT~"); //9
|
||||
Add_JumpOver("~BLIP_94~ S E T T I N G S ~BLIP_94~"); //10
|
||||
AddBool("~BLIP_68~ Display All missing Sco's You Can Add",GetBit(MD_Misc_OptionsBitSet, MD_MISC_SHOW_MISSING_SCO)); //11
|
||||
|
||||
}
|
||||
|
||||
void MC_Sort_Devs_Setup(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Developers Mods ~BLIP_94~";
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Buffeting "); //1
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ BouBouvirus "); //2
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Chr0m3 x MoDz "); //3
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ xD4I2K SIVIOKEx "); //4
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ DaxxPhenom "); //5
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ EmanuelU XMC "); //6
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Evil Blunt "); //7
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Hun "); //8
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ JDMAlex "); //9
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Jumper "); //10
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ K3R3DOR "); //11
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Motions97 "); //12
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ OhManMyBad "); //13
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ PSX-Colt "); //14
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ ReVoLuTiioNz "); //15
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Rodd1981 "); //16
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ SHoCKxWAVE "); //17
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ XF CH3WY "); //18
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Various Devs "); //19
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Sco_Modloader_Main_Action(void){
|
||||
if(SelectedItem == 12){
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_SHOW_MISSING_SCO);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet, MD_MISC_SHOW_MISSING_SCO);
|
||||
//Alert_Two("~BLIP_76~ ~c~Display all missing sco's", Menu_Show_Missing_Sco ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else Modmanager();
|
||||
}
|
||||
|
||||
void MC_Sco_Recommended(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Recommended Menus ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Buffetings Menu ~PAD_RB~ +~PAD_DPAD_DOWN~", "buffy_menu");
|
||||
if(IS_NETWORK_SESSION()){ // We dont want this shit to load in single player
|
||||
Load_Sco("~BLIP_68~ ChrOm3xMoDz V4.0 Menu ~PAD_DPAD_LEFT~+~PAD_X~", "chrome4");
|
||||
Load_Sco("~BLIP_68~ ChrOm3xMoDz V4.0 Network ~PAD_LB~+~PAD_X~", "player_menu");
|
||||
Load_Sco("~BLIP_68~ Chr0m3 V5 Network ~PAD_LB~+~PAD_X~", "player_menuGT");
|
||||
Load_Sco("~BLIP_68~ ChrOm3xMoDz V5.0 VIP ~PAD_DPAD_LEFT~+~PAD_X~", "chrome5GT");
|
||||
}
|
||||
Load_Sco("~BLIP_68~ xD4I2K SIVIOKEx's v4 ~PAD_DPAD_DOWN~+~PAD_A~", "dark_menu");
|
||||
Load_Sco("~BLIP_68~ EvilB Trainer V2 (All in One!) ~PAD_LB~ + ~PAD_DPAD_RIGHT~", "eb_trainer");
|
||||
Load_Sco("~BLIP_68~ EVILB Objects & Funny Cars ~PAD_LB~ + ~PAD_DPAD_DOWN~", "objfunveh");
|
||||
Load_Sco("~BLIP_68~ K3R3DOR Project368 ~PAD_RB~ + ~PAD_DPAD_RIGHT~", "keredor");
|
||||
Load_Sco("~BLIP_68~ K3R3DOR Project368v2 ~PAD_RB~ + ~PAD_DPAD_RIGHT~", "project368v2");
|
||||
Load_Sco("~BLIP_68~ Motions97 V3.0 Menu ~PAD_DPAD_LEFT~ + ~PAD_B~", "m97_menu");
|
||||
if(IS_NETWORK_SESSION()){// We dont want this shit to load in single player
|
||||
Load_Sco("~BLIP_68~ Motions97 V3.0 Network ~PAD_DPAD_RIGHT~ + ~PAD_B~", "motions_player");
|
||||
}
|
||||
Load_Sco("~BLIP_68~ R3B3LY0N Maxi Menu ~PAD_RB~ + ~PAD_DPAD_UP~", "rebelyon");
|
||||
Load_Sco("~BLIP_68~ RockStarkings V7.0 ~PAD_A~ + ~PAD_X~", "main10");
|
||||
Load_Sco("~BLIP_68~ SHoCKxWAVE Menu ~r~v10 ~PAD_DPAD_LEFT~ + ~PAD_A~", "shockxwave10");
|
||||
Load_Sco("~BLIP_68~ SHoCKxWAVE Menu ~r~v13 ~PAD_DPAD_LEFT~ + ~PAD_A~", "shockxwave13");
|
||||
Load_Sco("~BLIP_68~ ThreeSocks Trainer ~PAD_LB~ + ~PAD_DPAD_UP~", "3s_trainer");
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Sco_Weapons(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Weapon Mods ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ SHoCKxWAVE AimBot Weapon", "aimbot");
|
||||
Load_Sco("~BLIP_68~ The Godly Sniper ~PAD_LT~+~PAD_RT~", "weap1");
|
||||
Load_Sco("~BLIP_68~ Gravity Gun ~PAD_RSTICK_ALL~/~PAD_LSTICK_ALL~", "m97_grav");
|
||||
Load_Sco("~BLIP_68~ Rocket Desert Eagle ~PAD_LT~+~PAD_RT~~COL_NET_4~", "rocketdeagle");
|
||||
Load_Sco("~BLIP_68~ Taser Glock Motions97 ~PAD_LT~+~PAD_RT~", "m97_taser");
|
||||
Load_Sco("~BLIP_68~ Explosive Mp5/AK-47 ~PAD_LT~+~PAD_RT~", "drs01");
|
||||
Load_Sco("~BLIP_68~ Forcefield AK-47 ~PAD_LT~+~PAD_RT~", "buffy_force");
|
||||
Load_Sco("~BLIP_68~ Advanced Forcefield by Storm~PAD_X~+ ~PAD_DPAD_RIGHT~", "ForceFieldv25");
|
||||
Load_Sco("~BLIP_68~ Rockets Mp5 Buffeting ~PAD_LT~+~PAD_RT~", "buffy_mp5");
|
||||
Load_Sco("~BLIP_68~ Car Launcher Gun1 ~PAD_LT~+~PAD_A~/~PAD_B~/~PAD_X~/~PAD_Y~", "rob_cl");
|
||||
Load_Sco("~BLIP_68~ Car Launcher Gun2 ~PAD_RT~/~PAD_LT~+~PAD_DPAD_LEFT~/~PAD_DPAD_RIGHT~", "buffy_launcher");
|
||||
Load_Sco("~BLIP_68~ Car ~PAD_LT~ Manipulate~PAD_DPAD_LEFTRIGHT~Shoot ~PAD_A~", "rob_carmod");
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Sco_Veh_Weapons(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Vehicle Weapons ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Turret Airport Defence ~PAD_LSTICK_NONE~+~PAD_RT~", "Sam-turrets");
|
||||
Load_Sco("~BLIP_68~ Heli Bullets 4 Skilled Pilots ~PAD_DPAD_LEFT~", "rev_xml_heli");
|
||||
Load_Sco("~BLIP_68~ Flaming Heli Inferno ~PAD_DPAD_RIGHT~+~PAD_B~/~PAD_X~", "flameheli");//xbox-ps3 diff .sco files!
|
||||
Load_Sco("~BLIP_68~ Drop A Bomb On Them! ~PAD_RB~", "weap2");
|
||||
Load_Sco("~BLIP_68~ Explosive Rounds~COL_NET_4~ (TBoGT)", "weap3");
|
||||
Load_Sco("~BLIP_68~ Shoot Explosive Bomb ~PAD_A~", "weap10");
|
||||
Load_Sco("~BLIP_68~ Rockets RPG Car & Bike ~PAD_X~", "weap11");
|
||||
Load_Sco("~BLIP_68~ Rockets RPG Heli ~PAD_A~", "rob_rh");
|
||||
Load_Sco("~BLIP_68~ Shoot Explosive Vehicles ~PAD_X~", "weap12");
|
||||
Load_Sco("~BLIP_68~ Twisted Metal~COL_NET_4~ (TBOGT)", "weap13");
|
||||
Load_Sco("~BLIP_68~ Colt/Keredor Advanced HeliRounds", "AdvancedHeliRounds");
|
||||
return;
|
||||
|
||||
}
|
||||
void MC_Sco_Handling(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Handling Mods ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Analog Fly Mod ~PAD_X~+~PAD_LSTICK_ALL~", "hand1");
|
||||
Load_Sco("~BLIP_68~ Superman ~PAD_RB~+~PAD_DPAD_DOWN~/~PAD_LB~+~PAD_LSTICK_ALL~/", "eb_superman");
|
||||
Load_Sco("~BLIP_68~ Swimming Everywhere ~PAD_RB~+~PAD_DPAD_DOWN~", "hand3");
|
||||
Load_Sco("~BLIP_68~ Levitation Mode ~PAD_DPAD_RIGHT~/~PAD_A~", "k3r3d0r_levitation");
|
||||
Load_Sco("~BLIP_68~ Teleport GTA V Style ~PAD_LB~+~PAD_DPAD_DOWN~", "teleport");
|
||||
Load_Sco("~BLIP_68~ XxK1tty Suspension Menu ~PAD_RSTICK_NONE~/~PAD_DPAD_LEFTRIGHT~", "suspension");
|
||||
Load_Sco("~BLIP_68~ Hydraulics By XF CH3WY ~PAD_RB~+~PAD_A~", "XFHydraulics");
|
||||
Load_Sco("~BLIP_68~ Drive On Water (Speed)~PAD_DPAD_DOWN~+~PAD_RB~+~PAD_B~", "mybad_water");
|
||||
Load_Sco("~BLIP_68~ Walk & Drive On Water ~PAD_DPAD_RIGHT~+~PAD_X~", "hand5");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's Undercover Police ~PAD_DPAD_LEFT~+~PAD_RB~", "D_Undercover");
|
||||
Load_Sco("~BLIP_68~ Superhero ~PAD_DPAD_UP~ + ~COL_NET_4~F ~PAD_RT~ / M ~PAD_LT~", "model2");
|
||||
Load_Sco("~BLIP_68~ Teleport menu", "teleportmenu");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Object_Cars_Spawners(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Object & Car Spawners ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ Spawn Cars @Airport Helipads", "carspawnerold");
|
||||
Load_Sco("~BLIP_68~ Spawn Cars @Airport Helipads 2", "airportcarspawns3");
|
||||
Load_Sco("~BLIP_68~ Spawn Cars @Airport on Runway", "carspawnersport");
|
||||
Load_Sco("~BLIP_68~ Spawn Cars @Airport by Kushhs", "kushspawns");
|
||||
Load_Sco("~BLIP_68~ Spawn Police Cars @Airport", "policecarspawns");
|
||||
Load_Sco("~BLIP_68~ Brad Object Attach Menu ~PAD_LB~+~PAD_DPAD_UP~", "dev4");
|
||||
Load_Sco("~BLIP_68~ EvilB Trainer V2 (All in one!) ~PAD_LB~ + ~PAD_DPAD_RIGHT~", "eb_trainer");
|
||||
Load_Sco("~BLIP_68~ EVILB Objects & Funny Cars ~PAD_LB~ + ~PAD_DPAD_DOWN~", "objfunveh");
|
||||
Load_Sco("~BLIP_68~ Phantomised Objects V3 ~PAD_LB~+~PAD_DPAD_DOWN~", "dating_fred");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Map_Main(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Map Loader ~BLIP_94~";
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Airport LockDown ");
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Teleporter Maps ");
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Butcher Maps ");
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Race Tracks Maps ");
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Hideout Buildings ");
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Ramps @ Airport ");
|
||||
AddSubMenu("~BLIP_73~ ~PAD_RIGHT~ Extra Map Mod Slots ");
|
||||
Load_Sco("~BLIP_68~ EvilB Map Mod Loader ~PAD_RB~+~PAD_DPAD_RIGHT~", "evilbmap");
|
||||
Load_Sco("~BLIP_68~ CutScene Interiors V1.2", "fun1");
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Personal(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Personal & Auto-loads ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ AutoLoad 1", "aload1");
|
||||
Load_Sco("~BLIP_68~ AutoLoad 2", "aload2");
|
||||
Load_Sco("~BLIP_68~ AutoLoad 3", "aload3");
|
||||
Load_Sco("~BLIP_68~ AutoLoad 4", "aload4");
|
||||
Load_Sco("~BLIP_68~ AutoLoad 5", "aload5");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 1", "addonmenu1");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 2", "addonmenu2");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 3", "addonmenu3");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 4", "addonmenu4");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 5", "addonmenu5");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 6", "addonmenu6");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 7", "addonmenu7");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 8", "addonmenu8");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 9", "addonmenu9");
|
||||
Load_Sco("~BLIP_68~ Extra ModMenu 10", "addonmenu10");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_More_Menus(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ More ModMenu's ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ BouBouvirus V5 ~PAD_DPAD_DOWN~+~PAD_A~", "boubou5");
|
||||
Load_Sco("~BLIP_68~ DaxxPhenom V5 (~PAD_RB~+~PAD_DPAD_RIGHT~", "daxx5");
|
||||
Load_Sco("~BLIP_68~ Evades V3.0 Premium ~PAD_X~+~PAD_DPAD_DOWN~", "evade3GT");
|
||||
Load_Sco("~BLIP_68~ InTheSevens Mod Menu ~PAD_LB~ + ~PAD_RB~", "Inthe7");
|
||||
Load_Sco("~BLIP_68~ BoubouVirus V4 ~PAD_DPAD_DOWN~+~PAD_A~", "boubou4");
|
||||
Load_Sco("~BLIP_68~ ColdMurda Mod Menu ~PAD_A~+~PAD_RB~", "coldmurda");
|
||||
Load_Sco("~BLIP_68~ DaxxPhenom V4 BETA ~PAD_DPAD_LEFT~+~PAD_A~", "daxx4");
|
||||
Load_Sco("~BLIP_68~ Evades V3.0 Public ~PAD_X~+~PAD_DPAD_DOWN~", "evade");
|
||||
Load_Sco("~BLIP_68~ CarniVale MENU ~PAD_LSTICK_NONE~+~PAD_RSTICK_NONE~", "TrollFunCarEnglish");
|
||||
Load_Sco("~BLIP_68~ Radio Menu Los Santos ~PAD_BACK~", "ModRadioLosSantos");
|
||||
Load_Sco("~BLIP_68~ HAWK Fun Cars Menu ~PAD_LB~+~PAD_A~", "extra6");
|
||||
Load_Sco("~BLIP_68~ DRS Team Tuning V1 ~PAD_LB~+~PAD_DPAD_RIGHT~", "drs1");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Vehicle_Weapons(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Vehicle Weapons ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Turret Airport Defence ~PAD_LSTICK_NONE~+~PAD_RT~", "Sam-turrets");
|
||||
Load_Sco("~BLIP_68~ Heli Bullets 4 Skilled Pilots ~PAD_DPAD_LEFT~", "rev_xml_heli");
|
||||
Load_Sco("~BLIP_68~ Flaming Heli Inferno ~PAD_DPAD_RIGHT~+~PAD_B~/~PAD_X~", "flameheli");
|
||||
Load_Sco("~BLIP_68~ Drop A Bomb On Them! ~PAD_RB~", "weap2");
|
||||
Load_Sco("~BLIP_68~ Explosive Rounds~COL_NET_4~ (TBoGT)", "weap3");
|
||||
Load_Sco("~BLIP_68~ Shoot Explosive Bomb ~PAD_A~", "weap10");
|
||||
Load_Sco("~BLIP_68~ Rockets RPG Car & Bike ~PAD_X~", "weap11");
|
||||
Load_Sco("~BLIP_68~ Rockets RPG Heli ~PAD_A~", "rob_rh");
|
||||
Load_Sco("~BLIP_68~ Shoot Explosive Vehicles ~PAD_X~", "weap12");
|
||||
Load_Sco("~BLIP_68~ Twisted Metal~COL_NET_4~ (TBOGT)", "weap13");
|
||||
Load_Sco("~BLIP_68~ Colt/Keredor Advanced HeliRounds", "AdvancedHeliRounds");
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_SpecialFun_mods(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Special & Fun Mods ~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Voice Changer Menu ~PAD_RB~+~PAD_DPAD_LEFT~", "buffy_voice");
|
||||
Load_Sco("~BLIP_68~ CutScene Models Menu ~PAD_LB~+~PAD_A~","hun_cutscene");
|
||||
Load_Sco("~BLIP_68~ Get A Life! Teleport fun", "fun2");
|
||||
Load_Sco("~BLIP_68~ Have Sex With Female ~PAD_LB~+~PAD_DPAD_RIGHT~", "fun4");
|
||||
Load_Sco("~BLIP_68~ Have Sex With Male ~PAD_LB~+~PAD_DPAD_RIGHT~", "fun3");
|
||||
Load_Sco("~BLIP_68~ Magic Weapons V4.0", "fun7");
|
||||
Load_Sco("~BLIP_68~ K3R3DOR Stealth Bomber ~PAD_LSTICK_NONE~+~PAD_RT~", "stealthbomber");
|
||||
Load_Sco("~BLIP_68~ Liquid Rage Mod(keyboard)", "liq_rage");
|
||||
Load_Sco("~BLIP_68~ Liquid Rage Mod Controls", "liq_ragecontrols");
|
||||
Load_Sco("~BLIP_68~ HealthPack Protection Airport", "nohealth1");//No health packs first island
|
||||
Load_Sco("~BLIP_68~ Colts Personal Driver ~PAD_LB~+~PAD_B~", "colt");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's Chauffeur ~PAD_DPAD_RIGHT~ + ~PAD_B~","D_Chauffeur");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's Chauffeur Pilot ~PAD_DPAD_RIGHT~ + ~PAD_B~","D_Chauffeur_pilot");
|
||||
Load_Sco("~BLIP_68~ Devilish Robotics ~COL_NET_4~(Use In Vehicle)", "robots");//Robot
|
||||
Load_Sco("~BLIP_68~ Transformers ~COL_NET_4~~PAD_DPAD_DOWN~Change ~PAD_DPAD_RIGHT~Flame", "funny8");
|
||||
Load_Sco("~BLIP_68~ XxK1tty Gas-Flame Spawner", "gasspawner");
|
||||
Load_Sco("~BLIP_68~ OhMyBad Ramp Bus", "funny2");
|
||||
Load_Sco("~BLIP_68~ Rocket-truck w. HeatSeekers", "RPGtruck");
|
||||
Load_Sco("~BLIP_68~ Mugging Service by OhManMyBad", "mugging_service");
|
||||
Load_Sco("~BLIP_68~ Fighter Jet by XF CH3WY", "Fighter Jet");
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Sco_Minimaps(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Mini Games & Game Modes ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ GangWars V2.2", "mini1");
|
||||
Load_Sco("~BLIP_68~ HitMan Jobs", "mini2");
|
||||
Load_Sco("~BLIP_68~ Police RolePlay", "mini3");
|
||||
Load_Sco("~BLIP_68~ Police PerCecution", "police2");
|
||||
Load_Sco("~BLIP_68~ Police Squad by Disconnected", "kb_driveby");
|
||||
Load_Sco("~BLIP_68~ HighGuy Police Script", "HighGuy");
|
||||
Load_Sco("~BLIP_68~ HighGuy Police Script Controls", "Highguycontrols");
|
||||
Load_Sco("~BLIP_68~ Hun's Treasure Hunt V1", "mini4");
|
||||
Load_Sco("~BLIP_68~ Hun's Treasure Hunt V2", "mini5");
|
||||
Load_Sco("~BLIP_68~ Zombie MiniGame", "jdma_zombie");
|
||||
Load_Sco("~BLIP_68~ Deal Breaker II", "rodd_dbii");
|
||||
Load_Sco("~BLIP_68~ Let The Zombies Come!", "gmode2");
|
||||
Load_Sco("~BLIP_68~ Make Peds Go Crazy!", "gmode3");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Maps_Airport_Lockdown(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Airport LockDown ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ Airport LockDown Doors", "air");
|
||||
Load_Sco("~BLIP_68~ Airport LockDown Police Cars", "ml2");
|
||||
Load_Sco("~BLIP_68~ Airport LockDown Gates", "gates");
|
||||
Load_Sco("~BLIP_68~ Airport Complete LockDown", "airport");
|
||||
Load_Sco("~BLIP_68~ Broker Island LockDown Bridge", "crossings");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Maps_Teleporter(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Teleporter Maps ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects","map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ Airport Tele Green Cloud", "ml3");
|
||||
Load_Sco("~BLIP_68~ Airport Tele Sky High", "ml4");
|
||||
Load_Sco("~BLIP_68~ Airport Tele Sky Kick ", "skykick");
|
||||
Load_Sco("~BLIP_68~ Airport Tele City View", "ml5");
|
||||
Load_Sco("~BLIP_68~ Airport Tele Underwater", "ml6");
|
||||
Load_Sco("~BLIP_68~ City Tele FatCops 'N 3Blocks", "ml7");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Maps_Butchers(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Butcher Maps ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ Airport Water Butcher", "ml8");
|
||||
Load_Sco("~BLIP_68~ Airport Space Butcher", "ml9");
|
||||
Load_Sco("~BLIP_68~ Airport Butcher", "ml10");
|
||||
Load_Sco("~BLIP_68~ Airport Caddy Butcher", "caddybutcher");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Maps_Racetracks(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Race Track Maps ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ Airport Ocean Overpass", "oceanover");
|
||||
Load_Sco("~BLIP_68~ Airport Race Track", "ml13");
|
||||
Load_Sco("~BLIP_68~ Airport Drag Track", "ml14");
|
||||
Load_Sco("~BLIP_68~ Airport Rally Track", "ml15");
|
||||
Load_Sco("~BLIP_68~ Airport Playground", "ml17");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Maps_Buildings(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Fun & Buildings ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ The Chill Out Garage", "chilloutgarage");
|
||||
Load_Sco("~BLIP_68~ Ghetto Parking FightClub", "map21");
|
||||
Load_Sco("~BLIP_68~ Airport Base Hideout", "map13");
|
||||
Load_Sco("~BLIP_68~ Airport Sea GarageMap", "map12");
|
||||
Load_Sco("~BLIP_68~ Airport Heli Canon", "map14");
|
||||
Load_Sco("~BLIP_68~ Police Outpost", "Police Outpost");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Maps_Airport_Ramps(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Ramps @ Airport ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ Big Tower Jump", "airtowerjump");
|
||||
Load_Sco("~BLIP_68~ High Jump", "airhighjump");
|
||||
Load_Sco("~BLIP_68~ Jump Track", "airjumptrack");
|
||||
Load_Sco("~BLIP_68~ Airport Big Stunt Park", "Airportbigstuntpark");
|
||||
Load_Sco("~BLIP_68~ Airport Broker Jumps", "Airportbrokerjumps");
|
||||
Load_Sco("~BLIP_68~ Elite's Stunt Jumps", "stunt_jump");
|
||||
return;
|
||||
}
|
||||
void MC_Sco_Maps_Extra(void){
|
||||
MENU_HEADER = "Name : extramap1.sco - 10";
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Extra Map Mods ~BLIP_94~";
|
||||
Load_Sco("Clear All Objects", "map_mod_clean");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 1", "extramap1");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 2", "extramap2");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 3", "extramap3");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 4", "extramap4");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 5", "extramap5");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 6", "extramap6");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 7", "extramap7");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 8", "extramap8");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 9", "extramap9");
|
||||
Load_Sco("~BLIP_68~ Extra MapMod 10", "extramap10");
|
||||
return;
|
||||
}
|
||||
void MC_Buffeting(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Buffetings Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Buffetings Menu ~PAD_RB~ + ~PAD_DPAD_DOWN~","buffy_menu");
|
||||
Load_Sco("~BLIP_68~ Model Changer", "buffy_model");
|
||||
Load_Sco("~BLIP_68~ Voice Changer ~PAD_RB~ + ~PAD_DPAD_LEFT~", "buffy_voice");
|
||||
Load_Sco("~BLIP_68~ Gravity Gun", "buffy_gravity");
|
||||
Load_Sco("~BLIP_68~ Gravity M4", "buffy_grav_m4");
|
||||
Load_Sco("~BLIP_68~ Forcefield AK-47 ~PAD_LT~+~PAD_RT~", "buffy_force");
|
||||
Load_Sco("~BLIP_68~ Rockets Mp5 Buffeting ~PAD_LT~+~PAD_RT~", "buffy_mp5");
|
||||
Load_Sco("~BLIP_68~ Classic Super Punch", "buffy_punch");
|
||||
Load_Sco("~BLIP_68~ Car Launcher Gun 2 ~PAD_RT~/~PAD_LT~+~PAD_DPAD_LEFT~/~PAD_DPAD_RIGHT~", "buffy_launcher");
|
||||
Load_Sco("~BLIP_68~ Vehicle Missiles", "buffy_missile");
|
||||
Load_Sco("~BLIP_68~ FlatBed PickUp", "buffy_flatbed");
|
||||
return;
|
||||
}
|
||||
void MC_Boubou(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ BouBouvirus Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ BoubouVirus V3 ~PAD_DPAD_DOWN~+~PAD_A~", "boubou3");
|
||||
Load_Sco("~BLIP_68~ BoubouVirus V4 ~PAD_DPAD_DOWN~+~PAD_A~", "boubou4");
|
||||
Load_Sco("~BLIP_68~ BoubouVirus V5 ~PAD_DPAD_DOWN~+~PAD_A~", "boubou5");
|
||||
Load_Sco("~BLIP_68~ Boubou Funny Cars ~PAD_DPAD_DOWN~ + ~PAD_X~","bou_funny_car");
|
||||
return;
|
||||
}
|
||||
void MC_Chrome(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Chr0m3 x MoDz~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ ChrOm3xMoDz V4.0 Menu ~PAD_LB~+~PAD_X~", "chrome4");
|
||||
Load_Sco("~BLIP_68~ ChrOm3xMoDz V4.0 Network ~PAD_DPAD_LEFT~+~PAD_X~", "player_menu");
|
||||
Load_Sco("~BLIP_68~ Chr0m3 V5 Network ~PAD_LB~+~PAD_X~", "player_menuGT");
|
||||
Load_Sco("~BLIP_68~ ChrOm3xMoDz V5.0 VIP ~PAD_DPAD_LEFT~+~PAD_X~", "chrome5GT");
|
||||
Load_Sco("~BLIP_68~ Chr0m3 Ultimate Protection V4", "prot3");
|
||||
Load_Sco("~BLIP_68~ Ultimate Desert Eagle","cxm_deagle");
|
||||
Load_Sco("~BLIP_68~ Explosive Pistol","cxm_pistol");
|
||||
Load_Sco("~BLIP_68~ Undercover Police Mod","cxm_undercover");
|
||||
Load_Sco("~BLIP_68~ Police RolePlay 1.0","cxm_police");
|
||||
Load_Sco("~BLIP_68~ Realism Mod MP/H","cxm_realism_mph");
|
||||
Load_Sco("~BLIP_68~ Realism Mod K/H","cxm_realism");
|
||||
Load_Sco("~BLIP_68~ Radio On Foot","cxm_radio");
|
||||
Load_Sco("~BLIP_68~ Freeze Gun Menu","cxm_freeze");
|
||||
Load_Sco("~BLIP_68~ Group Hack","cxm_group");
|
||||
Load_Sco("~BLIP_68~ Group hack protection","cxm_gh_protection");
|
||||
Load_Sco("~BLIP_68~ Parachute Car 1.0","cxm_parachute");
|
||||
Load_Sco("~BLIP_68~ Pogo Stick","cxm_pogo");
|
||||
return;
|
||||
}
|
||||
void MC_Dark_Smokes(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ xD4I2K SIVIOKEx Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ xD4I2K's GH Protection", "darkprot");
|
||||
Load_Sco("~BLIP_68~ Walk & Drive On Water ~PAD_DPAD_RIGHT~+~PAD_X~", "hand5");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's Undercover Police ~PAD_DPAD_LEFT~+~PAD_RB~", "D_Undercover");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's v4 ~PAD_DPAD_DOWN~+~PAD_A~", "dark_menu");
|
||||
Load_Sco("~BLIP_68~ Car Launcher ~PAD_DPAD_LEFT~ + ~PAD_A~","dark_car_launcher");
|
||||
Load_Sco("~BLIP_68~ Network Ghost","dark_ghost");
|
||||
Load_Sco("~BLIP_68~ Vehicle Explosives","dark_exp_rounds");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's Chauffeur ~PAD_DPAD_RIGHT~ + ~PAD_B~","D_Chauffeur");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's Chauffeur Pilot ~PAD_DPAD_RIGHT~ + ~PAD_B~","D_Chauffeur_pilot");
|
||||
Load_Sco("~BLIP_68~ xD4I2K's HeatSeeker ~COL_NET_4~ Lock~PAD_LT~ Fire~PAD_A~","D_Heat_seekers");
|
||||
return;
|
||||
}
|
||||
void MC_Dax(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ DaxxPhenom Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ DaxxPhenom V4 ~PAD_DPAD_LEFT~+~PAD_A~", "daxx4");
|
||||
Load_Sco("~BLIP_68~ DaxxPhenom V5 ~PAD_DPAD_LEFT~+~PAD_A~", "daxx5");
|
||||
Load_Sco("~BLIP_68~ Throw Players Vehicles","dax_throw");
|
||||
Load_Sco("~BLIP_68~ Model Changer Anywhere","dax_model");
|
||||
Load_Sco("~BLIP_68~ Hell Mod","dax_hell");
|
||||
return;
|
||||
}
|
||||
void MC_Emanuel(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ EmanuelU Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ XMC 3 Menu ~PAD_LB~+~PAD_RB~", "xmc3");
|
||||
Load_Sco("~BLIP_68~ XMC 3.57 Menu ~PAD_LB~+~PAD_RB~", "xmc357");
|
||||
Load_Sco("~BLIP_68~ XMC 4 Menu ~PAD_LB~+~PAD_RB~", "xmc4");
|
||||
Load_Sco("~BLIP_68~ XMC 5 Menu ~PAD_LB~+~PAD_RB~", "xmc5");
|
||||
Load_Sco("~BLIP_68~ XMC 5.5 Menu ~PAD_LB~+~PAD_RB~", "xmc55");
|
||||
Load_Sco("~BLIP_68~ XMC 5.5 Admin Menu ~PAD_LB~+~PAD_RB~", "xmc55admin");
|
||||
Load_Sco("~BLIP_68~ XMC V5.5 ADMIN ~PAD_LB~+~PAD_RB~", "xmc55adminGT");
|
||||
Load_Sco("~BLIP_68~ XMC V6.0 ADMIN ~PAD_LB~+~PAD_RB~", "xmc6GT");
|
||||
Load_Sco("~BLIP_68~ XMC V6 Private ~PAD_LB~+~PAD_RB~", "xmc6private");
|
||||
Load_Sco("~BLIP_68~ XMC V6 Admin ~PAD_LB~+~PAD_RB~", "xmc6admin");
|
||||
Load_Sco("~BLIP_68~ Rocket Desert Eagle ~PAD_LT~+~PAD_RT~~COL_NET_4~", "rocketdeagle");
|
||||
Load_Sco("~BLIP_68~ Rockets RPG Car & Bike ~PAD_X~", "weap11");
|
||||
Load_Sco("~BLIP_68~ XMC Admin Menu ~PAD_LB~+~PAD_RB~", "xmcadmin");
|
||||
return;
|
||||
}
|
||||
void MC_EvilB(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Evil Blunt Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ EvilB Map Mod Loader ~PAD_RB~+~PAD_DPAD_RIGHT~", "evilbmap");
|
||||
Load_Sco("~BLIP_68~ EvilB Trainer V2 (All in one!) ~PAD_LB~ + ~PAD_DPAD_RIGHT~", "eb_trainer");
|
||||
Load_Sco("~BLIP_68~ EVILB Obj and Funny Cars ~PAD_LB~ + ~PAD_DPAD_DOWN~", "objfunveh");
|
||||
Load_Sco("~BLIP_68~ Superman ~PAD_RB~+~PAD_DPAD_DOWN~/~PAD_LB~+~PAD_LSTICK_ALL~/", "eb_superman");
|
||||
Load_Sco("~BLIP_68~ Swimming Everywhere ~PAD_RB~+~PAD_DPAD_DOWN~", "hand3");
|
||||
return;
|
||||
}
|
||||
void MC_Hun(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Hun Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ CutScene Models Menu ~PAD_LB~+~PAD_A~","hun_cutscene");
|
||||
Load_Sco("~BLIP_68~ CutScene Interiors V1.2", "fun1");
|
||||
Load_Sco("~BLIP_68~ GangWars V2.2", "mini1");
|
||||
Load_Sco("~BLIP_68~ Hitman Jobs", "mini2");
|
||||
Load_Sco("~BLIP_68~ Gang Wars 3.0","hun_gang");
|
||||
Load_Sco("~BLIP_68~ HitMan Jobs","hun_hitman");
|
||||
Load_Sco("~BLIP_68~ Let The Zombies Come!", "gmode2");
|
||||
Load_Sco("~BLIP_68~ Make Peds Go Crazy!", "gmode3");
|
||||
Load_Sco("~BLIP_68~ Ped-Riot Generator 2.0","hun_ped");
|
||||
Load_Sco("~BLIP_68~ Treasure Hunt","hun_treasure");
|
||||
Load_Sco("~BLIP_68~ Treasure Hunt 2","hun_treasure2");
|
||||
Load_Sco("~BLIP_68~ Zombie Island","hun_zombie");
|
||||
Load_Sco("~BLIP_68~ Hun's Treasure Hunt V1", "mini4");
|
||||
Load_Sco("~BLIP_68~ Hun's Treasure Hunt V2", "mini5");
|
||||
return;
|
||||
}
|
||||
void MC_JDMAlex(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ JDMAlex~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Explosive Pistol","jdma_pistol");
|
||||
Load_Sco("~BLIP_68~ Free Premium Mods ~PAD_RSTICK_ALL~ + ~PAD_DPAD_LEFT~","jdma_prem");
|
||||
Load_Sco("~BLIP_68~ Zombie MiniGame","jdma_zombie");
|
||||
Load_Sco("~BLIP_68~ Native Trainer v2 ~PAD_RSTICK_ALL~ + ~PAD_DPAD_LEFT~","jdma_trainer");
|
||||
Load_Sco("~BLIP_68~ AGM-114 HellFire","jdma_hellfire");
|
||||
Load_Sco("~BLIP_68~ FlyMod","flymod");
|
||||
Load_Sco("~BLIP_68~ Dead Eye","jdma_dead_eye");
|
||||
Load_Sco("~BLIP_68~ Heli Vehicle Pick Up","jdma_heli");
|
||||
Load_Sco("~BLIP_68~ JDMAlex Trainer v2 ~PAD_LB~ + ~PAD_DPAD_DOWN~","jdma_trainer_v2");
|
||||
return;
|
||||
}
|
||||
void MC_Jumper(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Jumper~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Object Launcher (new)","jumper_object_new");
|
||||
Load_Sco("~BLIP_68~ Object Launcher (old)","jumper_object_old");
|
||||
Load_Sco("~BLIP_68~ Throwing Cars","jumper_throwing");
|
||||
Load_Sco("~BLIP_68~ Pigeon Jumper","jumper_pigeon");
|
||||
Load_Sco("~BLIP_68~ Funny Car Builder","jumper_car_builder");
|
||||
Load_Sco("~BLIP_68~ Analog FlyMod","jumper_flymod");
|
||||
Load_Sco("~BLIP_68~ Drunk Mode","jumper_drunk");
|
||||
Load_Sco("~BLIP_68~ Eject Ped Drivers","jumper_eject_ped");
|
||||
Load_Sco("~BLIP_68~ Eject Self","jumper_eject");
|
||||
Load_Sco("~BLIP_68~ Custom Trophy","jumper_trophy");
|
||||
return;
|
||||
}
|
||||
void MC_Keredor(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ K3R3DOR Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Turret Airport Defence ~PAD_LSTICK_NONE~+~PAD_RT~", "Sam-turrets");
|
||||
Load_Sco("~BLIP_68~ K3R3DOR Stealth Bomber ~PAD_LSTICK_NONE~+~PAD_RT~", "stealthbomber");
|
||||
Load_Sco("~BLIP_68~ K3R3DOR Project368 ~PAD_RB~+~PAD_DPAD_RIGHT~", "keredor");
|
||||
Load_Sco("~BLIP_68~ K3R3DOR Project368v2 ~PAD_RB~+~PAD_DPAD_RIGHT~", "project368v2");
|
||||
Load_Sco("~BLIP_68~ Mod Menu v2 ~PAD_RSTICK_ALL~ + ~PAD_RB~","k3r3d0r_menu");
|
||||
Load_Sco("~BLIP_68~ SkyLift & TowTruck","k3r3d0r_skytow");
|
||||
Load_Sco("~BLIP_68~ Transformer mod","k3r3d0r_transformer");
|
||||
Load_Sco("~BLIP_68~ Levitation Mode ~PAD_DPAD_RIGHT~/~PAD_A~","k3r3d0r_levitation");
|
||||
Load_Sco("~BLIP_68~ Stalker Mode", "k3r3d0r_stalk");
|
||||
return;
|
||||
}
|
||||
void MC_Motions(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Motions97 Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Motions97 V3.0 Network Menu ~PAD_DPAD_RIGHT~+~PAD_B~", "motions_player");
|
||||
Load_Sco("~BLIP_68~ Motions97 V3.0 Menu ~PAD_DPAD_RIGHT~+~PAD_B~", "m97_menu");
|
||||
Load_Sco("~BLIP_68~ Gravity Gun ~PAD_RSTICK_ALL~/~PAD_LSTICK_ALL~", "m97_grav");
|
||||
Load_Sco("~BLIP_68~ Player Model Protection", "m97_model_protection");
|
||||
Load_Sco("~BLIP_68~ Taser Glock Motions97 ~PAD_LT~+~PAD_RT~","m97_taser");
|
||||
return;
|
||||
}
|
||||
void MC_Ohman(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ OhManMyBad~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Limo Driver", "mybad_limo");
|
||||
Load_Sco("~BLIP_68~ Drive on Water", "mybad_water");
|
||||
Load_Sco("~BLIP_68~ ZOMBIES: MP Madness","mybad_zombie");
|
||||
Load_Sco("~BLIP_68~ Bus Ramp", "mybad_bus");
|
||||
Load_Sco("~BLIP_68~ Twisted Metal", "mybad_twisted");
|
||||
Load_Sco("~BLIP_68~ Mugging Service by OhManMyBad", "mugging_service");
|
||||
return;
|
||||
|
||||
}
|
||||
void MC_PsxColt(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ PSXColt Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Colts Personal Driver ~PAD_LB~+~PAD_B~", "colt");
|
||||
Load_Sco("~BLIP_68~ Rocket-truck w. HeatSeekers", "RPGtruck");
|
||||
Load_Sco("~BLIP_68~ Rocket-truck w. HeatSeekers", "heatseeker");
|
||||
Load_Sco("~BLIP_68~ Colt/Keredor Advanced HeliRounds", "AdvancedHeliRounds");
|
||||
return;
|
||||
}
|
||||
void MC_Rev(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ ReVoLuTiioNz~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ v1.4 Menu ~PAD_DPAD_DOWN~ + ~PAD_B~","rev_menu");
|
||||
Load_Sco("~BLIP_68~ v1.2 Keyboard","rev_keyboard");
|
||||
Load_Sco("~BLIP_68~ Freeze Gun Menu ~PAD_LB~ + ~PAD_DPAD_UP~","rev_freeze");
|
||||
Load_Sco("~BLIP_68~ Funny Weapon Mods", "rev_weapon");
|
||||
Load_Sco("~BLIP_68~ Online Player Nuke Guns","rev_nuke");
|
||||
Load_Sco("~BLIP_68~ Heli XML Bullets", "rev_xml_heli");
|
||||
Load_Sco("~BLIP_68~ Weapons On After ReSpawn ~PAD_A~", "weap14");
|
||||
return;
|
||||
}
|
||||
void MC_Rodd(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ rodd1981~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Deal Breaker II", "rodd_dbii");
|
||||
Load_Sco("~BLIP_68~ Liberty City Jobs v1.1", "lc_jobs_load");
|
||||
Load_Sco("~BLIP_68~ Preacher Bodyguards", "rodd_preacher");
|
||||
return;
|
||||
}
|
||||
void MC_Shockwave(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ SHoCKxWAVE Mods~BLIP_94~";
|
||||
Load_Sco("SHoCKxWAVE AimBot Weapon", "aimbot");
|
||||
Load_Sco("SHoCKxWAVE ModMenu ~COL_NET_4~v9 ~PAD_DPAD_RIGHT~ + ~PAD_A~", "shockxwave9");
|
||||
Load_Sco("SHoCKxWAVE ModMenu ~g~v10 ~PAD_DPAD_LEFT~ + ~PAD_A~", "shockxwave10");
|
||||
Load_Sco("SHoCKxWAVE ModMenu ~r~v11 ~PAD_DPAD_LEFT~ + ~PAD_A~", "shockxwave11");
|
||||
Load_Sco("SHoCKxWAVE ModMenu ~p~v12 ~PAD_DPAD_LEFT~ + ~PAD_A~", "shockxwave12");
|
||||
Load_Sco("SHoCKxWAVE ModMenu ~w~v13 ~PAD_DPAD_LEFT~ + ~PAD_A~", "shockxwave13");
|
||||
return;
|
||||
}
|
||||
void MC_XFChewy(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ XF CH3WY Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Freeze Menu V3 By XF CH3WY ~PAD_RB~+~PAD_A~", "XFFreeze3");
|
||||
Load_Sco("~BLIP_68~ Freeze Menu V2 By XF CH3WY ~PAD_RB~+~PAD_A~", "XFFreeze");
|
||||
Load_Sco("~BLIP_68~ Hydraulics By XF CH3WY ~PAD_RB~+~PAD_A~", "XFHydraulics");
|
||||
Load_Sco("~BLIP_68~ Fighter Jet by XF CH3WY", "Fighter Jet");
|
||||
return;
|
||||
}
|
||||
void MC_Various(void){
|
||||
MENU_SUB_HEADER = "~BLIP_94~ Various Devs Mods~BLIP_94~";
|
||||
Load_Sco("~BLIP_68~ Cosy Tow Truck Mod","cosy_tow");
|
||||
Load_Sco("~BLIP_68~ Dr Jigsaw Scripts","dr_jig");
|
||||
Load_Sco("~BLIP_68~ Dr X Clan 2.5 ~PAD_X~ + ~PAD_DPAD_DOWN~","drx_menu");
|
||||
Load_Sco("~BLIP_68~ DSE V3.5","dse_menu");
|
||||
Load_Sco("~BLIP_68~ Eaqz Funny Cars ~PAD_LB~ + ~PAD_A~","eaqz_cars");
|
||||
Load_Sco("~BLIP_68~ iHaz .5b Premium ~PAD_B~ + ~PAD_DPAD_DOWN~","ihaz");
|
||||
Load_Sco("~BLIP_68~ Particle Effects Manager","ptfx_manager");
|
||||
Load_Sco("~BLIP_68~ R3B3LY0N Funny Cars ~PAD_LB~ + ~PAD_A~","r3b3lyon_funny_car");
|
||||
Load_Sco("~BLIP_68~ T3CH Object Spawner","t3ch");
|
||||
Load_Sco("~BLIP_68~ Undercover Cavalcade","undercover_cavcade");
|
||||
Load_Sco("~BLIP_68~ Undercover Ruiner","undercover_ruiner");
|
||||
Load_Sco("~BLIP_68~ Evades V3.0 Public ~PAD_X~+~PAD_DPAD_DOWN~", "evade");
|
||||
Load_Sco("~BLIP_68~ Evades V3.0 Premium ~PAD_X~+~PAD_DPAD_DOWN~", "evadeGT");
|
||||
Load_Sco("~BLIP_68~ HighGuy Police Script", "HighGuy");
|
||||
Load_Sco("~BLIP_68~ HighGuy Police Script Controls", "Highguycontrols");
|
||||
Load_Sco("~BLIP_68~ Rockstarkings V7.0 ~PAD_A~+~PAD_X~", "main10");
|
||||
Load_Sco("~BLIP_68~ XxK1tty Gas-Flame Spawner", "gasspawner");
|
||||
Load_Sco("~BLIP_68~ XxK1tty Suspension Menu ~PAD_RSTICK_NONE~/~PAD_DPAD_LEFTRIGHT~", "suspension");
|
||||
return;
|
||||
}
|
||||
103
Trident/MD_Contents/MDC_Teleport_Index.h
Normal file
103
Trident/MD_Contents/MDC_Teleport_Index.h
Normal file
@@ -0,0 +1,103 @@
|
||||
/**
|
||||
* @ MD Essentials
|
||||
* @ MD Series ; Version 12, March 2016
|
||||
* @ Copyright (C) 2016 DEVILSDESIGN
|
||||
//You wasted a lot of time with these prints buddy, people kinda see on screen where they teleport too.... - Nathan
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void tele_helipads_index(){
|
||||
if(SelectedItem == 1) {TP_x = 2219.8132 , TP_y = 745.6130 , TP_z = 5.830 ; Alert("~BLIP_76~ ~c~Airport Helipad",false);}
|
||||
else if(SelectedItem == 2) {TP_x = 2132.2297 , TP_y = 441.9621 , TP_z = 23.4956 ; Alert("~BLIP_76~ ~c~Sheriffs Helipad",false);}
|
||||
else if(SelectedItem == 3) {TP_x = -707.6221 , TP_y = 365.6933 , TP_z = 3.8330 ; Alert("~BLIP_76~ ~c~City Helipad",false);}
|
||||
else if(SelectedItem == 4) {TP_x = 380.0672 , TP_y = -714.4636, TP_z = 4.4611 ; Alert("~BLIP_76~ ~c~Heli Tours",false);}
|
||||
else if(SelectedItem == 5) {TP_x = -2125.2920 , TP_y = 142.8950 , TP_z = 18.4270 ; Alert("~BLIP_76~ ~c~Fire Department Helipad",false);}
|
||||
else if(SelectedItem == 6) {TP_x = -826.3179 , TP_y = 781.8586 , TP_z = 6.3370 ; Alert("~BLIP_76~ ~c~City 2 Helipad",false);}
|
||||
}
|
||||
void tele_airport_index(){
|
||||
if(SelectedItem == 1) {TP_x = 2219.8132 , TP_y = 745.6130 , TP_z = 5.830; Alert("~BLIP_76~ ~c~Teleported to Helipads",false);}
|
||||
else if(SelectedItem == 2) {TP_x = 2168.1106 , TP_y = 765.7915 , TP_z = 28.9740; Alert("~BLIP_76~ ~c~Teleported to Hangar 1 (Top)",false);}
|
||||
else if(SelectedItem == 3) {TP_x = 2168.1106 , TP_y = 765.7915 , TP_z = 5.5784; Alert("~BLIP_76~ ~c~Teleported to Hangar 1 (Inside)",false);}
|
||||
else if(SelectedItem == 4) {TP_x = 2255.2063 , TP_y = 643.0560 , TP_z = 28.8072; Alert("~BLIP_76~ ~c~Teleported to Hangar 2 (Top)",false);}
|
||||
else if(SelectedItem == 5) {TP_x = 2255.2063 , TP_y = 643.0560 , TP_z = 5.5784; Alert("~BLIP_76~ ~c~Teleported to Hangar 2 (Inside)",false);}
|
||||
else if(SelectedItem == 6) {TP_x = 2622.3501 , TP_y = 408.0522 , TP_z = 79.2688; Alert("~BLIP_76~ ~c~Teleported to Tower (Top)",false);}
|
||||
else if(SelectedItem == 7) {TP_x = 2624.6602 , TP_y = 405.3479 , TP_z = 41.5520; Alert("~BLIP_76~ ~c~Teleported to Tower (Level 2)",false);}
|
||||
else if(SelectedItem == 8) {TP_x = 2631.9465 , TP_y = 403.1338 , TP_z = 17.7790; Alert("~BLIP_76~ ~c~Teleported to Tower (Level 1)",false);}
|
||||
else if(SelectedItem == 9) {TP_x = 2633.4407 , TP_y = 415.1447 , TP_z = 5.3555; Alert("~BLIP_76~ ~c~Teleported to Tower (Inside)",false);}
|
||||
else if(SelectedItem == 10){TP_x = 2311.6799 , TP_y = 26.2974 , TP_z = 82.4870; Alert("~BLIP_76~ ~c~Teleported to Radar Tower (Top)",false);}
|
||||
else if(SelectedItem == 11){TP_x = 2320.0469 , TP_y = 30.7563 , TP_z = 5.4215; Alert("~BLIP_76~ ~c~Teleported to Radar Tower (Inside)",false);}
|
||||
else if(SelectedItem == 12){TP_x = 2132.2297 , TP_y = 441.9621 , TP_z = 23.4956; Alert("~BLIP_76~ ~c~Teleported to Sheriffs Building (Top)",false);}
|
||||
else if(SelectedItem == 13){TP_x = 2138.7852 , TP_y = 433.7174 , TP_z = 5.8495; Alert("~BLIP_76~ ~c~Teleported to Sheriffs Building (Inside)",false);}
|
||||
else if(SelectedItem == 14){TP_x = 2494.9207 , TP_y = 267.1155 , TP_z = 20.1800; Alert("~BLIP_76~ ~c~Teleported to Sniper Lookout (Top)",false);}
|
||||
else if(SelectedItem == 15){TP_x = 2502.8150 , TP_y = 276.0000 , TP_z = 5.5750; Alert("~BLIP_76~ ~c~Teleported to Sniper Lookout (Inside)",false);}
|
||||
else if(SelectedItem == 16){TP_x = 2496.3533 , TP_y = 515.8263 , TP_z = 20.1800; Alert("~BLIP_76~ ~c~Teleported to Bazooka Lookout (Top)",false);}
|
||||
else if(SelectedItem == 17){TP_x = 2496.9800 , TP_y = 503.9500 , TP_z = 5.5750; Alert("~BLIP_76~ ~c~Teleported to Bazooka Lookout (Inside)",false);}
|
||||
else if(SelectedItem == 18){TP_x = 2425.5264 , TP_y = 389.2336 , TP_z = 5.8487; Alert("~BLIP_76~ ~c~Teleported to Big Building (Inside)",false);}
|
||||
}
|
||||
void tele_broker_index(){
|
||||
if(SelectedItem == 1) {TP_x = 1375.8765, TP_y = 197.4544, TP_z = 47.8063; Alert("~BLIP_76~ ~c~Teleported to Crackhouse",false);}
|
||||
}
|
||||
|
||||
void tele_dukes_index(){
|
||||
if(SelectedItem == 1) {TP_x = 704.5024, TP_y = -270.7895, TP_z = 5.1121; Alert("~BLIP_76~ ~c~Teleported to Barge Basement",false);}
|
||||
else if(SelectedItem == 2) {TP_x = 1100.5000, TP_y = -747.0000, TP_z = 7.3972; Alert("~BLIP_76~ ~c~Teleported to Hove Beach",false);}
|
||||
else if(SelectedItem == 3) {TP_x = 875.9251, TP_y = -119.5862, TP_z = 6.0054; Alert("~BLIP_76~ ~c~Teleported to Brucies Garage",false);}
|
||||
else if(SelectedItem == 4) {TP_x = 796.0092, TP_y = -540.5947, TP_z = 7.5266; Alert("~BLIP_76~ ~c~Teleported to Porn Shop",false);}
|
||||
}
|
||||
void tele_algonquin_index(){
|
||||
if(SelectedItem == 1) {TP_x = -245.9398, TP_y = 222.9828, TP_z = 205.9805; Alert("~BLIP_76~ ~c~Teleported to Hockey Team Office",false);}
|
||||
else if(SelectedItem == 2) {TP_x = -178.2, TP_y = 582.6, TP_z = 127.8500; Alert("~BLIP_76~ ~c~Teleported to Majestic Hotel",false);}
|
||||
else if(SelectedItem == 3) {TP_x = -416.3491, TP_y = 1461.9805, TP_z = 38.9715; Alert("~BLIP_76~ ~c~Teleported to Playboy X's Pad",false);}
|
||||
else if(SelectedItem == 4) {TP_x = -279.5515, TP_y = -101.2410, TP_z = 386.7909; Alert("~BLIP_76~ ~c~Teleported to Rotterdam Tower",false);}
|
||||
else if(SelectedItem == 5) {TP_x = -532.6810, TP_y = 1273.3307, TP_z = 106.6500; Alert("~BLIP_76~ ~c~Teleported to Westminster Towers",false);}
|
||||
else if(SelectedItem == 6) {TP_x = 55.3537, TP_y = 1125.3387, TP_z = 3.4527; Alert("~BLIP_76~ ~c~Teleported to Underground Parking",false);}
|
||||
else if(SelectedItem == 7) {TP_x = 103.5343, TP_y = 857.4968, TP_z = 43.6211; Alert("~BLIP_76~ ~c~Teleported to Safe House",false);}
|
||||
else if(SelectedItem == 8) {TP_x = -473.0454, TP_y = 1746.8669, TP_z = 8.3762; Alert("~BLIP_76~ ~c~Teleported to Scrapyard",false);}
|
||||
else if(SelectedItem == 9) {TP_x = 237.5457, TP_y = -805.6555, TP_z = 14.7000; Alert("~BLIP_76~ ~c~Teleported to Contruction Site",false);}
|
||||
else if(SelectedItem == 10) {TP_x = -7.6952, TP_y = 356.7396, TP_z = -2.9570; Alert("~BLIP_76~ ~c~Teleported to Subway",false);}
|
||||
else if(SelectedItem == 11) {TP_x = -2476.0000, TP_y = 942.7000, TP_z = 1101.0000; Alert("~BLIP_76~ ~c~Teleported to Skydive",false);}
|
||||
else if(SelectedItem == 12) {TP_x = -385.3183, TP_y = 1493.0056, TP_z = 11.7148; Alert("~BLIP_76~ ~c~Teleported to Fight Club ~COL_NET_4~TBOGT ONLY!",false);}
|
||||
else if(SelectedItem == 13) {TP_x = 123.6929, TP_y = -671.5339, TP_z = 15.8061; Alert("~BLIP_76~ ~c~Teleported to Lawyer's Office",false);}
|
||||
else if(SelectedItem == 14){TP_x = -120.6184, TP_y = 1502.8611, TP_z = 98.7829; Alert("~BLIP_76~ ~c~Teleported to Projects Tower",false);}
|
||||
}
|
||||
void tele_alderney_index(){
|
||||
if(SelectedItem == 1) {TP_x = -992.8975, TP_y = 1870.2732, TP_z = 23.3234; Alert("~BLIP_76~ ~c~Teleported to Sultan House",false);}
|
||||
else if(SelectedItem == 2) {TP_x = -968.4757, TP_y = 1908.7188, TP_z = 22.3870; Alert("~BLIP_76~ ~c~Teleported to Sultan Spawn",false);}
|
||||
else if(SelectedItem == 3) {TP_x = -1409.1864, TP_y = 1461.8617, TP_z = 25.5280; Alert("~BLIP_76~ ~c~Teleported to Cognoscenti Garage",false);}
|
||||
else if(SelectedItem == 4) {TP_x = -1539.8414, TP_y = 163.2967, TP_z = 10.9000; Alert("~BLIP_76~ ~c~Teleported to Sprunk Factory",false);}
|
||||
else if(SelectedItem == 5) {TP_x = -1577.2926, TP_y = 18.9291, TP_z = 11.0153; Alert("~BLIP_76~ ~c~Teleported to Strip Club",false);}
|
||||
else if(SelectedItem == 6) {TP_x = -1079.8000, TP_y = -469.7000, TP_z = 3.6200; Alert("~BLIP_76~ ~c~Teleported to Prison Cage",false);}
|
||||
else if(SelectedItem == 7) {TP_x = -2072.8728, TP_y = 25.4543, TP_z = 96.2373; Alert("~BLIP_76~ ~c~Teleported to Building Cant Jump Off",false);}
|
||||
}
|
||||
void tele_bohan_index(){
|
||||
if(SelectedItem == 1) {TP_x = 1186.0593, TP_y = 1697.5045, TP_z = 17.7532; Alert("~BLIP_76~ ~c~Teleported to Strip Club",false);}
|
||||
else if(SelectedItem == 2) {TP_x = 603.3540, TP_y = 1409.7708, TP_z = 18.4847; Alert("~BLIP_76~ ~c~Teleported to Bohan Safe House",false);}
|
||||
else if(SelectedItem == 3) {TP_x = 711.0583, TP_y = 1911.1498, TP_z = 27.1642; Alert("~BLIP_76~ ~c~Teleported to Baseball Park",false);}
|
||||
else if(SelectedItem == 4) {TP_x = 1462.0757, TP_y = 1563.3900, TP_z = 4.0576; Alert("~BLIP_76~ ~c~Teleported to Near the Bridge 1",false);}
|
||||
else if(SelectedItem == 5) {TP_x = 549.9749, TP_y = 1278.2107, TP_z = 21.8234; Alert("~BLIP_76~ ~c~Teleported to Near the Bridge 2",false);}
|
||||
}
|
||||
void tele_happiness_index(){
|
||||
if(SelectedItem == 1) {TP_x = -607.6907, TP_y = -767.8975, TP_z = 20.6426; Alert("~BLIP_76~ ~c~Teleported to Building (Top)",false);}
|
||||
else if(SelectedItem == 2) {TP_x = -608.9211, TP_y = -779.1715, TP_z = 17.5085; Alert("~BLIP_76~ ~c~Teleported to Building (Level 1)",false);}
|
||||
else if(SelectedItem == 3) {TP_x = -608.0413, TP_y = -768.1970, TP_z = 9.8789; Alert("~BLIP_76~ ~c~Teleported to Building (Inside)",false);}
|
||||
else if(SelectedItem == 4) {TP_x = -609.5771, TP_y = -753.4142, TP_z = 85.7500; Alert("~BLIP_76~ ~c~Teleported to Statue Head",false);}
|
||||
else if(SelectedItem == 5) {TP_x = -605.3948, TP_y = -749.7060, TP_z = 94.9000; Alert("~BLIP_76~ ~c~Teleported to Statue Cup",false);}
|
||||
else if(SelectedItem == 6) {TP_x = -608.8611, TP_y = -755.9594, TP_z = 65.9950; Alert("~BLIP_76~ ~c~Teleported to Statue Heart",false);}
|
||||
else if(SelectedItem == 7) {TP_x = -600.1514, TP_y = -961.0953, TP_z = 4.8429; Alert("~BLIP_76~ ~c~Teleported to Plaza",false);}
|
||||
else if(SelectedItem == 8) {TP_x = -409.8473, TP_y = -976.8823, TP_z = 3.6314; Alert("~BLIP_76~ ~c~Teleported to Pier",false);}
|
||||
}
|
||||
void tele_special_index(){
|
||||
if(SelectedItem == 1) {TP_x = 1626.7833, TP_y = 1319.8804, TP_z = -47.1266; Alert("~BLIP_76~ ~c~Teleported to Underwater Hideout",false);}
|
||||
else if(SelectedItem == 2) {TP_x = -1079.8553, TP_y = -362.9944, TP_z = 7.4039; Alert("~BLIP_76~ ~c~Teleported to Secret Prison (Lockup)",false);}
|
||||
else if(SelectedItem == 3) {TP_x = -2072.8728, TP_y = 25.4543, TP_z = 96.2373; Alert("~BLIP_76~ ~c~Teleported to Building Cant Jump Off",false);}
|
||||
else if(SelectedItem == 4) {TP_x = -1079.8000, TP_y = -469.7000, TP_z = 3.6200; Alert("~BLIP_76~ ~c~Teleported to Prison Cage",false);}
|
||||
}
|
||||
void tele_police_index(){
|
||||
if(SelectedItem == 1) {TP_x = 903.4626, TP_y = -363.2110, TP_z = 16.9067; Alert("~BLIP_76~ ~c~Mohawk Ave",false);}
|
||||
else if(SelectedItem == 2) {TP_x = 1245.5483, TP_y = 583.3440, TP_z = 38.0665; Alert("~BLIP_76~ ~c~Bunker Hill Ave",false);}
|
||||
else if(SelectedItem == 3) {TP_x = -421.5369, TP_y = 286.9949, TP_z = 10.8285; Alert("~BLIP_76~ ~c~Kunzite St",false);}
|
||||
else if(SelectedItem == 4) {TP_x = 88.1274, TP_y = 1224.2035, TP_z = 15.5327; Alert("~BLIP_76~ ~c~San Juan Rd",false);}
|
||||
else if(SelectedItem == 5) {TP_x = -921.2032, TP_y = 1316.4619, TP_z = 24.0243; Alert("~BLIP_76~ ~c~Bridger St",false);}
|
||||
else if(SelectedItem == 6) {TP_x = 158.4689, TP_y = -203.2467, TP_z = 14.3076; Alert("~BLIP_76~ ~c~Albany Ave",false);}
|
||||
}
|
||||
351
Trident/MD_Contents/MDC_Teleport_Options.c
Normal file
351
Trident/MD_Contents/MDC_Teleport_Options.c
Normal file
@@ -0,0 +1,351 @@
|
||||
/**
|
||||
* @ DD_Ultimate
|
||||
* @ Version 1, March 2016
|
||||
* @ Copyright (C) 2016 DEVILSDESIGN devilsdesign666@gmail.com
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Network_Teleport_Setup(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
|
||||
MENU_SUB_HEADER = "Teleports";
|
||||
AddFunction("~BLIP_8~ Waypoint ~COL_NET_4~(Set First)");
|
||||
|
||||
if(Player_ID == iPlayer){
|
||||
AddFunction("~BLIP_52~ 10ft In Front");
|
||||
AddFunction("~BLIP_52~ In Nearest Vehicle");
|
||||
AddFunction("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(You)");
|
||||
AddFunction("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(Others)");
|
||||
}
|
||||
else{
|
||||
AddFunction_CB("~BLIP_52~ 10ft In Front");
|
||||
AddFunction("~BLIP_52~ In Nearest Vehicle");
|
||||
AddFunction_CB("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(You)");
|
||||
AddFunction_CB("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(Others)");
|
||||
}
|
||||
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Heli Places Teleports ~PAD_RIGHT~");//6
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Airport Teleports ~PAD_RIGHT~");//7
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Broker Teleports ~PAD_RIGHT~");//8
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Dukes Teleports ~PAD_RIGHT~");//9
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Algonquin Teleports ~PAD_RIGHT~");//10
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Alderney Teleports ~PAD_RIGHT~");//11
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Bohan Teleports ~PAD_RIGHT~");//12
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Happiness Island Teleports ~PAD_RIGHT~");//13
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Special Places ~COL_NET_4~(LockUp) ~PAD_RIGHT~");//14
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Police Stations ~PAD_RIGHT~");//15
|
||||
AddFunction_Num("~BLIP_52~ Save Current Location",2); //16
|
||||
AddFunction_Num("~BLIP_52~ Teleport to saved location",2); //17
|
||||
|
||||
}
|
||||
void MC_Network_Teleport_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
if(SelectedItem == 1){
|
||||
if(DOES_BLIP_EXIST(GET_FIRST_BLIP_INFO_ID(BLIP_WAYPOINT))){
|
||||
Vector3 pos;
|
||||
float z;
|
||||
GET_BLIP_COORDS(GET_FIRST_BLIP_INFO_ID(BLIP_WAYPOINT),&pos);
|
||||
GET_GROUND_Z_FOR_3D_COORD(pos.x,pos.y,1000,&z);
|
||||
WAIT(0);
|
||||
MD_Teleport_ID(Player_ID,pos.x,pos.y,z+10);
|
||||
}
|
||||
else Alert("~b~MD: ~s~You need to set a waypoint.",false);
|
||||
}
|
||||
else if(SelectedItem == 2){
|
||||
float x,y,z;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(Player_PED,0,10,0,&x,&y,&z);
|
||||
MD_Teleport_ID(Player_ID,x,y,z);
|
||||
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
if(Player_PED != pPlayer){
|
||||
Alert("~b~MD: ~s~This function can only be used on you.",false);
|
||||
}
|
||||
else{
|
||||
float x,y,z;
|
||||
Vehicle ClosestCar;
|
||||
Ped driver;
|
||||
GET_CHAR_COORDINATES(Player_PED,&x, &y, &z);
|
||||
ClosestCar = GET_CLOSEST_CAR(x,y,z, 50, false, 70);
|
||||
WARP_PED_INTO_VEHICLE(Player_PED,ClosestCar);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
MD_Teleport_ID(Player_ID,4120.7036,517.3867,2208.9651); //the fucking same? really? - Nathan
|
||||
//Alert("~BLIP_76~ ~c~Teleported Max Height (You)",false);
|
||||
}
|
||||
else if(SelectedItem == 5){
|
||||
MD_Teleport_ID(Player_ID,2567.2686,517.3867,2208.9651);
|
||||
//Alert("~BLIP_76~ ~c~Teleported Max Height (Others)",false);
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
int num = (menu_item[SelectedItem].num_val - 1);
|
||||
GET_CHAR_COORDINATES(Player_PED, &save_x[num], &save_y[num], &save_z[num]);
|
||||
char* buffer[16]; //64 characters
|
||||
Strcpy(buffer, "~b~MD: ~s~Teleport location ");
|
||||
itoa( menu_item[SelectedItem].num_val, buffer);
|
||||
Strcat(buffer, " saved.");
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
int num = (menu_item[SelectedItem].num_val - 1);
|
||||
char* buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~");
|
||||
if(save_x[num] == 0)
|
||||
{
|
||||
Strcat(buffer, "You need to save location ");
|
||||
itoa( menu_item[SelectedItem].num_val, buffer);
|
||||
Strcat(buffer, " first.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
else
|
||||
{
|
||||
MD_Teleport_ID(Player_ID,save_x[num],save_y[num],(save_z[num] - 1));
|
||||
//Alert("~b~MD: ~s~Teleported to saved location.",false);
|
||||
Strcat(buffer, "Teleported to saved location ");
|
||||
itoa( menu_item[SelectedItem].num_val, buffer);
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MC_Teleport_heli(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports HeilPads";
|
||||
AddFunction_CB("~BLIP_52~ Airport HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ Airport Sheriffs HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ City 1 HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ Heli Tours");
|
||||
AddFunction_CB("~BLIP_52~ Fire Department HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ City 2 HeilPad");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_airport(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Airport";
|
||||
AddFunction_CB("~BLIP_52~ HeilPads");
|
||||
AddFunction_CB("~BLIP_52~ HeilPads Hangar 1 (Top)");
|
||||
AddFunction_CB("~BLIP_52~ HeliPads Hangar 1 (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ HeliPads Hangar 2 (Top)");
|
||||
AddFunction_CB("~BLIP_52~ HeliPads Hangar 2 (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Level 2)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Level 1)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Radar Tower (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Radar Tower (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Sheriffs Building (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Sheriffs Building (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Sniper Lookout (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Sniper Lookout (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Bazooka Lookout (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Bazooka Lookout (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Big Building");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_broker(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Broker";
|
||||
AddFunction_CB("~BLIP_52~ Crack House");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_dukes(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Dukes";
|
||||
AddFunction_CB("~BLIP_52~ Barge Basement");
|
||||
AddFunction_CB("~BLIP_52~ Hove Beach");
|
||||
AddFunction_CB("~BLIP_52~ Brucies Garage");
|
||||
AddFunction_CB("~BLIP_52~ Porn Shop");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_algon(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Algonquin";
|
||||
AddFunction_CB("~BLIP_52~ Hockey Team Office");
|
||||
AddFunction_CB("~BLIP_52~ Majestic Hotel");
|
||||
AddFunction_CB("~BLIP_52~ Playboy X's Pad");
|
||||
AddFunction_CB("~BLIP_52~ Rotterdam Tower");
|
||||
AddFunction_CB("~BLIP_52~ Westminster Towers");
|
||||
AddFunction_CB("~BLIP_52~ Underground Parking");
|
||||
AddFunction_CB("~BLIP_52~ Algonquin Safe House");
|
||||
AddFunction_CB("~BLIP_52~ Scrapyard");
|
||||
AddFunction_CB("~BLIP_52~ Construction Site");
|
||||
AddFunction_CB("~BLIP_52~ Subway Intersection");
|
||||
AddFunction_CB("~BLIP_52~ Skydive");
|
||||
AddFunction_CB("~BLIP_52~ Fight Club");
|
||||
AddFunction_CB("~BLIP_52~ Lawyer's Office");
|
||||
AddFunction_CB("~BLIP_52~ Project Tower");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_alder(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Alderney";
|
||||
AddFunction_CB("~BLIP_52~ Secret Sultan RS House");
|
||||
AddFunction_CB("~BLIP_52~ Secret Sultan RS Spawn");
|
||||
AddFunction_CB("~BLIP_52~ Cognoscenti Garage");
|
||||
AddFunction_CB("~BLIP_52~ Sprunk Factory");
|
||||
AddFunction_CB("~BLIP_52~ Strip Club");
|
||||
AddFunction_CB("~BLIP_52~ Prison Cage");
|
||||
AddFunction_CB("~BLIP_52~ Building Cant Jump Off");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_bohan(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Bohan";
|
||||
AddFunction_CB("~BLIP_52~ Strip Club");
|
||||
AddFunction_CB("~BLIP_52~ Safe House");
|
||||
AddFunction_CB("~BLIP_52~ Baseball Park");
|
||||
AddFunction_CB("~BLIP_52~ Near The Bridge 1");
|
||||
AddFunction_CB("~BLIP_52~ Near The Bridge 2");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_happy(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Happiness Island";
|
||||
AddFunction_CB("~BLIP_52~ Happiness Building (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Happiness Building (Level 1)");
|
||||
AddFunction_CB("~BLIP_52~ Happiness Building (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Statue of Liberty (Head)");
|
||||
AddFunction_CB("~BLIP_52~ Statue of Liberty (Cup)");
|
||||
AddFunction_CB("~BLIP_52~ Statue of Liberty (Heart)");
|
||||
AddFunction_CB("~BLIP_52~ Plaza");
|
||||
AddFunction_CB("~BLIP_52~ Pier");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_special(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Special Places (Lockups)";
|
||||
AddFunction_CB("~BLIP_52~ Airport Underwater Hideout");
|
||||
AddFunction_CB("~BLIP_52~ Prison Visitors (Lockup)");
|
||||
AddFunction_CB("~BLIP_52~ Building Can't Jump Off");
|
||||
AddFunction_CB("~BLIP_52~ Prison Cage");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_police(const int Player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Police Stations";
|
||||
AddFunction_CB("~BLIP_52~ Station - Mohawk AVE");
|
||||
AddFunction_CB("~BLIP_52~ Station - Bunker Hill Ave");
|
||||
AddFunction_CB("~BLIP_52~ Station - Kunzite St");
|
||||
AddFunction_CB("~BLIP_52~ Station - San Juan Rd");
|
||||
AddFunction_CB("~BLIP_52~ Station - Bridger St");
|
||||
AddFunction_CB("~BLIP_52~ Station - Albany Ave");
|
||||
return;
|
||||
}
|
||||
|
||||
void tele_Action_police(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_police_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_heli(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_helipads_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_airport(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_airport_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_broker(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_broker_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_dukes(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_dukes_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_algon(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_algonquin_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_alder(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_alderney_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_bohan(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_bohan_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_happy(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_happiness_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_special(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(DOES_CHAR_EXIST(Player_PED)){
|
||||
tele_special_index();
|
||||
MD_Teleport_ID(Player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
312
Trident/MD_Contents/MDC_Teleport_Options_Net.c
Normal file
312
Trident/MD_Contents/MDC_Teleport_Options_Net.c
Normal file
@@ -0,0 +1,312 @@
|
||||
/**
|
||||
* @ DD_Ultimate
|
||||
* @ Version 1, March 2016
|
||||
* @ Copyright (C) 2016 DEVILSDESIGN devilsdesign666@gmail.com
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Network_Teleport_Setup(uint player){
|
||||
|
||||
MENU_SUB_HEADER = "Teleports";
|
||||
AddFunction("~BLIP_8~ Waypoint ~COL_NET_4~(Set First)");
|
||||
|
||||
if(player == iPlayer){
|
||||
AddFunction("~BLIP_52~ 10ft In Front");
|
||||
AddFunction("~BLIP_52~ In Nearest Vehicle");
|
||||
AddFunction("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(You)");
|
||||
AddFunction("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(Others)");
|
||||
}
|
||||
else{
|
||||
AddFunction_CB("~BLIP_52~ 10ft In Front");
|
||||
AddFunction("~BLIP_52~ In Nearest Vehicle");
|
||||
AddFunction_CB("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(You)");
|
||||
AddFunction_CB("~BLIP_52~ Max Height In Vehicle ~COL_NET_4~(Others)");
|
||||
}
|
||||
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Heli Places Teleports ~PAD_RIGHT~");//6
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Airport Teleports ~PAD_RIGHT~");//7
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Broker Teleports ~PAD_RIGHT~");//8
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Dukes Teleports ~PAD_RIGHT~");//9
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Algonquin Teleports ~PAD_RIGHT~");//10
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Alderney Teleports ~PAD_RIGHT~");//11
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Bohan Teleports ~PAD_RIGHT~");//12
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Happiness Island Teleports ~PAD_RIGHT~");//13
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Special Places ~COL_NET_4~(LockUp) ~PAD_RIGHT~");//14
|
||||
AddSubMenu("~BLIP_73~ ~b~MD ~c~Police Stations ~PAD_RIGHT~");//15
|
||||
AddFunction_Num("~BLIP_52~ Save Current Location",2); //16
|
||||
AddFunction_Num("~BLIP_52~ Teleport to saved location",2); //17
|
||||
|
||||
}
|
||||
void MC_Network_Teleport_Action(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
if(SelectedItem == 1){
|
||||
if(DOES_BLIP_EXIST(GET_FIRST_BLIP_INFO_ID(BLIP_WAYPOINT))){
|
||||
Vector3 pos;
|
||||
float z;
|
||||
GET_BLIP_COORDS(GET_FIRST_BLIP_INFO_ID(BLIP_WAYPOINT),&pos);
|
||||
GET_GROUND_Z_FOR_3D_COORD(pos.x,pos.y,1000,&z);
|
||||
WAIT(0);
|
||||
MD_Teleport_ID(player_ID,pos.x,pos.y,z+10);
|
||||
}
|
||||
else Alert("~b~MD: ~s~You Need To Set A Waypoint.",false);
|
||||
}
|
||||
else if(SelectedItem == 2){
|
||||
float x,y,z;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(player,0,10,0,&x,&y,&z);
|
||||
MD_Teleport_ID(player_ID,x,y,z);
|
||||
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
if(player != pPlayer){
|
||||
Alert("~b~MD: ~s~This Function Can Only Be Used On You.",false);
|
||||
}
|
||||
else{
|
||||
float x,y,z;
|
||||
Vehicle ClosestCar;
|
||||
Ped driver;
|
||||
GET_CHAR_COORDINATES(player,&x, &y, &z);
|
||||
ClosestCar = GET_CLOSEST_CAR(x,y,z, 50, false, 70);
|
||||
WARP_PED_INTO_VEHICLE(player,ClosestCar);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
MD_Teleport_ID(player_ID,4120.7036,517.3867,2208.9651); //the fucking same? really? - Nathan
|
||||
//Alert("~BLIP_76~ ~c~Teleported Max Height (You)",false);
|
||||
}
|
||||
else if(SelectedItem == 5){
|
||||
MD_Teleport_ID(player_ID,2567.2686,517.3867,2208.9651);
|
||||
//Alert("~BLIP_76~ ~c~Teleported Max Height (Others)",false);
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
int num = (menu_item[SelectedItem].num_val - 1);
|
||||
GET_CHAR_COORDINATES(player, &save_x[num], &save_y[num], &save_z[num]);
|
||||
char* buffer[16]; //64 characters
|
||||
Strcpy(buffer, "~b~MD: ~s~Teleport Location ");
|
||||
itoa( menu_item[SelectedItem].num_val, buffer);
|
||||
Strcat(buffer, " saved.");
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
int num = (menu_item[SelectedItem].num_val - 1);
|
||||
char* buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~");
|
||||
if(save_x[num] == 0)
|
||||
{
|
||||
Strcat(buffer, "You Need To Save Location ");
|
||||
itoa( menu_item[SelectedItem].num_val, buffer);
|
||||
Strcat(buffer, " First.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
else
|
||||
{
|
||||
MD_Teleport_ID(player_ID,save_x[num],save_y[num],(save_z[num] - 1));
|
||||
//Alert("~b~MD: ~s~Teleported to saved location.",false);
|
||||
Strcat(buffer, "Teleported To Saved Location ");
|
||||
itoa( menu_item[SelectedItem].num_val, buffer);
|
||||
Strcat(buffer, ".");
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MC_Teleport_heli(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports HeilPads";
|
||||
AddFunction_CB("~BLIP_52~ Airport HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ Airport Sheriffs HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ City 1 HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ Heli Tours");
|
||||
AddFunction_CB("~BLIP_52~ Fire Department HeilPad");
|
||||
AddFunction_CB("~BLIP_52~ City 2 HeilPad");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_airport(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Airport";
|
||||
AddFunction_CB("~BLIP_52~ HeilPads");
|
||||
AddFunction_CB("~BLIP_52~ HeilPads Hangar 1 (Top)");
|
||||
AddFunction_CB("~BLIP_52~ HeliPads Hangar 1 (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ HeliPads Hangar 2 (Top)");
|
||||
AddFunction_CB("~BLIP_52~ HeliPads Hangar 2 (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Level 2)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Level 1)");
|
||||
AddFunction_CB("~BLIP_52~ Airport Tower (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Radar Tower (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Radar Tower (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Sheriffs Building (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Sheriffs Building (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Sniper Lookout (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Sniper Lookout (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Bazooka Lookout (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Bazooka Lookout (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Big Building");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_broker(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Broker";
|
||||
AddFunction_CB("~BLIP_52~ Crack House");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_dukes(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Dukes";
|
||||
AddFunction_CB("~BLIP_52~ Barge Basement");
|
||||
AddFunction_CB("~BLIP_52~ Hove Beach");
|
||||
AddFunction_CB("~BLIP_52~ Brucies Garage");
|
||||
AddFunction_CB("~BLIP_52~ Porn Shop");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_algon(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Algonquin";
|
||||
AddFunction_CB("~BLIP_52~ Hockey Team Office");
|
||||
AddFunction_CB("~BLIP_52~ Majestic Hotel");
|
||||
AddFunction_CB("~BLIP_52~ Playboy X's Pad");
|
||||
AddFunction_CB("~BLIP_52~ Rotterdam Tower");
|
||||
AddFunction_CB("~BLIP_52~ Westminster Towers");
|
||||
AddFunction_CB("~BLIP_52~ Underground Parking");
|
||||
AddFunction_CB("~BLIP_52~ Algonquin Safe House");
|
||||
AddFunction_CB("~BLIP_52~ Scrapyard");
|
||||
AddFunction_CB("~BLIP_52~ Construction Site");
|
||||
AddFunction_CB("~BLIP_52~ Subway Intersection");
|
||||
AddFunction_CB("~BLIP_52~ Skydive");
|
||||
AddFunction_CB("~BLIP_52~ Fight Club");
|
||||
AddFunction_CB("~BLIP_52~ Lawyer's Office");
|
||||
AddFunction_CB("~BLIP_52~ Project Tower");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_alder(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Alderney";
|
||||
AddFunction_CB("~BLIP_52~ Secret Sultan RS House");
|
||||
AddFunction_CB("~BLIP_52~ Secret Sultan RS Spawn");
|
||||
AddFunction_CB("~BLIP_52~ Cognoscenti Garage");
|
||||
AddFunction_CB("~BLIP_52~ Sprunk Factory");
|
||||
AddFunction_CB("~BLIP_52~ Strip Club");
|
||||
AddFunction_CB("~BLIP_52~ Prison Cage");
|
||||
AddFunction_CB("~BLIP_52~ Building Cant Jump Off");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_bohan(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Bohan";
|
||||
AddFunction_CB("~BLIP_52~ Strip Club");
|
||||
AddFunction_CB("~BLIP_52~ Safe House");
|
||||
AddFunction_CB("~BLIP_52~ Baseball Park");
|
||||
AddFunction_CB("~BLIP_52~ Near The Bridge 1");
|
||||
AddFunction_CB("~BLIP_52~ Near The Bridge 2");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_happy(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Happiness Island";
|
||||
AddFunction_CB("~BLIP_52~ Happiness Building (Top)");
|
||||
AddFunction_CB("~BLIP_52~ Happiness Building (Level 1)");
|
||||
AddFunction_CB("~BLIP_52~ Happiness Building (Inside)");
|
||||
AddFunction_CB("~BLIP_52~ Statue of Liberty (Head)");
|
||||
AddFunction_CB("~BLIP_52~ Statue of Liberty (Cup)");
|
||||
AddFunction_CB("~BLIP_52~ Statue of Liberty (Heart)");
|
||||
AddFunction_CB("~BLIP_52~ Plaza");
|
||||
AddFunction_CB("~BLIP_52~ Pier");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_special(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Special Places (Lockups)";
|
||||
AddFunction_CB("~BLIP_52~ Airport Underwater Hideout");
|
||||
AddFunction_CB("~BLIP_52~ Prison Visitors (Lockup)");
|
||||
AddFunction_CB("~BLIP_52~ Building Can't Jump Off");
|
||||
AddFunction_CB("~BLIP_52~ Prison Cage");
|
||||
return;
|
||||
}
|
||||
void MC_Teleport_police(uint player_ID){
|
||||
MENU_SUB_HEADER = "Teleports Police Stations";
|
||||
AddFunction_CB("~BLIP_52~ Station - Mohawk AVE");
|
||||
AddFunction_CB("~BLIP_52~ Station - Bunker Hill Ave");
|
||||
AddFunction_CB("~BLIP_52~ Station - Kunzite St");
|
||||
AddFunction_CB("~BLIP_52~ Station - San Juan Rd");
|
||||
AddFunction_CB("~BLIP_52~ Station - Bridger St");
|
||||
AddFunction_CB("~BLIP_52~ Station - Albany Ave");
|
||||
return;
|
||||
}
|
||||
|
||||
void tele_Action_police(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_police_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_heli(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_helipads_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_airport(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_airport_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_broker(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_broker_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_dukes(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_dukes_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_algon(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_algonquin_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_alder(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_alderney_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_bohan(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_bohan_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_happy(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_happiness_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
void tele_Action_special(uint player_ID){
|
||||
Ped player;
|
||||
GET_PLAYER_CHAR(player_ID,&player);
|
||||
if(DOES_CHAR_EXIST(player)){
|
||||
tele_special_index();
|
||||
MD_Teleport_ID(player_ID,TP_x,TP_y,TP_z);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
455
Trident/MD_Contents/MDC_Unfriendly_Options.c
Normal file
455
Trident/MD_Contents/MDC_Unfriendly_Options.c
Normal file
@@ -0,0 +1,455 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Net_Unfriendly_Setup(void){
|
||||
MENU_SUB_HEADER = "Unfriendly Options";
|
||||
//AddFunction_Value_CB("Ram Player",7); //16 // Patriot / Exploding Patriot / Annihilator / Exploding Annihilator / Your Vehicle / Closest Player Vehicle / All Player Vehicles
|
||||
AddFunction_CB("~BLIP_52~ Ram Player With Exploding Patriot"); //1
|
||||
AddFunction_CB("~BLIP_52~ Ram Player With Your Vehicle"); //2
|
||||
AddFunction_CB("~BLIP_73~ Glitch Player In Black Box"); //3
|
||||
AddFunction_CB("~BLIP_52~ Chronicle Player"); //4
|
||||
AddBool_CB("~BLIP_52~ Freeze Players Vehicle Position",GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS)); //5
|
||||
AddFunction_CB("~BLIP_52~ DeSolidify Players Vehicle "); //6
|
||||
AddBool_CB("~BLIP_68~ Restrict Fire-Power",GetBit(restrictWeaponsBitSet, players[ChangeNetPlayer].id)); //7
|
||||
AddBool_CB("~BLIP_68~ Auto-Delete Vehicle", GetBit(autoDeleteVehicleBitSet, players[ChangeNetPlayer].id));//8
|
||||
AddBool_CB("~BLIP_68~ Auto-Burn", GetBit(autoBurnBitSet, players[ChangeNetPlayer].id)); //9
|
||||
AddFunction_CB("Teleport To Kill-Zone"); //10
|
||||
AddFunction_CB("Give Rocket (Freeze Gun)"); //11
|
||||
AddFunction_CB("Group Hack (Freeze)"); //12
|
||||
AddFunction_CB("Player Model (Niko Freeze)");//13
|
||||
AddBool_CB("~BLIP_68~ Constant Boom (Explosion Lag)", GetBit(constantBoomBitSet, players[ChangeNetPlayer].id));//14
|
||||
AddFunction_CB("Blackscreen (freeze)"); //15
|
||||
AddFunction_Value_CB("Teleportations",5); //16
|
||||
AddFunction_Value_CB("Freeze Cars",6); //17
|
||||
AddFunction_Value_CB("Object Freeze",5); //18
|
||||
AddFunction_Value_CB("Lag Explosion",3); //19
|
||||
AddFunction_CB("~BLIP_52~ Remove Player Weapons");//20
|
||||
AddFunction_CB("~BLIP_52~ Object Fuck Player");//20
|
||||
}
|
||||
|
||||
void MC_Net_Unfriendly_Action(void){
|
||||
|
||||
uint index = ChangeNetPlayer;
|
||||
int nvid;
|
||||
// int Player_PED;
|
||||
Vehicle Net_Vehicle;
|
||||
uint Net_Vehicle_ID;
|
||||
if(PLAYER_HAS_CHAR(players[ChangeNetPlayer].id)){
|
||||
if(SelectedItem == 1){
|
||||
if(!Is_Developer(players[index].id) && !Is_Whitelisted(players[index].id)){
|
||||
if(IS_MODEL_IN_CDIMAGE(MODEL_POLPATRIOT)){
|
||||
REQUEST_MODEL(MODEL_POLPATRIOT);
|
||||
float heading;
|
||||
float x,y,z;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(PLAYER_CHAR(players[ChangeNetPlayer].id), 0, 25, 0, &x, &y, &z);
|
||||
GET_CHAR_HEADING(PLAYER_CHAR(players[ChangeNetPlayer].id), &heading);
|
||||
while(!HAS_MODEL_LOADED(MODEL_POLPATRIOT)) WAIT(0);
|
||||
CREATE_CAR(MODEL_POLPATRIOT,x,y,z,&Net_Vehicle,true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(MODEL_POLPATRIOT);
|
||||
SET_CAR_ON_GROUND_PROPERLY(Net_Vehicle);
|
||||
CHANGE_CAR_COLOUR(Net_Vehicle, 30, 30);//majorred
|
||||
SET_EXTRA_CAR_COLOURS(Net_Vehicle, 30, 30);
|
||||
SET_SIREN_WITH_NO_DRIVER(Net_Vehicle,true);
|
||||
SWITCH_CAR_SIREN(Net_Vehicle,true);
|
||||
SET_VEHICLE_DIRT_LEVEL(Net_Vehicle, 10);
|
||||
WASH_VEHICLE_TEXTURES(Net_Vehicle, 255);
|
||||
if(heading > 180.0) heading -= 180.0;
|
||||
else heading += 180.0;
|
||||
SET_CAR_HEADING(Net_Vehicle, heading);
|
||||
FREEZE_CAR_POSITION(Net_Vehicle,false);
|
||||
SET_CAR_COLLISION(Net_Vehicle, true);
|
||||
SET_CAR_ENGINE_ON(Net_Vehicle,true,true);
|
||||
SET_CAR_VISIBLE(Net_Vehicle,true);
|
||||
SET_CAR_FORWARD_SPEED(Net_Vehicle,300);
|
||||
WAIT(100);
|
||||
EXPLODE_CAR(Net_Vehicle, true, false);
|
||||
GET_CHAR_COORDINATES(PLAYER_CHAR(players[ChangeNetPlayer].id),&x,&y,&z);
|
||||
ADD_EXPLOSION(x, y, z, EXPLOSION_SHIP_DESTROY, 10, true, false, 1);
|
||||
Alert_Two("~BLIP_76~ ~c~Exploding Police Patriot Sent To~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else Alert("~BLIP_76~ ~COL_NET_4~ Error! ~w~Model Is Missing From Your ISO! ~n~Action Could Not Be Performed!",false);
|
||||
}
|
||||
else Alert_Two("~BLIP_76~ ~COL_NET_4~Action Can Not Be Performed On This Player! ~n~ ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else if(SelectedItem == 2){
|
||||
if(!Is_Developer(players[index].id) && !Is_Whitelisted(players[index].id)){
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
if(IS_MODEL_IN_CDIMAGE(MODEL_CAVALCADE)){
|
||||
spawn_car(MODEL_CAVALCADE);
|
||||
}
|
||||
else{
|
||||
Alert("~BLIP_76~ ~COL_NET_4~ Error! ~w~Model Is Missing From Your ISO! ~n~Action Could Not Be Performed!",false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
float dist = 15.0;
|
||||
Vehicle veh;
|
||||
uint tick;
|
||||
float x,y,z, x1,y1,z1,fx,fy,fz;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&veh);
|
||||
while(dist > 10){
|
||||
tick++;
|
||||
if(tick >= 100) break;
|
||||
GET_CHAR_COORDINATES(PLAYER_CHAR(players[ChangeNetPlayer].id),&x,&y,&z);
|
||||
GET_CAR_COORDINATES(veh,&x1,&y1,&z1);
|
||||
GET_DISTANCE_BETWEEN_COORDS_3D(x1, y1, z1, x, y, z, &dist);
|
||||
fx = (x - x1) / dist * 1200;
|
||||
fy = (y - y1) / dist * 1200;
|
||||
fz = (z - z1) / dist * 1200;
|
||||
APPLY_FORCE_TO_CAR(veh, 1,fx, fy, fz, 0, 0, 0, 1, 0, 1, 1);
|
||||
WAIT(0);
|
||||
}
|
||||
Alert("~BLIP_76~ ~c~Rammed Player With Your Vehicle!",false);
|
||||
}
|
||||
else Alert_Two("~BLIP_76~ ~COL_NET_4~Action Can Not Be Performed On This Player! ~n~ ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
if(!Is_Developer(players[index].id) && !Is_Whitelisted(players[index].id)){
|
||||
float x,y,z,h;
|
||||
if(!DOES_CHAR_EXIST(PLAYER_CHAR(players[ChangeNetPlayer].id))) return;
|
||||
GET_CHAR_HEADING(PLAYER_CHAR(players[ChangeNetPlayer].id),&h);
|
||||
int i;
|
||||
REQUEST_MODEL(0x69305DBB);
|
||||
Object fuckup;
|
||||
while(!HAS_MODEL_LOADED(0x69305DBB)) WAIT(0);
|
||||
for(i=0;i<=3;i++){
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(PLAYER_CHAR(players[ChangeNetPlayer].id),17.3f,30.0f,0.025f,&x,&y,&z);
|
||||
GET_CHAR_HEADING(PLAYER_CHAR(players[ChangeNetPlayer].id),&h);
|
||||
CREATE_OBJECT_NO_OFFSET(0x69305DBB,x,y,z,&fuckup,true);
|
||||
while(!DOES_OBJECT_EXIST(fuckup)) WAIT(0);
|
||||
SET_OBJECT_HEADING(fuckup,h+90);
|
||||
SET_OBJECT_INVINCIBLE(fuckup,1);
|
||||
SET_OBJECT_COLLISION(fuckup,1);
|
||||
FREEZE_OBJECT_POSITION(fuckup,1);
|
||||
block_net_control_of_object(fuckup);
|
||||
}
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(0x69305DBB);
|
||||
Alert_Two("~BLIP_76~ ~c~Caged Player~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else Alert_Two("~BLIP_76~ ~COL_NET_4~Action Can Not Be Performed On This Player! ~n~ ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else if(SelectedItem == 4){
|
||||
if(!Is_Developer(players[index].id) && !Is_Whitelisted(players[index].id)){
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(PLAYER_CHAR(players[ChangeNetPlayer].id),&x,&y,&z);
|
||||
ADD_EXPLOSION(x, y, z, EXPLOSION_SHIP_DESTROY, 10, false, true, 0);
|
||||
}
|
||||
else Alert_Two("~BLIP_76~ ~COL_NET_4~Action Can Not Be Performed On This Player! ~n~ ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else if(SelectedItem == 5){
|
||||
if(!Is_Developer(players[index].id) && !Is_Whitelisted(players[index].id)){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS);
|
||||
menu_item[SelectedItem].extra_val = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS);
|
||||
GET_CAR_CHAR_IS_USING(PLAYER_CHAR(players[ChangeNetPlayer].id),&Net_Vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(Net_Vehicle,&Net_Vehicle_ID);
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS)){
|
||||
if(network_control(Net_Vehicle_ID) && DOES_VEHICLE_EXIST(Net_Vehicle)){
|
||||
FREEZE_CAR_POSITION(Net_Vehicle, true);
|
||||
SET_NETWORK_ID_CAN_MIGRATE(Net_Vehicle_ID,false);
|
||||
Alert_Two("~BLIP_76~ ~c~Vehicle position frozen ~COL_NET_3~ON ~c~For ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(network_control(Net_Vehicle_ID) && DOES_VEHICLE_EXIST(Net_Vehicle)){
|
||||
FREEZE_CAR_POSITION(Net_Vehicle, false);
|
||||
Alert_Two("~BLIP_76~ ~c~Vehicle position frozen ~COL_NET_4~OFF ~c~For ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else Alert_Two("~BLIP_76~ ~COL_NET_4~Action Can Not Be Performed On This Player! ~n~ ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else if(SelectedItem == 6){
|
||||
if(!Is_Developer(players[index].id) && !Is_Whitelisted(players[index].id)){
|
||||
if(IS_CHAR_IN_ANY_CAR(PLAYER_CHAR(players[ChangeNetPlayer].id))){
|
||||
GET_CAR_CHAR_IS_USING(PLAYER_CHAR(players[ChangeNetPlayer].id),&Net_Vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(Net_Vehicle,&Net_Vehicle_ID);
|
||||
if(network_control(Net_Vehicle_ID)){
|
||||
SET_NETWORK_ID_CAN_MIGRATE(Net_Vehicle_ID, false);
|
||||
SET_CAR_COLLISION(Net_Vehicle, false);
|
||||
Alert("~BLIP_76~ ~c~Players Vehicle Is Now Phantom",false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else Alert_Two("~BLIP_76~ ~COL_NET_4~Action Can Not Be Performed On This Player! ~n~ ~w~",GET_PLAYER_NAME(players[index].id),false);
|
||||
}
|
||||
else if(SelectedItem == 7){
|
||||
ToggleBit(restrictWeaponsBitSet, players[ChangeNetPlayer].id);
|
||||
menu_item[SelectedItem].extra_val = GetBit(restrictWeaponsBitSet, players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(SelectedItem == 8){
|
||||
ToggleBit(autoDeleteVehicleBitSet, players[ChangeNetPlayer].id);
|
||||
menu_item[SelectedItem].extra_val = GetBit(autoDeleteVehicleBitSet, players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(SelectedItem == 9){
|
||||
ToggleBit(autoBurnBitSet, players[ChangeNetPlayer].id);
|
||||
menu_item[SelectedItem].extra_val = GetBit(autoBurnBitSet, players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(SelectedItem == 10){
|
||||
//MD_Teleport_ID(players[ChangeNetPlayer].id,3800,1500,-10);
|
||||
RESURRECT_NETWORK_PLAYER(players[ChangeNetPlayer].id,4000,4000,-10,0);
|
||||
char* buffer[32];
|
||||
Strcpy(buffer, "~b~MD: "); //17
|
||||
PLAYER_NAME_WITH_COLOUR(players[ChangeNetPlayer].id, &buffer); //33
|
||||
Strcat(buffer, " ~s~was teleported to the kill-zone."); //36 = 71
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(SelectedItem == 11){
|
||||
#ifdef Premium
|
||||
if(!Is_Whitelisted(players[ChangeNetPlayer].id) && Is_Premium(iPlayer)) //prints have to go in function if not good already
|
||||
{
|
||||
if(IS_CHAR_IN_ANY_CAR(PLAYER_CHAR(players[ChangeNetPlayer].id)))
|
||||
{
|
||||
int tmp_veh,nvid;
|
||||
GET_CAR_CHAR_IS_USING(PLAYER_CHAR(players[ChangeNetPlayer].id),&tmp_veh);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&nvid);
|
||||
if(network_control(nvid)) //prints in function
|
||||
{
|
||||
REMOVE_ALL_CHAR_WEAPONS(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
DELETE_CAR(&tmp_veh);
|
||||
WAIT(7);
|
||||
GIVE_WEAPON_TO_CHAR(PLAYER_CHAR(players[ChangeNetPlayer].id), WEAPON_ROCKET, AMMO_MAX, false);
|
||||
char* buffer[16];
|
||||
Strcpy(buffer, "~b~MD: "); //7
|
||||
PLAYER_NAME_WITH_COLOUR(players[ChangeNetPlayer].id, &buffer); //33
|
||||
Strcat(buffer, " ~s~was given the freeze gun."); //29 + 33 = 62
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
#endif
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
#ifdef Premium
|
||||
if(!is_driving(pPlayer)){
|
||||
Alert("~b~MD: ~s~You must be the driver of a vehicle with free seats.",false);
|
||||
return;
|
||||
}
|
||||
float mx,my,mz,mh;
|
||||
GET_CHAR_COORDINATES(pPlayer,&mx,&my,&mz);
|
||||
GET_CHAR_HEADING(pPlayer,&mh);
|
||||
int localGroup;
|
||||
GET_PLAYER_GROUP(iPlayer,&localGroup);
|
||||
if(!DOES_GROUP_EXIST(localGroup)){
|
||||
CREATE_GROUP(0,localGroup,true);
|
||||
SET_GROUP_LEADER(localGroup,pPlayer);
|
||||
}
|
||||
Teleport_iPlayer_To_PlayerIndex(players[ChangeNetPlayer].id, true);
|
||||
char* buffer[36];
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
PLAYER_NAME_WITH_COLOUR(players[ChangeNetPlayer].id, &buffer);
|
||||
Strcat(buffer, " ~s~was group-hacked.");
|
||||
//maybe delete their car too if they're in one to make group hack work better, hmm, we'll see how well this works first
|
||||
SET_GROUP_MEMBER(localGroup, PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
WAIT(500);
|
||||
REMOVE_CHAR_FROM_GROUP(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
WAIT(500);
|
||||
MD_Teleport_ID_Heading(iPlayer,mx,my,mz,mh);
|
||||
Alert(buffer, false);
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
#endif
|
||||
}
|
||||
else if(SelectedItem == 13){
|
||||
#ifdef Premium
|
||||
if(Is_Premium(iPlayer) && !Is_Whitelisted(players[ChangeNetPlayer].id))
|
||||
{
|
||||
//change_player
|
||||
int model;
|
||||
REQUEST_MODEL(MODEL_PLAYER);
|
||||
GET_CHAR_MODEL(pPlayer,&model);
|
||||
int mycar = Personal_Vehicle;
|
||||
float x,y,z,h;
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
Teleport_iPlayer_To_PlayerIndex(players[ChangeNetPlayer].id,false);
|
||||
WAIT(50);
|
||||
char* buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
PLAYER_NAME_WITH_COLOUR(players[ChangeNetPlayer].id, &buffer); //33
|
||||
Strcat(buffer, " ~s~was player-model'd."); //23 + 33 = 56
|
||||
float ox,oy,oz;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(PLAYER_CHAR(players[ChangeNetPlayer].id),0,2,0,&ox,&oy,&oz);
|
||||
SET_CHAR_COORDINATES(pPlayer,ox,oy,oz);
|
||||
change_player(MODEL_PLAYER); //pPlayer updates in function
|
||||
WAIT(10);
|
||||
if(model == MODEL_PLAYER)
|
||||
{
|
||||
model = GET_PLAYERSETTINGS_MODEL_CHOICE();
|
||||
} //have to change
|
||||
change_player(model);
|
||||
WAIT(20);
|
||||
if(DOES_VEHICLE_EXIST(mycar) && WARP_PED_INTO_VEHICLE(pPlayer,mycar))
|
||||
{
|
||||
//nothing
|
||||
}
|
||||
else
|
||||
{
|
||||
MD_Teleport_ID_Heading(iPlayer,x,y,z,h);
|
||||
}
|
||||
if(model == GET_PLAYERSETTINGS_MODEL_CHOICE())
|
||||
{
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(iPlayer);
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true);
|
||||
}
|
||||
Alert(buffer, false);
|
||||
}
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
#endif
|
||||
}
|
||||
else if(SelectedItem == 14){
|
||||
ToggleBit(constantBoomBitSet, players[ChangeNetPlayer].id);
|
||||
menu_item[SelectedItem].extra_val = GetBit(constantBoomBitSet, players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(SelectedItem == 15){
|
||||
#ifndef Premium
|
||||
Alert("Premium version only!",false);
|
||||
return;
|
||||
#endif
|
||||
#ifndef SuperAdmin
|
||||
if(Is_Whitelisted(players[ChangeNetPlayer].id))
|
||||
{
|
||||
Alert("ERROR: ~COL_NET_4~ Player is Whitelisted.",false);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
char* buffer[16];
|
||||
Strcpy(buffer, "~b~MD: "); //7
|
||||
PLAYER_NAME_WITH_COLOUR(players[ChangeNetPlayer].id, &buffer); //15 + 11 = 26 + 7 = 33
|
||||
Strcat(buffer, " ~s~was blackscreened."); //22 + 33 = 55
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(players[ChangeNetPlayer].id, false);
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
if(menu_item[SelectedItem].num_val == 1)MD_Teleport_ID(players[ChangeNetPlayer].id,2425.5264,389.2336,5.8487);//TP_x = 2425.5264 , TP_y = 389.2336 , TP_z = 5.8487;//Airport Building
|
||||
else if(menu_item[SelectedItem].num_val == 2)MD_Teleport_ID(players[ChangeNetPlayer].id,704.5024,-270.7895,5.1121);//TP_x = 704.5024, TP_y = -270.7895, TP_z = 5.1121;//Barge Basement
|
||||
else if(menu_item[SelectedItem].num_val == 3)MD_Teleport_ID(players[ChangeNetPlayer].id,-7.6952,356.7396,-2.9570);//TP_x = -7.6952, TP_y = 356.7396, TP_z = -2.9570;//Subway
|
||||
else if(menu_item[SelectedItem].num_val == 4)MD_Teleport_ID(players[ChangeNetPlayer].id,-2072.8728,25.4543,25.4543);//TP_x = -2072.8728, TP_y = 25.4543, TP_z = 96.2373;//Isolate Building
|
||||
else if(menu_item[SelectedItem].num_val == 5)MD_Teleport_ID(players[ChangeNetPlayer].id,-605.3948,-749.7060,94.9000);//TP_x = -605.3948, TP_y = -749.7060, TP_z = 94.9000; Alert("~BLIP_76~ ~c~Teleported to Statue Cup",false);}
|
||||
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id ,MODEL_PATRIOT);
|
||||
WAIT(100);
|
||||
delete_vehicles(9999,true,"all");
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~ Freeze-Patriot Given to Player ~n~ ~w~ ",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id ,MODEL_ROMERO);
|
||||
WAIT(100);
|
||||
delete_vehicles(9999,true,"all");
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~ Freeze-Romero Given to Player ~n~ ~w~ ",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id ,MODEL_LIMO2);
|
||||
WAIT(100);
|
||||
delete_vehicles(9999,true,"all");
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~ Freeze-Limo Given to Player ~n~ ~w~ ",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id ,MODEL_SCHAFTER3);
|
||||
WAIT(100);
|
||||
delete_vehicles(9999,true,"all");
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~ Freeze-Shafter 3 Given to Player ~n~ ~w~ ",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id ,MODEL_SCHAFTER2);
|
||||
WAIT(100);
|
||||
delete_vehicles(9999,true,"all");
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~ Freeze-Shafter 2 Given to Player ~n~ ~w~ ",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id,MODEL_SCHAFTER2);
|
||||
WAIT(100);
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id,MODEL_SCHAFTER3);
|
||||
WAIT(100);
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id,MODEL_LIMO2);
|
||||
WAIT(100);
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id,MODEL_ROMERO);
|
||||
WAIT(100);
|
||||
MD_VEHICLE_SPAWNER_ON_ID(players[ChangeNetPlayer].id,MODEL_PATRIOT);
|
||||
WAIT(100);
|
||||
delete_vehicles(9999,true,"all");
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~ Freeze Mix (All) Given to Player ~n~ ~w~ ",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 18)
|
||||
{
|
||||
|
||||
}
|
||||
else if(SelectedItem == 19)
|
||||
{
|
||||
|
||||
}
|
||||
else if(SelectedItem == 20){
|
||||
if(DOES_CHAR_EXIST(PLAYER_CHAR(players[ChangeNetPlayer].id))){
|
||||
if(!Is_Developer(players[ChangeNetPlayer].id) && !Is_Whitelisted(players[ChangeNetPlayer].id)){
|
||||
REMOVE_ALL_CHAR_WEAPONS(PLAYER_CHAR(players[ChangeNetPlayer].id));
|
||||
WAIT(20);
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~Disarmed Player~w~",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
else Alert_Two("~BLIP_76~ ~COL_NET_4~Action Can Not Be Performed On This Player! ~n~ ~w~",GET_PLAYER_NAME(players[ChangeNetPlayer].id),false);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 21)
|
||||
{
|
||||
if(!PLAYER_HAS_CHAR(players[ChangeNetPlayer].id))return;
|
||||
Ped NetPed;
|
||||
GET_PLAYER_CHAR(players[ChangeNetPlayer].id,&NetPed);
|
||||
Vehicle NetVehicle;
|
||||
Object Dart[7];
|
||||
Dart[0] = 0xF1388248;
|
||||
Dart[1] = 0xDF085DE8;
|
||||
Dart[2] = 0xA7DF6F93;
|
||||
Dart[3] = 0x5CC5D961;
|
||||
Dart[4] = 0x4A8EB4F3;
|
||||
Dart[5] = 0x2601EBDA;
|
||||
Dart[6] = 0x37E38F9D;
|
||||
int DartID[7];
|
||||
Object DartObj[7];
|
||||
Vehicle veh;
|
||||
bool inveh;
|
||||
int i;
|
||||
for(i = 0; i <= 6; i++)
|
||||
{
|
||||
if(!LoadModel(Dart[i]))continue;
|
||||
CREATE_OBJECT(Dart[i],0,0,0,&DartObj[i],true);
|
||||
if(!DOES_OBJECT_EXIST(DartObj[i]))
|
||||
{
|
||||
print("~r~Object Doesn't Exist, Continuing To Next...");
|
||||
continue;
|
||||
}
|
||||
GET_NETWORK_ID_FROM_OBJECT(Dart[i],&DartID[i]);
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(DartID[i]);
|
||||
SET_OBJECT_VISIBLE(DartObj[i],false);
|
||||
if(!IS_CHAR_IN_ANY_CAR(NetPed))
|
||||
{
|
||||
print("~b~Attaching Object To Ped Physically...");
|
||||
WAIT(35);
|
||||
ATTACH_OBJECT_TO_PED_PHYSICALLY(DartObj[i],NetPed,false,0,0.0,0.0,0.0,0.0,0.0,0.0,false,false);
|
||||
}
|
||||
else
|
||||
{
|
||||
GET_CAR_CHAR_IS_USING(NetPed,&NetVehicle);
|
||||
ATTACH_OBJECT_TO_CAR_PHYSICALLY(DartObj[i],NetVehicle,0,0,0.0,0.0,0.0,0.0,false,false);
|
||||
print("~b~Attaching Object to Vehicle Physically");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else{
|
||||
if(SelectedItem > 0)
|
||||
{
|
||||
Alert(Error_Char_Missing,false);
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
1233
Trident/MD_Contents/MDC_V13_Admin_Options.c
Normal file
1233
Trident/MD_Contents/MDC_V13_Admin_Options.c
Normal file
File diff suppressed because it is too large
Load Diff
278
Trident/MD_Contents/MDC_Vehicle_Car_Spawner.c
Normal file
278
Trident/MD_Contents/MDC_Vehicle_Car_Spawner.c
Normal file
@@ -0,0 +1,278 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Car_Spawner_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Full Vehicle Spawner";
|
||||
AddSubMenu("Quick Spawner ~y~(Favourites) ~PAD_RIGHT~ ");
|
||||
AddSubMenu("Sports ~PAD_RIGHT~");//3
|
||||
AddSubMenu("Two Door ~PAD_RIGHT~");
|
||||
AddSubMenu("Four Door ~PAD_RIGHT~");
|
||||
AddSubMenu("Four Door (2) ~PAD_RIGHT~");
|
||||
AddSubMenu("Vintage ~PAD_RIGHT~");
|
||||
AddSubMenu("Off Road And SUV ~PAD_RIGHT~");
|
||||
AddSubMenu("Junkers ~PAD_RIGHT~");
|
||||
AddSubMenu("Public Service ~PAD_RIGHT~");
|
||||
AddSubMenu("Emergency Service ~PAD_RIGHT~");
|
||||
AddSubMenu("Commercial And Workplace ~PAD_RIGHT~");
|
||||
AddSubMenu("Commercial And Workplace Part 2 ~PAD_RIGHT~");
|
||||
AddSubMenu("Bikes ~PAD_RIGHT~");
|
||||
AddSubMenu("Boats ~PAD_RIGHT~");
|
||||
AddSubMenu("Helicopters ~PAD_RIGHT~");
|
||||
return;
|
||||
}
|
||||
|
||||
void MC_Car_Spawner_Action(uint player){
|
||||
|
||||
}
|
||||
|
||||
void Favourites_setup(uint player){
|
||||
MENU_SUB_HEADER = "Favorites";
|
||||
AddGxt_Model_CB(MODEL_COMET);
|
||||
AddGxt_Model_CB(MODEL_TURISMO);
|
||||
AddGxt_Model_CB(MODEL_INFERNUS);
|
||||
AddGxt_Model_CB(MODEL_SUPERGT);
|
||||
AddGxt_Model_CB(MODEL_SULTANRS);
|
||||
AddGxt_Model_CB(MODEL_ORACLE);
|
||||
AddGxt_Model_CB(MODEL_PATRIOT);
|
||||
AddGxt_Model_CB(MODEL_FBI);
|
||||
AddGxt_Model_CB(MODEL_BUS);
|
||||
AddGxt_Model_CB(MODEL_SQUALO);
|
||||
AddGxt_Model_CB(MODEL_NRG900);
|
||||
AddGxt_Model_CB(MODEL_MAVERICK);
|
||||
AddGxt_Model_CB(MODEL_ANNIHILATOR);
|
||||
}
|
||||
|
||||
|
||||
void Fly_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Helicopters";
|
||||
AddGxt_Model_CB(MODEL_ANNIHILATOR);
|
||||
AddGxt_Model_CB(MODEL_MAVERICK);
|
||||
AddGxt_Model_CB(MODEL_POLMAV);
|
||||
AddGxt_Model_CB(MODEL_TOURMAV);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_BUZZARD);
|
||||
AddGxt_Model_CB(MODEL_SKYLIFT);
|
||||
AddGxt_Model_CB(MODEL_SWIFT);
|
||||
}
|
||||
}
|
||||
|
||||
void Bike_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Bikes";
|
||||
AddGxt_Model_CB(MODEL_BOBBER);
|
||||
AddGxt_Model_CB(MODEL_FAGGIO);
|
||||
AddGxt_Model_CB(MODEL_HELLFURY);
|
||||
AddGxt_Model_CB(MODEL_NRG900);
|
||||
AddGxt_Model_CB(MODEL_PCJ);
|
||||
AddGxt_Model_CB(MODEL_SANCHEZ);
|
||||
AddGxt_Model_CB(MODEL_ZOMBIEB);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_AKUMA);
|
||||
AddGxt_Model_CB(MODEL_BATI2);
|
||||
AddGxt_Model_CB(MODEL_DOUBLE);
|
||||
AddGxt_Model_CB(MODEL_FAGGIO2);
|
||||
AddGxt_Model_CB(MODEL_HAKUCHOU);
|
||||
AddGxt_Model_CB(MODEL_HEXER);
|
||||
AddGxt_Model_CB(MODEL_VADER);
|
||||
}
|
||||
}
|
||||
void Boat_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Boats";
|
||||
AddGxt_Model_CB(MODEL_DINGHY);
|
||||
AddGxt_Model_CB(MODEL_JETMAX);
|
||||
AddGxt_Model_CB(MODEL_MARQUIS);
|
||||
AddGxt_Model_CB(MODEL_PREDATOR);
|
||||
AddGxt_Model_CB(MODEL_REEFER);
|
||||
AddGxt_Model_CB(MODEL_SQUALO);
|
||||
AddGxt_Model_CB(MODEL_TROPIC);
|
||||
AddGxt_Model_CB(MODEL_TUGA);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_BLADE);
|
||||
AddGxt_Model_CB(MODEL_FLOATER);
|
||||
AddGxt_Model_CB(MODEL_SMUGGLER);
|
||||
}
|
||||
|
||||
}
|
||||
void Workplace_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Commercial And Workplace";
|
||||
AddGxt_Model_CB(MODEL_AIRTUG);
|
||||
AddGxt_Model_CB(MODEL_BENSON);
|
||||
AddGxt_Model_CB(MODEL_BIFF);
|
||||
AddGxt_Model_CB(MODEL_BOXVILLE);
|
||||
AddGxt_Model_CB(MODEL_BURRITO);
|
||||
AddGxt_Model_CB(MODEL_BURRITO2);
|
||||
AddGxt_Model_CB(MODEL_FEROCI2);
|
||||
AddGxt_Model_CB(MODEL_FLATBED);
|
||||
AddGxt_Model_CB(MODEL_FORKLIFT);
|
||||
AddGxt_Model_CB(MODEL_MULE);
|
||||
AddGxt_Model_CB(MODEL_MRTASTY);
|
||||
AddGxt_Model_CB(MODEL_PACKER);
|
||||
AddGxt_Model_CB(MODEL_PERENNIAL2);
|
||||
AddGxt_Model_CB(MODEL_PHANTOM);
|
||||
}
|
||||
void Workplace_2_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Commercial And Workplace (2)";
|
||||
AddGxt_Model_CB(MODEL_PONY);
|
||||
AddGxt_Model_CB(MODEL_RIPLEY);
|
||||
AddGxt_Model_CB(MODEL_SPEEDO);
|
||||
AddGxt_Model_CB(MODEL_STOCKADE);
|
||||
AddGxt_Model_CB(MODEL_STEED);
|
||||
AddGxt_Model_CB(MODEL_YANKEE);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_CADDY);
|
||||
}
|
||||
}
|
||||
void Emergency_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Emergency Service";
|
||||
AddGxt_Model_CB(MODEL_AMBULANCE);
|
||||
AddGxt_Model_CB(MODEL_FBI);
|
||||
AddGxt_Model_CB(MODEL_FIRETRUK);
|
||||
AddGxt_Model_CB(MODEL_NOOSE);
|
||||
AddGxt_Model_CB(MODEL_POLICE);
|
||||
AddGxt_Model_CB(MODEL_POLICE2);
|
||||
AddGxt_Model_CB(MODEL_POLPATRIOT);
|
||||
AddGxt_Model_CB(MODEL_PSTOCKADE);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_APC);
|
||||
AddGxt_Model_CB(MODEL_POLICE3);
|
||||
AddGxt_Model_CB(MODEL_POLICE4);
|
||||
AddGxt_Model_CB(MODEL_POLICEB);
|
||||
AddGxt_Model_CB(MODEL_POLICEW);
|
||||
}
|
||||
}
|
||||
void Four_Doors_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Four Door";
|
||||
AddGxt_Model_CB(MODEL_ADMIRAL);
|
||||
AddGxt_Model_CB(MODEL_CHAVOS);
|
||||
AddGxt_Model_CB(MODEL_COGNOSCENTI);
|
||||
AddGxt_Model_CB(MODEL_DF8);
|
||||
AddGxt_Model_CB(MODEL_DILETTANTE);
|
||||
AddGxt_Model_CB(MODEL_EMPEROR);
|
||||
AddGxt_Model_CB(MODEL_ESPERANTO);
|
||||
AddGxt_Model_CB(MODEL_FEROCI);
|
||||
AddGxt_Model_CB(MODEL_HAKUMAI);
|
||||
AddGxt_Model_CB(MODEL_INGOT);
|
||||
AddGxt_Model_CB(MODEL_INTRUDER);
|
||||
AddGxt_Model_CB(MODEL_LOKUS);
|
||||
AddGxt_Model_CB(MODEL_MARBELLA);
|
||||
AddGxt_Model_CB(MODEL_MERIT);
|
||||
}
|
||||
void Four_Doors__2_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Four Door (2)";
|
||||
AddGxt_Model_CB(MODEL_ORACLE);
|
||||
AddGxt_Model_CB(MODEL_PINNACLE);
|
||||
AddGxt_Model_CB(MODEL_PMP600);
|
||||
AddGxt_Model_CB(MODEL_PREMIER);
|
||||
AddGxt_Model_CB(MODEL_PRES);
|
||||
AddGxt_Model_CB(MODEL_PRIMO);
|
||||
AddGxt_Model_CB(MODEL_ROM);
|
||||
AddGxt_Model_CB(MODEL_SCHAFTER);
|
||||
AddGxt_Model_CB(MODEL_SOLAIR);
|
||||
AddGxt_Model_CB(MODEL_STRATUM);
|
||||
AddGxt_Model_CB(MODEL_VINCENT);
|
||||
AddGxt_Model_CB(MODEL_WASHINGTON);
|
||||
AddGxt_Model_CB(MODEL_WILLARD);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_SERRANO);
|
||||
AddGxt_Model_CB(MODEL_SCHAFTER2);
|
||||
}
|
||||
}
|
||||
void Off_Road_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Off-Road And SUV";
|
||||
AddGxt_Model_CB(MODEL_BOBCAT);
|
||||
AddGxt_Model_CB(MODEL_CAVALCADE);
|
||||
AddGxt_Model_CB(MODEL_FXT);
|
||||
AddGxt_Model_CB(MODEL_E109);
|
||||
AddGxt_Model_CB(MODEL_HABANERO);
|
||||
AddGxt_Model_CB(MODEL_HUNTLEY);
|
||||
AddGxt_Model_CB(MODEL_LANDSTALKER);
|
||||
AddGxt_Model_CB(MODEL_MINIVAN);
|
||||
AddGxt_Model_CB(MODEL_MOONBEAM);
|
||||
AddGxt_Model_CB(MODEL_PATRIOT);
|
||||
AddGxt_Model_CB(MODEL_PERENNIAL);
|
||||
AddGxt_Model_CB(MODEL_RANCHER);
|
||||
AddGxt_Model_CB(MODEL_REBLA);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_CAVALCADE2);
|
||||
}
|
||||
}
|
||||
void Classics_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Vintage";
|
||||
AddGxt_Model_CB(MODEL_BUCCANEER);
|
||||
AddGxt_Model_CB(MODEL_DUKES);
|
||||
AddGxt_Model_CB(MODEL_FACTION);
|
||||
AddGxt_Model_CB(MODEL_MANANA);
|
||||
AddGxt_Model_CB(MODEL_PEYOTE);
|
||||
AddGxt_Model_CB(MODEL_RUINER);
|
||||
AddGxt_Model_CB(MODEL_SABRE);
|
||||
AddGxt_Model_CB(MODEL_SABREGT);
|
||||
AddGxt_Model_CB(MODEL_STALION);
|
||||
AddGxt_Model_CB(MODEL_VIGERO);
|
||||
AddGxt_Model_CB(MODEL_VIRGO);
|
||||
AddGxt_Model_CB(MODEL_VOODOO);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_TAMPA);
|
||||
}
|
||||
}
|
||||
|
||||
void Public_Service_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Public Service";
|
||||
AddGxt_Model_CB(MODEL_BUS);
|
||||
AddGxt_Model_CB(MODEL_CABBY);
|
||||
AddGxt_Model_CB(MODEL_ROMERO);
|
||||
AddGxt_Model_CB(MODEL_TAXI);
|
||||
AddGxt_Model_CB(MODEL_TAXI2);
|
||||
AddGxt_Model_CB(MODEL_TRASH);
|
||||
AddGxt_Model_CB(MODEL_STRETCH);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_LIMO2);
|
||||
}
|
||||
}
|
||||
|
||||
void Rusty_Cars_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Junkers";
|
||||
AddGxt_Model_CB(MODEL_EMPEROR2);
|
||||
AddGxt_Model_CB(MODEL_SABRE2);
|
||||
AddGxt_Model_CB(MODEL_VIGERO2);
|
||||
}
|
||||
|
||||
void Sport_Cars_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Sports";
|
||||
AddGxt_Model_CB(MODEL_BANSHEE);
|
||||
AddGxt_Model_CB(MODEL_COMET);
|
||||
AddGxt_Model_CB(MODEL_COQUETTE);
|
||||
AddGxt_Model_CB(MODEL_FELTZER);
|
||||
AddGxt_Model_CB(MODEL_INFERNUS);
|
||||
AddGxt_Model_CB(MODEL_SULTAN);
|
||||
AddGxt_Model_CB(MODEL_SENTINEL);
|
||||
AddGxt_Model_CB(MODEL_SULTANRS);
|
||||
AddGxt_Model_CB(MODEL_SUPERGT);
|
||||
AddGxt_Model_CB(MODEL_TURISMO);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_BUFFALO);
|
||||
AddGxt_Model_CB(MODEL_BULLET);
|
||||
AddGxt_Model_CB(MODEL_F620);
|
||||
}
|
||||
}
|
||||
void Two_Doors_Setup(uint player){
|
||||
MENU_SUB_HEADER = "Two Door";
|
||||
AddGxt_Model_CB(MODEL_BLISTA);
|
||||
AddGxt_Model_CB(MODEL_FORTUNE);
|
||||
AddGxt_Model_CB(MODEL_FUTO);
|
||||
AddGxt_Model_CB(MODEL_URANUS);
|
||||
if(Episode == 2){
|
||||
AddGxt_Model_CB(MODEL_SUPERD);
|
||||
AddGxt_Model_CB(MODEL_SUPERD2);
|
||||
}
|
||||
}
|
||||
|
||||
void MD_Vehicle_Spawner(const int player_ID){
|
||||
MD_VEHICLE_SPAWNER_ON_ID(player_ID,menu_item[SelectedItem].num_val);
|
||||
}
|
||||
|
||||
|
||||
|
||||
1284
Trident/MD_Contents/MDC_Vehicle_Garage_Net.c
Normal file
1284
Trident/MD_Contents/MDC_Vehicle_Garage_Net.c
Normal file
File diff suppressed because it is too large
Load Diff
723
Trident/MD_Contents/MDC_Vehicle_Garage_Pplayer.c
Normal file
723
Trident/MD_Contents/MDC_Vehicle_Garage_Pplayer.c
Normal file
@@ -0,0 +1,723 @@
|
||||
/**
|
||||
* @ MD EXTEND+
|
||||
* @ Version MDv13 TRIDENT(Essentials Based)
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
//extern void EXPLODE_CAR(Vehicle vehicle, boolean unknownTrue, boolean unknownFalse); //etter than spawnin an explosion
|
||||
//ANCHOR_BOAT(Vehicle boat, boolean anchor); //NEED THIS!!!
|
||||
|
||||
//NEEDED! Seat swap: int value (NATHAN CAN RIG THIS PERFECT IF U LIKE IT)
|
||||
|
||||
void MD_VehOpt_Pplayer_Setup(void){
|
||||
MENU_SUB_HEADER = "Vehicle Options";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ V E H I C L E O P T I O N S ~BLIP_94~"); //5
|
||||
AddSubMenu("Full Spawner ~PAD_RIGHT~"); //6
|
||||
AddSubMenu("Garage ~y~(Addons & Colours) ~PAD_RIGHT~"); //7
|
||||
AddSubMenu("Upgrades ~PAD_RIGHT~"); //8
|
||||
AddFunction_Value("Quick Spawn",13); //9
|
||||
AddFunction_Value("General",8); //10
|
||||
AddFunction_Value("Spawn Settings", 8); //11
|
||||
AddFunction_Value("Physics", 3); //12
|
||||
AddFunction_Value("Stunt Modes", 5); //13
|
||||
AddFunction_Value("Speed Settings",3); //14
|
||||
AddFunction_Value("Auto-lock",3); //15
|
||||
AddFunction_Value("Actions", 6); //16
|
||||
AddFunction_Value("Forces",9); //17
|
||||
AddFunction_Value("Heading",6); //18
|
||||
AddFunction_Value("Transformer",6); //19
|
||||
AddFunction_Value("Heli Weapon Type",3); //20
|
||||
AddFunction_Value("Armed Vehicles",2); //21
|
||||
/**Remember Strings and numvals**/
|
||||
item_highlighted = 6;
|
||||
menu_item[15].num_val = GetByteInSet(WeatherTimeAutoLockByteSet,VEHICLE_AUTOLOCK);
|
||||
//menu_item[20].num_val == Vehicle_Weapon;
|
||||
}
|
||||
|
||||
void MD_VehOpt_Pplayer_Action(void){
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION();
|
||||
//Jumpover 5
|
||||
//Sub Spawner 6
|
||||
//Sub Addons 7
|
||||
//Sub Upgrades 8
|
||||
if(SelectedItem == 10 || SelectedItem == 11 || SelectedItem == 15 || SelectedItem == 16 || SelectedItem == 17 || SelectedItem == 18 || SelectedItem == 19 || SelectedItem == 20 || SelectedItem == 21 ){
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
Alert(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
else GET_CAR_CHAR_IS_USING(pPlayer,&Personal_Vehicle);
|
||||
}
|
||||
if(SelectedItem == 9){//DONE
|
||||
int Vehicle[14];
|
||||
Vehicle[1] = MODEL_COMET;
|
||||
Vehicle[2] = MODEL_TURISMO;
|
||||
Vehicle[3] = MODEL_INFERNUS;
|
||||
Vehicle[4] = MODEL_SUPERGT;
|
||||
Vehicle[5] = MODEL_SULTANRS;
|
||||
Vehicle[6] = MODEL_ORACLE;
|
||||
Vehicle[7] = MODEL_PATRIOT;
|
||||
Vehicle[8] = MODEL_FBI;
|
||||
Vehicle[9] = MODEL_BUS;
|
||||
Vehicle[10] = MODEL_SQUALO;
|
||||
Vehicle[11] = MODEL_NRG900;
|
||||
Vehicle[12] = MODEL_MAVERICK;
|
||||
Vehicle[13] = MODEL_ANNIHILATOR;
|
||||
MD_VEHICLE_SPAWNER_ON_ID(iPlayer,Vehicle[(menu_item[SelectedItem].num_val)]);
|
||||
}
|
||||
/**General**/
|
||||
if(SelectedItem == 10){//DONE
|
||||
if(menu_item[SelectedItem].num_val == 1){ // Fix & Wash
|
||||
FIX_CAR(Personal_Vehicle);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,true,true);
|
||||
SET_CAR_PROOFS( Personal_Vehicle, 1, 1, 1, 1, 1 );
|
||||
SET_VEHICLE_DIRT_LEVEL(Personal_Vehicle, 0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){ //Flip
|
||||
float h;
|
||||
GET_CAR_HEADING(Personal_Vehicle,&h);
|
||||
SET_VEHICLE_QUATERNION(Personal_Vehicle,0,0,0,0);
|
||||
SET_CAR_HEADING(Personal_Vehicle,h);
|
||||
SET_CAR_ON_GROUND_PROPERLY(Personal_Vehicle);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
int i;
|
||||
SET_CAN_BURST_CAR_TYRES(Personal_Vehicle,true);
|
||||
for(i = 0; i < 8; i++)
|
||||
{
|
||||
if(IS_CAR_TYRE_BURST(Personal_Vehicle,i)) continue;
|
||||
BURST_CAR_TYRE(Personal_Vehicle,i);
|
||||
}
|
||||
//Burst Tyres
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){ //Fix tyres --> This doesnt work well, for a bike only front wheel is fixed, same for vehicle, not all wheels get fixed
|
||||
int num_tyres = 0;
|
||||
int i;
|
||||
for(i = 0; i < 8; i++)
|
||||
{
|
||||
if(IS_CAR_TYRE_BURST(Personal_Vehicle,i))
|
||||
{
|
||||
FIX_CAR_TYRE(Personal_Vehicle,i);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){ // Okay..Works
|
||||
SET_CHAR_VISIBLE(pPlayer,!IS_CHAR_VISIBLE(pPlayer));
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){ // Sets invisible, doesnt reverse it --> This needs work
|
||||
if(IS_CHAR_VISIBLE(pPlayer)){
|
||||
SET_CHAR_VISIBLE(pPlayer,false);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&Personal_Vehicle);
|
||||
SET_CAR_VISIBLE(Personal_Vehicle, false);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE,true);
|
||||
}
|
||||
}
|
||||
else{
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&Personal_Vehicle);
|
||||
SET_CAR_VISIBLE(Personal_Vehicle, true);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE,false);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){ //Blips need work too. 2 things : Hide/show Blip Ped (ped alone) / or / Hide/show Blip Ped (+ vehicle visible/invisible)
|
||||
|
||||
if((GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_REMOVE_BLIP) || GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_REMOVE_BLIP))){
|
||||
SetBit(VehicleOptionsBitSet,VEHICLE_OPTION_REMOVE_BLIP,false);
|
||||
SetBit(pPlayerOptionsBitSet,PLAYER_OPTION_REMOVE_BLIP,false);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&Personal_Vehicle);
|
||||
SET_CAR_VISIBLE(Personal_Vehicle, true);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE,false);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY,false);
|
||||
}
|
||||
SET_PLAYER_CONTROL(iPlayer, true);
|
||||
}
|
||||
else{
|
||||
SetBit(VehicleOptionsBitSet,VEHICLE_OPTION_REMOVE_BLIP,true);
|
||||
SetBit(pPlayerOptionsBitSet,PLAYER_OPTION_REMOVE_BLIP,true);
|
||||
}
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
MD_Delete_Objects_On_Vehicle(iPlayer); //will only print if it deletes an object
|
||||
DELETE_CAR(&Personal_Vehicle);
|
||||
}
|
||||
}
|
||||
/**Active Spawn Settings**/
|
||||
else if(SelectedItem == 11){ //DONE
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
ToggleBit(VehicleOptionsBitSet,VEHICLE_OPTION_ALL_UPGRADES);
|
||||
int i;
|
||||
for(i=0;i<10;i++)TURN_OFF_VEHICLE_EXTRA(Personal_Vehicle, i, !GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_ALL_UPGRADES));
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE);
|
||||
/* //This is looped buddy..
|
||||
SET_CAR_CAN_BE_DAMAGED(Personal_Vehicle,!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(Personal_Vehicle,!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAN_BURST_CAR_TYRES(Personal_Vehicle,!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
*/
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE)){
|
||||
FIX_CAR(Personal_Vehicle);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,true,true);
|
||||
SET_VEHICLE_DIRT_LEVEL(Personal_Vehicle, 0);
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_SIREN);
|
||||
SWITCH_CAR_SIREN(Personal_Vehicle,GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SIREN));
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4)ToggleBit(VehicleOptionsBitSet,VEHICLE_OPTION_RAINBOW);
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
ToggleBit(VehicleOptionsBitSet,VEHICLE_OPTION_ENGINE);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ENGINE),GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ENGINE));
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Coloursetting_Personal = !Coloursetting_Personal;
|
||||
if(Coloursetting_Personal )Alert("~b~MD: ~y~Personal Vehicle: ~s~This will enable saved colors on next spawns!",false);
|
||||
else Alert("~b~MD: ~y~Personal Vehicle: ~s~Random colours will be used next spawns!",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
Coloursetting_Net = !Coloursetting_Net;
|
||||
if(Coloursetting_Net )Alert("~b~MD: ~y~Net Vehicles: ~s~This will enable saved colors on next spawns!",false);
|
||||
else Alert("~b~MD: ~y~Net Vehicles: ~s~Random colours will be used next spawns!",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
Coloursetting_Net = false;
|
||||
Coloursetting_Personal = false;
|
||||
Alert("~b~MD: ~y~Use of saved colours disabled.~n~~s~Random colours will be used next spawns!",false);
|
||||
}
|
||||
}
|
||||
/**Physics**/
|
||||
else if(SelectedItem == 12){//DONE
|
||||
if(menu_item[SelectedItem].num_val == 1)TOGGLE_DRIVE_WALK_WATER_FOR_PLAYER(iPlayer);
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY);
|
||||
Alert_Two("~b~MD: ~s~Desolidified vehicle", GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY) ? PrintON : PrintOFF ,false);
|
||||
//if(GetBit(VehicleOptionsBitSet, !VEHICLE_OPTION_DESOLIDIFY))SET_CAR_COLLISION(Personal_Vehicle,true); // This fixes the issue //can't see it would buddy, you have !number here.. wtf?
|
||||
if(!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY)) SET_CAR_COLLISION(Personal_Vehicle,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3)ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_AUTO_BOAT);
|
||||
}
|
||||
/**Handling**/
|
||||
else if(SelectedItem == 13){//DONE
|
||||
if(menu_item[SelectedItem].num_val == 1)ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_JUMP);
|
||||
else if(menu_item[SelectedItem].num_val == 2)ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_DRIFT);
|
||||
else if(menu_item[SelectedItem].num_val == 3)ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_LOWER);
|
||||
else if(menu_item[SelectedItem].num_val == 4)ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_STICK_GROUND);
|
||||
else if(menu_item[SelectedItem].num_val == 5)ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_BIKE);
|
||||
|
||||
}
|
||||
/**Speed settings**/
|
||||
else if(SelectedItem == 14){//DONE
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_NORMAL_SPEED, true);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_SPEED,false);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_TURBO_SPEED,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_TURBO_SPEED);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_SPEED,false);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_NORMAL_SPEED,false);//Just used to highlight
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_SPEED);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_TURBO_SPEED,false);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_NORMAL_SPEED,false);//Just used to highlight
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 15){//Lock modes, should contain all lock modes
|
||||
//Add as item 1 : SET_VEHICLE_LOCKED_WITHOUT_NET_CONTROL_REQUEST(Personal_Vehicle, !IS_CHARS_VEHICLE_LOCKED(PLAYER_CHAR(iPlayer)));
|
||||
#ifndef Premium
|
||||
if(menu_item[SelectedItem].num_val == 2){//Unlock for friends
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, VEHICLE_AUTOLOCK, menu_item[SelectedItem].num_val);
|
||||
}
|
||||
/**Actions**/
|
||||
else if(SelectedItem == 16){ //Actions
|
||||
if(menu_item[SelectedItem].num_val == 1 && DOES_VEHICLE_EXIST(Personal_Vehicle)){
|
||||
float x,y,z,h;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(pPlayer,1.5f,5.0f,0.0f,&x,&y,&z);
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
h += 50.0f; //drivers seat facing you, open le door //maybe put like, -= 70.0f
|
||||
int car_clone;
|
||||
Clone_Car(Personal_Vehicle, x, y, z, h, &car_clone); //GetPlayerVeh() == works
|
||||
OPEN_CAR_DOOR(car_clone, 0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2)FREEZE_CAR_POSITION(Personal_Vehicle,true);
|
||||
else if(menu_item[SelectedItem].num_val == 3)FREEZE_CAR_POSITION(Personal_Vehicle,false);
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
int z;
|
||||
for(z = 0; z < 4; z++){
|
||||
BREAK_CAR_DOOR(Personal_Vehicle,z,true);
|
||||
BURST_CAR_TYRE(Personal_Vehicle,z);
|
||||
REMOVE_CAR_WINDOW(Personal_Vehicle,z);
|
||||
}
|
||||
START_CAR_FIRE(Personal_Vehicle);
|
||||
SET_ENGINE_HEALTH(Personal_Vehicle,-5);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,false,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
Shuffle_Vehicle_Seat();
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
REMOVE_CHAR_FROM_CAR_MAINTAIN_POSITION(pPlayer,Personal_Vehicle);
|
||||
}
|
||||
}
|
||||
/**Forces**/
|
||||
else if(SelectedItem == 17){ //DONE
|
||||
if(menu_item[SelectedItem].num_val == 1)APPLY_FORCE_TO_CAR(Personal_Vehicle,3,0,0,1000,0,0,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 2)APPLY_FORCE_TO_CAR(Personal_Vehicle,3,0,0,-1000,0,0,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 3)APPLY_FORCE_TO_CAR(Personal_Vehicle,3,-60,0,0,0,-60,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 4)APPLY_FORCE_TO_CAR(Personal_Vehicle,3,60,0,0,0,-60,0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 5)APPLY_FORCE_TO_CAR(Personal_Vehicle,3,0,60,10.0,0,0,-10.0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 6)APPLY_FORCE_TO_CAR(Personal_Vehicle,3,0,-60,10.0,0,0,-10.0,0, 1, 1, 1);
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_FREEZE_POS );
|
||||
FREEZE_CAR_POSITION(Personal_Vehicle,GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_FREEZE_POS));
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
int z;
|
||||
for(z = 0; z < 4; z++){
|
||||
BREAK_CAR_DOOR(Personal_Vehicle,z,true);
|
||||
BURST_CAR_TYRE(Personal_Vehicle,z);
|
||||
REMOVE_CAR_WINDOW(Personal_Vehicle,z);
|
||||
}
|
||||
START_CAR_FIRE(Personal_Vehicle);
|
||||
SET_ENGINE_HEALTH(Personal_Vehicle,-5);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,false,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
FIX_CAR(Personal_Vehicle);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,true,true);
|
||||
SET_VEHICLE_DIRT_LEVEL(Personal_Vehicle, 0);
|
||||
}
|
||||
}
|
||||
/**Heading**/
|
||||
else if(SelectedItem == 18){
|
||||
float Vehicle_Heading_Change,speed;
|
||||
if(menu_item[SelectedItem].num_val > 0 || menu_item[SelectedItem].num_val < 6){
|
||||
GET_CAR_SPEED(Personal_Vehicle,&speed);
|
||||
GET_CAR_HEADING(Personal_Vehicle,&Vehicle_Heading_Change);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 1)SET_CAR_FORWARD_SPEED(Personal_Vehicle,speed*3);
|
||||
if(menu_item[SelectedItem].num_val == 2){
|
||||
SET_CAR_HEADING(Personal_Vehicle,Vehicle_Heading_Change-180);
|
||||
SET_CAR_FORWARD_SPEED(Personal_Vehicle,speed*3);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 3){
|
||||
SET_CAR_HEADING(Personal_Vehicle,Vehicle_Heading_Change - 180);
|
||||
SET_CAR_FORWARD_SPEED(Personal_Vehicle,speed);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 4){
|
||||
SET_CAR_HEADING(Personal_Vehicle,Vehicle_Heading_Change + 90.00f);
|
||||
SET_CAR_FORWARD_SPEED(Personal_Vehicle,speed);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 5){
|
||||
SET_CAR_HEADING(Personal_Vehicle,Vehicle_Heading_Change - 90.00f);
|
||||
SET_CAR_FORWARD_SPEED(Personal_Vehicle,speed);
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 6){
|
||||
ToggleBit(VehicleOptionsBitSet, VEHICLE_OPTION_ROTATE);
|
||||
}
|
||||
}
|
||||
/**Vehicle Transformer**/
|
||||
else if(SelectedItem == 19) //Bracket doesn't go here
|
||||
{ //Bracket being here makes it much easier to read
|
||||
if(menu_item[SelectedItem].num_val == 1) //Bracket doesn't go here
|
||||
{
|
||||
Vehicle_Transformer(iPlayer, 1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2) //Bracket doesn't go here
|
||||
{
|
||||
Vehicle_Transformer(iPlayer, 2);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3) //Bracket doesn't go here
|
||||
{
|
||||
Vehicle_Transformer(iPlayer, 3);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4) //Bracket doesn't go here
|
||||
{
|
||||
turn_car_into_heli(Personal_Vehicle);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
delete_transformers_on_vehicle(Personal_Vehicle);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SetBit(VehicleOptionsBitSet, !VEHICLE_OPTION_INVISIBLE,false);
|
||||
SET_CAR_VISIBLE(Personal_Vehicle,true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
delete_transformers_on_vehicle(Personal_Vehicle);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SetBit(VehicleOptionsBitSet, !VEHICLE_OPTION_INVISIBLE,false);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer))DELETE_CAR(&Personal_Vehicle);
|
||||
}
|
||||
}
|
||||
else if(SelectedItem == 20)
|
||||
{
|
||||
if(menu_item[SelectedItem].num_val == 1)
|
||||
{
|
||||
Vehicle_Weapon = WEAPON_RLAUNCHER;
|
||||
int Pednr;
|
||||
for(Pednr = 0; Pednr < 4; Pednr++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(WeaponVeh_ped[Pednr])) continue;
|
||||
UpdateWeaponOfPed(WeaponVeh_ped[Pednr], Vehicle_Weapon);
|
||||
SET_CURRENT_CHAR_WEAPON(WeaponVeh_ped[Pednr], Vehicle_Weapon, true);
|
||||
WAIT(30);
|
||||
}
|
||||
Alert("~b~MD: ~s~Heli Weapon updated",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2)
|
||||
{
|
||||
Vehicle_Weapon = WEAPON_M4;
|
||||
int Pednr;
|
||||
for(Pednr = 0; Pednr < 4; Pednr++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(WeaponVeh_ped[Pednr])) continue;
|
||||
UpdateWeaponOfPed(WeaponVeh_ped[Pednr], Vehicle_Weapon);
|
||||
SET_CURRENT_CHAR_WEAPON(WeaponVeh_ped[Pednr], Vehicle_Weapon, true);
|
||||
WAIT(30);
|
||||
}
|
||||
Alert("~b~MD: ~s~Heli Weapon updated",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3)
|
||||
{
|
||||
Vehicle_Weapon = WEAPON_SNIPERRIFLE;
|
||||
int Pednr;
|
||||
for(Pednr = 0; Pednr < 4; Pednr++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(WeaponVeh_ped[Pednr])) continue;
|
||||
UpdateWeaponOfPed(WeaponVeh_ped[Pednr], Vehicle_Weapon);
|
||||
SET_CURRENT_CHAR_WEAPON(WeaponVeh_ped[Pednr], Vehicle_Weapon, true);
|
||||
WAIT(30);
|
||||
}
|
||||
Alert("~b~MD: ~s~Heli Weapon updated",false);
|
||||
}
|
||||
|
||||
}
|
||||
/**Vehicle Weapons**/
|
||||
else if(SelectedItem == 21){
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
MD_Weapon_Vehicle = !MD_Weapon_Vehicle;
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2)
|
||||
{
|
||||
/*
|
||||
if(!GetBit(MD_Misc_OptionsBitSet, MD_MISC_NATHANS_RAPID_FIRE_HELI))
|
||||
{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NATHANS_RAPID_FIRE_HELI, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_NATHANS_RAPID_FIRE_HELI, false);
|
||||
int i;
|
||||
for(i = 0; i < 4; i++)
|
||||
{
|
||||
if(DOES_CHAR_EXIST(Nathans_RapidHeli_Peds[i])) DELETE_CHAR(&Nathans_RapidHeli_Peds[i]);
|
||||
}
|
||||
}
|
||||
*/
|
||||
#ifdef Premium
|
||||
Devils_Rapid_Fire_Heli = !Devils_Rapid_Fire_Heli;
|
||||
if(Devils_Rapid_Fire_Heli)Vehicle_Weapon = WEAPON_SNIPERRIFLE;
|
||||
else
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < 4; i++)
|
||||
{
|
||||
if(DOES_CHAR_EXIST(WeaponVeh_ped[i])) DELETE_CHAR(&WeaponVeh_ped[i]);
|
||||
}
|
||||
}
|
||||
#else
|
||||
Alert("Premium only nigga!",false);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void MC_Vehicle_Loop_pPlayer(void){
|
||||
/**Devils Mean Machines**/
|
||||
Weapon_Vehicle();
|
||||
#ifdef Premium
|
||||
Rapid_Fire_Heli();
|
||||
#endif
|
||||
/***********************/
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)) {
|
||||
/*
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_NATHANS_RAPID_FIRE_HELI))
|
||||
{
|
||||
Nathans_Rapid_Fire_Heli();
|
||||
/*
|
||||
if(Nathans_RapidHeli_Tick < GetTickCount())
|
||||
{
|
||||
Nathans_RapidHeli_Tick = (GetTickCount() + 200);
|
||||
Nathans_Rapid_Fire_Heli();
|
||||
}
|
||||
|
||||
}
|
||||
*/
|
||||
int driver;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&Personal_Vehicle);
|
||||
GET_DRIVER_OF_CAR(Personal_Vehicle,&driver);
|
||||
if(driver == pPlayer){
|
||||
bool in_heli = IS_CHAR_IN_ANY_HELI(pPlayer);
|
||||
float mx,my,mz,mh;
|
||||
int model;
|
||||
GET_CAR_MODEL(Personal_Vehicle,&model);
|
||||
GET_CHAR_COORDINATES_HEADING(pPlayer,&mx,&my,&mz,&mh);
|
||||
|
||||
/**Active Spawnsettings**/
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_STICK_GROUND))SET_CAR_ON_GROUND_PROPERLY(Personal_Vehicle);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ENGINE),GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ENGINE));
|
||||
SET_CHAR_WILL_FLY_THROUGH_WINDSCREEN(pPlayer, !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAR_CAN_BE_DAMAGED(Personal_Vehicle, !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(Personal_Vehicle, !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAN_BURST_CAR_TYRES(Personal_Vehicle, !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAR_WATERTIGHT(Personal_Vehicle, GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
//SET_CAR_VISIBLE(Personal_Vehicle, !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE));
|
||||
|
||||
|
||||
bool L_WAS_PRESSED = IS_BUTTON_JUST_PRESSED(0,BUTTON_L);
|
||||
bool R_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_R);
|
||||
bool L_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_L);
|
||||
float speed;
|
||||
GET_CAR_SPEED(Personal_Vehicle,&speed);
|
||||
/**Super Speed**/
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_SPEED)){
|
||||
if(L_WAS_PRESSED || R_IS_PRESSED)SET_CAR_FORWARD_SPEED(Personal_Vehicle, ( L_WAS_PRESSED ? (speed / 6) : (speed * 1.02)) );
|
||||
}
|
||||
/**Turbo Speed**/
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_TURBO_SPEED)){
|
||||
if(L_WAS_PRESSED || R_IS_PRESSED)SET_CAR_FORWARD_SPEED(Personal_Vehicle, ( L_WAS_PRESSED ? (speed / 3) : (speed * 1.0001)) );
|
||||
}
|
||||
/**Super Bike**/
|
||||
bool on_bike = IS_CHAR_ON_ANY_BIKE(pPlayer);
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_BIKE) && on_bike){
|
||||
if(R_IS_PRESSED || L_IS_PRESSED)SET_CAR_FORWARD_SPEED(Personal_Vehicle, (R_IS_PRESSED ? (speed * 1.01) : (speed / 3)) );
|
||||
}
|
||||
/**Spawn Boat in water**///Freezes
|
||||
bool in_boat = IS_CHAR_IN_ANY_BOAT(pPlayer);
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_AUTO_BOAT) && !in_boat){
|
||||
if(IS_CAR_IN_WATER(Personal_Vehicle))MD_VEHICLE_SPAWNER_ON_ID(iPlayer ,MODEL_SQUALO);
|
||||
}
|
||||
/**Vehicle Desolidify**/
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY))
|
||||
{
|
||||
//if(!Devils_Rapid_Fire_Heli) //i think this what you need buddy??
|
||||
SET_CAR_COLLISION(Personal_Vehicle,false);
|
||||
if(!in_heli) SET_CAR_ON_GROUND_PROPERLY(Personal_Vehicle);
|
||||
}
|
||||
/*
|
||||
else if(!Devils_Rapid_Fire_Heli)
|
||||
{
|
||||
SET_CAR_COLLISION(Personal_Vehicle,true); //LOOOOOPED, BAD!
|
||||
}
|
||||
*/
|
||||
/**Vehicle Jump**/
|
||||
bool vehicle_upright = IS_CAR_UPRIGHT(Personal_Vehicle);
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_JUMP)){ //We need to display a helper for the 2 modes
|
||||
if(IS_BUTTON_PRESSED(0,BUTTON_X)){
|
||||
if(in_boat && !in_heli){
|
||||
if(IS_VEHICLE_ON_ALL_WHEELS(Personal_Vehicle)){
|
||||
if(on_bike) APPLY_FORCE_TO_CAR(Personal_Vehicle, 0, 0, 0, 510.0 , 0,0,0, 0, 1, 1, 1 );
|
||||
else APPLY_FORCE_TO_CAR(Personal_Vehicle, 0, 0, 0, 70.0 , 0,0,-70.0, 0, 1, 1, 1 );
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(IS_BUTTON_PRESSED(0,BUTTON_A))APPLY_FORCE_TO_CAR(Personal_Vehicle, 0, 0, 0, 80, 0, 0, -80, 0, 1, 1, 1);
|
||||
}
|
||||
/**Stunt modes**/
|
||||
if(!in_boat && !in_heli && !on_bike && vehicle_upright){
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_LOWER))
|
||||
APPLY_FORCE_TO_CAR(Personal_Vehicle,true,0.0,0,-0.2,0.0,0.0,0.0,true,true,true,true);
|
||||
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DRIFT))
|
||||
APPLY_FORCE_TO_CAR(Personal_Vehicle,true,0.0,0,0.13,0.0,0.0,0.0,true,true,true,true);
|
||||
}
|
||||
/**Rainbow Vehicle**/
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_RAINBOW)){
|
||||
int i, col[4];
|
||||
for(i = 0; i < 4; i++)GENERATE_RANDOM_INT_IN_RANGE(0,133,&col[i]);
|
||||
CHANGE_CAR_COLOUR(Personal_Vehicle, col[0], col[1]);
|
||||
SET_EXTRA_CAR_COLOURS(Personal_Vehicle, col[2], col[3]);
|
||||
}
|
||||
/**Rotate Vehicle**/
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ROTATE)){
|
||||
float h;
|
||||
GET_CAR_HEADING(Personal_Vehicle,&h);
|
||||
SET_CAR_HEADING(Personal_Vehicle, (h - 10));
|
||||
}
|
||||
/**Lock Modes**/
|
||||
const int Veh_Autolock = GetByteInSet(WeatherTimeAutoLockByteSet, VEHICLE_AUTOLOCK);
|
||||
if(Veh_Autolock > 0 && Veh_Autolock < 3) //ON / ON + Unlock for friends
|
||||
{
|
||||
#ifdef Premium
|
||||
if(Veh_Autolock == 2 && speed < 4 && In_Network) //Unlock for friends
|
||||
{
|
||||
float check_for_others_distance;
|
||||
float friend_wants_to_enter_distance;
|
||||
if(on_bike || IS_THIS_MODEL_A_CAR(model)){
|
||||
check_for_others_distance = 4.0f;
|
||||
friend_wants_to_enter_distance = 3.0f;
|
||||
}
|
||||
int i,tmp_ped,friends_player_index;
|
||||
float nx,ny,nz;
|
||||
bool friend_wants_to_enter_veh = false;
|
||||
bool can_unlock_for_friend = true;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
// if(Invalid_Player(i) || !PLAYER_HAS_CHAR(i) || IS_CHAR_IN_CAR(PLAYER_CHAR(i),Personal_Vehicle)) continue; //possibly need if i == iPlayer continue, don't think so though
|
||||
if(Invalid_Player(i) || !PLAYER_HAS_CHAR(i) || !IS_CHAR_ON_FOOT(PLAYER_CHAR(i))) continue;
|
||||
//if(!NETWORK_PLAYER_IS_ON_FRIENDS_LIST(i)) continue; //causes frez, probably ran too often/much at once
|
||||
GET_CHAR_COORDINATES(PLAYER_CHAR(i),&nx,&ny,&nz);
|
||||
float distance_from_me;
|
||||
GET_DISTANCE_BETWEEN_COORDS_3D(mx,my,mz,nx,ny,nz,&distance_from_me);
|
||||
if(distance_from_me < friend_wants_to_enter_distance)
|
||||
{
|
||||
if(NETWORK_PLAYER_IS_ON_FRIENDS_LIST(i) || (Is_Developer(i) && i != iPlayer)) //unlock for devs :P //unlocked for seld without iplayer check so hmm..
|
||||
{
|
||||
friend_wants_to_enter_veh = true;
|
||||
friends_player_index = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
int to_lock_vehicle = false;
|
||||
if(friend_wants_to_enter_veh)
|
||||
{
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(Invalid_Player(i)) continue; //i == iPlayer important here //using IS_CHAR_IN_CAR instead..
|
||||
GET_PLAYER_CHAR(i,&tmp_ped);
|
||||
//if(!DOES_CHAR_EXIST(tmp_ped) || IS_CHAR_IN_CAR(tmp_ped,Personal_Vehicle)) continue; //just safety
|
||||
if(!DOES_CHAR_EXIST(tmp_ped) || !IS_CHAR_ON_FOOT(tmp_ped)) continue;
|
||||
GET_CHAR_COORDINATES(tmp_ped,&nx,&ny,&nz);
|
||||
float distance_from_me;
|
||||
GET_DISTANCE_BETWEEN_COORDS_3D(mx,my,mz,nx,ny,nz,&distance_from_me);
|
||||
if(distance_from_me < check_for_others_distance && !NETWORK_PLAYER_IS_ON_FRIENDS_LIST(i))
|
||||
{
|
||||
can_unlock_for_friend = false;
|
||||
}
|
||||
}
|
||||
if(can_unlock_for_friend && IS_CHARS_VEHICLE_LOCKED(pPlayer) && VEHICLE_HAS_EMPTY_SEATS(Personal_Vehicle))
|
||||
{
|
||||
char* buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ~s~Your ");
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model)));
|
||||
Strcat(buffer, " was unlocked for ~COL_NET_");
|
||||
itoa( (friends_player_index + 1), buffer);
|
||||
Strcat(buffer, "~");
|
||||
Strcat(buffer, GET_PLAYER_NAME(friends_player_index));
|
||||
Strcat(buffer, "~s~.");
|
||||
Alert(buffer, false);
|
||||
SET_VEHICLE_LOCKED_WITHOUT_NET_CONTROL_REQUEST(Personal_Vehicle, false);
|
||||
}
|
||||
else if(!IS_CHARS_VEHICLE_LOCKED(pPlayer))
|
||||
{
|
||||
int z;
|
||||
if(on_bike || IS_THIS_MODEL_A_CAR(model))
|
||||
{
|
||||
if(!can_unlock_for_friend || !IS_CAR_PASSENGER_SEAT_FREE(Personal_Vehicle, 0)) //bikes passenger seat
|
||||
{
|
||||
to_lock_vehicle = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else //if friend doesn't want to enter veh
|
||||
{
|
||||
if(!IS_CHARS_VEHICLE_LOCKED(pPlayer))
|
||||
{
|
||||
to_lock_vehicle = true;
|
||||
}
|
||||
}
|
||||
if(to_lock_vehicle && exitingCarAutoLockTick < GetTickCount())
|
||||
{
|
||||
SET_VEHICLE_LOCKED_WITHOUT_NET_CONTROL_REQUEST(Personal_Vehicle, VEHICLE_DOOR_LOCKED_FROM_OUTSIDE);
|
||||
char * buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~Your "); //12
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model))); //13 to be safe
|
||||
Strcat(buffer, " was auto-locked."); //17
|
||||
Alert(buffer, false);
|
||||
exitingCarAutoLockTick = 0;
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_Y)) //need exitingCarAutoLockTick;
|
||||
{
|
||||
exitingCarAutoLockTick = (GetTickCount() + 2500);
|
||||
SET_VEHICLE_LOCKED_WITHOUT_NET_CONTROL_REQUEST(Personal_Vehicle, false);
|
||||
TASK_LEAVE_CAR(pPlayer, Personal_Vehicle);
|
||||
char * buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~Your "); //12
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model))); //13 to be safe
|
||||
Strcat(buffer, " was un-locked."); //17
|
||||
Alert(buffer, false);
|
||||
//REMOVE_CHAR_FROM_CAR_MAINTAIN_POSITION(pPlayer,Personal_Vehicle); //TEST THIS! - Nathan --> this works!
|
||||
Alert(buffer,false);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#ifdef Premium
|
||||
else if(Veh_Autolock == 1) //On
|
||||
#else
|
||||
if(Veh_Autolock == 1)
|
||||
#endif
|
||||
{
|
||||
if(!IS_CHARS_VEHICLE_LOCKED(pPlayer) && exitingCarAutoLockTick < GetTickCount())
|
||||
{
|
||||
SET_VEHICLE_LOCKED_WITHOUT_NET_CONTROL_REQUEST(Personal_Vehicle, true);
|
||||
char * buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~Your "); //12
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model))); //13 to be safe
|
||||
Strcat(buffer, " was auto-locked."); //17
|
||||
Alert(buffer, false);
|
||||
exitingCarAutoLockTick = 0;
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_Y))
|
||||
{
|
||||
exitingCarAutoLockTick = (GetTickCount() + 2500);
|
||||
SET_VEHICLE_LOCKED_WITHOUT_NET_CONTROL_REQUEST(Personal_Vehicle, false);
|
||||
TASK_LEAVE_CAR(pPlayer, Personal_Vehicle);
|
||||
char * buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~Your "); //12
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model))); //13 to be safe
|
||||
Strcat(buffer, " was un-locked."); //17
|
||||
Alert(buffer, false);
|
||||
//REMOVE_CHAR_FROM_CAR_MAINTAIN_POSITION(pPlayer,Personal_Vehicle); //TEST THIS! - Nathan --> this works!
|
||||
Alert(buffer,false);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
if(Item_NumValue == 12) //Auto-lock vehicle
|
||||
char* autolockstring[4];
|
||||
autolockstring[0] = "< ERROR >";
|
||||
autolockstring[1] = "< On >";
|
||||
autolockstring[2] = "< On + Unlock for friends >";
|
||||
autolockstring[3] = "< Off >";
|
||||
int Veh_Autolock = 3; //this is in vars, 3 = disabled
|
||||
*/
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(DOES_VEHICLE_EXIST(Personal_Vehicle))
|
||||
{
|
||||
Personal_Vehicle = 0; //no longer exists so code won't run (DOES_VEHICLE_EXIST
|
||||
}
|
||||
}
|
||||
}
|
||||
393
Trident/MD_Contents/MDC_Weapon_Options.c
Normal file
393
Trident/MD_Contents/MDC_Weapon_Options.c
Normal file
@@ -0,0 +1,393 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/**Devil is rethinking this!**/
|
||||
|
||||
//int rapidweapon;
|
||||
//bool DevilsRapidFire;
|
||||
|
||||
|
||||
void MC_Weapon_Setup(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
item_highlighted = 6;
|
||||
MENU_SUB_HEADER = "Weapons Option";
|
||||
NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP();
|
||||
Add_JumpOver("~BLIP_94~ MD W E A P O N S ~BLIP_94~"); //5
|
||||
AddFunction_Value_CB("All",5); //6 // Carry All Weapons (You) / Poor Weapons / Advanced Weapons / Remove
|
||||
AddFunction_Value_CB("Melee",5); //7 // List Poor weapons + Remove
|
||||
AddFunction_Value_CB("Throw",3); //8
|
||||
AddFunction_Value_CB("Poor",7); //9 // List Advanced weapons + Remove
|
||||
AddFunction_Value_CB("Advanced",7); //10 // List Explosive Third Party weapons + Remove
|
||||
AddFunction_Value_CB("TBoGT",7); //11
|
||||
AddFunction_Value_CB("Special",14); //12
|
||||
AddFunction_Value("Vehicle",10); //13 // List Vehicle related Third Party weapons + Remove !!NO NETPLAYERS
|
||||
Add_JumpOver("~BLIP_94~ O P T I O N S ~BLIP_94~"); //14
|
||||
AddBool("Auto Aim (You) ",GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM)); //15
|
||||
AddBool("Rapid Fire (You)",GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_RAPID_FIRE)); //16
|
||||
AddBool("Unlimited Clip (You)", GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO)); //17
|
||||
return;
|
||||
}
|
||||
void REMOVE_ALL_WEAPONS_FROM_NETPLAYER(const int Player_ID){ // Here we will from now on ALWAYS use ID
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
WAIT(5);
|
||||
}
|
||||
|
||||
void MD_All_Weapon_Strings_Action(const int Player_ID){//OK
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_CARRY_ALL_WEAPONS);
|
||||
Alert_Two("~b~MD: ~s~Carry All Weapons ~y~(You only!)", GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_CARRY_ALL_WEAPONS) ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_DEAGLE,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_GRENADE,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_RLAUNCHER,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MP5,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_M4,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_BARETTA,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_SNIPERRIFLE,AMMO_MAX,false);//
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_KNIFE,1,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){//Poor
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_PISTOL,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MOLOTOV,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_RLAUNCHER,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MICRO_UZI,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_AK47,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_SHOTGUN,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_M40A1,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_KNIFE,1,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){//Ballad
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_9,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_10,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_13,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_14,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_15,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_1,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_16,AMMO_MAX,false);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_KNIFE,1,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5)REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
}
|
||||
|
||||
void MD_Melee_Weapon_Strings_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(menu_item[SelectedItem].num_val > 1 && menu_item[SelectedItem].num_val < 5 )REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
if(menu_item[SelectedItem].num_val == 1)REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
else if(menu_item[SelectedItem].num_val == 2)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_KNIFE,1,false);
|
||||
else if(menu_item[SelectedItem].num_val == 3)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_BASEBALLBAT,1,false);
|
||||
else if(menu_item[SelectedItem].num_val == 4)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_POOLCUE,1,false);
|
||||
else if(menu_item[SelectedItem].num_val == 5)REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
}
|
||||
|
||||
void MD_Thrown_Weapon_Strings_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
|
||||
if(menu_item[SelectedItem].num_val > 3) REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
if(menu_item[SelectedItem].num_val == 1) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MOLOTOV,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 2) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_GRENADE,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 3) REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
}
|
||||
|
||||
void MD_Poor_Weapon_Strings_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(menu_item[SelectedItem].num_val < 7 ) REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
if(menu_item[SelectedItem].num_val == 1) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_PISTOL,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 2) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_RLAUNCHER,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 3) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MICRO_UZI,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 4) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_AK47,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 5) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_SHOTGUN,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 6) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_M40A1,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 7) REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
}
|
||||
|
||||
void MD_Advanced_Weapon_Strings_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(menu_item[SelectedItem].num_val < 7 )REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
if(menu_item[SelectedItem].num_val == 1) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_DEAGLE,AMMO_MAX,false);//
|
||||
else if(menu_item[SelectedItem].num_val == 2) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_RLAUNCHER,AMMO_MAX,false);//
|
||||
else if(menu_item[SelectedItem].num_val == 3) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MP5,AMMO_MAX,false);//
|
||||
else if(menu_item[SelectedItem].num_val == 4) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_M4,AMMO_MAX,false);//
|
||||
else if(menu_item[SelectedItem].num_val == 5) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_BARETTA,AMMO_MAX,false);//
|
||||
else if(menu_item[SelectedItem].num_val == 6) GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_SNIPERRIFLE,AMMO_MAX,false);//
|
||||
else if(menu_item[SelectedItem].num_val == 7) REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
}
|
||||
|
||||
void MD_Special_Weapon_Strings_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS!
|
||||
Strcat(buffer, "~s~"); //41
|
||||
if(menu_item[SelectedItem].num_val == 1){//Weapon_String[1] = "~BLIP_52~ Nailgun";
|
||||
delete_objects_on_ped(Player_PED);
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);;
|
||||
attach_object_to_player(Player_PED, -1576276196,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,25);
|
||||
GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_MICRO_UZI,AMMO_MAX,false);
|
||||
Strcat(buffer, DOES_OBJECT_EXIST(Attach_object[25]) ? " now has" : " no longer has");
|
||||
Strcat(buffer, " a nailgun as weapon.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){//Rocket Weapon
|
||||
delete_objects_on_ped(Player_PED);
|
||||
ToggleBit(rocketWeaponsBitSet,Player_ID);
|
||||
Strcat(buffer, GetBit(rocketWeaponsBitSet,Player_ID) ? " now has" : " no longer has");
|
||||
Strcat(buffer, " rocket weapons.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
TOGGLE_SCRIPT("aimbot");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
TOGGLE_SCRIPT("m97_grav");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
TOGGLE_SCRIPT("m97_taser");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
TOGGLE_SCRIPT("rocketdeagle");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
TOGGLE_SCRIPT("drs01");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
TOGGLE_SCRIPT("buffy_force");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
TOGGLE_SCRIPT("ForceFieldv25");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
TOGGLE_SCRIPT("buffy_mp5");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
TOGGLE_SCRIPT("rob_cl");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){
|
||||
TOGGLE_SCRIPT("buffy_launcher");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13){
|
||||
TOGGLE_SCRIPT("rob_carmod");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 14){//Weapon_String[6] = "~BLIP_49~ Remove Player Weapons";
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("aimbot");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("m97_grav");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("m97_taser");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("rocketdeagle");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("drs01");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("buffy_force");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("ForceFieldv25");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("buffy_mp5");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("rob_cl");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("buffy_launcher");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("rob_carmod");
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
Strcat(buffer, (" no longer has") );
|
||||
Strcat(buffer, " weapons.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
}
|
||||
|
||||
void MD_Vehicle_Weapon_Strings_Action(const int Player_ID){ // Need to do this still
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
TOGGLE_SCRIPT("weap10");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
TOGGLE_SCRIPT("weap12");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
TOGGLE_SCRIPT("Sam-turrets");//Shoot explosive Vehicles
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
TOGGLE_SCRIPT("rev_xml_heli");//Ram
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
TOGGLE_SCRIPT("flameheli");//Ram 2
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
TOGGLE_SCRIPT("weap2");//Ram 3
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
TOGGLE_SCRIPT("weap3");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
TOGGLE_SCRIPT("weap13");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
TOGGLE_SCRIPT("AdvancedHeliRounds");
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("weap10");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("weap12");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("Sam-turrets");//Shoot explosive Vehicles
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("rev_xml_heli");//Ram
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("flameheli");//Ram 2
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("weap2");//Ram 3
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("weap3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("weap13");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("AdvancedHeliRounds");
|
||||
}
|
||||
}
|
||||
|
||||
void MD_TBOGT_Weapon_Strings_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(Episode == 2){
|
||||
REMOVE_ALL_CHAR_WEAPONS(Player_PED);;
|
||||
if(menu_item[SelectedItem].num_val == 1)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_13,AMMO_MAX,false);
|
||||
if(menu_item[SelectedItem].num_val == 2)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_1,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 3)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_16,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 4)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_9,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 5)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_10,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 6)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_14,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 7)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_15,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 8)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_21,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 9)GIVE_WEAPON_TO_CHAR(Player_PED,WEAPON_EPISODIC_12,AMMO_MAX,false);
|
||||
else if(menu_item[SelectedItem].num_val == 10)REMOVE_ALL_CHAR_WEAPONS(Player_PED);
|
||||
}
|
||||
else Alert(Error_TBOGT,false);
|
||||
}
|
||||
|
||||
|
||||
void MC_Weapon_Action(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID)){
|
||||
Alert_Abort(Error_Char_Missing,false);
|
||||
return;
|
||||
}
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
//!**********************/
|
||||
if(SelectedItem == 1)MD_Spy_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 2)Universal_Delete(Delete_Distance_Radius, menu_item[SelectedItem].num_val, true);
|
||||
else if(SelectedItem == 3)MD_PlayerOption_Strings_Action();
|
||||
else if(SelectedItem == 4)MD_QuickTeleport_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 6)MD_All_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 7)MD_Melee_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 8)MD_Thrown_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 9)MD_Poor_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 10)MD_Advanced_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 11)MD_TBOGT_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 12)MD_Special_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 13)MD_Vehicle_Weapon_Strings_Action(Player_ID);
|
||||
else if(SelectedItem == 15){
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM);
|
||||
menu_item[SelectedItem].extra_val = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM);
|
||||
}
|
||||
else if(SelectedItem == 16){
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_RAPID_FIRE);
|
||||
if(!HAS_CHAR_GOT_WEAPON(pPlayer,WEAPON_ARMOUR))GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_PISTOL,AMMO_MAX,false);
|
||||
//GET_CURRENT_CHAR_WEAPON(pPlayer, &rapidweapon);//TESTING
|
||||
|
||||
menu_item[SelectedItem].extra_val = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_RAPID_FIRE);
|
||||
}
|
||||
else if(SelectedItem == 17){
|
||||
ToggleBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO);
|
||||
menu_item[SelectedItem].extra_val = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MC_Weapon_Loop(void){
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_CARRY_ALL_WEAPONS)) MD_CarryAllweapons();
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM)){
|
||||
DISABLE_PLAYER_LOCKON(iPlayer, !GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer, GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
ALLOW_LOCKON_TO_RANDOM_PEDS(iPlayer, GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_AUTO_AIM));
|
||||
}
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_RAPID_FIRE)){ // Need to redo this to non timed rapid fire
|
||||
int PlayerWep;
|
||||
SET_PLAYER_FAST_RELOAD(iPlayer, true);
|
||||
ENABLE_MAX_AMMO_CAP(false);
|
||||
GET_CURRENT_CHAR_WEAPON(pPlayer, &PlayerWep);
|
||||
if(IS_BUTTON_PRESSED(0,BUTTON_R) && PlayerWep != WEAPON_UNARMED) SET_CHAR_ALL_ANIMS_SPEED(pPlayer, 40);
|
||||
else SET_CHAR_ALL_ANIMS_SPEED(pPlayer, 1);
|
||||
}
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_INFINITE_AMMO)){
|
||||
if(IS_CHAR_SHOOTING(pPlayer)){
|
||||
uint weapon,Unlimited_Ammunition;
|
||||
GET_CURRENT_CHAR_WEAPON(pPlayer,&weapon);
|
||||
if(weapon != WEAPON_GRENADE && weapon != WEAPON_MOLOTOV){
|
||||
GET_MAX_AMMO_IN_CLIP(pPlayer,weapon,&Unlimited_Ammunition);
|
||||
SET_AMMO_IN_CLIP(pPlayer,weapon,Unlimited_Ammunition);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
196
Trident/MD_Contents/MDC_Weather_Options.c
Normal file
196
Trident/MD_Contents/MDC_Weather_Options.c
Normal file
@@ -0,0 +1,196 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
#pragma once
|
||||
|
||||
void MC_Weather_Setup(void)
|
||||
{
|
||||
|
||||
int current_hour, current_minute, current_weather;
|
||||
GET_TIME_OF_DAY(¤t_hour,¤t_minute);
|
||||
GET_CURRENT_WEATHER(¤t_weather);
|
||||
|
||||
MENU_SUB_HEADER = "Weather & Time Options";
|
||||
AddFunction("~BLIP_52~ Sunny"); //1
|
||||
AddFunction_Num("~BLIP_52~ Extra Sunny",2); //2
|
||||
AddFunction_Num("~BLIP_52~ Sunny Windy",2); //3
|
||||
AddFunction("~BLIP_52~ Drizzle"); //4
|
||||
AddFunction("~BLIP_52~ Foggy"); //5
|
||||
AddFunction("~BLIP_52~ Raining"); //6
|
||||
AddFunction("~BLIP_52~ Lightning"); //7
|
||||
AddFunction("~BLIP_52~ Cloudy"); //8
|
||||
AddFunction_Num("~BLIP_52~ Set Time Hour",23); //9
|
||||
AddFunction_Num("~BLIP_52~ Set Time Minute",59); //10
|
||||
AddBool( (IS_THIS_MACHINE_THE_SERVER() && In_Network) ? "~BLIP_68~ Cycle Time" : "~BLIP_68~ Cycle Time (If Host Others See)",GetBit(MD_Misc_OptionsBitSet, MD_MISC_TIME_CYCLE)); //11
|
||||
AddBool("~BLIP_68~ Freeze Time", (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) != 25)); //12
|
||||
AddBool("~BLIP_68~ Freeze Weather", (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER) != 50)); //13
|
||||
AddBool( (IS_THIS_MACHINE_THE_SERVER() && In_Network) ? "~BLIP_68~ Fancy Up Graphics" : "~BLIP_68~ Fancy up Graphics (If Host Others See)", (current_weather == WEATHER_EXTRA_SUNNY_2 && current_hour == 7 && (current_minute == 1 || current_minute == 0)) );
|
||||
AddBool( (IS_THIS_MACHINE_THE_SERVER() && In_Network) ? "~BLIP_68~ Glowing Blue Map" : "~BLIP_68~ Glowing Blue Map (If Host Others See)",(current_weather == WEATHER_EXTRA_SUNNY_2 && current_hour == 22 && (current_minute == 1 || current_minute == 0)) );
|
||||
|
||||
menu_item[9].num_val = current_hour;
|
||||
menu_item[10].num_val = current_minute;
|
||||
//could even make weather highlight as bool without any var usage lol - Nathan
|
||||
}
|
||||
|
||||
void MC_Weather_Action(void){
|
||||
|
||||
int current_hour, current_minute;
|
||||
GET_TIME_OF_DAY(¤t_hour,¤t_minute);
|
||||
if(SelectedItem == 1) MD_SET_WEATHER(WEATHER_SUNNY);
|
||||
else if(SelectedItem == 2){
|
||||
MD_SET_WEATHER( menu_item[SelectedItem].num_val == 1 ? WEATHER_EXTRA_SUNNY : WEATHER_EXTRA_SUNNY_2);
|
||||
}
|
||||
else if(SelectedItem == 3){
|
||||
MD_SET_WEATHER( menu_item[SelectedItem].num_val == 1 ? WEATHER_SUNNY_WINDY : WEATHER_SUNNY_WINDY_2);
|
||||
}
|
||||
else if(SelectedItem == 4)MD_SET_WEATHER(WEATHER_DRIZZLE);
|
||||
else if(SelectedItem == 5)MD_SET_WEATHER(WEATHER_FOGGY);
|
||||
else if(SelectedItem == 6)MD_SET_WEATHER(WEATHER_RAINING);
|
||||
else if(SelectedItem == 7)MD_SET_WEATHER(WEATHER_LIGHTNING);
|
||||
else if(SelectedItem == 8)MD_SET_WEATHER(WEATHER_CLOUDY);
|
||||
else if(SelectedItem == 9) //Set time hour
|
||||
{
|
||||
MD_SET_TIME(menu_item[SelectedItem].num_val, current_minute);
|
||||
}
|
||||
else if(SelectedItem == 10) //set time minute
|
||||
{
|
||||
MD_SET_TIME( current_hour, menu_item[SelectedItem].num_val);
|
||||
}
|
||||
else if(SelectedItem == 11){
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_TIME_CYCLE);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet, MD_MISC_TIME_CYCLE);
|
||||
// Alert_Two("~BLIP_76~ ~c~Time Cycle", freeze_time ? PrintON : PrintOFF ,false);
|
||||
}
|
||||
else if(SelectedItem == 12){
|
||||
if(GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) == 25)
|
||||
{
|
||||
int hour,minute;
|
||||
GET_TIME_OF_DAY(&hour,&minute);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, hour);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE, minute);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, 25);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE, 0);
|
||||
}
|
||||
menu_item[SelectedItem].extra_val = (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) != 25);
|
||||
}
|
||||
else if(SelectedItem == 13) //Freeze Weather
|
||||
{
|
||||
if(GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER) == 50)
|
||||
{
|
||||
int weather;
|
||||
GET_CURRENT_WEATHER(&weather);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, weather);
|
||||
}
|
||||
else
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, 50);
|
||||
}
|
||||
menu_item[SelectedItem].extra_val = (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER) != 50); //if it's not -1 it's enabled - Nathan
|
||||
}
|
||||
else if(SelectedItem == 14) //Fancy up graphics
|
||||
{
|
||||
#ifdef Premium
|
||||
bool enabled = ( GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER) == WEATHER_EXTRA_SUNNY_2 && GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) == 7 && (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE) == 1 || GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE) == 0));
|
||||
if(enabled)
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, 50);
|
||||
menu_item[13].extra_val = false; //show user freeze weather OFF
|
||||
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, 25);
|
||||
menu_item[12].extra_val = false; //show user freeze time OFF
|
||||
|
||||
MD_SET_TIME(9,00);
|
||||
MD_SET_WEATHER(WEATHER_SUNNY); //to snap out of fancy graphics
|
||||
menu_item[SelectedItem].extra_val = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, WEATHER_EXTRA_SUNNY_2);
|
||||
menu_item[13].extra_val = true; //Show user freeze weather highlighted ON
|
||||
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, 7);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE, 0);
|
||||
menu_item[12].extra_val = true; //show user freeze time highlighted ON
|
||||
menu_item[15].extra_val = false; //show user blue glow map off
|
||||
menu_item[SelectedItem].extra_val = true; //Fancy graphics on!
|
||||
//thanks go to Unix Monsta
|
||||
}
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
#endif
|
||||
}
|
||||
else if(SelectedItem == 15) //Blue glow map
|
||||
{
|
||||
#ifdef Premium
|
||||
bool enabled = (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER) == WEATHER_EXTRA_SUNNY_2 && GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR) == 22 && (GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE) == 1 || GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE) == 0));
|
||||
if(enabled)
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, 50);
|
||||
menu_item[13].extra_val = false; //show user freeze weather OFF
|
||||
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, 25);
|
||||
menu_item[12].extra_val = false; //show user freeze time OFF
|
||||
|
||||
MD_SET_TIME(9,00);
|
||||
MD_SET_WEATHER(WEATHER_SUNNY); //to snap out of fancy graphics
|
||||
menu_item[SelectedItem].extra_val = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_WEATHER, WEATHER_EXTRA_SUNNY_2);
|
||||
menu_item[13].extra_val = true; //Show user freeze weather highlighted ON
|
||||
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR, 22);
|
||||
SetByteSet(&WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE, 0);
|
||||
menu_item[14].extra_val = false; //Show user fancy up graphics OFF
|
||||
menu_item[12].extra_val = true; //show user freeze time ON
|
||||
|
||||
menu_item[SelectedItem].extra_val = true; //Fancy graphics on!
|
||||
}
|
||||
#else
|
||||
Alert(PREMIUM_ONLY_STRING,true);
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
void MC_Weather_Loop(void) //Nathan's! Do not touch! Hands off buddy! hahaha :P
|
||||
{
|
||||
int frez_houa = GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_HOUR);
|
||||
if(GetBit(MD_Misc_OptionsBitSet, MD_MISC_TIME_CYCLE))
|
||||
{
|
||||
int hour,minute;
|
||||
GET_TIME_OF_DAY(&hour,&minute);
|
||||
if(minute == 59 && hour != 23)
|
||||
{
|
||||
hour++; //set hour to increase
|
||||
minute = 0; //set minute to 0
|
||||
}
|
||||
if(hour < 24 && minute < 59)
|
||||
{
|
||||
minute++; //work when on final hour
|
||||
}
|
||||
else if(hour == 23 && minute == 59) //if at the end set to 0
|
||||
{
|
||||
hour = 0;
|
||||
minute = 0;
|
||||
}
|
||||
SET_TIME_OF_DAY(hour,minute);
|
||||
}
|
||||
else if(frez_houa != 25) //doesn't run of cycle time is on..
|
||||
{
|
||||
SET_TIME_OF_DAY(frez_houa,GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_TIME_MINUTE));
|
||||
}
|
||||
|
||||
int frez_weatha = GetByteInSet(WeatherTimeAutoLockByteSet, FREEZE_WEATHER);
|
||||
if(frez_weatha != 50)
|
||||
{
|
||||
FORCE_WEATHER_NOW(frez_weatha);
|
||||
}
|
||||
}
|
||||
525
Trident/MD_Functions/MDF_Army_Functions.c
Normal file
525
Trident/MD_Functions/MDF_Army_Functions.c
Normal file
@@ -0,0 +1,525 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
//We also need a function to make bodyguards drive cars
|
||||
//extern int FIND_MAX_NUMBER_OF_GROUP_MEMBERS(void);
|
||||
//extern void GET_GROUP_SIZE(Group group, uint *pStartIndex, uint *pCount);
|
||||
//extern void GET_NTH_GROUP_MEMBER(int group, int n, Ped *ped);
|
||||
//extern void GET_NUMBER_OF_FOLLOWERS(Ped ped, int *followers);
|
||||
|
||||
void Clear_All_BGuards(void){
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
FORCE_CHAR_TO_DROP_WEAPON(BG_ped[i]);
|
||||
delete_objects_on_ped(BG_ped[i]);
|
||||
DELETE_CHAR(&BG_ped[i]);
|
||||
MARK_CHAR_AS_NO_LONGER_NEEDED(&BG_ped[i]);
|
||||
}
|
||||
Alert("~b~MD: ~s~All bodyguards cleared.",false);
|
||||
}
|
||||
|
||||
void Attach_Objects_BGuards(uint model,int pedbone, float obj_x, float obj_y, float obj_z, float obj_rx, float obj_ry, float obj_rz, int id){
|
||||
if (IS_MODEL_IN_CDIMAGE(model)){
|
||||
if(!Guard_Check()) return;
|
||||
REQUEST_MODEL(model);
|
||||
while(!HAS_MODEL_LOADED(model)) WAIT(0);
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
CREATE_OBJECT(model,0.0,0.0,0.0,&Attach_object[id],true);
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
FREEZE_OBJECT_POSITION(Attach_object[id], false);
|
||||
SET_OBJECT_VISIBLE(Attach_object[id], true);
|
||||
SET_OBJECT_LIGHTS(Attach_object[id], true);
|
||||
SET_OBJECT_INVINCIBLE(Attach_object[id], true);
|
||||
SET_OBJECT_COLLISION(Attach_object[id], false);
|
||||
SET_OBJECT_DYNAMIC(Attach_object[id],true);
|
||||
while (!DOES_OBJECT_EXIST(Attach_object[id]))WAIT(0);
|
||||
block_net_control_of_object(Attach_object[id]);
|
||||
ATTACH_OBJECT_TO_PED(Attach_object[id],BG_ped[i],pedbone, obj_x, obj_y, obj_z, obj_rx, obj_ry, obj_rz,false);
|
||||
}
|
||||
Alert("~b~MD: ~s~Attached Selected Object to Guards",false);
|
||||
}
|
||||
}
|
||||
void Teleport_BGuards_Coord(float x, float y, float z){
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
int BG_id;
|
||||
GET_NETWORK_ID_FROM_PED(BG_ped[i], &BG_id);
|
||||
if(network_control(BG_id)){
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
if(IS_CHAR_IN_ANY_CAR(BG_ped[i]))
|
||||
WARP_CHAR_FROM_CAR_TO_COORD(BG_ped[i],x,y,z);
|
||||
else
|
||||
SET_CHAR_COORDINATES(BG_ped[i], x, y, z);
|
||||
}
|
||||
}
|
||||
Alert("~b~MD: ~s~Bodyguards teleported.",false);
|
||||
}
|
||||
|
||||
void Spawn_BGuards(const int playersPed, const int model, const int weapon){
|
||||
if(DOES_CHAR_EXIST(playersPed)){
|
||||
fix_group_for_guards();
|
||||
if(Number_of_BGuards() > (MAX_SPAWNGUARDS - 1)){
|
||||
Alert("~b~MD: ~s~Maximum bodyguards have been spawned!",false);
|
||||
return;
|
||||
}
|
||||
REQUEST_MODEL(model);
|
||||
while(!HAS_MODEL_LOADED(model)) WAIT(0);
|
||||
int i,rand;
|
||||
float x,y,z;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(playersPed, 0, 2, 0, &x, &y, &z);
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,14,&rand);
|
||||
// RELATIONSHIP_GROUP_MISSION_4, //26 //this must be whai
|
||||
//CREATE_CHAR(26, model, x + rand,y + rand,z, &BG_ped[i], true);
|
||||
CREATE_CHAR(RELATIONSHIP_GROUP_MISSION_1, model, x + rand,y + rand,z, &BG_ped[i], true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
if(In_Network){
|
||||
int NetID;
|
||||
GET_NETWORK_ID_FROM_PED(BG_ped[i],&NetID);
|
||||
SET_NETWORK_ID_CAN_MIGRATE(NetID,false);
|
||||
}
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(BG_ped[i]);
|
||||
SET_GROUP_MEMBER(BG_Group, BG_ped[i]);
|
||||
SET_CHAR_NEVER_LEAVES_GROUP(BG_ped[i], true);
|
||||
SET_PLAYER_GROUP_TO_FOLLOW_ALWAYS(iPlayer,true);
|
||||
SET_GROUP_SEPARATION_RANGE(BG_Group,1000);
|
||||
//SET_CHAR_RELATIONSHIP_GROUP(BG_ped[i], RELATIONSHIP_GROUP_PLAYER); //yes leave them as generic singleplayer blah, good
|
||||
SET_CHAR_RELATIONSHIP(BG_ped[i], RELATIONSHIP_RESPECT, PLAYERS_RELATIONSHIP_GROUP(iPlayer)); //tell them to respect us (the user), Good!
|
||||
//SET_CHAR_RELATIONSHIP(BG_ped[i], RELATIONSHIP_RESPECT, RELATIONSHIP_GROUP_PLAYER);
|
||||
SET_CHAR_ACCURACY(BG_ped[i], 500);
|
||||
SET_SENSE_RANGE(BG_ped[i], 1000.0);
|
||||
SET_PED_GENERATES_DEAD_BODY_EVENTS(BG_ped[i], true);
|
||||
SET_CHAR_SHOOT_RATE(BG_ped[i], 200);
|
||||
SET_CHAR_WILL_USE_COVER(BG_ped[i], true);
|
||||
SET_CHAR_WILL_DO_DRIVEBYS(BG_ped[i], true);
|
||||
SET_CHAR_SIGNAL_AFTER_KILL(BG_ped[i], true);
|
||||
SET_CHAR_WILL_USE_CARS_IN_COMBAT(BG_ped[i], true);
|
||||
SET_CHAR_WILL_FLY_THROUGH_WINDSCREEN(BG_ped[i], false);
|
||||
SET_CHAR_INVINCIBLE(BG_ped[i], true); ////////////////
|
||||
SET_CHAR_PROOFS(BG_ped[i], true, true, true, true, true);
|
||||
SET_CHAR_PROVIDE_COVERING_FIRE(BG_ped[i], true);
|
||||
SET_CHAR_CANT_BE_DRAGGED_OUT(BG_ped[i], true);
|
||||
SET_CHAR_STAY_IN_CAR_WHEN_JACKED(BG_ped[i], true);
|
||||
SET_PED_DONT_DO_EVASIVE_DIVES(BG_ped[i], false);
|
||||
SET_PED_PATH_MAY_DROP_FROM_HEIGHT(BG_ped[i], true);
|
||||
SET_PED_PATH_MAY_USE_CLIMBOVERS(BG_ped[i], true);
|
||||
SET_PED_PATH_MAY_USE_LADDERS(BG_ped[i], true);
|
||||
SET_ROCKET_LAUNCHER_FREEBIE_IN_HELI(true);
|
||||
GIVE_PED_HELMET(BG_ped[i]);
|
||||
SET_CHAR_KEEP_TASK(BG_ped[i], true);
|
||||
UpdateWeaponOfPed(BG_ped[i], weapon);
|
||||
SET_CURRENT_CHAR_WEAPON(BG_ped[i], weapon, true);
|
||||
//GIVE_PED_FAKE_NETWORK_NAME(Ped ped, char *name, int r, int g, int b, int a);
|
||||
/*
|
||||
MAX_SPAWNGUARDS 7
|
||||
*/
|
||||
/*
|
||||
WAIT(500);
|
||||
char* guard_net_names[7];
|
||||
//guard_net_names[0] = "~b~MD ~s~Bodyguard ~COL_NET_4~1"; //string too long
|
||||
guard_net_names[0] = "MD Bodyguard 1";
|
||||
guard_net_names[1] = "MD Bodyguard 2";
|
||||
guard_net_names[2] = "MD Bodyguard 3";
|
||||
guard_net_names[3] = "MD Bodyguard 4";
|
||||
guard_net_names[4] = "MD Bodyguard 5";
|
||||
guard_net_names[5] = "MD Bodyguard 6";
|
||||
guard_net_names[6] = "MD Bodyguard 7";
|
||||
int i, rand[3];
|
||||
for(i = 0; i < 3; i++)
|
||||
{
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0, 255, &rand[i]);
|
||||
}
|
||||
|
||||
GIVE_PED_FAKE_NETWORK_NAME(BG_ped[i], guard_net_names[i], rand[0], rand[1], rand[2], 200);
|
||||
*/
|
||||
return; // BG_ped[i];
|
||||
}
|
||||
}
|
||||
else return Alert(Error_No_Player,false);
|
||||
}
|
||||
|
||||
|
||||
|
||||
void Ragdoll_BGuards(void){
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
SWITCH_PED_TO_RAGDOLL(BG_ped[i],20000,30000,false,false,false,false);
|
||||
}
|
||||
Alert("~b~MD: ~s~Ragdoll'd bodyguards.",false);
|
||||
}
|
||||
|
||||
void Delete_Objects_BGuards(void){
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
delete_objects_on_ped(BG_ped[i]); //sorted buddy :D
|
||||
}
|
||||
//Universal_Delete( 20,2, false );
|
||||
Alert("~b~MD: ~s~Objects attached to guards cleared.",false);
|
||||
}
|
||||
|
||||
/**use looped**/
|
||||
void Attach_BG_To_Vehcile(const int vehicle,float wide1,float wide2,float position_y, float height, float angle){
|
||||
int i;
|
||||
int BG_id;
|
||||
float net_x,net_y,net_z;
|
||||
Ped NetPlayer_Char;
|
||||
if(!Guard_Check()) return;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
if (DOES_VEHICLE_EXIST(vehicle)){
|
||||
ATTACH_PED_TO_CAR(BG_ped[i], vehicle, 0, wide1, position_y, height, 0.00, angle, 0.00, 1);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void Fire_BG_Weapon(const int player_index){
|
||||
int i;
|
||||
int BG_id;
|
||||
float net_x,net_y,net_z;
|
||||
Ped NetPlayer_Char;
|
||||
if(!Guard_Check()) return;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
GET_PLAYER_CHAR(player_index,&NetPlayer_Char);
|
||||
if(!DOES_CHAR_EXIST(NetPlayer_Char)) continue;
|
||||
GetOffset(NetPlayer_Char, 5, &net_x, &net_y, &net_y);
|
||||
FIRE_PED_WEAPON(BG_ped[i], net_x, net_y, net_z);
|
||||
}
|
||||
Alert("~b~MD: ~s~Firing Guards Weapon",false);
|
||||
}
|
||||
void weapon_vehicle2(int weapon){
|
||||
float x ,y ,z ,Offset_x , Offset_y , Offset_z ;
|
||||
Vehicle Weapon_Vehicle;
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
int Veh_Guard;
|
||||
for(Veh_Guard = 0;Veh_Guard < MAX_SPAWNGUARDS;Veh_Guard++){
|
||||
Spawn_BGuards(pPlayer, MODEL_M_Y_CLUBFIT,weapon);
|
||||
}
|
||||
Attach_BG_To_Vehcile(Personal_Vehicle,0,0,0, 0, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void Strides_BGuards(const char* set){
|
||||
int i;
|
||||
int BG_id;
|
||||
if(!Guard_Check()) return;
|
||||
REQUEST_ANIMS(set);
|
||||
while(!HAVE_ANIMS_LOADED(set)) WAIT(0);
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
GET_NETWORK_ID_FROM_PED(BG_ped[i], &BG_id);
|
||||
if(network_control(BG_id)){
|
||||
SET_ANIM_GROUP_FOR_CHAR(BG_ped[i],set);
|
||||
}
|
||||
}
|
||||
Alert("~b~MD: ~s~Bodyguard strides set.",false);
|
||||
REMOVE_ANIMS(set);
|
||||
}
|
||||
|
||||
void BGuards_Clear_Enemies(void)
|
||||
{
|
||||
int i,z;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(i == iPlayer) continue;
|
||||
for(z = 0; z < MAX_SPAWNGUARDS; z++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[z])) continue;
|
||||
CLEAR_ALL_CHAR_RELATIONSHIPS(BG_ped[z], PLAYERS_RELATIONSHIP_GROUP(i));
|
||||
Alert("~b~MD: ~s~Bodyguards enemies cleared.",false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**This works*/
|
||||
void BGuard_Send_After_PlayerPED(const int player_index, const int player_ped){
|
||||
if(DOES_CHAR_EXIST(player_ped) || PLAYER_HAS_CHAR(player_index)){
|
||||
if(!Guard_Check()) return; //just for safety
|
||||
int i;
|
||||
for(i = 0;i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i]) || !DOES_CHAR_EXIST(player_ped))continue;
|
||||
int BG_id;
|
||||
GET_NETWORK_ID_FROM_PED(BG_ped[i], &BG_id);
|
||||
if(network_control(BG_id)){
|
||||
//SET_NETWORK_ID_CAN_MIGRATE(BG_id,true);
|
||||
SET_CHAR_NEVER_LEAVES_GROUP(BG_ped[i], true);
|
||||
//SET_PLAYER_GROUP_TO_FOLLOW_ALWAYS(player_index,true); //we need to always follow our group, not other peoples :S
|
||||
//SET_CHAR_RELATIONSHIP(BG_ped[i], RELATIONSHIP_HATE, RELATIONSHIP_GROUP_PLAYER);
|
||||
SET_CHAR_RELATIONSHIP(BG_ped[i], RELATIONSHIP_HATE, PLAYERS_RELATIONSHIP_GROUP(player_index));
|
||||
SET_POLICE_IGNORE_PLAYER(player_index, false);
|
||||
SET_GROUP_CHAR_DUCKS_WHEN_AIMED_AT(BG_ped[i], true);
|
||||
SET_CHAR_SHOOT_RATE(BG_ped[i], 1000);
|
||||
SET_CHAR_ACCURACY(BG_ped[i], 1000);
|
||||
SET_CHAR_FIRE_DAMAGE_MULTIPLIER(BG_ped[i], 1000);
|
||||
SET_CHAR_WILL_USE_CARS_IN_COMBAT(BG_ped[i], true);
|
||||
SET_CHAR_WILL_LEAVE_CAR_IN_COMBAT(BG_ped[i], false);
|
||||
SET_CHAR_WILL_DO_DRIVEBYS(BG_ped[i], true);
|
||||
SET_CHAR_WILL_USE_COVER(BG_ped[i], true);
|
||||
SET_CHAR_GET_OUT_UPSIDE_DOWN_CAR(BG_ped[i],true);
|
||||
SET_CHAR_BLEEDING(BG_ped[i], true);
|
||||
//UpdateWeaponOfPed(BG_ped[i], weapon);
|
||||
//SET_CURRENT_CHAR_WEAPON(BG_ped[i], weapon, true);
|
||||
TASK_COMBAT(BG_ped[i], player_ped); //probably not needed anymore //TESTING WITH RELATIONSHIP GROUPS ALONE //doesn't seem to work anymore on its own
|
||||
SET_CHAR_KEEP_TASK(BG_ped[i], true);
|
||||
//SET_NETWORK_ID_CAN_MIGRATE(BG_id,true);
|
||||
}
|
||||
}
|
||||
char * buffer[16];
|
||||
Strcpy(buffer, "~b~MD: ~s~Bodyguards sent after "); //41
|
||||
PLAYER_NAME_WITH_COLOUR(player_index,&buffer);
|
||||
Strcat(buffer, "."); //63 characters
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else return Alert(Error_No_Player,false);
|
||||
}
|
||||
|
||||
void Set_BGuards_Invincible(const bool invincible) //Nathan new
|
||||
{
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
SET_CHAR_INVINCIBLE(BG_ped[i], invincible);
|
||||
SET_CHAR_PROOFS(BG_ped[i], invincible, invincible, invincible, invincible, invincible);
|
||||
}
|
||||
Alert( invincible ? "~b~MD: ~s~Bodyguards are now invincible." : "~b~MD: ~s~Bodyguards are no longer invincible.", false);
|
||||
}
|
||||
|
||||
void Kill_BGuards(void) //Temporary fix
|
||||
{
|
||||
Set_BGuards_Invincible(false);
|
||||
}
|
||||
|
||||
void Invincibility_BGuards(void) //Temporary fix
|
||||
{
|
||||
Set_BGuards_Invincible(true);
|
||||
}
|
||||
|
||||
void Helmets_BGuards(void){
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
GIVE_PED_HELMET(BG_ped[i]);
|
||||
}
|
||||
Alert("~b~MD: ~s~Helmets given to bodyguards.",false);
|
||||
}
|
||||
|
||||
void Remove_Helmets_BGuards(void){
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
REMOVE_PED_HELMET(BG_ped[i], true);
|
||||
}
|
||||
Alert("~b~MD: ~s~Helmets removed from bodyguards.",false);
|
||||
}
|
||||
|
||||
void Clear_Task_BGuards(void) //Nathan new
|
||||
{
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
CLEAR_CHAR_TASKS_IMMEDIATELY(BG_ped[i]);
|
||||
}
|
||||
Alert("~b~MD: ~s~Bodyguard tasks cleared.",false);
|
||||
}
|
||||
|
||||
void Clear_One_BGuards(void) //Nathan new
|
||||
{
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
FORCE_CHAR_TO_DROP_WEAPON(BG_ped[i]);
|
||||
delete_objects_on_ped(BG_ped[i]);
|
||||
DELETE_CHAR(&BG_ped[i]);
|
||||
MARK_CHAR_AS_NO_LONGER_NEEDED(&BG_ped[i]);
|
||||
break;
|
||||
}
|
||||
Alert("~b~MD: ~s~One bodyguard was deleted.",false);
|
||||
}
|
||||
|
||||
void Weapon_BGuards(const int weapon) //Nathan new
|
||||
{
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
REMOVE_ALL_CHAR_WEAPONS(BG_ped[i]);
|
||||
WAIT(3);
|
||||
UpdateWeaponOfPed(BG_ped[i], weapon);
|
||||
SET_CURRENT_CHAR_WEAPON(BG_ped[i],weapon, true);
|
||||
BGWeapontype_Lastselected = weapon;
|
||||
}
|
||||
Alert("~b~MD: ~s~Selected weapon given to bodyguards.",false);
|
||||
}
|
||||
|
||||
void Remove_Weapon_BGuards(void)
|
||||
{
|
||||
if(!Guard_Check()) return;
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
Run_Ptfx(BG_ped[i]);
|
||||
REMOVE_ALL_CHAR_WEAPONS(BG_ped[i]);
|
||||
|
||||
}
|
||||
Alert("~b~MD: ~s~Selected weapon removed from bodyguards.",false);
|
||||
}
|
||||
|
||||
void Teleport_BGuards(void) //temporary fix
|
||||
{
|
||||
float x,y,z;
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
Teleport_BGuards_Coord(x,y,z);
|
||||
}
|
||||
|
||||
void Teleport_InPlayerVeh_BGuards(const int Player_ID, const int num_guards){ //Nathan new!
|
||||
if(PLAYER_HAS_CHAR(Player_ID)){
|
||||
if(!Guard_Check()) return;
|
||||
Ped Player_PED;
|
||||
GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
if(!DOES_CHAR_EXIST(Player_PED))
|
||||
{
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer);
|
||||
Strcat(buffer, "~s~ does not have a character.");
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
const bool in_car = IS_CHAR_IN_ANY_CAR(Player_PED);
|
||||
if(in_car)
|
||||
{
|
||||
int Player_PED_veh;
|
||||
GET_CAR_CHAR_IS_USING(Player_PED,&Player_PED_veh);
|
||||
int i,teleported_guards = 0;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++)
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
int z;
|
||||
for(z = 0; z < 3; z++)
|
||||
{
|
||||
if(!IS_CAR_PASSENGER_SEAT_FREE(Player_PED_veh,z) || teleported_guards >= num_guards) continue;
|
||||
//Run_Ptfx(BG_ped[i]);
|
||||
WARP_CHAR_INTO_CAR_AS_PASSENGER(BG_ped[i],Player_PED_veh,z);
|
||||
teleported_guards++;
|
||||
break;
|
||||
}
|
||||
}
|
||||
Strcat(buffer, "~s~");
|
||||
itoa(teleported_guards,buffer);
|
||||
Strcat(buffer, " bodyguards are now in ");
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer);
|
||||
Strcat(buffer, "'s ~s~");
|
||||
Strcat(buffer,VEHICLES_MODEL_NAME(Player_PED_veh));
|
||||
Strcat(buffer, ".");
|
||||
}
|
||||
else
|
||||
{
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer);
|
||||
Strcat(buffer, " ~s~is not in a vehicle.");
|
||||
}
|
||||
Alert(buffer,false);
|
||||
}
|
||||
else return Alert(Error_No_Player,false);
|
||||
}
|
||||
|
||||
|
||||
//!Not used yet in the code
|
||||
void Teleport_InVeh_BGuards(const int Player_ID){ //Nathan new //should change to playerid
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
Vehicle vehicle;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
/**Vehicle Checker**/
|
||||
if(!IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
if(Player_PED == pPlayer)Alert_Abort(Error_Personal_Vehicle,false);
|
||||
else Alert_Abort(Error_NetPlayer_Vehicle,false);
|
||||
}
|
||||
else GET_CAR_CHAR_IS_USING(Player_PED,&vehicle);
|
||||
if(!Guard_Check()) return;
|
||||
int i,tmp;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
int z;
|
||||
for(z = 0; z < 3; z++){
|
||||
if(!IS_CAR_PASSENGER_SEAT_FREE(tmp,z)) continue;
|
||||
WARP_CHAR_INTO_CAR_AS_PASSENGER(BG_ped[i],vehicle,z);
|
||||
break;
|
||||
}
|
||||
}
|
||||
Alert("~b~MD: ~s~Bodyguards were teleported into a vehicle.",false);
|
||||
}
|
||||
|
||||
|
||||
void BGuards_Arm_Vehicle(const int Player_ID){
|
||||
//!**Player Char Check**//
|
||||
Ped Player_PED;
|
||||
Vehicle vehicle;
|
||||
if(!PLAYER_HAS_CHAR(Player_ID))return Alert_Abort(Error_Char_Missing,false);
|
||||
else GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
/**Vehicle Checker**/
|
||||
if(Player_ID == iPlayer){
|
||||
if(!IS_CHAR_IN_ANY_CAR(Player_PED))MD_VEHICLE_SPAWNER_ON_ID(iPlayer,MODEL_SULTAN);
|
||||
WAIT(100);
|
||||
}
|
||||
if(!IS_CHAR_IN_ANY_CAR(Player_PED)){
|
||||
if(Player_PED == pPlayer)Alert_Abort(Error_Personal_Vehicle,false);
|
||||
else Alert_Abort(Error_NetPlayer_Vehicle,false);
|
||||
}
|
||||
else GET_CAR_CHAR_IS_USING(Player_PED,&vehicle);
|
||||
int Free_Seat;
|
||||
for(Free_Seat = 0; Free_Seat < 3; Free_Seat++){
|
||||
if(!IS_CAR_PASSENGER_SEAT_FREE(vehicle, Free_Seat)) continue;
|
||||
if(!DOES_CHAR_EXIST(BG_ped[Free_Seat]))Spawn_BGuards(Player_PED,MODEL_M_M_ARMOURED,WEAPON_MP5);
|
||||
if(IS_CHAR_IN_CAR(BG_ped[Free_Seat],vehicle)) continue;
|
||||
WAIT(100);
|
||||
WARP_CHAR_INTO_CAR_AS_PASSENGER(BG_ped[Free_Seat],vehicle,Free_Seat);
|
||||
WAIT(100);
|
||||
SET_CHAR_WILL_LEAVE_CAR_IN_COMBAT(BG_ped[Free_Seat], false);
|
||||
SET_CHAR_WILL_USE_CARS_IN_COMBAT(BG_ped[Free_Seat], true);
|
||||
}
|
||||
}
|
||||
540
Trident/MD_Functions/MDF_ContentBuilder_Functions.c
Normal file
540
Trident/MD_Functions/MDF_ContentBuilder_Functions.c
Normal file
@@ -0,0 +1,540 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version V13 TRIDENT
|
||||
* @ DEV TEAM V13 - IIV NATHAN VII & DEVILSDESIGN
|
||||
*/
|
||||
//FILE HEAVILY OPTIMISED BY NATHAN -- VERY NICELY DONE!!!
|
||||
/**
|
||||
How to use :
|
||||
A. Create a function for the actionpad spawn // set an object
|
||||
1. Teleporter Mobile (using the grids + spark = 6 objects!)
|
||||
2. Teleporter on fixed place (using the grids + spark = 6 objects!)
|
||||
3. Actionpad doing a function (undefined)
|
||||
|
||||
*/
|
||||
|
||||
|
||||
void aPadObjects(void){
|
||||
create_mobile_mapbase(pPlayer,0x4F3E5681,0.00f, -0.97f,0.00f, 1, 0);//1st object all the others are attached to
|
||||
create_mobile_mapobj(0x55CA3AE6,1, 0, 0.5483, 3.150,0,0);//SPARK
|
||||
create_mobile_mapobj(0x4F3E5681,-3.1206, 0, -2.2700, 0,1.575,0);//Grid1
|
||||
create_mobile_mapobj(0x4F3E5681,3.1206, 0, -2.2700, 0,4.725,0);//grid2
|
||||
create_mobile_mapobj(0x4F3E5681,0, 4.500, -3.7767, 1.575,0,0);//grid3
|
||||
}
|
||||
void aPadPayNSprayObjects(void){
|
||||
aPadObjects();
|
||||
create_mobile_mapobj(-41876173,22.5808,-9.3944,-3.500,0,0.0,0);//Pain spray Building
|
||||
create_mobile_mapobj(-1855959785,-3.0934,-4.725,-4.2500,0,0.0,4.725);//traffic lights
|
||||
create_mobile_mapobj(-1855959785,3.0934,-4.725,-4.2500,0,0.0,4.725);//traffic lights
|
||||
create_mobile_mapobj(-1855959785,-3.7792,3.9734,-4.2500,0,0.0,3.150);//traffic lights
|
||||
create_mobile_mapobj(-1855959785,3.7792,3.9734,-4.2500,0,0.0,0);//traffic lights
|
||||
}
|
||||
void aPadVehicleGeneratorObjects(void)
|
||||
{
|
||||
aPadObjects();
|
||||
create_mobile_mapobj(-1855959785,-3.0934,-4.725,-4.2500,0,0.0,4.725);//traffic lights
|
||||
create_mobile_mapobj(-1855959785,3.0934,-4.725,-4.2500,0,0.0,4.725);//traffic lights
|
||||
create_mobile_mapobj(-1855959785,-3.7792,3.9734,-4.2500,0,0.0,3.150);//traffic lights
|
||||
create_mobile_mapobj(-1855959785,3.7792,3.9734,-4.2500,0,0.0,0);//traffic lights
|
||||
create_mobile_mapobj(-1324211035,0,7.0815,-1.0811+0.970,0,0.0,0);//ramp
|
||||
}
|
||||
|
||||
#pragma once
|
||||
|
||||
#define MAX_ACTIONPADS 3
|
||||
|
||||
enum ePadActions{
|
||||
// ACTION_SULTANRS_TELEPORT = 1,
|
||||
ACTION_VEHICLE_GENERATE = 2,
|
||||
ACTION_PAYNSPRAY = 3,
|
||||
ACTION_TELEPORT_COORD_GROUND_X_Y = 4,
|
||||
};
|
||||
|
||||
|
||||
typedef struct _action_pads{
|
||||
int actionPadObj;
|
||||
int action; //0 by default
|
||||
int veh_model_to_generate; //0 by default so we can generate whatever vehicle easily, one var :P
|
||||
float TeleportCoordGroundX;
|
||||
float TeleportCoordGroundY; //X and Y both set to 1337 on startup, when we delete actionpads, we have to set the action pad index's coords to 1337 too for safety..
|
||||
} action_pads;
|
||||
action_pads aPads[MAX_ACTIONPADS]; //var usage = (5 x MAX_ACTIONPADS)
|
||||
|
||||
|
||||
/*
|
||||
|
||||
void telepad_saved1(void){
|
||||
create_mobile_mapbase(pPlayer,0xDD28B247,0,4,0, true, false);//blue cube
|
||||
create_mobile_mapbase(pPlayer,0x4F3E5681,0, -0.970,0, true, false);//1st object all the others are attached to
|
||||
create_mobile_mapobj(0x55CA3AE6,1, 0, 0.5483, 3.150,0,0);//SPARK
|
||||
create_mobile_mapobj(0x4F3E5681,-3.1206, 0, -2.2700, 0,1.575,0);//Grid1
|
||||
create_mobile_mapobj(0x4F3E5681,3.1206, 0, -2.2700, 0,4.725,0);//grid2
|
||||
create_mobile_mapobj(0x4F3E5681,0, 4.500, -3.7767, 1.575,0,0);//grid3
|
||||
}
|
||||
void telepad_saved2(void){
|
||||
create_mobile_mapbase(pPlayer,0x2718C626,0,4,0, true, false);//red cube
|
||||
create_mobile_mapbase(pPlayer,0x4F3E5681,0, -0.970,0, true, false);//1st object all the others are attached to
|
||||
create_mobile_mapobj(0x55CA3AE6,1, 0, 0.5483, 3.150,0,0);//SPARK
|
||||
create_mobile_mapobj(0x4F3E5681,-3.1206, 0, -2.2700, 0,1.575,0);//Grid1
|
||||
create_mobile_mapobj(0x4F3E5681,3.1206, 0, -2.2700, 0,4.725,0);//grid2
|
||||
create_mobile_mapobj(0x4F3E5681,0, 4.500, -3.7767, 1.575,0,0);//grid3
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
|
||||
//Create_Actionpad(pad_action, &padID);
|
||||
|
||||
//use an ePadActions, //set to 0 if not used, // use 1337 if not used //use 1337 if not used
|
||||
void Create_Actionpad(const int PadAction, const int model_to_generate, float teleportCoordsForPadX, float teleportCoordsForPadY) //Created at pPlayer coords
|
||||
{
|
||||
//this drops below pPlayer
|
||||
int i,free_aPad_Index = -1;
|
||||
for(i = 0; i < MAX_ACTIONPADS; i++)
|
||||
{
|
||||
if(DOES_OBJECT_EXIST(aPads[i].actionPadObj)) continue;
|
||||
free_aPad_Index = i;
|
||||
break;
|
||||
}
|
||||
char * buffer[32];
|
||||
if(free_aPad_Index == -1)
|
||||
{
|
||||
Strcpy(buffer, "~b~MD: ~s~The limit of ");
|
||||
itoa( MAX_ACTIONPADS, buffer);
|
||||
Strcat(buffer, " action pads has been reached.");
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
//REQUEST_MODEL(0x4F3E5681); // gamegrid
|
||||
|
||||
REQUEST_MODEL(0x4F3E5681);
|
||||
aPads[free_aPad_Index].action = PadAction;
|
||||
aPads[free_aPad_Index].veh_model_to_generate = model_to_generate;
|
||||
aPads[free_aPad_Index].TeleportCoordGroundX = teleportCoordsForPadX;
|
||||
aPads[free_aPad_Index].TeleportCoordGroundY = teleportCoordsForPadY;
|
||||
float x,y,z,h;
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer))
|
||||
{
|
||||
int tmp_veh, tmp_driver;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&tmp_veh);
|
||||
GET_DRIVER_OF_CAR(tmp_veh,&tmp_driver);
|
||||
if(tmp_driver == pPlayer)
|
||||
{
|
||||
SET_CAR_FORWARD_SPEED(tmp_veh,0);
|
||||
}
|
||||
else
|
||||
{
|
||||
REMOVE_CHAR_FROM_CAR_MAINTAIN_POSITION(pPlayer,tmp_veh);
|
||||
}
|
||||
}
|
||||
while(!HAS_MODEL_LOADED(0x4F3E5681)) WAIT(0); //gamegrid
|
||||
//create object here
|
||||
GET_CHAR_COORDINATES(pPlayer,&x,&y,&z);
|
||||
GET_GROUND_Z_FOR_3D_COORD(x,y,z,&z); //no need for attempts here as you're loaded here and not teleporting / NO ISSUES
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
CREATE_OBJECT(0x4F3E5681,x,y,z+0.05f,&aPads[free_aPad_Index].actionPadObj,true);
|
||||
FREEZE_OBJECT_POSITION(aPads[free_aPad_Index].actionPadObj,true);
|
||||
SET_OBJECT_INVINCIBLE(aPads[free_aPad_Index].actionPadObj,true);
|
||||
SET_OBJECT_HEADING(aPads[free_aPad_Index].actionPadObj,h);
|
||||
SET_OBJECT_COLLISION(aPads[free_aPad_Index].actionPadObj, false);
|
||||
SET_OBJECT_VISIBLE(aPads[free_aPad_Index].actionPadObj, false);
|
||||
int NetID;
|
||||
GET_NETWORK_ID_FROM_OBJECT(aPads[free_aPad_Index].actionPadObj,&NetID);
|
||||
SET_NETWORK_ID_CAN_MIGRATE(NetID,false);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(0x4F3E5681);
|
||||
if(PadAction == ACTION_PAYNSPRAY)
|
||||
{
|
||||
aPadPayNSprayObjects();
|
||||
}
|
||||
else if(PadAction == ACTION_VEHICLE_GENERATE)
|
||||
{
|
||||
aPadVehicleGeneratorObjects();
|
||||
}
|
||||
else if(PadAction == ACTION_TELEPORT_COORD_GROUND_X_Y)
|
||||
{
|
||||
aPadObjects();
|
||||
//create_mobile_mapbase(pPlayer,0x2718C626,0,4,0, true, false);//red cube
|
||||
//SPAWN CUBE WITH COLOUR BASED ON ACTION PAD INDEX :P
|
||||
|
||||
/*
|
||||
void telepad_saved2(void){
|
||||
create_mobile_mapbase(pPlayer,0x2718C626,0,4,0, true, false);//red cube
|
||||
|
||||
void telepad_saved1(void){
|
||||
create_mobile_mapbase(pPlayer,0xDD28B247,0,4,0, true, false);//blue cube
|
||||
*/
|
||||
}
|
||||
Strcpy(buffer, "~b~MD Actionpad ");
|
||||
itoa( (free_aPad_Index + 1), buffer);
|
||||
Strcat(buffer, ": ~s~Has been created.");
|
||||
Alert(buffer,false);
|
||||
}
|
||||
|
||||
void Actionpad_looped(void)
|
||||
{
|
||||
int i,j,f,n;
|
||||
float aPadCornerOffsetX[2];
|
||||
aPadCornerOffsetX[0] = 3.1204f;
|
||||
aPadCornerOffsetX[1] = -3.1284f;
|
||||
float aPadCornerOffsetY[2];
|
||||
aPadCornerOffsetY[0] = 4.6515f;
|
||||
aPadCornerOffsetY[1] = -4.6273f;
|
||||
|
||||
float aPadCornerWorldCoordX[2];
|
||||
float aPadCornerWorldCoordY[2];
|
||||
float aPadx,aPady,aPadz,z;
|
||||
for(i = 0; i < MAX_ACTIONPADS; i++)
|
||||
{
|
||||
if(!DOES_OBJECT_EXIST(aPads[i].actionPadObj))
|
||||
{
|
||||
aPads[i].TeleportCoordGroundX = 1337;
|
||||
aPads[i].TeleportCoordGroundY = 1337;
|
||||
//aPads[i].TeleportCoordGroundZ //if it causes issues i'll add this
|
||||
aPads[i].veh_model_to_generate = 0;
|
||||
aPads[i].action = 0;
|
||||
aPads[i].actionPadObj = 0; //reset
|
||||
continue;
|
||||
}
|
||||
GET_OBJECT_COORDINATES(aPads[i].actionPadObj,&aPadx,&aPady,&aPadz);
|
||||
for(j = 0; j < 2; j++)
|
||||
{
|
||||
GET_OFFSET_FROM_OBJECT_IN_WORLD_COORDS(aPads[i].actionPadObj,aPadCornerOffsetX[j],aPadCornerOffsetY[j],0,&aPadCornerWorldCoordX[j],&aPadCornerWorldCoordY[j],&z);
|
||||
}
|
||||
int tmp_ped,tmp_veh,tmp_driver;
|
||||
float tmp_x,tmp_y,tmp_z;
|
||||
for(f = 0; f < MAX_PLAYERS; f++)
|
||||
{
|
||||
if(Player_Display_Selection(f)) continue; //contains PLAYER_HAS_CHAR check -- NO
|
||||
GET_PLAYER_CHAR(f,&tmp_ped);
|
||||
if(IS_CHAR_IN_ANY_CAR(tmp_ped))
|
||||
{
|
||||
GET_CAR_CHAR_IS_USING(tmp_ped,&tmp_veh);
|
||||
GET_DRIVER_OF_CAR(tmp_veh,&tmp_driver);
|
||||
if(tmp_driver == tmp_ped) //Player is driving
|
||||
{
|
||||
if(!IS_CAR_IN_AREA_2D(tmp_veh,aPadCornerWorldCoordX[0],aPadCornerWorldCoordY[0],aPadCornerWorldCoordX[1],aPadCornerWorldCoordY[1],false)) continue;
|
||||
GET_CAR_COORDINATES(tmp_veh,&tmp_x,&tmp_y,&tmp_z);
|
||||
int distance;
|
||||
GET_DISTANCE_BETWEEN_COORDS_3D(aPadx,aPady,aPadz,tmp_x,tmp_y,tmp_z,&distance);
|
||||
if(distance > 7) continue;
|
||||
int netID;
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&netID);
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(netID);
|
||||
if(!HAS_CONTROL_OF_NETWORK_ID(netID) || aPads[i].action == 0) continue; //if no control or action not defined (don't use 0)
|
||||
//WE NOW HAVE CONTROL OF PLAYERS CAR AND THEY ARE ON THE ACTION PAD
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD ActionPad "); //16
|
||||
itoa( (i + 1), buffer); //17
|
||||
Strcat(buffer, ": ~COL_NET_"); //11 + 17 = 28
|
||||
itoa( (f + 1), buffer); //30
|
||||
Strcat(buffer, "~"); //31
|
||||
Strcat(buffer,GET_PLAYER_NAME(f)); //46
|
||||
|
||||
if(aPads[i].action == ACTION_VEHICLE_GENERATE)
|
||||
{
|
||||
if(aPads[i].veh_model_to_generate != 0 && IS_MODEL_IN_CDIMAGE(aPads[i].veh_model_to_generate)) //Hash has been set + Model is in users image.
|
||||
{
|
||||
if(!HAS_MODEL_LOADED(aPads[i].veh_model_to_generate))
|
||||
{
|
||||
REQUEST_MODEL(aPads[i].veh_model_to_generate);
|
||||
continue;
|
||||
}
|
||||
DELETE_CAR(&tmp_veh);
|
||||
float spawn_x,spawn_y,spawn_z;
|
||||
int spawned_veh;
|
||||
GET_OFFSET_FROM_OBJECT_IN_WORLD_COORDS(aPads[i].actionPadObj,0,4,0,&spawn_x, &spawn_y, &spawn_z);
|
||||
CREATE_CAR(aPads[i].veh_model_to_generate,spawn_x,spawn_y,spawn_z + 5, &spawned_veh, true);
|
||||
REQUEST_COLLISION_AT_POSN(spawn_x,spawn_y,spawn_z + 5);
|
||||
float h;
|
||||
GET_OBJECT_HEADING(aPads[i].actionPadObj,&h);
|
||||
SET_CAR_HEADING(spawned_veh,h);
|
||||
int rand[4],n;
|
||||
for(n = 0; n < 4; n++)
|
||||
{
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,134,&rand[n]);
|
||||
}
|
||||
CHANGE_CAR_COLOUR(spawned_veh,rand[0],rand[1]);
|
||||
SET_EXTRA_CAR_COLOURS(spawned_veh,rand[2],rand[3]);
|
||||
SET_CAR_CAN_BE_DAMAGED(spawned_veh,false);
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(spawned_veh,false);
|
||||
SET_CAN_BURST_CAR_TYRES(spawned_veh,false); //can make a var for Actionpad_Generate_InvincibleVehs
|
||||
SET_CAR_STRONG(spawned_veh,true);
|
||||
Strcat(buffer, " ~s~used the ");
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(aPads[i].veh_model_to_generate)));
|
||||
Strcat(buffer, " generator.");
|
||||
|
||||
}
|
||||
}
|
||||
else if(aPads[i].action == ACTION_PAYNSPRAY)
|
||||
{
|
||||
int rand[4];
|
||||
for(n = 0; n < 4; n++)
|
||||
{
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,134,&rand[n]);
|
||||
}
|
||||
CHANGE_CAR_COLOUR(tmp_veh,rand[0],rand[1]);
|
||||
SET_EXTRA_CAR_COLOURS(tmp_veh,rand[2],rand[3]);
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(tmp_ped, 0, -8, 0 ,&tmp_x,&tmp_y,&tmp_z);
|
||||
SET_CAR_COORDINATES(tmp_veh,tmp_x, tmp_y, tmp_z); //their heading shouldn't change so no need to grab it
|
||||
Strcat(buffer, " ~s~used the Pay'NSpray."); //24 + 46 = 70
|
||||
}
|
||||
else if(aPads[i].action == ACTION_TELEPORT_COORD_GROUND_X_Y)
|
||||
{
|
||||
if(aPads[i].TeleportCoordGroundX != 1337 && aPads[i].TeleportCoordGroundY != 1337)
|
||||
{
|
||||
float ground;
|
||||
GET_GROUND_Z_FOR_3D_COORD(aPads[i].TeleportCoordGroundX,aPads[i].TeleportCoordGroundY,50,&ground);
|
||||
SET_CAR_FORWARD_SPEED(tmp_veh,0); //stop net control fucking them up
|
||||
SET_CAR_COORDINATES(tmp_veh,aPads[i].TeleportCoordGroundX,aPads[i].TeleportCoordGroundY,ground);
|
||||
Strcat(buffer, " ~s~was teleported to ~r~X: ~s~"); //78
|
||||
itoa((int)aPads[i].TeleportCoordGroundX, buffer); //max 5 chars? //83
|
||||
Strcat(buffer, " ~r~Y: ~s~"); //93
|
||||
itoa((int)aPads[i].TeleportCoordGroundY, buffer); //5 //might just get away with this
|
||||
}
|
||||
}
|
||||
|
||||
if(aPads[i].action > 1) //0 not used & 1 not defined currently
|
||||
{
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
if(DOES_OBJECT_EXIST(SultanRSGenerator_obj)){ //ACTIONPAD OBJECT
|
||||
//DEFINING ACTIONPAD
|
||||
int i,tmp,tmp_veh,tmp_vehNetId;
|
||||
float x,y,z,x2,y2,z2,h;
|
||||
float tmp_x,tmp_y,tmp_z;
|
||||
float mobile_obj_corner_1_x,mobile_obj_corner_2_x,mobile_obj_corner_1_y,mobile_obj_corner_2_y;
|
||||
float distance;
|
||||
GET_OBJECT_COORDINATES(SultanRSGenerator_obj,&x2,&y2,&z2);
|
||||
float ap_obj;
|
||||
GET_OFFSET_FROM_OBJECT_IN_WORLD_COORDS(SultanRSGenerator_obj,3.1204f,4.6515f,0,&mobile_obj_corner_1_x,&mobile_obj_corner_1_y,&ap_obj);
|
||||
GET_OFFSET_FROM_OBJECT_IN_WORLD_COORDS(SultanRSGenerator_obj,-3.1284f,-4.6273f,0,&mobile_obj_corner_2_x,&mobile_obj_corner_2_y,&ap_obj);
|
||||
//SCAN PLAYERS
|
||||
for(i=0;i<=15;i++){
|
||||
if(!IS_NETWORK_PLAYER_ACTIVE(i)) continue;
|
||||
GET_PLAYER_CHAR(i,&tmp);
|
||||
if(!DOES_CHAR_EXIST(tmp)) continue;
|
||||
if(!is_driving(tmp)) continue;
|
||||
GET_CAR_CHAR_IS_USING(tmp,&tmp_veh);
|
||||
if(!IS_CAR_IN_AREA_2D(tmp_veh,mobile_obj_corner_1_x,mobile_obj_corner_1_y,mobile_obj_corner_2_x,mobile_obj_corner_2_y,false)) continue;
|
||||
GET_CAR_COORDINATES(tmp_veh,&x,&y,&z);
|
||||
GET_CHAR_COORDINATES(tmp,&tmp_x,&tmp_y,&tmp_z);
|
||||
GET_DISTANCE_BETWEEN_COORDS_3D(x,y,z,x2,y2,z2,&distance);
|
||||
if(distance > 5) continue;
|
||||
|
||||
//Alert_Two(GET_PLAYER_NAME(i),"~BLIP_76~~COL_NET_4~was detected on the actionpad~n~~w~Attemting to get control of NET ID");
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&tmp_vehNetId);
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(tmp_vehNetId);
|
||||
if(!HAS_CONTROL_OF_NETWORK_ID(tmp_vehNetId)) continue;
|
||||
if(!IS_CHAR_IN_ANY_HELI(tmp)){
|
||||
float Cargen_x, Cargen_y, Cargen_z, Cargen_h;// Cargen_zz;
|
||||
float TP_out_x, TP_out_y, TP_out_z, TP_out_h;
|
||||
uint carmodel,tmp_carmodel;
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(tmp, 10, 0, 0 ,&TP_out_x,&TP_out_y,&TP_out_z);
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(tmp, 0, 0, 0 ,&Cargen_x,&Cargen_y,&Cargen_z);
|
||||
//GET_GROUND_Z_FOR_3D_COORD(Cargen_x, Cargen_y, Cargen_z, &Cargen_zz);
|
||||
GET_CHAR_HEADING(tmp,&Cargen_h);
|
||||
REQUEST_MODEL(MODEL_SULTANRS);
|
||||
while(!HAS_MODEL_LOADED(MODEL_SULTANRS)) WAIT(0);
|
||||
GET_CAR_MODEL(tmp_veh, &tmp_carmodel);
|
||||
if(tmp_carmodel == MODEL_SULTANRS){
|
||||
SET_CAR_COORDINATES(tmp_veh,TP_out_x, TP_out_y, TP_out_z);
|
||||
SET_CAR_HEADING(tmp_veh,Cargen_h);
|
||||
}
|
||||
else{
|
||||
Vehicle vehicle;
|
||||
clear_objects_on_car(tmp_veh);
|
||||
DELETE_CAR(&tmp_veh);
|
||||
MARK_CAR_AS_NO_LONGER_NEEDED(&tmp_veh);
|
||||
CREATE_CAR(MODEL_SULTANRS,Cargen_x ,Cargen_y,Cargen_z,&vehicle,true);
|
||||
SET_CAR_COORDINATES_NO_OFFSET(vehicle, Cargen_x, Cargen_y, Cargen_z);
|
||||
SET_CAR_HEADING(vehicle,Cargen_h);
|
||||
FREEZE_CAR_POSITION(vehicle, false);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(MODEL_SULTANRS);
|
||||
GET_CAR_MODEL(vehicle, &carmodel);
|
||||
int colours[14],rand;
|
||||
colours[0] = 128; //yellow
|
||||
colours[1] = 120; //cream
|
||||
colours[2] = 107; //brown
|
||||
colours[3] = 59; //green
|
||||
colours[4] = 132; //yellow
|
||||
colours[5] = 129; //lightblue
|
||||
colours[6] = 125; //pink
|
||||
colours[7] = 135; //white
|
||||
colours[8] = 30; //red
|
||||
colours[9] = 46;
|
||||
colours[10] = 65; //blue
|
||||
colours[11] = 71; //blue
|
||||
colours[12] = 76; //blue
|
||||
colours[13] = 103; //
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,13,&rand);
|
||||
if(carmodel == MODEL_SULTANRS){
|
||||
CHANGE_CAR_COLOUR(vehicle,0,colours[rand]);
|
||||
SET_EXTRA_CAR_COLOURS(vehicle,colours[rand],colours[rand]);
|
||||
}
|
||||
else{
|
||||
int dick;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,13,&dick);
|
||||
CHANGE_CAR_COLOUR(vehicle,colours[rand],colours[dick]);
|
||||
int cock;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,13,&rand);
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,13,&cock);
|
||||
SET_EXTRA_CAR_COLOURS(vehicle,colours[rand],colours[cock]);
|
||||
}
|
||||
Alert_Two(GET_PLAYER_NAME(i),"~COL_NET_1~~BLIP_76~used the Sultan RS Generator",false);
|
||||
SET_CAR_COLLISION(vehicle, true);
|
||||
SET_CAR_CAN_BE_DAMAGED(vehicle, !damage);
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(vehicle, !damage);
|
||||
SET_CAN_BURST_CAR_TYRES(vehicle,!damage);
|
||||
SET_CAR_STRONG(vehicle,!damage);
|
||||
|
||||
int j;
|
||||
for(j=0;j<=9;j++){
|
||||
TURN_OFF_VEHICLE_EXTRA(vehicle,j,false);
|
||||
}
|
||||
SWITCH_CAR_SIREN(vehicle,siren);
|
||||
SET_CAN_BURST_CAR_TYRES(vehicle,false);
|
||||
}
|
||||
}
|
||||
else{
|
||||
Alert_Two(GET_PLAYER_NAME(i),"~COL_NET_4~~BLIP_76~detected on actionpad using a heli~n~~w~Player is now burning to death!",false);
|
||||
clear_objects_on_car(tmp_veh);
|
||||
DELETE_CAR(&tmp_veh);
|
||||
MARK_CAR_AS_NO_LONGER_NEEDED(&tmp_veh);
|
||||
START_CHAR_FIRE(tmp);
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
/*
|
||||
void Actionpad_teleport_function(uint function_object,float tx,float ty,float tz){
|
||||
if(DOES_OBJECT_EXIST(function_object)){ //ACTIONPAD OBJECT
|
||||
//DEFINING ACTIONPAD
|
||||
int i,tmp,tmp_veh,tmp_vehNetId;
|
||||
float x,y,z,x2,y2,z2,h;
|
||||
float mobile_obj_corner_1_x,mobile_obj_corner_2_x,mobile_obj_corner_1_y,mobile_obj_corner_2_y;
|
||||
float distance;
|
||||
GET_OBJECT_COORDINATES(function_object,&x2,&y2,&z2);
|
||||
float ap_obj;
|
||||
GET_OFFSET_FROM_OBJECT_IN_WORLD_COORDS(function_object,3.1204f,4.6515f,0,&mobile_obj_corner_1_x,&mobile_obj_corner_1_y,&ap_obj);
|
||||
GET_OFFSET_FROM_OBJECT_IN_WORLD_COORDS(function_object,-3.1284f,-4.6273f,0,&mobile_obj_corner_2_x,&mobile_obj_corner_2_y,&ap_obj);
|
||||
//SCAN PLAYERS
|
||||
for(i=0;i<MAX_PLAYERS;i++){
|
||||
if(!IS_NETWORK_PLAYER_ACTIVE(i)) continue;
|
||||
GET_PLAYER_CHAR(i,&tmp);
|
||||
if(!DOES_CHAR_EXIST(tmp)) continue;
|
||||
if(!is_driving(tmp)) continue;
|
||||
GET_CAR_CHAR_IS_USING(tmp,&tmp_veh);
|
||||
if(!IS_CAR_IN_AREA_2D(tmp_veh,mobile_obj_corner_1_x,mobile_obj_corner_1_y,mobile_obj_corner_2_x,mobile_obj_corner_2_y,false)) continue;
|
||||
GET_CAR_COORDINATES(tmp_veh,&x,&y,&z);
|
||||
GET_DISTANCE_BETWEEN_COORDS_3D(x,y,z,x2,y2,z2,&distance);
|
||||
if(distance > 5) continue;
|
||||
|
||||
Alert_Two(GET_PLAYER_NAME(i),"~BLIP_76~~COL_NET_4~was detected on the teleporter~n~~w~Attemting to get control of NET ID",false);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(tmp_veh,&tmp_vehNetId);
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(tmp_vehNetId);
|
||||
if(!HAS_CONTROL_OF_NETWORK_ID(tmp_vehNetId)) continue;
|
||||
if(!IS_CHAR_IN_ANY_HELI(tmp)){
|
||||
SET_CAR_COORDINATES(tmp_veh,tx,ty,tz);//do the function
|
||||
|
||||
if(tx == -970.6938)Alert_Two(GET_PLAYER_NAME(i),"~COL_NET_1~~BLIP_76~is teleporting to Sultan RS Spawn",false);
|
||||
if(tx == 2614.2830)Alert_Two(GET_PLAYER_NAME(i),"~COL_NET_1~~BLIP_76~is teleporting to Devils Cloud",false);
|
||||
if(tx == save_x1)Alert_Two(GET_PLAYER_NAME(i),"~COL_NET_1~~BLIP_76~is teleporting to Saved Location~y~ 1",false);
|
||||
if(tx == save_x2)Alert_Two(GET_PLAYER_NAME(i),"~COL_NET_1~~BLIP_76~is teleporting to Saved Location~y~ 2",false);
|
||||
|
||||
FIX_CAR(tmp_veh);
|
||||
//if(tmp != pPlayer)change_car_color(tmp_veh,0,30,30,30);//devilscolors --> make this optional
|
||||
GET_CAR_HEADING(tmp_veh, &h);
|
||||
SET_CAR_HEADING(tmp_veh,0);
|
||||
}
|
||||
else{
|
||||
Alert_Two(GET_PLAYER_NAME(i),"~COL_NET_4~~BLIP_76~tried to teleport using a heli~n~~w~Player is now burning to death!",false);
|
||||
clear_objects_on_car(tmp_veh);
|
||||
DELETE_CAR(&tmp_veh);
|
||||
MARK_CAR_AS_NO_LONGER_NEEDED(&tmp_veh);
|
||||
START_CHAR_FIRE(tmp);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version V7 ULTIMATE
|
||||
* @ DEV TEAM V7- DEVILSDESIGN
|
||||
*/
|
||||
|
||||
/**
|
||||
How to use :
|
||||
A. Create a function for the actionpad spawn // set an object
|
||||
1. Teleporter Mobile (using the grids + spark = 6 objects!) //eh? -- Nathan
|
||||
2. Teleporter on fixed place (using the grids + spark = 6 objects!)
|
||||
3. Actionpad doing a function (undefined)
|
||||
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
/**Teleporter needs*/
|
||||
|
||||
|
||||
|
||||
/*
|
||||
float save_x1 = 1234.5678, save_y1 = 1234.5678, save_z1 = 1234.5678; //Telepad 1
|
||||
float save_x2 = 8765.4321, save_y2 = 8765.4321, save_z2 = 8765.4321; //Telepad 2
|
||||
float custom_float_change;
|
||||
Object savedlocation1;//used for mobile teleport with saved coords
|
||||
Object savedlocation2;
|
||||
//Object Waypoint_location;
|
||||
Object greencloud_obj;//used for devilscloud ramp
|
||||
Object SultanRS_Teleport_obj;// used for test teleporter
|
||||
Object PayNSpray_obj;
|
||||
Object SultanRSGenerator_obj;
|
||||
Object CometGenerator_obj;
|
||||
Object SabreGTGenerator_obj;
|
||||
Object SentinelGenerator_obj;
|
||||
Object FbiGenerator_obj;
|
||||
Object PatriotGenerator_obj;
|
||||
*/
|
||||
void content_builder_setup(void){
|
||||
MENU_SUB_HEADER = "Content Builder";
|
||||
AddSubMenu("~PAD_RIGHT~ Spawn 8 Vehicles Around You"); //1
|
||||
AddSubMenu("~PAD_RIGHT~ Custom & Funny Vehicles"); //2
|
||||
AddSubMenu("~PAD_RIGHT~ Buildings Near You"); //3
|
||||
AddSubMenu("~PAD_RIGHT~ MapMod Builder On The Fly"); //4
|
||||
AddSubMenu("~PAD_RIGHT~ Spawn MapMods"); //5
|
||||
AddSubMenu("~PAD_RIGHT~ Special Effects"); //6
|
||||
AddSubMenu("~PAD_RIGHT~ Object Rotations"); //7
|
||||
AddSubMenu("~PAD_RIGHT~ Fun Stuff - Devils Favourites"); //AddSubMenu("~PAD_RIGHT~ Give mods to others"); //8 // Change this to fun stuff
|
||||
AddSubMenu("~PAD_RIGHT~ Blocked / Restricted Areas"); //9
|
||||
AddSubMenu("~PAD_RIGHT~ AirStrikes"); //10
|
||||
AddSubMenu("~PAD_RIGHT~ Mobile Teleporters - Non Modders");//11
|
||||
AddSubMenu("~PAD_RIGHT~ ActionPads - Non Modders"); //12
|
||||
AddSubMenu("~PAD_RIGHT~ Delete/Clear Options"); //13
|
||||
}
|
||||
|
||||
void actionpad_setup(void){
|
||||
MENU_SUB_HEADER = "Actionpads";
|
||||
AddFunction("~BLIP_52~ Pay'N Spray"); //1
|
||||
AddFunction("~BLIP_52~ Sultan RS Generator"); //2
|
||||
AddFunction("~BLIP_52~ Comet Generator"); //3
|
||||
AddFunction("~BLIP_52~ Sabre GT Generator"); //4
|
||||
AddFunction("~BLIP_52~ Sentinel XS Generator"); //5
|
||||
AddFunction("~BLIP_52~ FBI Buffalo Generator"); //6
|
||||
AddFunction("~BLIP_52~ Patriot Generator"); //7
|
||||
}
|
||||
|
||||
373
Trident/MD_Functions/MDF_Creation_Functions.c
Normal file
373
Trident/MD_Functions/MDF_Creation_Functions.c
Normal file
@@ -0,0 +1,373 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version V7 ULTIMATE
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
|
||||
void create_mobile_mapobj(int model,float ox, float oy, float oz, float rx,float ry,float rz){ //Working together with BASE !!! Attaching objects to Hook
|
||||
Object mapextra_obj;
|
||||
if (IS_MODEL_IN_CDIMAGE(model)){
|
||||
REQUEST_MODEL(model);
|
||||
while (!HAS_MODEL_LOADED(model))WAIT(0);
|
||||
CREATE_OBJECT_NO_OFFSET(model, 0, 0, 0, &mapextra_obj, true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
|
||||
FREEZE_OBJECT_POSITION(mapextra_obj, true);
|
||||
SET_OBJECT_LIGHTS(mapextra_obj, true);
|
||||
SET_OBJECT_VISIBLE(mapextra_obj, true);
|
||||
SET_OBJECT_INVINCIBLE(mapextra_obj, true);
|
||||
|
||||
ATTACH_OBJECT_TO_OBJECT(mapextra_obj, mapbase_obj, 0, ox,oy,oz,rx,ry,rz);
|
||||
SET_OBJECT_COLLISION(mapextra_obj, true);
|
||||
block_net_control_of_object(mapextra_obj);
|
||||
}
|
||||
}
|
||||
|
||||
void GIVE_HEALTH_TO_CHAR(const int Player_PED){
|
||||
Pickup healthpack;
|
||||
float Player_PED_GroundZ;
|
||||
float Player_PED_x, Player_PED_y, Player_PED_z;
|
||||
Blip BlipPickup;
|
||||
REMOVE_ALL_PICKUPS_OF_TYPE(2);
|
||||
GET_CHAR_COORDINATES(Player_PED, &Player_PED_x, &Player_PED_y, &Player_PED_z);
|
||||
GET_GROUND_Z_FOR_3D_COORD(Player_PED_x, Player_PED_y, Player_PED_z, &Player_PED_GroundZ);
|
||||
CREATE_PICKUP(1069950328, 2, Player_PED_x, Player_PED_y, Player_PED_GroundZ, &healthpack, false);
|
||||
ADD_BLIP_FOR_PICKUP(healthpack, &BlipPickup);
|
||||
WAIT(200);
|
||||
REMOVE_PICKUP(healthpack);
|
||||
}
|
||||
|
||||
void Spawn_Pickup(Ped PlayerPed,Model SpawnPickup_model,Pickup PickupInt,uint SpawnPickup_type ){
|
||||
REMOVE_ALL_PICKUPS_OF_TYPE(2);
|
||||
|
||||
Blip BlipPickup;
|
||||
float PlayerPed_x, PlayerPed_y, PlayerPed_z;
|
||||
GET_CHAR_COORDINATES(PlayerPed, &PlayerPed_x, &PlayerPed_y, &PlayerPed_z);
|
||||
if(!IS_ANY_PICKUP_AT_COORDS(PlayerPed_x, PlayerPed_y, PlayerPed_z)){
|
||||
CREATE_PICKUP(SpawnPickup_model, SpawnPickup_type, PlayerPed_x, PlayerPed_y+1, PlayerPed_z, &PickupInt, false);
|
||||
ADD_BLIP_FOR_PICKUP(PickupInt, &BlipPickup);
|
||||
/*
|
||||
create_map_obj(1005973733, 0.0577, -0.1013, -2.5672, 0, 4.200, 0,0,0, 0);
|
||||
*/
|
||||
}
|
||||
|
||||
if(HAS_PICKUP_BEEN_COLLECTED(PickupInt)){
|
||||
Alert("Pickup has been collected",false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void create_object_vehicle(uint object_vehicle, int visible){// FUNCTION TO CREATE OBJECT VEHICLE BASE
|
||||
|
||||
REQUEST_MODEL(object_vehicle);
|
||||
MD_Delete_Objects_On_Vehicle(iPlayer);
|
||||
while (!HAS_MODEL_LOADED(object_vehicle))WAIT(0);
|
||||
float curHeading, curX, curY, curZ, cGroundZ, curSpeed;
|
||||
if (IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &object_veh);
|
||||
GET_CAR_SPEED(object_veh, &curSpeed);
|
||||
GET_CAR_HEADING(object_veh, &curHeading);
|
||||
GET_CAR_COORDINATES(object_veh, &curX, &curY, &curZ);
|
||||
DELETE_CAR(&object_veh);
|
||||
MARK_CAR_AS_NO_LONGER_NEEDED(&object_veh);
|
||||
}
|
||||
else{
|
||||
GET_CHAR_HEADING(pPlayer, &curHeading);
|
||||
GET_CHAR_COORDINATES(pPlayer, &curX, &curY, &curZ);
|
||||
}
|
||||
CREATE_CAR(object_vehicle, curX, curY, curZ, &object_veh, true);
|
||||
while (!DOES_VEHICLE_EXIST(object_veh))WAIT(0);
|
||||
SET_CAR_HEADING(object_veh, curHeading);
|
||||
SET_CAR_COORDINATES(object_veh, curX, curY, curZ);
|
||||
SET_CAR_VISIBLE(object_veh,visible);
|
||||
SET_HAS_BEEN_OWNED_BY_PLAYER(object_veh, true);
|
||||
SET_NEEDS_TO_BE_HOTWIRED(object_veh, false);
|
||||
SET_CAR_ENGINE_ON(object_veh, true, true);
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE)){
|
||||
SET_CAR_CAN_BE_DAMAGED(object_veh,false);
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(object_veh,false);
|
||||
SET_CAN_BURST_CAR_TYRES(object_veh,false);
|
||||
}
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ALL_UPGRADES)){
|
||||
int i;
|
||||
for(i=0;i<=9;i++){
|
||||
TURN_OFF_VEHICLE_EXTRA(object_veh, i, false);
|
||||
}
|
||||
}
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DIRT)){
|
||||
SET_VEHICLE_DIRT_LEVEL(object_veh,15.9);
|
||||
WASH_VEHICLE_TEXTURES(object_veh,255);
|
||||
}
|
||||
else{
|
||||
SET_VEHICLE_DIRT_LEVEL(object_veh,0);
|
||||
WASH_VEHICLE_TEXTURES(object_veh,0);
|
||||
}
|
||||
WARP_CHAR_INTO_CAR(pPlayer, object_veh);
|
||||
if (IS_THIS_MODEL_A_HELI(object_vehicle))
|
||||
SET_HELI_BLADES_FULL_SPEED(object_veh);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(object_vehicle);
|
||||
LOCK_CAR_DOORS(object_veh, VEHICLE_DOOR_UNLOCKED);
|
||||
if (IS_INTERIOR_SCENE()){
|
||||
GET_GROUND_Z_FOR_3D_COORD(curX, curY, curZ, &cGroundZ);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, curX, curY, cGroundZ);
|
||||
LOAD_SCENE(curX, curY, curZ);
|
||||
}
|
||||
if (curSpeed != 0)
|
||||
SET_CAR_FORWARD_SPEED(object_veh, curSpeed);
|
||||
return;
|
||||
}
|
||||
|
||||
void CreateMapObj(const int model, float x, float y, float z, float h, float qx, float qy, float qz, float qw, bool dynamic, bool NO_OFFSET)
|
||||
{
|
||||
Object object;
|
||||
if(IS_MODEL_IN_CDIMAGE(model))
|
||||
{
|
||||
REQUEST_MODEL(model);
|
||||
while(!HAS_MODEL_LOADED(model)) WAIT(0);
|
||||
if(NO_OFFSET)
|
||||
{
|
||||
CREATE_OBJECT_NO_OFFSET(model, x, y, z, &object, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
CREATE_OBJECT(model, x, y, z, &object, true);
|
||||
}
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
SET_OBJECT_HEADING(object, h);
|
||||
SET_OBJECT_QUATERNION(object, qx, qy, qz, qw);
|
||||
SET_OBJECT_INVINCIBLE(object, true);
|
||||
SET_OBJECT_PROOFS(object, false, false, false, false, false);
|
||||
SET_OBJECT_VISIBLE(object, true);
|
||||
SET_OBJECT_LIGHTS(object, true);
|
||||
if (dynamic)
|
||||
{
|
||||
SET_OBJECT_DYNAMIC(object, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
FREEZE_OBJECT_POSITION(object, true);
|
||||
}
|
||||
WAIT(0);
|
||||
if(In_Network)
|
||||
{
|
||||
int nvid;
|
||||
GET_NETWORK_ID_FROM_OBJECT(object, &nvid);
|
||||
SET_NETWORK_ID_CAN_MIGRATE(nvid, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void create_map_obj(const int model, float x, float y, float z, float h, float qx, float qy, float qz, float qw, bool dynamic){ ///temporary placeholder
|
||||
|
||||
//TEMPORARY PLACEHOLDER, REPLACE create_map_obj with my new CreateMapObj instead of calling this when you get time
|
||||
CreateMapObj(model,x,y,z,h,qx,qy,qz,qw,dynamic,true);
|
||||
}
|
||||
void create_map_obj_offset(uint model, float x, float y, float z, float h, float qx, float qy, float qz, float qw, bool dynamic){ //OBJECTS ON FIXED POSITION
|
||||
//TEMPORARY PLACEHOLDER, REPLACE create_map_obj_offset with my new CreateMapObj instead of calling this when you get time
|
||||
CreateMapObj(model,x,y,z,h,qx,qy,qz,qw,dynamic,false);
|
||||
|
||||
}
|
||||
|
||||
void create_map_car(uint model,float x,float y,float z){ //CARPLACEMENTS ON FIXED POSITION
|
||||
float h;
|
||||
Vehicle actionpad_vehicle;
|
||||
if(IS_MODEL_IN_CDIMAGE(model)){
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
REQUEST_MODEL(model);
|
||||
while(!HAS_MODEL_LOADED(model)) WAIT(0);
|
||||
CREATE_CAR(model,x,y+7,z+2,&actionpad_vehicle,true);
|
||||
SET_CAR_HEADING(actionpad_vehicle,h-180);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
SET_CAR_COLLISION(actionpad_vehicle, false);
|
||||
SET_CAR_CAN_BE_DAMAGED(actionpad_vehicle,false);
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(actionpad_vehicle,false);
|
||||
SET_CAN_BURST_CAR_TYRES(actionpad_vehicle,false);
|
||||
FREEZE_CAR_POSITION(actionpad_vehicle, true);
|
||||
int lockZ;
|
||||
GET_CAR_DOOR_LOCK_STATUS(actionpad_vehicle,&lockZ);
|
||||
if(lockZ == VEHICLE_DOOR_UNLOCKED){
|
||||
LOCK_CAR_DOORS(actionpad_vehicle,VEHICLE_DOOR_LOCKED_BOTH_SIDES);
|
||||
}
|
||||
}
|
||||
else Alert("~BLIP_76~ ~COL_NET_4~Error! ~w~Model missing from your CD image",false);
|
||||
//PLAY_AUDIO_EVENT("FRONTEND_MENU_MP_SERVER_HIGHLIGHT");
|
||||
}
|
||||
|
||||
|
||||
void attach_admin_object_to_player(const int player, const int model,const int pedbone, float obj_x, float obj_y, float obj_z, float obj_rx, float obj_ry, float obj_rz, const int id){
|
||||
//TEMPORARY PLACEHOLDER (both of these functions are the exact same, WASTE OF SPACE!
|
||||
attach_object_to_player(player,model,pedbone,obj_x,obj_y,obj_z,obj_rx,obj_ry,obj_rz,id);
|
||||
}
|
||||
|
||||
void change_car_color (int player, ColourIndex color1, ColourIndex color2, ColourIndex color3, ColourIndex color4){
|
||||
Vehicle vehicle;
|
||||
GET_CAR_CHAR_IS_USING(player, &vehicle);
|
||||
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_UNIFIED_COLOUR)){
|
||||
CHANGE_CAR_COLOUR(vehicle, color1, color2);
|
||||
SET_EXTRA_CAR_COLOURS(vehicle, color3, color4);
|
||||
}
|
||||
else{
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,134,&rand);
|
||||
CHANGE_CAR_COLOUR(vehicle,color1,rand);
|
||||
SET_EXTRA_CAR_COLOURS(vehicle,rand,rand); //done <3
|
||||
}
|
||||
|
||||
WAIT(0);
|
||||
FIX_CAR(vehicle);
|
||||
SET_VEHICLE_DIRT_LEVEL(vehicle,0.0);
|
||||
}
|
||||
|
||||
void change_Netcar_color (Vehicle vehicle,int player, ColourIndex color1, ColourIndex color2, ColourIndex color3, ColourIndex color4)
|
||||
{
|
||||
//TEMPORARY PLACEHOLDER (both of these functions are the exact same, WASTE OF SPACE!
|
||||
//I believe we already have functions for this no?
|
||||
change_car_color(player, color1, color2, color3, color4);
|
||||
|
||||
}
|
||||
|
||||
void clear_rotations(void){
|
||||
register int Rotation_Subject_ID;
|
||||
int i;
|
||||
for(i = 0; i < 3; i++){
|
||||
for(Rotation_Subject_ID = 0; Rotation_Subject_ID <= MAX_ROTATION_SUBJECTS -1; Rotation_Subject_ID++){
|
||||
if(!DOES_OBJECT_EXIST(Rotation_Subject_Handle))continue;
|
||||
if (DOES_CHAR_EXIST(Rotation_Subject[Rotation_Subject_ID]) && IS_PED_ATTACHED_TO_OBJECT(Rotation_Subject[Rotation_Subject_ID], Rotation_Subject_Handle)){
|
||||
DELETE_CHAR(&Rotation_Subject[Rotation_Subject_ID]);
|
||||
}
|
||||
else if (DOES_VEHICLE_EXIST(Rotation_Subject[Rotation_Subject_ID]) && IS_CAR_ATTACHED(Rotation_Subject[Rotation_Subject_ID])){
|
||||
DELETE_CAR(&Rotation_Subject[Rotation_Subject_ID]);
|
||||
}
|
||||
else if (DOES_OBJECT_EXIST(Rotation_Subject[Rotation_Subject_ID]) && IS_OBJECT_ATTACHED(Rotation_Subject[Rotation_Subject_ID])){
|
||||
DELETE_OBJECT(&Rotation_Subject[Rotation_Subject_ID]);
|
||||
}
|
||||
}
|
||||
WAIT(70);
|
||||
}
|
||||
SetBit(MD_Misc_OptionsBitSet,MD_MISC_ROTATIONS_LOOP,false);
|
||||
//Rotationsloop = false;
|
||||
if(DOES_OBJECT_EXIST(Rotation_Subject_Handle))DELETE_OBJECT(&Rotation_Subject_Handle);
|
||||
}
|
||||
|
||||
/*
|
||||
if(object == 0xD6E93FB5)continue;//V8 Object
|
||||
if(object == 0xD1BBA26E)continue;//V81 Object
|
||||
if(object == 0x3F15FE26)continue;//V11 Object
|
||||
if(object == 0x2D295A4D)continue;//Spare Object
|
||||
if(object == 0x3F15FE26)continue;//Spare Object
|
||||
REQUEST_MODEL(0xF45AB5AE); // poolball 0xF45AB5AE
|
||||
*/
|
||||
|
||||
void Create_Rotation(uint Player_ID, int model,float Subject_h,float Subject_x,float Subject_y, float height,float Angle_x,float Angle_y,float Angle_z,int id){
|
||||
if(PLAYER_HAS_CHAR(Player_ID)){
|
||||
Ped Player_PED;
|
||||
if(!DOES_OBJECT_EXIST(Rotation_Subject_Handle)){ //Create it
|
||||
Model Handle_model = 0xF45AB5AE;
|
||||
REQUEST_MODEL(Handle_model);
|
||||
while(!HAS_MODEL_LOADED(Handle_model))WAIT(0);
|
||||
CREATE_OBJECT(Handle_model, 0.0, 0.0, 0.0, &Rotation_Subject_Handle, true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(Handle_model);
|
||||
SET_OBJECT_VISIBLE(Rotation_Subject_Handle, true);
|
||||
GET_PLAYER_CHAR(Player_ID,&Player_PED);
|
||||
ATTACH_OBJECT_TO_PED (Rotation_Subject_Handle,Player_PED, 0.0,0.0, 0.0, -1, 0.0, 0.0, rotate_inc, 0);
|
||||
//block_net_control_of_object(Rotation_Subject_Handle);
|
||||
if(!MARK_OBJECT_FOR_NATHANS_PROTECTION(Rotation_Subject_Handle)) //net control set in my func
|
||||
{
|
||||
block_net_control_of_object(Rotation_Subject_Handle);
|
||||
}
|
||||
WAIT(50);
|
||||
SetBit(MD_Misc_OptionsBitSet,MD_MISC_ROTATIONS_LOOP,true);
|
||||
//Rotationsloop = true;
|
||||
Alert("Rotation base created",false);
|
||||
}
|
||||
if(IS_MODEL_IN_CDIMAGE(model) && DOES_OBJECT_EXIST(Rotation_Subject_Handle)){
|
||||
REQUEST_MODEL(model);
|
||||
while (!HAS_MODEL_LOADED(model))WAIT(0);
|
||||
if(IS_THIS_MODEL_A_VEHICLE(model)){
|
||||
CREATE_CAR(model,0.0,0.0,0.0,&Rotation_Subject[id],true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
ATTACH_CAR_TO_OBJECT(Rotation_Subject[id], Rotation_Subject_Handle,1,Subject_x, Subject_y,height, Angle_x,Angle_y,Angle_z);
|
||||
SWITCH_CAR_SIREN(Rotation_Subject[id],true);
|
||||
}
|
||||
else if(IS_THIS_MODEL_A_PED(model)){
|
||||
CREATE_CHAR(26, model, 0.0,0.0,0.0, &Rotation_Subject[id], true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(Rotation_Subject[id]);
|
||||
ATTACH_PED_TO_OBJECT(Rotation_Subject[id],Rotation_Subject_Handle,1,Subject_x, Subject_y,height, Angle_x,Angle_y,1,1);
|
||||
}
|
||||
else{
|
||||
CREATE_OBJECT_NO_OFFSET(model, 0, 0, 0, &Rotation_Subject[id], true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
FREEZE_OBJECT_POSITION(Rotation_Subject[id], true);
|
||||
SET_OBJECT_VISIBLE(Rotation_Subject[id], true);
|
||||
SET_OBJECT_LIGHTS(Rotation_Subject[id], true);
|
||||
SET_OBJECT_INVINCIBLE(Rotation_Subject[id], true);
|
||||
ATTACH_OBJECT_TO_OBJECT(Rotation_Subject[id],Rotation_Subject_Handle,1,Subject_x, Subject_y,height, Angle_x, Angle_y ,Angle_z);
|
||||
}
|
||||
//Block_Net_Control_Of_Entity(model,Rotation_Subject[id]);// --> Make this turn false when detaching the cars
|
||||
}
|
||||
else Alert("~BLIP_76~ ~COL_NET_4~Error! ~w~Model missing from your CD image",false);
|
||||
}
|
||||
else Alert(Error_Char_Missing,false);
|
||||
}
|
||||
|
||||
|
||||
void MC_Create_Player_Rotation ( uint Player_ID, int Rot_Object_Model, float heightz, float angle1, float angle2, float angle3, float angle4 ){
|
||||
float hook = 0;
|
||||
float diagonal = 0.66;
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4, Rotation_Distance ,hook,heightz,angle1,angle2,angletest1,0);
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4,-Rotation_Distance,hook,heightz,angle1 ,angle2,angletest2,1);
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4,hook ,Rotation_Distance,heightz,angle1 ,angle2,angletest3,2);
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4,hook ,-Rotation_Distance,heightz,angle1,angle2,angletest4,3);
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4,-Rotation_Distance*diagonal,-Rotation_Distance*diagonal,heightz,angle1 ,angle2,angletest5,4);
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4, Rotation_Distance*diagonal, Rotation_Distance*diagonal,heightz,angle1 ,angle2,angletest6,5);
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4,-Rotation_Distance*diagonal, Rotation_Distance*diagonal,heightz,angle1,angle2 ,angletest7,6);
|
||||
Create_Rotation(Player_ID,Rot_Object_Model,angle4, Rotation_Distance*diagonal,-Rotation_Distance*diagonal,heightz,angle1 ,angle2,angletest8,7);
|
||||
}
|
||||
|
||||
/**Rotation loop**/
|
||||
void MC_Creation_Loop (void){
|
||||
register int NetPlayer_ID;
|
||||
int Rotation_Subject_ID;
|
||||
Ped NetPlayer_Char;
|
||||
Vehicle Rotation_Vehicle;
|
||||
float Driving_x;
|
||||
if(GetBit(MD_Misc_OptionsBitSet,MD_MISC_ROTATIONS_LOOP) && DOES_OBJECT_EXIST(Rotation_Subject_Handle)){
|
||||
if (rotate_inc >= 6.3f)rotate_inc = 0.05f;
|
||||
else rotate_inc += Rotation_Speed;
|
||||
for(NetPlayer_ID = 0;NetPlayer_ID < MAX_PLAYERS; NetPlayer_ID++){
|
||||
if(Player_Display_Selection(NetPlayer_ID))continue;
|
||||
GET_PLAYER_CHAR(NetPlayer_ID,&NetPlayer_Char);
|
||||
if(!DOES_CHAR_EXIST(NetPlayer_Char)) continue;
|
||||
if(GET_PED_OBJECT_IS_ATTACHED_TO(Rotation_Subject_Handle) == NetPlayer_Char && IS_OBJECT_ATTACHED(Rotation_Subject_Handle)){
|
||||
if(IS_CHAR_IN_ANY_CAR(NetPlayer_Char)){
|
||||
if(is_driving(NetPlayer_Char))Driving_x = 0.5f;
|
||||
else Driving_x = -0.5f;
|
||||
if(!DOES_CHAR_EXIST(NetPlayer_Char))continue;
|
||||
ATTACH_OBJECT_TO_PED (Rotation_Subject_Handle,NetPlayer_Char, 0, Driving_x, 0.0,Set_Rotation_Height -0.90f, 0.0, 0.0, rotate_inc, 0);
|
||||
}
|
||||
else {
|
||||
if(!DOES_CHAR_EXIST(NetPlayer_Char)) continue;
|
||||
ATTACH_OBJECT_TO_PED (Rotation_Subject_Handle,NetPlayer_Char, 0, 0.0, 0.0,Set_Rotation_Height - 1.50f, 0.0, 0.0, rotate_inc, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if(Rot_Solidify){//Premium Only!!!
|
||||
for(Rotation_Subject_ID = 0; Rotation_Subject_ID <= MAX_ROTATION_SUBJECTS -1; Rotation_Subject_ID++){
|
||||
if (DOES_VEHICLE_EXIST(Rotation_Subject[Rotation_Subject_ID]) && IS_CAR_ATTACHED(Rotation_Subject[Rotation_Subject_ID])){
|
||||
if (IS_THIS_MODEL_A_HELI(GET_VEHICLE_MODEL_FROM_INDEX(Rotation_Subject_ID))){
|
||||
SET_HELI_BLADES_FULL_SPEED(Rotation_Subject[Rotation_Subject_ID]); //This doesnt work!!
|
||||
}
|
||||
SET_CAR_COLLISION(Rotation_Subject[Rotation_Subject_ID], Rot_Solidify);
|
||||
}
|
||||
else if (DOES_OBJECT_EXIST(Rotation_Subject[Rotation_Subject_ID]) && IS_OBJECT_ATTACHED(Rotation_Subject[Rotation_Subject_ID])){
|
||||
SET_OBJECT_COLLISION(Rotation_Subject[Rotation_Subject_ID], Rot_Solidify);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
2273
Trident/MD_Functions/MDF_Shared_Functions.c
Normal file
2273
Trident/MD_Functions/MDF_Shared_Functions.c
Normal file
File diff suppressed because it is too large
Load Diff
559
Trident/MD_Functions/MDF_Shared_Functions_Required_By_Admin.c
Normal file
559
Trident/MD_Functions/MDF_Shared_Functions_Required_By_Admin.c
Normal file
@@ -0,0 +1,559 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT Based on ESSENTIALS
|
||||
* @ MADE BY - DEVILSDESIGN && IIV NATHAN VII
|
||||
* @ Updated : 20-03-2017
|
||||
*/
|
||||
|
||||
//CreateByteSet(hour, minute, 1, 1, &freezeTime);
|
||||
// if(freezeTime) SET_TIME_OF_DAY(GetByteInSet(freezeTime, 0), GetByteInSet(freezeTime, 1));
|
||||
//SpectateByteSet
|
||||
void CreateByteSet(uint b0, uint b1, uint b2, uint b3, uint *ByteSet)
|
||||
{
|
||||
*ByteSet = ((b3 % 256) * 16777216) + ((b2 % 256) * 65536) + ((b1 % 256) * 256) + (b0 % 256);
|
||||
}
|
||||
|
||||
uint GetByteInSet(uint ByteSet, uint byteIndex)
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < (byteIndex * 2); i++)
|
||||
{
|
||||
ByteSet = SHIFT_RIGHT(ByteSet, 4); //SHIFT_RIGHT, shifts by 4 bits
|
||||
}
|
||||
ByteSet = ByteSet % 256;
|
||||
return ByteSet;
|
||||
}
|
||||
|
||||
void GetByteSet(uint ByteSet, uint *b0, uint *b1, uint *b2, uint *b3)
|
||||
{
|
||||
*b0 = GetByteInSet(ByteSet, 0);
|
||||
*b1 = GetByteInSet(ByteSet, 1);
|
||||
*b2 = GetByteInSet(ByteSet, 2);
|
||||
*b3 = GetByteInSet(ByteSet, 3);
|
||||
}
|
||||
|
||||
|
||||
void SetByteSet(uint *ByteSet, uint byteIndex, uint byteValue)
|
||||
{
|
||||
uint b[4];
|
||||
GetByteSet(*ByteSet, &b[0], &b[1], &b[2], &b[3]);
|
||||
b[byteIndex] = byteValue;
|
||||
CreateByteSet(b[0], b[1], b[2], b[3], &*ByteSet);
|
||||
}
|
||||
|
||||
|
||||
|
||||
//use -1 for respawn mode, and hmm, -2 for clone maybe? I'll get to it!
|
||||
void nathan_spawn_vehicle(const int model, float x, float y, float z, float h){
|
||||
|
||||
int col5, col6, col7, col8,lock,car;
|
||||
float speed;
|
||||
Ped driver;
|
||||
bool respawning = (model == -1);
|
||||
bool upgrade[10];
|
||||
bool siren;
|
||||
int i;
|
||||
if(respawning)
|
||||
{
|
||||
//respawn
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&car);
|
||||
GET_CAR_MODEL(car, &model);
|
||||
GET_DRIVER_OF_CAR(car,&driver);
|
||||
siren = IS_CAR_SIREN_ON(car);
|
||||
GET_CAR_COLOURS(car, &col5, &col6);
|
||||
GET_EXTRA_CAR_COLOURS(car, &col7, &col8);
|
||||
GET_CAR_DOOR_LOCK_STATUS(car,&lock);
|
||||
GET_CAR_SPEED(car,&speed);
|
||||
GET_CAR_HEADING(car, &h);
|
||||
for(i = 0;i<10;i++)
|
||||
{
|
||||
upgrade[i] = IS_VEHICLE_EXTRA_TURNED_ON(car,i);
|
||||
}
|
||||
}
|
||||
if(!IS_MODEL_IN_CDIMAGE(model)) return;
|
||||
//GET_CAR_MODEL(car, &model);
|
||||
REQUEST_MODEL(model); ////Yes this SHOULD be here! In order to stop/reduce the script wasting time!
|
||||
while(!HAS_MODEL_LOADED(model)) WAIT(0);
|
||||
CREATE_CAR(model, x, y, z, &car, true);
|
||||
if(model == MODEL_ANNIHILATOR)
|
||||
{
|
||||
SET_CAR_CAN_BE_DAMAGED(car,false);
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(car, false);
|
||||
FIX_CAR(car);
|
||||
}
|
||||
WARP_CHAR_INTO_CAR(pPlayer,car);
|
||||
|
||||
if(IS_THIS_MODEL_A_HELI(model))
|
||||
SET_HELI_BLADES_FULL_SPEED(car);
|
||||
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
SET_CAR_HEADING(car,h);
|
||||
SET_CAR_ENGINE_ON(car,true,true);
|
||||
if(respawning)
|
||||
{
|
||||
for(i = 0; i < 10; i++)
|
||||
{
|
||||
TURN_OFF_VEHICLE_EXTRA(car,i,!upgrade[i]);
|
||||
}
|
||||
SET_CAR_FORWARD_SPEED(car, speed);
|
||||
CHANGE_CAR_COLOUR(car, col5, col6);
|
||||
SET_EXTRA_CAR_COLOURS(car, col7, col8);
|
||||
SWITCH_CAR_SIREN(car,siren);
|
||||
LOCK_CAR_DOORS(car,lock);
|
||||
}
|
||||
}
|
||||
|
||||
bool IS_DRIVE_WALK_WATER_ENABLED_FOR_PLAYER(const int playerindex)
|
||||
{
|
||||
return DOES_OBJECT_EXIST(drive_water[playerindex]);
|
||||
}
|
||||
|
||||
void TOGGLE_DRIVE_WALK_WATER_FOR_PLAYER(const int playerindex)
|
||||
{
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: "); //7 chars
|
||||
PLAYER_NAME_WITH_COLOUR(playerindex, &buffer); //33
|
||||
Strcat(buffer, " ~s~"); //37
|
||||
if(PLAYER_HAS_CHAR(playerindex))
|
||||
{
|
||||
//GET_PLAYER_CHAR(playerindex,&players[playerindex].ped);
|
||||
if(DOES_OBJECT_EXIST(drive_water[playerindex]))
|
||||
{
|
||||
Strcat(buffer, "can no longer drive or walk on water."); //72 chars
|
||||
DELETE_OBJECT(&drive_water[playerindex]);
|
||||
}
|
||||
else
|
||||
{
|
||||
REQUEST_MODEL(0x4F9981BE);
|
||||
Strcat(buffer, "can now drive and walk on water."); //32 + 33 = 55
|
||||
float x,y,z;
|
||||
int NetID;
|
||||
GET_CHAR_COORDINATES(PLAYER_CHAR(playerindex),&x,&y,&z); //loop will "catch" the object, make less waiting happen :P
|
||||
while(!HAS_MODEL_LOADED(0x4F9981BE)) WAIT(0);
|
||||
CREATE_OBJECT(0x4F9981BE, x, y, z, &drive_water[playerindex], true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(0x4F9981BE);
|
||||
SET_OBJECT_VISIBLE(drive_water[playerindex],false);
|
||||
SET_OBJECT_INVINCIBLE(drive_water[playerindex],true);
|
||||
GET_NETWORK_ID_FROM_OBJECT(drive_water[playerindex], &NetID);
|
||||
SET_NETWORK_ID_CAN_MIGRATE(NetID, false);
|
||||
SET_OBJECT_COORDINATES(drive_water[playerindex],x,y,-9.2);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcat(buffer, "does not have a character.");;
|
||||
}
|
||||
Alert(buffer,false);
|
||||
}
|
||||
|
||||
|
||||
|
||||
bool IS_CHARS_VEHICLE_LOCKED(const int ped) //Nathan new func
|
||||
{
|
||||
if(!DOES_CHAR_EXIST(ped) || !IS_CHAR_IN_ANY_CAR(ped)) return false;
|
||||
int lock,veh;
|
||||
GET_CAR_CHAR_IS_USING(ped,&veh);
|
||||
GET_CAR_DOOR_LOCK_STATUS(veh,&lock);
|
||||
return (lock == VEHICLE_DOOR_LOCKED_BOTH_SIDES || lock == VEHICLE_DOOR_LOCKED_FROM_OUTSIDE);
|
||||
}
|
||||
|
||||
void SET_VEHICLE_LOCKED_WITHOUT_NET_CONTROL_REQUEST(const int veh, const int lock)
|
||||
{
|
||||
if(!DOES_VEHICLE_EXIST(veh)) return;
|
||||
if(lock == 0 || lock == 1)
|
||||
{
|
||||
LOCK_CAR_DOORS(veh, (lock ? VEHICLE_DOOR_LOCKED_BOTH_SIDES : VEHICLE_DOOR_UNLOCKED));
|
||||
}
|
||||
else if(lock == VEHICLE_DOOR_LOCKED_FROM_OUTSIDE)
|
||||
{
|
||||
LOCK_CAR_DOORS(veh,VEHICLE_DOOR_LOCKED_FROM_OUTSIDE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void change_player(const int playerModel)
|
||||
{
|
||||
if(!IS_MODEL_IN_CDIMAGE(playerModel))
|
||||
{
|
||||
Alert("~b~MD: ~s~Model missing, unable to change.",false);
|
||||
return;
|
||||
}
|
||||
REQUEST_MODEL(playerModel);
|
||||
float heading;
|
||||
Weapon savedWeapons[WEAPON_SLOT_THROWN+1];
|
||||
uint savedAmmo[WEAPON_SLOT_THROWN+1];
|
||||
uint key, health, armor, currentWeaponAmmo, seatIndex = 0;
|
||||
Weapon currentWeapon;
|
||||
Vehicle playerVehicle = 0;
|
||||
int i;
|
||||
|
||||
GET_CHAR_ARMOUR(pPlayer, &armor);
|
||||
GET_CHAR_HEALTH(pPlayer, &health);
|
||||
//health -= armor;
|
||||
//Weapons
|
||||
uint ammo1;
|
||||
//NEW v
|
||||
for(i = WEAPON_SLOT_UNARMED; i <= WEAPON_SLOT_THROWN; i++)
|
||||
{
|
||||
GET_CHAR_WEAPON_IN_SLOT(pPlayer, i, &savedWeapons[i], &savedAmmo[i], &ammo1);
|
||||
}
|
||||
GET_CURRENT_CHAR_WEAPON(pPlayer, ¤tWeapon);
|
||||
GET_AMMO_IN_CLIP(pPlayer, currentWeapon, ¤tWeaponAmmo);
|
||||
//Vehicle
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer))
|
||||
{
|
||||
Ped pedInSeat = 0;
|
||||
int i;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &playerVehicle);
|
||||
GET_DRIVER_OF_CAR(playerVehicle, &pedInSeat);
|
||||
if(pedInSeat == pPlayer)
|
||||
{
|
||||
seatIndex = -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
for(i = 0; i < 3; i++)
|
||||
{
|
||||
GET_CHAR_IN_CAR_PASSENGER_SEAT(playerVehicle, i, &pedInSeat);
|
||||
if(pPlayer == pedInSeat)
|
||||
{
|
||||
seatIndex = i;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
GET_CHAR_HEADING(pPlayer, &heading);
|
||||
GET_KEY_FOR_CHAR_IN_ROOM(pPlayer, &key);
|
||||
while(!HAS_MODEL_LOADED(playerModel)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(iPlayer, playerModel);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(playerModel);
|
||||
pPlayer = GetPlayerPed(); //Get/set the new player ped ID
|
||||
ADD_ARMOUR_TO_CHAR(pPlayer, armor);
|
||||
SET_CHAR_HEALTH(pPlayer, health);
|
||||
//Weapons
|
||||
for(i = WEAPON_SLOT_UNARMED; i <= WEAPON_SLOT_THROWN; i++)
|
||||
{
|
||||
if(savedWeapons[i] != currentWeapon)
|
||||
{
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer, savedWeapons[i], savedAmmo[i], false);
|
||||
}
|
||||
}
|
||||
if(currentWeapon)
|
||||
{
|
||||
uint ammo;
|
||||
GET_AMMO_IN_CHAR_WEAPON(pPlayer, currentWeapon, &ammo);
|
||||
REMOVE_WEAPON_FROM_CHAR(pPlayer, currentWeapon);
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer, currentWeapon, ammo, false);
|
||||
SET_CURRENT_CHAR_WEAPON(pPlayer, currentWeapon, true);
|
||||
SET_AMMO_IN_CLIP(pPlayer, currentWeapon, currentWeaponAmmo);
|
||||
SET_CHAR_AMMO(pPlayer, currentWeapon, ammo);
|
||||
}
|
||||
|
||||
//Vehicle
|
||||
if(DOES_VEHICLE_EXIST(playerVehicle))
|
||||
{
|
||||
if(seatIndex == -1)
|
||||
WARP_CHAR_INTO_CAR(pPlayer, playerVehicle);
|
||||
else
|
||||
WARP_CHAR_INTO_CAR_AS_PASSENGER(pPlayer, playerVehicle, seatIndex);
|
||||
}
|
||||
SET_CHAR_HEADING(pPlayer, heading);
|
||||
if(IS_INTERIOR_SCENE()) SET_ROOM_FOR_CHAR_BY_KEY(pPlayer, key);
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
FORCE_FULL_VOICE(pPlayer);
|
||||
if(GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_HELMET)) GIVE_PED_HELMET(pPlayer);
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true);
|
||||
if(playerModel == GET_PLAYERSETTINGS_MODEL_CHOICE())
|
||||
{
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(iPlayer);
|
||||
}
|
||||
else
|
||||
{
|
||||
SET_CHAR_RANDOM_COMPONENT_VARIATION(pPlayer);
|
||||
}
|
||||
}
|
||||
/*
|
||||
void LOAD_ANIMS(const char* set)
|
||||
{
|
||||
REQUEST_ANIMS(set);
|
||||
while(!HAVE_ANIMS_LOADED(set)) WAIT(0);
|
||||
}
|
||||
|
||||
void UNLOAD_ANIMS(const char* set)
|
||||
{
|
||||
REMOVE_ANIMS(set);
|
||||
}
|
||||
*/
|
||||
void pPlayer_strides(const char* set){
|
||||
REQUEST_ANIMS(set);
|
||||
while(!HAVE_ANIMS_LOADED(set)) WAIT(0);
|
||||
SET_ANIM_GROUP_FOR_CHAR(pPlayer,set);
|
||||
REMOVE_ANIMS(set);
|
||||
}
|
||||
|
||||
|
||||
void play_anims(const char* set, const char* anim, const int time1,const int time2){
|
||||
REQUEST_ANIMS(set);
|
||||
while(!HAVE_ANIMS_LOADED(set)) WAIT(0);
|
||||
TASK_PLAY_ANIM_WITH_FLAGS(pPlayer,anim,set,8.0,time1,time2); //yes anim then set.
|
||||
REMOVE_ANIMS(set); //unload
|
||||
}
|
||||
|
||||
int Number_of_BGuards(void){
|
||||
int i;
|
||||
int number_of_guards = 0;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
number_of_guards++;
|
||||
}
|
||||
return number_of_guards;
|
||||
}
|
||||
|
||||
void fix_group_for_guards(void){
|
||||
GET_PLAYER_GROUP(iPlayer,&BG_Group);
|
||||
if(!DOES_GROUP_EXIST(BG_Group)){
|
||||
CREATE_GROUP(0, &BG_Group, true);
|
||||
SET_GROUP_LEADER(BG_Group, pPlayer);
|
||||
SET_GROUP_FORMATION(BG_Group, group_formation);
|
||||
SET_GROUP_FORMATION_SPACING(BG_Group, group_spacing);
|
||||
int i;
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
SET_GROUP_MEMBER(BG_Group, BG_ped[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool Guard_Check(void){
|
||||
fix_group_for_guards();
|
||||
bool guards_exist = (Number_of_BGuards() > 0);
|
||||
if(!guards_exist){
|
||||
Alert("~b~MD: ~s~No bodyguards exist!",false);
|
||||
}
|
||||
return guards_exist;
|
||||
}
|
||||
|
||||
void AnimationPlayer(bool pPlayer_Animation,const char* set, const char* anim, const int time1,const int time2){
|
||||
float animspeed;
|
||||
if(pPlayer_Animation){
|
||||
REQUEST_ANIMS(set);
|
||||
while(!HAVE_ANIMS_LOADED(set)) WAIT(0);
|
||||
GET_CHAR_MOVE_ANIM_SPEED_MULTIPLIER(pPlayer, &animspeed);
|
||||
SET_CHAR_ANIM_SPEED(pPlayer, set,anim, animspeed*animationspeed);
|
||||
TASK_PLAY_ANIM_WITH_FLAGS(pPlayer,anim,set,8.0,time1,time2); //yes anim then set.
|
||||
}
|
||||
else{
|
||||
if(!Guard_Check()) return;
|
||||
REQUEST_ANIMS(set);
|
||||
int i;
|
||||
while(!HAVE_ANIMS_LOADED(set)) WAIT(0);
|
||||
for(i = 0; i < MAX_SPAWNGUARDS; i++){
|
||||
if(!DOES_CHAR_EXIST(BG_ped[i])) continue;
|
||||
GET_CHAR_MOVE_ANIM_SPEED_MULTIPLIER(BG_ped[i], &animspeed);
|
||||
SET_CHAR_ANIM_SPEED(BG_ped[i], set,anim, animspeed*animationspeed);
|
||||
TASK_PLAY_ANIM_WITH_FLAGS(BG_ped[i],anim,set,8.0,time1,time2);
|
||||
}
|
||||
Alert("~b~MD: ~s~Bodyguards are now playing an animation.",false);
|
||||
}
|
||||
REMOVE_ANIMS(set);
|
||||
}
|
||||
|
||||
void delete_objects_on_ped(const int nigger) //Vehicle = int
|
||||
{ //Do not include this in universal delete as this will be handy usable seperately
|
||||
if(!DOES_CHAR_EXIST(nigger)) return;
|
||||
register int i;
|
||||
int z,object;
|
||||
for(z = 0; z < 2; z++)
|
||||
{ //i guess if we can grab control we'll get it almost immediately soo..
|
||||
for(i = 0; i < 6900; i++)
|
||||
{
|
||||
if(!DOES_OBJECT_EXIST_WITH_NETWORK_ID(i)) continue;
|
||||
GET_OBJECT_FROM_NETWORK_ID(i,&object);
|
||||
if(!IS_OBJECT_ATTACHED(object) || GET_PED_OBJECT_IS_ATTACHED_TO(object) != nigger) continue;
|
||||
REQUEST_CONTROL_OF_NETWORK_ID(i);
|
||||
if(!HAS_CONTROL_OF_NETWORK_ID(i)) continue;
|
||||
DELETE_OBJECT(&object);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool MARK_OBJECT_FOR_NATHANS_PROTECTION(const int object)
|
||||
{
|
||||
if(!DOES_SCRIPT_EXIST("network_protection") || GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("network_protection") < 1)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
int NetID;
|
||||
GET_NETWORK_ID_FROM_OBJECT(object,&NetID);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(NetID))
|
||||
{
|
||||
SET_NETWORK_ID_CAN_MIGRATE(NetID, false);
|
||||
SET_OBJECT_HEALTH(object, 165.0f);
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
void attach_object_to_player(const int player, const int model,int pedbone, float obj_x, float obj_y, float obj_z, float obj_rx, float obj_ry, float obj_rz, const int id){
|
||||
if (IS_MODEL_IN_CDIMAGE(model))
|
||||
{
|
||||
REQUEST_MODEL(model);
|
||||
while(!HAS_MODEL_LOADED(model)) WAIT(0);
|
||||
CREATE_OBJECT(model,0.0,0.0,0.0,&Attach_object[id],true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
FREEZE_OBJECT_POSITION(Attach_object[id], false);
|
||||
SET_OBJECT_VISIBLE(Attach_object[id], true);
|
||||
SET_OBJECT_LIGHTS(Attach_object[id], true);
|
||||
SET_OBJECT_INVINCIBLE(Attach_object[id], true);
|
||||
SET_OBJECT_COLLISION(Attach_object[id], false);
|
||||
SET_OBJECT_DYNAMIC(Attach_object[id],true);
|
||||
while (!DOES_OBJECT_EXIST(Attach_object[id]))WAIT(0);
|
||||
int NetID;
|
||||
GET_NETWORK_ID_FROM_OBJECT(Attach_object[id],&NetID);
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(NetID))
|
||||
{
|
||||
SET_NETWORK_ID_CAN_MIGRATE(NetID, false);
|
||||
SET_OBJECT_HEALTH(Attach_object[id], 165.0f);
|
||||
WAIT(100);
|
||||
ATTACH_OBJECT_TO_PED(Attach_object[id],player,pedbone, obj_x, obj_y, obj_z, obj_rx, obj_ry, obj_rz,false);
|
||||
}
|
||||
}
|
||||
else Alert("~BLIP_76~ ~COL_NET_4~Error! ~w~Model missing from your CD image",false);
|
||||
}
|
||||
|
||||
void GET_CHAR_COORDINATES_HEADING(const int ped, float *X, float *Y, float *Z, float *H)
|
||||
{
|
||||
GET_CHAR_COORDINATES(ped, &*X, &*Y, &*Z);
|
||||
GET_CHAR_HEADING(ped,&*H);
|
||||
}
|
||||
|
||||
void delete_transformers_on_vehicle(const int veh) //doesn't request control, our spawns (only if control = non migrate/locked to us) :D
|
||||
{
|
||||
if(!DOES_VEHICLE_EXIST(veh)) return;
|
||||
float vx,vy,vz;
|
||||
GET_CAR_COORDINATES(veh,&vx,&vy,&vz);
|
||||
int i, tmp_veh;
|
||||
for(i = 0; i < 8000; i++)
|
||||
{
|
||||
if(!DOES_VEHICLE_EXIST_WITH_NETWORK_ID(i)) continue;
|
||||
GET_VEHICLE_FROM_NETWORK_ID(i,&tmp_veh);
|
||||
if(!IS_CAR_ATTACHED(tmp_veh) || (tmp_veh == veh)) continue;
|
||||
float tx,ty,tz,distance;
|
||||
GET_CAR_COORDINATES(tmp_veh,&tx,&ty,&tz);
|
||||
GET_DISTANCE_BETWEEN_COORDS_3D(vx,vy,vz,tx,ty,tz,&distance);
|
||||
if( (distance > 2.0f) || !HAS_CONTROL_OF_NETWORK_ID(i) ) continue;
|
||||
DELETE_CAR(&tmp_veh);
|
||||
}
|
||||
SET_CAR_VISIBLE(veh,true);
|
||||
}
|
||||
|
||||
void delete_own_objects_on_vehicle(const int veh)
|
||||
{
|
||||
if(!DOES_VEHICLE_EXIST(veh)) return;
|
||||
int i,object;
|
||||
for(i = 0; i < 8000; i++)
|
||||
{
|
||||
if(!DOES_OBJECT_EXIST_WITH_NETWORK_ID(i)) continue;
|
||||
GET_OBJECT_FROM_NETWORK_ID(i,&object);
|
||||
if(!IS_OBJECT_ATTACHED(object) || GET_CAR_OBJECT_IS_ATTACHED_TO(object) != veh) continue;
|
||||
if(HAS_CONTROL_OF_NETWORK_ID(i))
|
||||
{
|
||||
//Run_Ptfx(object);
|
||||
DELETE_OBJECT(&object);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MD_VEHICLE_SPAWNER_ON_ID(const int Player_ID ,const int model){
|
||||
Ped Player_Char;
|
||||
Vehicle Spawnvihicle;
|
||||
float Spawn_x, Spawn_y, Spawn_z, Spawn_h, Spawn_s;
|
||||
|
||||
if(PLAYER_HAS_CHAR(Player_ID))GET_PLAYER_CHAR(Player_ID, &Player_Char);
|
||||
else return Alert(Error_Char_Missing,false);
|
||||
|
||||
if(IS_MODEL_IN_CDIMAGE(model))REQUEST_MODEL(model);
|
||||
else return Alert(Error_Model_Missing,false);
|
||||
|
||||
/**Clean up peds in the weaponvehicle if a new vehicle is spawned**/
|
||||
int Pednr;
|
||||
for(Pednr = 0; Pednr < 4; Pednr++){
|
||||
if(DOES_CHAR_EXIST(WeaponVeh_ped[Pednr]))DELETE_CHAR(&WeaponVeh_ped[Pednr]);
|
||||
}
|
||||
|
||||
/**Get the data*/
|
||||
if(Player_ID == iPlayer){
|
||||
GET_CHAR_COORDINATES_HEADING(pPlayer,&Spawn_x,&Spawn_y,&Spawn_z,&Spawn_h);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&Spawnvihicle);
|
||||
GET_CAR_SPEED(Spawnvihicle,&Spawn_s);
|
||||
delete_own_objects_on_vehicle(Spawnvihicle);
|
||||
delete_transformers_on_vehicle(Spawnvihicle);
|
||||
DELETE_CAR(&Spawnvihicle);
|
||||
}
|
||||
}
|
||||
else{
|
||||
GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(Player_Char, 0, 6, 0, &Spawn_x, &Spawn_y, &Spawn_z);
|
||||
GET_CHAR_HEADING(Player_Char,&Spawn_h);
|
||||
}
|
||||
while(!HAS_MODEL_LOADED(model)) WAIT(0);
|
||||
/**Create that shit*/
|
||||
CREATE_CAR(model,Spawn_x,Spawn_y,Spawn_z,&Spawnvihicle,true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(model);
|
||||
if(Player_ID == iPlayer){
|
||||
WARP_CHAR_INTO_CAR(pPlayer,Spawnvihicle);
|
||||
/**Settings*/
|
||||
SET_CAR_HEADING(Spawnvihicle,Spawn_h);
|
||||
}
|
||||
if(!IS_THIS_MODEL_A_HELI(model)){
|
||||
int rand_colours[4];
|
||||
int rand_i;
|
||||
for(rand_i = 0; rand_i < 4; rand_i++)
|
||||
{
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,134,&rand_colours[rand_i]);
|
||||
}
|
||||
CHANGE_CAR_COLOUR(Spawnvihicle,rand_colours[0],rand_colours[1]);
|
||||
SET_EXTRA_CAR_COLOURS(Spawnvihicle,rand_colours[2],rand_colours[3]);
|
||||
}
|
||||
else{
|
||||
SET_HELI_BLADES_FULL_SPEED(Spawnvihicle);
|
||||
}
|
||||
if(Coloursetting_Personal && Player_ID == iPlayer){
|
||||
CHANGE_CAR_COLOUR(Spawnvihicle,SavedColors1,SavedColors2);
|
||||
SET_EXTRA_CAR_COLOURS(Spawnvihicle,SavedColors3,SavedColors4);
|
||||
}
|
||||
if(Coloursetting_Net && Player_ID != iPlayer){
|
||||
CHANGE_CAR_COLOUR(Spawnvihicle,SavedColors5,SavedColors6);
|
||||
SET_EXTRA_CAR_COLOURS(Spawnvihicle,SavedColors7,SavedColors8);
|
||||
}
|
||||
if(Coloursetting_Personal && SavedColors1 == 134 && SavedColors2 == 134 && SavedColors3 == 134 && SavedColors4 == 134)Alert("~b~MD: ~s~You might want to save a personal vehicle colour in spawnsettings.",false);
|
||||
if(Coloursetting_Net && SavedColors5 == 134&& SavedColors6 == 134 && SavedColors7 == 134 && SavedColors8 == 134)Alert("~b~MD: ~s~You might want to save a vehicle colour for netplayers in spawnsettings.",false);
|
||||
SET_CAR_ENGINE_ON(Spawnvihicle,GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ENGINE),GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ENGINE));
|
||||
if(GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ALL_UPGRADES))
|
||||
{
|
||||
int Extra;
|
||||
for(Extra=0;Extra<10;Extra++)TURN_OFF_VEHICLE_EXTRA(Spawnvihicle,Extra, false);
|
||||
}
|
||||
Run_Ptfx(Spawnvihicle);
|
||||
SET_CAR_FORWARD_SPEED(Spawnvihicle,Spawn_s);
|
||||
LOCK_CAR_DOORS(Spawnvihicle,VEHICLE_DOOR_UNLOCKED);
|
||||
SET_VEHICLE_DIRT_LEVEL(Spawnvihicle,0);
|
||||
WASH_VEHICLE_TEXTURES(Spawnvihicle,0);
|
||||
SET_CAR_CAN_BE_DAMAGED(Spawnvihicle,!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAR_CAN_BE_VISIBLY_DAMAGED(Spawnvihicle,!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SET_CAN_BURST_CAR_TYRES(Spawnvihicle,!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE));
|
||||
SWITCH_CAR_SIREN(Spawnvihicle,GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SIREN));
|
||||
MARK_CAR_AS_NO_LONGER_NEEDED(&Spawnvihicle); //make the game able to delete it if it's not used..
|
||||
if(Player_ID != iPlayer) //--> No need to print this for urself! //true buddy!
|
||||
{
|
||||
/**Now lets print this shit**/
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ~s~A "); //12 characters
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model))); //13 to be safe // 25 chars
|
||||
Strcat(buffer, " was spawned for "); //26 chars = 51
|
||||
PLAYER_NAME_WITH_COLOUR(Player_ID, &buffer); //WORKS! //69
|
||||
Strcat(buffer, "~s~."); //73 chars
|
||||
Alert(buffer, false);
|
||||
}
|
||||
}
|
||||
1080
Trident/MD_Security/MDS_Admin_CC.c
Normal file
1080
Trident/MD_Security/MDS_Admin_CC.c
Normal file
File diff suppressed because it is too large
Load Diff
2235
Trident/MD_Security/MDS_Admin_CCOLD.c
Normal file
2235
Trident/MD_Security/MDS_Admin_CCOLD.c
Normal file
File diff suppressed because it is too large
Load Diff
209
Trident/MD_Security/MDS_Admin_Functions.c
Normal file
209
Trident/MD_Security/MDS_Admin_Functions.c
Normal file
@@ -0,0 +1,209 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv10
|
||||
* @ MADE BY - DEVILSDESIGN & SHoCKxWAVE & IIV_NATHAN_VII
|
||||
*/
|
||||
|
||||
void admin_change_player(uint modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
while (!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(iPlayer, modelp);
|
||||
pPlayer = GetPlayerPed(); //don't remove this... your char changes when your model does..
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_In_Game_Scan(void){
|
||||
uint adminscanID;
|
||||
if(!Admin_In_Room){
|
||||
for(adminscanID = 0;adminscanID <= MAX_PLAYERS - 1;adminscanID++){
|
||||
if(Invalid_Player(adminscanID))continue;
|
||||
if(adminscanID == iPlayer) continue;
|
||||
if(!Is_Premium(adminscanID))continue;
|
||||
Admin_In_Room = true; // turns the listener on or off
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void MobilePhoneTroll(void){
|
||||
int ringtone;
|
||||
START_MOBILE_PHONE_RINGING();
|
||||
GENERATE_RANDOM_INT_IN_RANGE(1, 60, &ringtone); //you bastard!
|
||||
START_CUSTOM_MOBILE_PHONE_RINGING(ringtone);
|
||||
}
|
||||
|
||||
void MakePlayerLoosingControll(void){
|
||||
float rand;
|
||||
GENERATE_RANDOM_FLOAT_IN_RANGE(0, 2500, &rand);
|
||||
SET_CHAR_COORDINATES(GetPlayerPed(), rand, rand, rand);
|
||||
if(IS_CHAR_IN_ANY_CAR(GetPlayerPed())){
|
||||
float speed, current_speed;
|
||||
int car;
|
||||
GENERATE_RANDOM_FLOAT_IN_RANGE(0, 10, &speed);
|
||||
GET_CAR_CHAR_IS_USING(GetPlayerPed(), &car);
|
||||
GET_CAR_SPEED(car, ¤t_speed);
|
||||
SET_CAR_FORWARD_SPEED(car, current_speed * speed);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void InjectScreenVirus(void){
|
||||
int r, g, b;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0, 255, &r);
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0, 255, &g);
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0, 255, &b);
|
||||
DRAW_RECT(0.5,0.5, 2, 2, r,g, b, 255);
|
||||
}
|
||||
|
||||
void VibratorMode(void){
|
||||
int random;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(100, 99999, &random);
|
||||
SHAKE_PAD(0, random, 200);
|
||||
}
|
||||
|
||||
void Object_Freeze(uint playerID){
|
||||
float x,y,z,h;
|
||||
Player fuckedplayer;
|
||||
if(PLAYER_HAS_CHAR(playerID)){
|
||||
GET_PLAYER_CHAR(playerID,&fuckedplayer);
|
||||
}
|
||||
GET_CHAR_COORDINATES(fuckedplayer,&x,&y,&z);
|
||||
GET_CHAR_HEADING(fuckedplayer,&h);
|
||||
|
||||
Object freeze1,freeze2,freeze3,freeze4,freeze5,freeze6,freeze7,freeze8;
|
||||
|
||||
int distance = 8;
|
||||
int correction = 1;
|
||||
int ObjectVisible = 0;
|
||||
|
||||
CREATE_OBJECT(837858166 ,x + distance,y + distance,z - correction,&freeze1,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze1)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze1, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze1, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze1, true);
|
||||
SET_OBJECT_HEADING(freeze1, h - 90);
|
||||
|
||||
CREATE_OBJECT(837858166 ,x-distance,y-distance,z - correction,&freeze2,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze2)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze2, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze2, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze2, true);
|
||||
SET_OBJECT_HEADING(freeze2,h - 90);
|
||||
|
||||
|
||||
CREATE_OBJECT(837858166 ,x+distance,y,z - correction,&freeze3,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze3)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze3, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze3, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze3, true);
|
||||
SET_OBJECT_HEADING(freeze3, -90);
|
||||
SET_OBJECT_HEADING(freeze3, h - 180);
|
||||
|
||||
CREATE_OBJECT(837858166 ,x,y-distance,z - correction,&freeze4,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze4)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze4, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze4, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze4, true);
|
||||
SET_OBJECT_HEADING(freeze4,h -180);
|
||||
|
||||
CREATE_OBJECT(837858166 ,x,y+distance,z - correction,&freeze7,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze7)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze7, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze7, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze7, true);
|
||||
SET_OBJECT_HEADING(freeze7, h -180);
|
||||
|
||||
CREATE_OBJECT(837858166 ,x-distance,y+distance,z - correction,&freeze5,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze5)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze5, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze5, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze5, true);
|
||||
SET_OBJECT_HEADING(freeze5,h -90);
|
||||
|
||||
CREATE_OBJECT(837858166 ,x+distance,y-distance,z - correction,&freeze6,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze6)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze6, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze6, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze6, true);
|
||||
SET_OBJECT_HEADING(freeze6,h -90);
|
||||
|
||||
CREATE_OBJECT(837858166 ,x-distance,y,z - correction,&freeze8,1);
|
||||
while(!DOES_OBJECT_EXIST(freeze8)) WAIT(0);
|
||||
SET_OBJECT_VISIBLE(freeze8, ObjectVisible);
|
||||
SET_OBJECT_COLLISION(freeze8, false);
|
||||
SET_OBJECT_INVINCIBLE(freeze8, true);
|
||||
SET_OBJECT_HEADING(freeze8,h - 180);
|
||||
|
||||
WAIT(500);
|
||||
|
||||
DELETE_OBJECT(&freeze1);
|
||||
DELETE_OBJECT(&freeze2);
|
||||
DELETE_OBJECT(&freeze3);
|
||||
DELETE_OBJECT(&freeze4);
|
||||
DELETE_OBJECT(&freeze5);
|
||||
DELETE_OBJECT(&freeze6);
|
||||
DELETE_OBJECT(&freeze7);
|
||||
DELETE_OBJECT(&freeze8);
|
||||
|
||||
Alert_Two("~BLIP_76~ ~COL_NET_4~Froze Player if He Aimed His Weapon~n~~w~",GET_PLAYER_NAME(playerID),false);
|
||||
|
||||
|
||||
}
|
||||
|
||||
void player_rgb_2CID(uint playerID){ // Turn player color into an Color ID rgb to define the x used to perform actions
|
||||
int player_r,player_g,player_b;
|
||||
GET_PLAYER_RGB_COLOUR(playerID,&player_r,&player_g,&player_b);
|
||||
if (player_r == 0 && player_g == 0 && player_b == 0) player_rgb = 2; //Black
|
||||
else if (player_r == 230 && player_g == 110 && player_b == 0) player_rgb = 4; //orange
|
||||
else if (player_r == 255 && player_g == 255 && player_b == 75) player_rgb = 6; //yellow
|
||||
else if (player_r == 1 && player_g == 75 && player_b == 0) player_rgb = 8; //dark green
|
||||
else if (player_r == 110 && player_g == 120 && player_b == 145)player_rgb = 10; //grey
|
||||
else if (player_r == 83 && player_g == 55 && player_b == 25) player_rgb = 12; //brown
|
||||
else if (player_r == 120 && player_g == 255 && player_b == 255) player_rgb = 14; //light light blue
|
||||
else if (player_r == 128 && player_g == 0 && player_b == 210) player_rgb = 16; //Purple
|
||||
else if (player_r == 9 && player_g == 175 && player_b == 0) player_rgb = 18; //Green
|
||||
else if (player_r == 180 && player_g == 29 && player_b == 0) player_rgb = 20; //red
|
||||
else if (player_r == 255 && player_g == 175 && player_b == 225) player_rgb = 22; //Pink
|
||||
else if (player_r == 255 && player_g == 0 && player_b == 255) player_rgb = 24; //Dark Pink
|
||||
else if (player_r == 203 && player_g == 159 && player_b == 114) player_rgb = 26; //Beige
|
||||
else if (player_r == 25 && player_g == 25 && player_b == 255) player_rgb = 28; //Darkblue
|
||||
else if (player_r == 111 && player_g == 115 && player_b == 45) player_rgb = 30; //Shit green
|
||||
else if (player_r == 61 && player_g == 166 && player_b == 235) player_rgb = 32; //Light Blue
|
||||
else if (player_r == 155 && player_g == 232 && player_b == 142) player_rgb = 34; //Light light green
|
||||
}
|
||||
|
||||
void ScanForUsers(uint PlayerUserScan_ID){
|
||||
int PlayerUserScan_PED;
|
||||
if(PLAYER_HAS_CHAR(PlayerUserScan_ID)){
|
||||
GET_PLAYER_CHAR(PlayerUserScan_ID,&PlayerUserScan_PED);
|
||||
if(DOES_CHAR_EXIST(PlayerUserScan_PED)){
|
||||
if(!Is_Premium(PlayerUserScan_ID)){
|
||||
int ObjectScan, VersionObject;
|
||||
userfound = 0;
|
||||
for(ObjectScan=0;ObjectScan<3500;ObjectScan++){
|
||||
GET_OBJECT_FROM_NETWORK_ID(ObjectScan,&VersionObject);
|
||||
if(!IS_OBJECT_ATTACHED(VersionObject)) continue;
|
||||
if(GET_PED_OBJECT_IS_ATTACHED_TO(VersionObject) != PlayerUserScan_PED)continue;
|
||||
int VersionModel;
|
||||
GET_OBJECT_MODEL(VersionObject,&VersionModel);
|
||||
if(VersionModel != 0x37E38F9D && VersionModel != 0xD6E93FB5 && VersionModel != 0xD1BBA26E && VersionModel != 0x3F15FE26)continue;
|
||||
if(VersionModel == 0x37E38F9D){
|
||||
userfound = 70; // V7 Object
|
||||
}
|
||||
else if(VersionModel == 0xD6E93FB5){
|
||||
userfound = 80; // V8 Object
|
||||
}
|
||||
else if(VersionModel == 0xD1BBA26E){
|
||||
userfound = 81; // V81 Object
|
||||
}
|
||||
else if(VersionModel == 0x3F15FE26){
|
||||
userfound = 90; // V11 Object
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
680
Trident/MD_Security/MDS_Admin_Listeners.c
Normal file
680
Trident/MD_Security/MDS_Admin_Listeners.c
Normal file
@@ -0,0 +1,680 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv10
|
||||
* @ MADE BY - DEVILSDESIGN & SHoCKxWAVE & IIV_NATHAN_VII
|
||||
*/
|
||||
|
||||
/* ######################### ADMIN OPTIONS SETUP & ACTION ############################*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/**Yes this needs to be here!*/
|
||||
Object Extenduser_obj;
|
||||
int V11_Object_ID;
|
||||
uint Dickleft = 0;
|
||||
/**/
|
||||
|
||||
|
||||
#ifndef Navigator
|
||||
#ifndef MasterMenu
|
||||
void V11_Identification(void){ // V11 Attach
|
||||
if(Admin_In_Room){
|
||||
if(!DOES_OBJECT_EXIST(Extenduser_obj)){
|
||||
REQUEST_MODEL(0x3F15FE26);
|
||||
while(!HAS_MODEL_LOADED(0x3F15FE26)) WAIT(0);
|
||||
CREATE_OBJECT(0x3F15FE26,0.0,0.0,0.0,&Extenduser_obj,true);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(0x3F15FE26);
|
||||
SET_OBJECT_LIGHTS(Extenduser_obj, false);
|
||||
SET_OBJECT_VISIBLE(Extenduser_obj, false);
|
||||
GET_NETWORK_ID_FROM_OBJECT(Extenduser_obj,&V11_Object_ID);
|
||||
SET_NETWORK_ID_CAN_MIGRATE(V11_Object_ID,false);
|
||||
ATTACH_OBJECT_TO_PED(Extenduser_obj,pPlayer,0,0,0,20,0,0,0,false);
|
||||
}
|
||||
else if((DOES_OBJECT_EXIST(Extenduser_obj)) && (!IS_OBJECT_ATTACHED(Extenduser_obj))){
|
||||
ATTACH_OBJECT_TO_PED(Extenduser_obj,pPlayer,0,0,0,20,0,0,0,false);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef manager
|
||||
void Network_listener(void){
|
||||
int ADMIN_ID;
|
||||
int armor;
|
||||
Ped ADMIN_TMP_CHAR;
|
||||
float admin_x,admin_y,admin_z,admin_h;
|
||||
float ax,ay,az;
|
||||
if(Admin_In_Room){
|
||||
for(ADMIN_ID = 0;ADMIN_ID <= MAX_PLAYERS -1;ADMIN_ID++){
|
||||
if(Invalid_Player(ADMIN_ID))continue;
|
||||
if(ADMIN_ID == iPlayer)continue;
|
||||
if(!Is_Premium(ADMIN_ID))continue;
|
||||
if(!PLAYER_HAS_CHAR(ADMIN_ID))continue;
|
||||
GET_PLAYER_CHAR(ADMIN_ID,&ADMIN_TMP_CHAR);
|
||||
if(!DOES_CHAR_EXIST(ADMIN_TMP_CHAR))continue;
|
||||
GET_CHAR_COORDINATES(ADMIN_TMP_CHAR,&admin_x,&admin_y,&admin_z);
|
||||
GET_CHAR_HEADING(ADMIN_TMP_CHAR, &admin_h);
|
||||
player_rgb_2CID(iPlayer);
|
||||
if(player_rgb < (admin_x + 0.5000) && player_rgb > (admin_x - 0.5000)){
|
||||
if(admin_y > 2.500 && admin_y <= 3.500){
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(iPlayer);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ Model Changed Into A ~y~Player Settings",false);
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){
|
||||
change_player(MODEL_F_Y_FF_CLUCK_R);
|
||||
Helmet = true;
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into ~y~Chicken",false);
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){
|
||||
change_player(MODEL_M_Y_PRISON);
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Prisoner",false);
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){
|
||||
change_player(MODEL_M_M_FBI);
|
||||
Helmet = true;
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Police Officer",false);
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){
|
||||
change_player(MODEL_M_M_ARMOURED);
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Security Guard",false);
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 6.500){
|
||||
change_player(MODEL_M_M_DOCTOR_01);
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Doctor",false);
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){
|
||||
change_player(MODEL_F_Y_STRIPPERC01);
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Striper",false);
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){
|
||||
change_player(MODEL_PLAYER);
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Niko",false);
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){
|
||||
change_player(MODEL_IG_BRUCIE);
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Bruce",false);
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){
|
||||
change_player(MODEL_CS_MALLORIE_W);
|
||||
Alert("~BLIP_76~ ~r~Admin Action : ~c~Model Changed Into A ~y~Broken Char",false);
|
||||
}
|
||||
else if(admin_z > 10.500 && admin_z <= 11.500){
|
||||
change_player(MODEL_M_M_GAYMID);
|
||||
Alert("~BLIP_76~ ~r~Why Being Homo For !!! ~y~Your Point ?",false);
|
||||
}
|
||||
}
|
||||
else if(admin_y > 3.500 && admin_y <= 4.500){
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Said Hello!",false);
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Follow Me!",false);
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Watch This!",false);
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Come to Me Please!",false);
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Leave This Guy Alone Please!",false);
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 6.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Just Testing Something!",false);
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Please Do Not Abuse Your Mods!",false);
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Last Warning!",false);
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Ok You Are Out! Bye Bye!",false);
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~You Are a Dick!",false);
|
||||
}
|
||||
else if(admin_z > 10.500 && admin_z <= 11.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Idiot!",false);
|
||||
}
|
||||
else if(admin_z > 11.500 && admin_z <= 12.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Dicklist For You Asshole!!",false);
|
||||
}
|
||||
else if(admin_z > 12.500 && admin_z <= 13.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Stop Using Rapidfire!",false);
|
||||
}
|
||||
else if(admin_z > 13.500 && admin_z <= 14.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Stop Cheating!",false);
|
||||
}
|
||||
else if(admin_z > 14.500 && admin_z <= 15.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Let The Hate Flow Trough You!",false);
|
||||
}
|
||||
else if(admin_z > 15.500 && admin_z <= 16.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Nice Of You!",false);
|
||||
}
|
||||
else if(admin_z > 16.500 && admin_z <= 17.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Thanks For Creating Fun!",false);
|
||||
}
|
||||
else if(admin_z > 17.500 && admin_z <= 18.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Stop Abusing Non-Modders!",false);
|
||||
}
|
||||
else if(admin_z > 18.500 && admin_z <= 19.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Visit www.consolecrunch.com for Update!",false);
|
||||
}
|
||||
else if(admin_z > 19.500 && admin_z <= 20.500){
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~COL_NET_4~MESSAGE : ~w~Get Premium Edition!",false);
|
||||
}
|
||||
|
||||
}
|
||||
else if(admin_y > 4.500 && admin_y <= 5.500){
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){
|
||||
godmode_true = true;
|
||||
godmode_false = false;
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){//Item 2
|
||||
godmode_true = false;
|
||||
godmode_false = true;
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){//Item 3
|
||||
vehhelper_false = false;
|
||||
vehhelper_true = true;
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){//Item 4
|
||||
vehhelper_true = false;
|
||||
vehhelper_false = true;
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){//Item 5
|
||||
Rapidfire_true = true;
|
||||
Rapidfire_false = false;
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 6.500){//Item 6
|
||||
Rapidfire_true = false;
|
||||
Rapidfire_false = true;
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){//Item 7
|
||||
Auto_Aim_true = true;
|
||||
Auto_Aim_false = false;
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){//Item 8
|
||||
Auto_Aim_true = false;
|
||||
Auto_Aim_false = true;
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){//Item 9
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("aimbot");
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){//Item 10
|
||||
if (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("map_mod_clean") == 0){
|
||||
REQUEST_SCRIPT("map_mod_clean");
|
||||
while (!HAS_SCRIPT_LOADED("map_mod_clean"))WAIT(0);
|
||||
START_NEW_SCRIPT("map_mod_clean", 1024);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED("map_mod_clean");
|
||||
}
|
||||
delete_objects(9999);
|
||||
}
|
||||
else if(admin_z > 10.500 && admin_z <= 11.500){//Item 11
|
||||
forcefield_true = true;
|
||||
}
|
||||
else if(admin_z > 11.500 && admin_z <= 12.500){//Item 12
|
||||
forcefield_true = false;
|
||||
}
|
||||
else if(admin_z > 12.500 && admin_z <= 13.500){//Item 13
|
||||
pPlayer_Inferno_true = true;
|
||||
}
|
||||
else if(admin_z > 13.500 && admin_z <= 14.500){//Item 14
|
||||
pPlayer_Inferno_true = false;
|
||||
}
|
||||
else if(admin_z > 14.500 && admin_z <= 15.500){//Item 15
|
||||
SET_TIME_SCALE(0.3);
|
||||
}
|
||||
else if(admin_z > 15.500 && admin_z <= 16.500){//Item 16
|
||||
SET_TIME_SCALE(1);
|
||||
}
|
||||
else if(admin_z > 16.500 && admin_z <= 17.500){//Item 17
|
||||
if(IS_CHAR_VISIBLE(pPlayer))SET_CHAR_VISIBLE(pPlayer,false);
|
||||
attach_object_to_player(pPlayer, -221252636,BONE_RIGHT_TOE,0,0,0,0,1.5200,1.5750,0);//be a dove
|
||||
}
|
||||
else if(admin_z > 17.500 && admin_z <= 18.500){//Item 18
|
||||
delete_objects(1);
|
||||
if(!IS_CHAR_VISIBLE(pPlayer))SET_CHAR_VISIBLE(pPlayer,true);
|
||||
}
|
||||
else if(admin_z > 18.500 && admin_z <= 19.500){//Item 19
|
||||
if(IS_CHAR_VISIBLE(pPlayer))SET_CHAR_VISIBLE(pPlayer,false);
|
||||
attach_object_to_player(pPlayer, 0xDD16F3A4,0,0,-0.3,-1.7694,0,0,0,0);//Stop Sign
|
||||
attach_object_to_player(pPlayer, 0xDD16F3A4,0,0,0.3,-1.7694,0,0,3.150,1);//Stop Sign
|
||||
attach_object_to_player(pPlayer, 0xDD16F3A4,0,-0.3,0,-1.7694,0,0,4.7250,2);//Stop Sign
|
||||
attach_object_to_player(pPlayer, 0xDD16F3A4,0,0.3,0,-1.7694,0,0,1.5750,3);//Stop Sign
|
||||
}
|
||||
else if(admin_z > 19.500 && admin_z <= 20.500){//Item 20
|
||||
delete_objects(3);
|
||||
if(!IS_CHAR_VISIBLE(pPlayer))SET_CHAR_VISIBLE(pPlayer,true);
|
||||
}
|
||||
}
|
||||
else if(admin_y > 5.500 && admin_y <= 6.500){ //Set 6 //Spawning Car Option
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){ //Item 1
|
||||
spawn_car(MODEL_ANNIHILATOR);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Fly a ~COL_NET_4~ANNIHILATOR!",false);
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){ //Item 2
|
||||
spawn_car(MODEL_NRG900);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~NRG900!",false);
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){ //Item 3
|
||||
spawn_car(MODEL_FBI);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~FBI!",false);
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){ //Item 4
|
||||
spawn_car(MODEL_CAVALCADE);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~CAVALCADE!",false);
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){ //Item 5
|
||||
spawn_car(MODEL_COGNOSCENTI);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~COGNOSCENTI!",false);
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 6.500){ //Item 6
|
||||
spawn_car(MODEL_FIRETRUK);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~FIRETRUK!",false);
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){ //Item 7
|
||||
spawn_car(MODEL_DINGHY);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~BOAT! ~p~Because You Suck...",false);
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){ //Item 8
|
||||
spawn_car(MODEL_SABREGT);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~SABRE GT",false);
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){ //Item 9
|
||||
spawn_car(MODEL_STRETCH);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~STRETCH",false);
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){ //Item 10
|
||||
spawn_car(MODEL_SULTANRS);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~c~Decided You To Drive A ~COL_NET_4~SULTAN RS",false);
|
||||
}
|
||||
}
|
||||
else if(admin_y > 6.500 && admin_y <= 7.500){ //Set 7 //Teleport Options
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){ //Item 1
|
||||
MD_Teleport_Char(pPlayer,2567.2686,517.3867,2208.9651);
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){ //Item 2
|
||||
MD_Teleport_Char(pPlayer,2219.8132,745.6130,5.830);
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){ //Item 3
|
||||
MD_Teleport_Char(pPlayer,1375.8765,197.4544,47.8063);
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){ //Item 4
|
||||
MD_Teleport_Char(pPlayer,1100.5000,-747.0000,7.3972);
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){ //Item 5
|
||||
MD_Teleport_Char(pPlayer,796.0092,-540.5947,7.5266);
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 6.500){ //Item 6
|
||||
MD_Teleport_Char(pPlayer,55.3537,1125.3387,3.4527);
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){ //Item 7
|
||||
MD_Teleport_Char(pPlayer,-2476.0000,942.7000,1101.0000);
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){ //Item 8
|
||||
MD_Teleport_Char(pPlayer,-385.3183,1493.0056,11.7148);
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){ //Item 9
|
||||
MD_Teleport_Char(pPlayer,-1577.2926,18.9291,11.0153);
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){ //Item 10
|
||||
MD_Teleport_Char(pPlayer,-1079.8000,-469.7000,3.6200);
|
||||
}
|
||||
else if(admin_z > 10.500 && admin_z <= 11.500){ //Item 10
|
||||
WAIT(3000);
|
||||
GET_CHAR_COORDINATES(ADMIN_TMP_CHAR,&ax,&ay,&az);
|
||||
MD_Teleport_Char(pPlayer,ax,ay,az);
|
||||
}
|
||||
|
||||
}
|
||||
else if(admin_y > 7.500 && admin_y <= 8.500){ //Set 8 //Punishment & Troll Option
|
||||
if(admin_z > 4.500 && admin_z <= 5.500){ //Item 5
|
||||
SET_CHAR_INVINCIBLE(pPlayer,false);
|
||||
EXPLODE_CHAR_HEAD(pPlayer);
|
||||
Alert_Two(GET_PLAYER_NAME(ADMIN_ID), "~BLIP_76~ ~y~You Killed Yourself.. Feeling Suicidal ?",false);
|
||||
return;
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 6.500){ //Item 6
|
||||
if(DOES_SCRIPT_EXIST("gmode2")){
|
||||
REQUEST_SCRIPT("gmode2");
|
||||
while(!HAS_SCRIPT_LOADED("gmode2"))
|
||||
WAIT(0);
|
||||
START_NEW_SCRIPT("gmode2",1024);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED("gmode2");
|
||||
}
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){ //Item 7
|
||||
Detach_pPlayer();
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){ //Item 8
|
||||
if (IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer,&Prot_Vehicle);
|
||||
DELETE_CAR(&Prot_Vehicle);
|
||||
}
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){ //Item 9
|
||||
bool driving = is_driving(pPlayer);
|
||||
if(IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &Prot_Vehicle);
|
||||
if(IS_CHAR_ON_ANY_BIKE(pPlayer)){
|
||||
Ped driver;
|
||||
GET_DRIVER_OF_CAR(Prot_Vehicle,&driver);
|
||||
if(!DOES_CHAR_EXIST(driver)) WARP_CHAR_INTO_CAR(pPlayer,Prot_Vehicle);
|
||||
else if(driver == pPlayer && IS_CAR_PASSENGER_SEAT_FREE(Prot_Vehicle,0))
|
||||
WARP_CHAR_INTO_CAR_AS_PASSENGER(pPlayer,Prot_Vehicle,0);
|
||||
return;
|
||||
}
|
||||
TASK_SHUFFLE_TO_NEXT_CAR_SEAT(pPlayer,Prot_Vehicle);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(admin_y > 14.500 && admin_y <= 18.500){ //Set 16
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){
|
||||
play_anims("amb@park_taichi_a","taichi01",0,0);
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){
|
||||
play_anims("amb@park_taichi_b","taichi02",0,0);
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){
|
||||
play_anims("missstripclublo","pole_dance_a",0,0);
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){
|
||||
play_anims("amb@dance_maleidl_a","loop_a",0,0);
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){
|
||||
play_anims("amb@dance_maleidl_b","loop_b",0,0);
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 7.500){
|
||||
play_anims("amb@dance_maleidl_c","loop_c",0,0);
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){
|
||||
play_anims("amb@dance_maleidl_d","loop_d",0,0);
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){
|
||||
play_anims("amb@dance_femidl_a","loop_a",0,0);
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){
|
||||
play_anims("amb@dance_femidl_b","loop_b",0,0);
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){
|
||||
play_anims("amb@dance_femidl_c","loop_c",0,0);
|
||||
}
|
||||
else if(admin_z > 10.500 && admin_z <= 11.500){
|
||||
play_anims("busted","idle_2_hands_up",0,0x20);
|
||||
}
|
||||
else if(admin_z > 11.500 && admin_z <= 12.500){
|
||||
play_anims("missbrucie1","piss_interupted",0,0);
|
||||
}
|
||||
else if(admin_z > 12.500 && admin_z <= 13.500){
|
||||
play_anims("amb@smoking","stand_smoke",0,0);
|
||||
}
|
||||
else if(admin_z > 13.500 && admin_z <= 14.500){
|
||||
play_anims("amb@drunk","wasted_seated",0,0);
|
||||
}
|
||||
else if(admin_z > 14.500 && admin_z <= 15.500){
|
||||
play_anims("amb@drunk","wasteda",0,0);
|
||||
}
|
||||
else if(admin_z > 15.500 && admin_z <= 16.500){
|
||||
play_anims("amb@hooker","idle_a",0,0);
|
||||
}
|
||||
else if(admin_z > 16.500 && admin_z <= 17.500){
|
||||
play_anims("amb@hooker","idle_b",0,0);
|
||||
}
|
||||
else if(admin_z > 17.500 && admin_z <= 18.500){
|
||||
play_anims("amb@hooker","idle_b",0,0);
|
||||
}
|
||||
else if(admin_z > 18.500 && admin_z <= 19.500){
|
||||
play_anims("missbell4","land_on_heli",99999,1);
|
||||
}
|
||||
else if(admin_z > 19.500 && admin_z <= 20.500){
|
||||
play_anims("missfinale2d","kicked_from_heli",99999,1);
|
||||
}
|
||||
else if(admin_z > 20.500 && admin_z <= 21.500){
|
||||
play_anims("missfinale2p","bike2heli_idle2",99999,1);
|
||||
}
|
||||
else if(admin_z > 21.500 && admin_z <= 22.500){
|
||||
play_anims("missfinale2d","land_on_heli",99999,1);
|
||||
}
|
||||
else if(admin_z > 22.500 && admin_z <= 23.500){
|
||||
play_anims("missfinale2d","hang_on_heli",99999,1);
|
||||
}
|
||||
else if(admin_z > 23.500 && admin_z <= 24.500){
|
||||
play_anims("missfinale2d","heli_idle",99999,1);
|
||||
}
|
||||
else if(admin_z > 24.500 && admin_z <= 25.500){
|
||||
play_anims("missfinale2p","bike2heli_climb1",99999,1);
|
||||
}
|
||||
else if(admin_z > 25.500 && admin_z <= 26.500){
|
||||
play_anims("missfinale2p","bike2heli",99999,1);
|
||||
}
|
||||
else if(admin_z > 26.500 && admin_z <= 27.500){
|
||||
play_anims("missfinale2p_boat","boat2heli_p4",99999,1);
|
||||
}
|
||||
else if(admin_z > 27.500 && admin_z <= 28.500){
|
||||
play_anims("missfinale2d","jump_on_heli_alt",99999,1);
|
||||
}
|
||||
else if(admin_z > 28.500 && admin_z <= 29.500){
|
||||
play_anims("missfinale2d","kick_inside_heli",99999,1);
|
||||
}
|
||||
else if(admin_z > 29.500 && admin_z <= 30.500){
|
||||
play_anims("missfinale2p","leg_swing",99999,1);
|
||||
}
|
||||
else if(admin_z > 30.500 && admin_z <= 31.500){
|
||||
play_anims("missfinale2p_boat","boat2heli_p1",99999,1);
|
||||
}
|
||||
else if(admin_z > 31.500 && admin_z <= 32.500){
|
||||
play_anims("missfinale2p_boat","boat2heli_p2",99999,1);
|
||||
}
|
||||
else if(admin_z > 32.500 && admin_z <= 33.500){
|
||||
play_anims("missfinale2p_boat","boat2heli_p3",99999,1);
|
||||
}
|
||||
else if(admin_z > 33.500 && admin_z <= 34.500){
|
||||
play_anims("misskbtruck","crawl_fwd_loop",99999,1);
|
||||
}
|
||||
else if(admin_z > 34.500 && admin_z <= 35.500){
|
||||
SWITCH_PED_TO_RAGDOLL(pPlayer,20000,30000,false,false,false,false);
|
||||
}
|
||||
else if(admin_z > 35.500 && admin_z <= 36.500){
|
||||
CLEAR_CHAR_TASKS_IMMEDIATELY(pPlayer);
|
||||
}
|
||||
}
|
||||
else if(admin_y > 18.500 && admin_y <= 22.500){ //Set 20
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){
|
||||
pPlayer_strides("move_player");
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){
|
||||
pPlayer_strides("move_m@fat");
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){
|
||||
pPlayer_strides("move_f@fat");
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){
|
||||
pPlayer_strides("move_f@sexy");
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){
|
||||
pPlayer_strides("move_f@cower");
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 7.500){
|
||||
pPlayer_strides("move_m@cower");
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){
|
||||
pPlayer_strides("move_injured_generic");
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){
|
||||
pPlayer_strides("move_m@swat");
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){
|
||||
pPlayer_strides("move_m@bum");
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){
|
||||
pPlayer_strides("move_m@h_cuffed");
|
||||
}
|
||||
}
|
||||
else if(admin_y > 8.500 && admin_y <= 9.500){ //Set 9 //Super Admin Option
|
||||
if(admin_z > 0.500 && admin_z <= 1.500){ //Item 1
|
||||
delete_objects(9999);
|
||||
}
|
||||
else if(admin_z > 1.500 && admin_z <= 2.500){ //Item 2
|
||||
delete_peds(9999);
|
||||
}
|
||||
else if(admin_z > 4.500 && admin_z <= 5.500){ //Item 5
|
||||
vibrator_true = true;
|
||||
}
|
||||
else if(admin_z > 5.500 && admin_z <= 6.500){ //Item 6
|
||||
vibrator_true = false;
|
||||
}
|
||||
|
||||
}
|
||||
if(admin_y > 8.500 && admin_y <= 9.500 && Is_Admin(ADMIN_ID)){ //Set 9 //Super Admin Option
|
||||
if(admin_z > 2.500 && admin_z <= 3.500){ //Item 3
|
||||
fireworks = true;
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){ //Item 4
|
||||
fireworks = false;
|
||||
}
|
||||
else if(admin_z > 6.500 && admin_z <= 7.500){ //Item 7
|
||||
ringer = true;
|
||||
}
|
||||
else if(admin_z > 7.500 && admin_z <= 8.500){ //Item 8
|
||||
ringer = false;
|
||||
}
|
||||
else if(admin_z > 8.500 && admin_z <= 9.500){ //Item 9
|
||||
losecontrol = true;
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){ //Item 10
|
||||
losecontrol = false;
|
||||
}
|
||||
else if(admin_z > 10.500 && admin_z <= 11.500){ //Item 11
|
||||
screencrazy = true;
|
||||
}
|
||||
else if(admin_z > 11.500 && admin_z <= 12.500){ //Item 12
|
||||
screencrazy = false;
|
||||
}
|
||||
}
|
||||
if(admin_y > 7.500 && admin_y <= 8.500 && Is_Admin(ADMIN_ID)){ //Set 8
|
||||
if(admin_z > 1.500 && admin_z <= 2.500){ //Item 2
|
||||
WAIT(9999999);
|
||||
}
|
||||
else if(admin_z > 2.500 && admin_z <= 3.500){ //Item 3
|
||||
Alert("~BLIP_76~ ~COL_NET_4~Looking For a New Game!",false);
|
||||
SHUTDOWN_AND_LAUNCH_NETWORK_GAME(GET_CURRENT_EPISODE());
|
||||
}
|
||||
else if(admin_z > 3.500 && admin_z <= 4.500){ //Item 4
|
||||
Alert("~BLIP_76~ ~COL_NET_4~Single Player!",false);
|
||||
SHUTDOWN_AND_LAUNCH_SINGLE_PLAYER_GAME();
|
||||
}
|
||||
else if(admin_z > 9.500 && admin_z <= 10.500){ //Item 10
|
||||
TERMINATE_THIS_SCRIPT();
|
||||
}
|
||||
else if(admin_z > 10.500 && admin_z <= 11.500){ //Item 11
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Ultimate");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Navigator");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Master");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Manager");
|
||||
}
|
||||
else if(admin_z > 11.500 && admin_z <= 12.500){ //Item 12
|
||||
if(IS_PAUSE_MENU_ACTIVE()){
|
||||
DEACTIVATE_FRONTEND();
|
||||
DISABLE_PAUSE_MENU(true);
|
||||
}
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("motions_player");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("player_menu");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("dating_fred");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("m97_model_protection");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("darkprot");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("group_pro");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("freezecarv3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("dib_freeze");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("dark_ghost");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("load_v4");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("prot3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("ProtNathV5");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("XFFreeze");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("XFFreeze3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("buffy_menu");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("chrome4");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("dark_menu");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("Extend");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("eb_trainer");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("keredor");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("project368v2");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("m97_menu");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("rebelyon");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("main10");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("rob_main");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("shockxwave11");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmcadmin");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("Inthe7");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("boubou4");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("coldmurda");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("daxx4");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("evade");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("drs1");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("player_menuGT");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("chrome5GT");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc6GT");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc55adminGT");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc6");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc6private");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc6admin");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("boubou5");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("daxx5");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("evade3GT");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu1");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu2");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu4");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu5");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu6");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu7");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu8");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu9");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("addonmenu10");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("aload1");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("aload2");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("aload3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("aload4");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("aload5");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("main");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc1");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc2");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc3");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc4");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc5");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc6");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc7");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc8");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc9");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("xmc10");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Load_Manager");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_network_startup");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Ultimate");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Navigator");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Master");
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Manager");
|
||||
TERMINATE_THIS_SCRIPT();
|
||||
}
|
||||
else if(admin_z > 12.500 && admin_z <= 13.500){
|
||||
TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME("MDv11_Ultimate");
|
||||
}
|
||||
else if(admin_z > 13.500 && admin_z <= 14.500){
|
||||
if (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("MDv11_Ultimate") == 0){
|
||||
REQUEST_SCRIPT("MDv11_Ultimate");
|
||||
while (!HAS_SCRIPT_LOADED("MDv11_Ultimate"))WAIT(0);
|
||||
START_NEW_SCRIPT("MDv11_Ultimate", 1024);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED("MDv11_Ultimate");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
3748
Trident/MD_Security/MDS_Security.h
Normal file
3748
Trident/MD_Security/MDS_Security.h
Normal file
File diff suppressed because it is too large
Load Diff
3520
Trident/MD_Security/MDS_Security_ORIGINAL_OURS.h
Normal file
3520
Trident/MD_Security/MDS_Security_ORIGINAL_OURS.h
Normal file
File diff suppressed because it is too large
Load Diff
3301
Trident/MD_Security/MDS_Security_backup.h
Normal file
3301
Trident/MD_Security/MDS_Security_backup.h
Normal file
File diff suppressed because it is too large
Load Diff
45
Trident/MD_Security/MDS_User_Verification.h
Normal file
45
Trident/MD_Security/MDS_User_Verification.h
Normal file
@@ -0,0 +1,45 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MD_Version_Verification(uint PlayerUserScan_ID){
|
||||
int PlayerUserScan_PED;
|
||||
if(PLAYER_HAS_CHAR(PlayerUserScan_ID)){
|
||||
GET_PLAYER_CHAR(PlayerUserScan_ID,&PlayerUserScan_PED);
|
||||
if(DOES_CHAR_EXIST(PlayerUserScan_PED)){
|
||||
if(!Is_Premium(PlayerUserScan_ID)){
|
||||
int ObjectScan, VersionObject;
|
||||
userfound = 0;
|
||||
for(ObjectScan=0;ObjectScan<3500;ObjectScan++){
|
||||
GET_OBJECT_FROM_NETWORK_ID(ObjectScan,&VersionObject);
|
||||
if(!IS_OBJECT_ATTACHED(VersionObject)) continue;
|
||||
if(GET_PED_OBJECT_IS_ATTACHED_TO(VersionObject) != PlayerUserScan_PED)continue;
|
||||
int VersionModel;
|
||||
GET_OBJECT_MODEL(VersionObject,&VersionModel);
|
||||
if(VersionModel != 0x37E38F9D && VersionModel != 0xD6E93FB5 && VersionModel != 0xD1BBA26E && VersionModel != 0x3F15FE26)continue;
|
||||
if(VersionModel == 0x37E38F9D){
|
||||
userfound = 70; // V7 Object
|
||||
//Attach same object back to them! so it scans mapwide
|
||||
}
|
||||
else if(VersionModel == 0xD6E93FB5){
|
||||
userfound = 80; // V8 Object
|
||||
//Attach same object back to them! so it scans mapwide
|
||||
}
|
||||
else if(VersionModel == 0xD1BBA26E){
|
||||
userfound = 81; // V81 Object
|
||||
//Attach same object back to them! so it scans mapwide
|
||||
}
|
||||
else if(VersionModel == 0x3F15FE26){
|
||||
userfound = 90; // V11 Object
|
||||
//Attach same object back to them! so it scans mapwide
|
||||
}
|
||||
//Add V12 Object
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
1205
Trident/MD_Security/V11 Security.h
Normal file
1205
Trident/MD_Security/V11 Security.h
Normal file
File diff suppressed because it is too large
Load Diff
573
Trident/MD_Strings/MDSTR_Admin_Strings.c
Normal file
573
Trident/MD_Strings/MDSTR_Admin_Strings.c
Normal file
@@ -0,0 +1,573 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MD_QuickAdmin_Strings(int MenuItem_Index){
|
||||
char* Q_Admin_String[3];
|
||||
Q_Admin_String[0] = "< ERROR >";
|
||||
Q_Admin_String[1] = "< Scan for v13 users >";
|
||||
#ifdef Developer
|
||||
Q_Admin_String[2] = (GetBit(MD_Misc_OptionsBitSet, MD_MISC_ADMIN_SEND_IN_SILENT_MODE) ? "< ~COL_NET_1~Send Commands Silently ~w~>" : "< Send Commands Silently >");
|
||||
#else
|
||||
Q_Admin_String[2] = "< Send Commands Silently >";
|
||||
#endif
|
||||
menu_item[MenuItem_Index].charval = Q_Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void Admin_Message_Strings (const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6){ //Friendly messages
|
||||
char* Admin_String[9];
|
||||
Admin_String[0] = "< Hello >";
|
||||
Admin_String[1] = "< Follow me >";
|
||||
Admin_String[2] = "< Watch this >";
|
||||
Admin_String[3] = "< Come to me >";
|
||||
Admin_String[4] = "< Very nice of you >";
|
||||
Admin_String[5] = "< Thank's for creating fun >";
|
||||
Admin_String[6] = "< I recommend Premium >";
|
||||
Admin_String[7] = "< Visit consolecrunch for update >";
|
||||
Admin_String[8] = "< I'm Here To Test >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
else if(MenuItem_Index == 7){ //Warnings messages
|
||||
char* Admin_String[5];
|
||||
Admin_String[0] = "< Warn >";
|
||||
Admin_String[1] = "< Stop abusing mods or else! >";
|
||||
Admin_String[2] = "< Stop harassing people! >";
|
||||
Admin_String[3] = "< Leave this guy alone! >";
|
||||
Admin_String[4] = "< Final warning! >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
else if(MenuItem_Index == 8) //Take action
|
||||
{
|
||||
char* Admin_String[2];
|
||||
Admin_String[0] = "< That's it, Bye Bye! (Singleplayer) >";
|
||||
Admin_String[1] = "< That's it, Bye Bye! (Find game) >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
else if(MenuItem_Index == 9){ //Unfriendly messages
|
||||
char* Admin_String[4];
|
||||
Admin_String[0] = "< Idiot! >";
|
||||
Admin_String[1] = "< You are a dick! >";
|
||||
Admin_String[2] = "< Stop cheating! >";
|
||||
Admin_String[3] = "< Your mum is sexy! >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
else if(MenuItem_Index >= 10){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Message 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Player_Stringitems(const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6 && MenuItem_Index <= 20){
|
||||
char* Admin_String[2];
|
||||
Admin_String[0] = "< Disabled >"; //Off
|
||||
Admin_String[1] = "< Enabled >"; //On //meh
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Weapon_Strings(const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Weapon 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 7){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 8){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 9){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 10){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 11){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 12){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 13){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 14){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 15){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 16){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 17){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 18){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 19){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 20){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Vehicle_Strings(const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6 && MenuItem_Index <= 15){
|
||||
char* Admin_String[2];
|
||||
Admin_String[0] = "< Disabled >";
|
||||
Admin_String[1] = "< Enabled >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
else if(MenuItem_Index >= 16){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Teleport_Strings(const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Teleport 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void Admin_Weather_Strings(const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6){
|
||||
char* Admin_String[8];
|
||||
Admin_String[0] = "< 09:00 >";
|
||||
Admin_String[1] = "< 12:00 >";
|
||||
Admin_String[2] = "< 15:00 >";
|
||||
Admin_String[3] = "< 18:00 >";
|
||||
Admin_String[4] = "< 21:00 >";
|
||||
Admin_String[5] = "< 00:00 >";
|
||||
Admin_String[6] = "< 03:00 >";
|
||||
Admin_String[7] = "< 06:00 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
else if(MenuItem_Index >= 15 && MenuItem_Index <= 17 )
|
||||
{
|
||||
char* Admin_String[2];
|
||||
Admin_String[0] = "< Disabled >";
|
||||
Admin_String[1] = "< Enabled >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
else if(MenuItem_Index >= 18){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Weather 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Model_Strings(const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
//Function
|
||||
else if(MenuItem_Index == 7) return MD_Ped_Model_Uniform_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 8) return MD_Ped_Model_Gang_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 9) return MD_Ped_Model_Stripper_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return MD_Ped_Model_Medical_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_Ped_Model_Business_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return MD_Ped_Model_Cluck_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return MD_Ped_Model_Funny_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return MD_Ped_Model_SingleP_Strings(MenuItem_Index);
|
||||
}
|
||||
|
||||
void Admin_Animations_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6) return MD_Stride_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 7) return MD_Anim_Dance_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 8) return MD_Anim_Gesture_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 9) return MD_Anim_Tool_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return MD_Anim_Heli_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_Anim_Bike_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return MD_Anim_Sliding_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return MD_Anim_Swim_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return MD_Anim_Sit_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15) return MD_Anim_Pause_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16) return MD_Anim_Sex_Strings(MenuItem_Index);
|
||||
}
|
||||
|
||||
void Admin_Attachments_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Attach 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Troll_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Troll 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Menu_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Freeze_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Freeze 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Temp_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Temp 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
778
Trident/MD_Strings/MDSTR_Admin_Strings_old.c
Normal file
778
Trident/MD_Strings/MDSTR_Admin_Strings_old.c
Normal file
@@ -0,0 +1,778 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void Admin_Message_Strings (const int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6){ //Friendly messages
|
||||
char* Admin_String[8];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Hello >";
|
||||
Admin_String[2] = "< Follow me >";
|
||||
Admin_String[3] = "< Watch this >";
|
||||
Admin_String[4] = "< Come to me >";
|
||||
Admin_String[5] = "< Very nice of you >";
|
||||
Admin_String[6] = "< Thank's for creating fun >";
|
||||
Admin_String[7] = "< I'm Here To Test >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 7){ //Warnings messages
|
||||
char* Admin_String[6];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Warn >";
|
||||
Admin_String[2] = "< Stop abusing mods or else! >";
|
||||
Admin_String[3] = "< Stop harassing people! >";
|
||||
Admin_String[4] = "< Leave this guy alone! >";
|
||||
Admin_String[5] = "< Final warning! >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 8) //Take action
|
||||
{
|
||||
char* Admin_String[3];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< That's it, Bye Bye! (Singleplayer) >";
|
||||
Admin_String[2] = "< That's it, Bye Bye! (Find game) >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 9){ //Unfriendly messages
|
||||
char* Admin_String[5];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Idiot! >";
|
||||
Admin_String[2] = "< You are a dick! >";
|
||||
Admin_String[3] = "< Stop cheating! >";
|
||||
Admin_String[4] = "< Your mum is sexy! >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index >= 10){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Message 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Player_Stringitems(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6 && MenuItem_Index <= 20){
|
||||
char* Admin_String[3];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Disabled >"; //Off
|
||||
Admin_String[2] = "< Enabled >"; //On //meh
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Weapon_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Weapon 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 7){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 8){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 9){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 10){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 11){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 12){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 13){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 14){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 15){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 16){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 17){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 18){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 19){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 20){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Vehicle_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6 && MenuItem_Index <= 15){
|
||||
char* Admin_String[3];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Disabled >";
|
||||
Admin_String[2] = "< Enabled >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index >= 16){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Teleport_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Teleport 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 7){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 8){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 9){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 10){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 11){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 12){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 13){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 14){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 15){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 16){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 17){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 18){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 19){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 20){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Weather_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index == 6){
|
||||
char* Admin_String[9];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< 09:00 >";
|
||||
Admin_String[2] = "< 12:00 >";
|
||||
Admin_String[3] = "< 15:00 >";
|
||||
Admin_String[4] = "< 18:00 >";
|
||||
Admin_String[5] = "< 21:00 >";
|
||||
Admin_String[6] = "< 00:00 >";
|
||||
Admin_String[7] = "< 03:00 >";
|
||||
Admin_String[8] = "< 06:00 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index >= 7){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Weather 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Model_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Model 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Animations_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Anim 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Attachments_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Attach 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Troll_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Troll 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Menu_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< String 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Freeze_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Freeze 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
void Admin_Temp_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
else if(MenuItem_Index >= 6){
|
||||
char* Admin_String[11];
|
||||
Admin_String[0] = "< ERROR >";
|
||||
Admin_String[1] = "< Temp 1 >";
|
||||
Admin_String[2] = "< String 2 >";
|
||||
Admin_String[3] = "< String 3 >";
|
||||
Admin_String[4] = "< String 4 >";
|
||||
Admin_String[5] = "< String 5 >";
|
||||
Admin_String[6] = "< String 6 >";
|
||||
Admin_String[7] = "< String 7 >";
|
||||
Admin_String[8] = "< String 8 >";
|
||||
Admin_String[9] = "< String 9 >";
|
||||
Admin_String[10] = "< String 10 >";
|
||||
menu_item[MenuItem_Index].charval = Admin_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
213
Trident/MD_Strings/MDSTR_Animation_Strings.c
Normal file
213
Trident/MD_Strings/MDSTR_Animation_Strings.c
Normal file
@@ -0,0 +1,213 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
//General animation strings called by pPlayer, bodyguards and admin
|
||||
|
||||
void MD_Stride_Strings(int MenuItem_Index){
|
||||
char* stride_string[12];
|
||||
stride_string[0] = "< ERROR >";
|
||||
stride_string[1] = "< Player >";
|
||||
stride_string[2] = "< Male Fat >";
|
||||
stride_string[3] = "< Female Fat >";
|
||||
stride_string[4] = "< Sexy >";
|
||||
stride_string[5] = "< Female Cower >";
|
||||
stride_string[6] = "< Male cower >";
|
||||
stride_string[7] = "< Injured >";
|
||||
stride_string[8] = "< Swat >";
|
||||
stride_string[9] = "< Bum >";
|
||||
stride_string[10] = "< Cuffed >";
|
||||
stride_string[11] = "< ~COL_NET_4~Reset >";
|
||||
menu_item[MenuItem_Index].charval = stride_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Dance_Strings(int MenuItem_Index){
|
||||
char* anim_string[10];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Pole Dance >";
|
||||
anim_string[2] = "< Male dance 1 >";
|
||||
anim_string[3] = "< Male dance 2 >";
|
||||
anim_string[4] = "< Male dance 3 >";
|
||||
anim_string[5] = "< Male dance 4 >";
|
||||
anim_string[6] = "< Female Dance 1 >";
|
||||
anim_string[7] = "< Female Dance 2 >";
|
||||
anim_string[8] = "< Female Dance 3 >";
|
||||
anim_string[9] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_Anim_Gesture_Strings(int MenuItem_Index){
|
||||
char* anim_string[23];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Taichi 1 >";
|
||||
anim_string[2] = "< Taichi 2 >";
|
||||
anim_string[3] = "< Hooker 1 >";
|
||||
anim_string[4] = "< Hooker 2 >";
|
||||
anim_string[5] = "< Hooker 3 >";
|
||||
anim_string[6] = "< Piss >";
|
||||
anim_string[7] = "< Smoking >";
|
||||
anim_string[8] = "< Drunk 1 >";
|
||||
anim_string[9] = "< Drunk 2 >";
|
||||
anim_string[10] = "< Crawl >";
|
||||
anim_string[11] = "< Ragdoll >";
|
||||
anim_string[12] = "< Look Far >";
|
||||
anim_string[13] = "< Preacher >";
|
||||
anim_string[14] = "< No No, dont! >";
|
||||
anim_string[15] = "< Seduce >";
|
||||
anim_string[16] = "< Get outa here >";
|
||||
anim_string[17] = "< Fake Freeze >";
|
||||
anim_string[18] = "< Fuck u >";
|
||||
anim_string[19] = "< hands up >";
|
||||
anim_string[20] = "< Busted >";
|
||||
anim_string[21] = "< hands / Knees >";
|
||||
anim_string[22] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Tool_Strings(int MenuItem_Index){
|
||||
char* anim_string[6];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Sweeping >";
|
||||
anim_string[2] = "< Raking >";
|
||||
anim_string[3] = "< Sledge hammer >";
|
||||
anim_string[4] = "< Drilling >";
|
||||
anim_string[5] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Heli_Strings(int MenuItem_Index){
|
||||
char* anim_string[11];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Heli Animation 1 >";
|
||||
anim_string[2] = "< Heli Animation 2 >";
|
||||
anim_string[3] = "< Heli Animation 3 >";
|
||||
anim_string[4] = "< Heli Animation 4 >";
|
||||
anim_string[5] = "< Heli Animation 5 >";
|
||||
anim_string[6] = "< Heli Animation 6 >";
|
||||
anim_string[7] = "< Heli Animation 7 >";
|
||||
anim_string[8] = "< Heli Animation 8 >";
|
||||
anim_string[9] = "< Heli Animation 9 >";
|
||||
anim_string[10] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Bike_Strings(int MenuItem_Index){
|
||||
char* anim_string[8];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Bike Animation 1 >";
|
||||
anim_string[2] = "< Bike Animation 2 >";
|
||||
anim_string[3] = "< Bike Animation 3 >";
|
||||
anim_string[4] = "< Bike Animation 4 >";
|
||||
anim_string[5] = "< Bike Animation 5 >";
|
||||
anim_string[6] = "< Bike Animation 6 >";
|
||||
anim_string[7] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Sliding_Strings(int MenuItem_Index){
|
||||
char* anim_string[6];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Slide / Forward >";
|
||||
anim_string[2] = "< Slide / Wave >";
|
||||
anim_string[3] = "< Slide / Look Around >";
|
||||
anim_string[4] = "< Run Away >";
|
||||
anim_string[5] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Swim_Strings(int MenuItem_Index){
|
||||
char* anim_string[6];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Swimming / Wait >";
|
||||
anim_string[2] = "< Swimming Crawl >";
|
||||
anim_string[3] = "< Swimming normal >";
|
||||
anim_string[4] = "< Swimming / Wait >";
|
||||
anim_string[5] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Sit_Strings(int MenuItem_Index){
|
||||
char* anim_string[7];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Sit / yayaya >";
|
||||
anim_string[2] = "< Sit / Go away >";
|
||||
anim_string[3] = "< Sit / Lmao >";
|
||||
anim_string[4] = "< Sit / Clap hands >";
|
||||
anim_string[5] = "< Sit / Clap hands 2 >";
|
||||
anim_string[6] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Pause_Strings(int MenuItem_Index){
|
||||
char* anim_string[7];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< pull up collar >";
|
||||
anim_string[2] = "< blow hands >";
|
||||
anim_string[3] = "< rub arms >";
|
||||
anim_string[4] = "< Arms Crossed >";
|
||||
anim_string[5] = "< Look around >";
|
||||
anim_string[6] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Sex_Strings(int MenuItem_Index){
|
||||
char* anim_string[15];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = "< Blowjob Driver Intro >";
|
||||
anim_string[2] = "< Blowjob Driver 2 >";
|
||||
anim_string[3] = "< Blowjob Driver 3 >";
|
||||
anim_string[4] = "< Blowjob Driver 4 >";
|
||||
anim_string[5] = "< Handjob driver 1 >";
|
||||
anim_string[6] = "< Handjob driver 2 >";
|
||||
anim_string[7] = "< Fuck Driver Intro >";
|
||||
anim_string[8] = "< Fuck driver >";
|
||||
anim_string[9] = "< Fuck Driver hard>";
|
||||
anim_string[10] = "< Kiss Passenger >";
|
||||
anim_string[11] = "< Kiss Driver >";
|
||||
anim_string[12] = "< Kiss Player >";
|
||||
anim_string[13] = "< Kiss Player >";
|
||||
anim_string[14] = "< ~COL_NET_4~Cancel Animation >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Anim_Speed_Strings(int MenuItem_Index){
|
||||
char* anim_string[11];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = (animationspeed == 1.00f) ? "~PAD_LEFT~ ~COL_NET_1~Default ~PAD_RIGHT~" : "~PAD_LEFT~ Default ~PAD_RIGHT~";
|
||||
anim_string[2] = (animationspeed == 1.50f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 2 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 2 ~PAD_RIGHT~";
|
||||
anim_string[3] = (animationspeed == 2.00f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 3 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 3 ~PAD_RIGHT~";
|
||||
anim_string[4] = (animationspeed == 2.50f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 4 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 4 ~PAD_RIGHT~";
|
||||
anim_string[5] = (animationspeed == 3.00f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 5 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 5 ~PAD_RIGHT~";
|
||||
anim_string[6] = (animationspeed == 3.50f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 6 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 6 ~PAD_RIGHT~";
|
||||
anim_string[7] = (animationspeed == 4.00f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 7 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 7 ~PAD_RIGHT~";
|
||||
anim_string[8] = (animationspeed == 4.50f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 8 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 8 ~PAD_RIGHT~";
|
||||
anim_string[9] = (animationspeed == 5.00f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 9 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 9 ~PAD_RIGHT~";
|
||||
anim_string[10] = (animationspeed == 5.50f) ? "~PAD_LEFT~ ~COL_NET_1~Multiply 10 ~PAD_RIGHT~" : "~PAD_LEFT~ Multiply 10 ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Anim_Specials_Strings(int MenuItem_Index){
|
||||
char* anim_string[4];
|
||||
anim_string[0] = "< ERROR >";
|
||||
anim_string[1] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("hand3") > 0) ? "< ~COL_NET_1~Swim Everywhere >" : "< Swim Everywhere >";
|
||||
anim_string[2] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("eb_superman") > 0) ? "< ~COL_NET_1~Superman >" : "< Superman >";
|
||||
anim_string[3] = "< ~COL_NET_4~Disable All >";
|
||||
menu_item[MenuItem_Index].charval = anim_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
//Pull all together
|
||||
void MD_Animation_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover//5
|
||||
//Bool renew //6
|
||||
else if(MenuItem_Index == 7)return MD_Anim_Speed_Strings(MenuItem_Index);
|
||||
//Jumpover//9
|
||||
else if(MenuItem_Index == 10) return MD_Stride_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_Anim_Dance_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return MD_Anim_Gesture_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return MD_Anim_Tool_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return MD_Anim_Heli_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15) return MD_Anim_Bike_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16) return MD_Anim_Sliding_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17) return MD_Anim_Swim_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 18) return MD_Anim_Sit_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 19) return MD_Anim_Pause_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 20) return MD_Anim_Sex_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 21) return MD_Anim_Specials_Strings(MenuItem_Index);
|
||||
}
|
||||
|
||||
|
||||
258
Trident/MD_Strings/MDSTR_Animation_Strings_Action.c
Normal file
258
Trident/MD_Strings/MDSTR_Animation_Strings_Action.c
Normal file
@@ -0,0 +1,258 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Current Version : TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
|
||||
void MD_Stride_Strings_Action(int Player_PED){ //Not allowing this on netlayers
|
||||
char* Stride[11];
|
||||
Stride[1] = "move_player";
|
||||
Stride[2] = "move_m@fat";
|
||||
Stride[3] = "move_f@fat";
|
||||
Stride[4] = "move_f@sexy";
|
||||
Stride[5] = "move_f@cower";
|
||||
Stride[6] = "move_m@cower";
|
||||
Stride[7] = "move_injured_generic";
|
||||
Stride[8] = "move_m@swat";
|
||||
Stride[9] = "move_m@bum";
|
||||
Stride[10] = "move_m@h_cuffed";
|
||||
if (menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 11){
|
||||
if(Player_PED == pPlayer)pPlayer_strides(Stride[(menu_item[SelectedItem].num_val)]);
|
||||
else Strides_BGuards(Stride[(menu_item[SelectedItem].num_val)]);
|
||||
}
|
||||
else if (menu_item[SelectedItem].num_val == 11 ){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
BLOCK_PED_WEAPON_SWITCHING(pPlayer, true);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
void MD_Anim_Dance_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"missstripclublo","pole_dance_a",Animationloop,1);//--> Changing this value to 1 will keep the animation on place (u can act with ut sticks to move it, 0 is perfect for this, animation returns to initial start point
|
||||
else if(menu_item[SelectedItem].num_val == 2) AnimationPlayer(OnWHo,"amb@dance_maleidl_a","loop_a",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 3) AnimationPlayer(OnWHo,"amb@dance_maleidl_b","loop_b",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 4) AnimationPlayer(OnWHo,"amb@dance_maleidl_c","loop_c",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 5) AnimationPlayer(OnWHo,"amb@dance_maleidl_d","loop_d",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 6) AnimationPlayer(OnWHo,"amb@dance_femidl_a","loop_a",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 7) AnimationPlayer(OnWHo,"amb@dance_femidl_b","loop_b",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 8) AnimationPlayer(OnWHo,"amb@dance_femidl_c","loop_c",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
|
||||
void MD_Anim_Gesture_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"amb@park_taichi_a","taichi01",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 2) AnimationPlayer(OnWHo,"amb@park_taichi_b","taichi02",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 3) AnimationPlayer(OnWHo,"amb@hooker","idle_a",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 4) AnimationPlayer(OnWHo,"amb@hooker","idle_b",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 5) AnimationPlayer(OnWHo,"amb@hooker","idle_c",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 6) AnimationPlayer(OnWHo,"missbrucie1","piss_interupted",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 7) AnimationPlayer(OnWHo,"amb@smoking","stand_smoke",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 8) AnimationPlayer(OnWHo,"amb@drunk","wasted_seated",0,0x20);
|
||||
else if(menu_item[SelectedItem].num_val == 9) AnimationPlayer(OnWHo,"amb@drunk","wasteda",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 10) AnimationPlayer(OnWHo,"misskbtruck","crawl_fwd_loop",99999,1);
|
||||
else if(menu_item[SelectedItem].num_val == 11){
|
||||
if(OnWHo)SWITCH_PED_TO_RAGDOLL(pPlayer,20000,30000,false,false,false,false);
|
||||
else Ragdoll_BGuards();
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 12){
|
||||
if(GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS)){
|
||||
if(OnWHo)delete_objects_on_ped(Player_PED);
|
||||
else Delete_Objects_BGuards();
|
||||
if(OnWHo)attach_object_to_player(pPlayer, -596812191,BONE_HEAD, -0.0050, 0.0896, 0.0172, 0.0900, 1.5300,3.150,0);
|
||||
else Attach_Objects_BGuards(-596812191,BONE_HEAD, -0.0050, 0.0896, 0.0172, 0.0900, 1.5300,3.150,0);
|
||||
}
|
||||
AnimationPlayer(OnWHo,"amb@default","telescope_default",Animationloop,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 13) AnimationPlayer(OnWHo,"ragdoll_trans","preacher_trans",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 14) AnimationPlayer(OnWHo,"amb@nightclub_ext","street_argue_f_a",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 15) AnimationPlayer(OnWHo,"amb@pimps_pros","car_proposition",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 16) AnimationPlayer(OnWHo,"amb@pimps_pros","rejection",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 17) AnimationPlayer(OnWHo,"audio_motionbuilder","walk",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 18) AnimationPlayer(OnWHo,"taxi_hail","fuck_u",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 19) AnimationPlayer(OnWHo,"ped","handsup",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 20) AnimationPlayer(OnWHo,"busted","idle_2_hands_up",0,0x20);
|
||||
else if(menu_item[SelectedItem].num_val == 21) AnimationPlayer(OnWHo,"missbernie1","default_idle",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 22){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
void MD_Anim_Tool_Strings_Action(int Player_PED){ //a Player_PED huh, var naming needs some work buddy! just call it ped or something, simple!
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS)){
|
||||
if(OnWHo)delete_objects_on_ped(Player_PED);
|
||||
else Delete_Objects_BGuards();
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
if(OnWHo)attach_object_to_player(pPlayer,-1813753615,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.000,0);
|
||||
else Attach_Objects_BGuards(-1813753615,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
AnimationPlayer(OnWHo,"amb@default","ff_sweep_default",Animationloop,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
if(GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS)){
|
||||
if(OnWHo)delete_objects_on_ped(Player_PED);
|
||||
else Delete_Objects_BGuards();
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
|
||||
if(OnWHo)attach_object_to_player(pPlayer,1892875956,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
else Attach_Objects_BGuards(1892875956,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
AnimationPlayer(OnWHo,"amb@default","rake_default",Animationloop,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
if(GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS)){
|
||||
if(OnWHo)delete_objects_on_ped(Player_PED);
|
||||
else Delete_Objects_BGuards();
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
|
||||
if(OnWHo)attach_object_to_player(pPlayer, 2113166995,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
else Attach_Objects_BGuards( 2113166995,BONE_RIGHT_HAND, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000,0.0000,0);
|
||||
}
|
||||
AnimationPlayer(OnWHo,"amb@default","sledge_default",Animationloop,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
if(GetBit(MD_Misc_OptionsBitSet,MD_MISC_AUTO_ATTACH_TOOL_WITH_ANIMS)){
|
||||
if(OnWHo)delete_objects_on_ped(Player_PED);
|
||||
else Delete_Objects_BGuards();
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
if(OnWHo)attach_object_to_player(pPlayer, 1234161243,BONE_RIGHT_HAND, 0, 0.0061,-0.0086, 0.0000, 0.0000,5.9600,0);
|
||||
else Attach_Objects_BGuards( 1234161243,BONE_RIGHT_HAND, 0, 0.0061,-0.0086, 0.0000, 0.0000,5.9600,0);
|
||||
}
|
||||
AnimationPlayer(OnWHo,"amb@drill_create","drill_create",Animationloop,1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
if(OnWHo)delete_objects_on_ped(Player_PED);
|
||||
else Delete_Objects_BGuards();
|
||||
}
|
||||
}
|
||||
void MD_Anim_Heli_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"missbell4","land_on_heli",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 2) AnimationPlayer(OnWHo,"missfinale2d","kicked_from_heli",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 3) AnimationPlayer(OnWHo,"missfinale2p","bike2heli_idle2",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 4) AnimationPlayer(OnWHo,"missfinale2d","land_on_heli",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 5) AnimationPlayer(OnWHo,"missfinale2d","hang_on_heli",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 6) AnimationPlayer(OnWHo,"missfinale2d","heli_idle",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 7) AnimationPlayer(OnWHo,"missfinale2p","bike2heli_climb1",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 8) AnimationPlayer(OnWHo,"missfinale2p","bike2heli",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 9) AnimationPlayer(OnWHo,"missfinale2p_boat","boat2heli_p4",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
void MD_Anim_Bike_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"missfinale2d","jump_on_heli_alt",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 2)AnimationPlayer(OnWHo,"missfinale2d","kick_inside_heli",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 3)AnimationPlayer(OnWHo,"missfinale2p","leg_swing",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 4)AnimationPlayer(OnWHo,"missfinale2p_boat","boat2heli_p1",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 5)AnimationPlayer(OnWHo,"missfinale2p_boat","boat2heli_p2",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 6)AnimationPlayer(OnWHo,"missfinale2p_boat","boat2heli_p3",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
void MD_Anim_Sliding_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"amb@carry_create","walk_create",Animationloop,1); //Sliding forward
|
||||
else if(menu_item[SelectedItem].num_val == 2)AnimationPlayer(OnWHo,"amb@carry_idles","walk_idle_a",Animationloop,1); //Sliding far forward hand up
|
||||
else if(menu_item[SelectedItem].num_val == 3)AnimationPlayer(OnWHo,"amb@carry_idles","walk_idle_c",Animationloop,1); //Sliding far forward
|
||||
else if(menu_item[SelectedItem].num_val == 4)AnimationPlayer(OnWHo,"amb@flee_a","run_flee_lookaround_b",Animationloop,1); //Running away funny looking around
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
void MD_Anim_Swim_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"swimming","idle",Animationloop,1); //swimming waiting in water
|
||||
else if(menu_item[SelectedItem].num_val == 2)AnimationPlayer(OnWHo,"swimming","run",Animationloop,1); //Crawling
|
||||
else if(menu_item[SelectedItem].num_val == 3)AnimationPlayer(OnWHo,"swimming","walk",Animationloop,1); //schoolslag
|
||||
else if(menu_item[SelectedItem].num_val == 4)AnimationPlayer(OnWHo,"swimming","walk_strafe_b",Animationloop,1); //schoolslag
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
void MD_Anim_Sit_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"amb@default","preacher_default",Animationloop,1); //Sit hands moves up
|
||||
else if(menu_item[SelectedItem].num_val == 2)AnimationPlayer(OnWHo,"amb@comedy","cheer_b",Animationloop,1); //Sit hands moves up YAYAYAYA
|
||||
else if(menu_item[SelectedItem].num_val == 3)AnimationPlayer(OnWHo,"amb@comedy","clap_a",Animationloop,1); //Sit hands clapping YAYAYAYA
|
||||
else if(menu_item[SelectedItem].num_val == 4)AnimationPlayer(OnWHo,"amb@comedy","jeer_a",Animationloop,1); //Sitting go away YAYAYAYA
|
||||
else if(menu_item[SelectedItem].num_val == 5)AnimationPlayer(OnWHo,"amb@comedy","laugh_f",Animationloop,1); //Sitting Laughing YAYAYAYA
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
void MD_Anim_Pause_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1)AnimationPlayer(OnWHo,"amb@cold","pull_up_collar",Animationloop,1); //Standing having cold
|
||||
else if(menu_item[SelectedItem].num_val == 2)AnimationPlayer(OnWHo,"amb@cold","stand_blowhands",Animationloop,1); //Standing having cold
|
||||
else if(menu_item[SelectedItem].num_val == 3)AnimationPlayer(OnWHo,"amb@cold","stand_rubarms",Animationloop,1); //Standing having cold
|
||||
else if(menu_item[SelectedItem].num_val == 4)AnimationPlayer(OnWHo,"amb@default","bouncer_default",Animationloop,1); //Standing arms crossed
|
||||
else if(menu_item[SelectedItem].num_val == 5)AnimationPlayer(OnWHo,"amb@hurry_head","walk_b",Animationloop,1); //Looking around left right pretty fast (funny)
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
|
||||
}
|
||||
void MD_Anim_Sex_Strings_Action(int Player_PED){
|
||||
bool OnWHo;
|
||||
if(Player_PED == pPlayer)OnWHo = true;
|
||||
else OnWHo = false;
|
||||
if(menu_item[SelectedItem].num_val == 1) AnimationPlayer(OnWHo,"misscar_sex","f_blowjob_outro",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 2)AnimationPlayer(OnWHo,"misscar_sex","f_blowjob_intro_low",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 3)AnimationPlayer(OnWHo,"misscar_sex","f_blowjob_outro_low",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 4)AnimationPlayer(OnWHo,"misscar_sex","f_blowjob_loop",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 5)AnimationPlayer(OnWHo,"misscar_sex","f_handjob_loop",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 6)AnimationPlayer(OnWHo,"misscar_sex","f_handjob_loop_low",Animationloop,1);
|
||||
else if(menu_item[SelectedItem].num_val == 7)AnimationPlayer(OnWHo,"misscar_sex","f_sex_intro",Animationloop,0); //--> Changing this value to 1 will keep the animation on place (u can act with ut sticks to move it, 0 is perfect for this, animation returns to initial start point
|
||||
else if(menu_item[SelectedItem].num_val == 8)AnimationPlayer(OnWHo,"misscar_sex","f_sex_loop",Animationloop,0);
|
||||
else if(menu_item[SelectedItem].num_val == 9)AnimationPlayer(OnWHo,"misscar_sex","f_sex_loop_low",Animationloop,0);
|
||||
else if(menu_item[SelectedItem].num_val == 10)AnimationPlayer(OnWHo,"amb@dating","car_kiss_ds",Animationloop,1); //Car Kiss Driver seat
|
||||
else if(menu_item[SelectedItem].num_val == 11)AnimationPlayer(OnWHo,"amb@dating","car_kiss_ps",Animationloop,1); //Car Kiss Passenger seat
|
||||
else if(menu_item[SelectedItem].num_val == 12)AnimationPlayer(OnWHo,"amb@dating","player_kiss",Animationloop,1); //Player Kiss standing (attach to player)
|
||||
else if(menu_item[SelectedItem].num_val == 13)AnimationPlayer(OnWHo,"amb@pimps_pros","girl_hug",Animationloop,1); //kiss
|
||||
else if(menu_item[SelectedItem].num_val == 14){
|
||||
if(OnWHo)CLEAR_CHAR_TASKS_IMMEDIATELY(Player_PED);
|
||||
else Clear_Task_BGuards();
|
||||
}
|
||||
}
|
||||
96
Trident/MD_Strings/MDSTR_Army_Strings.c
Normal file
96
Trident/MD_Strings/MDSTR_Army_Strings.c
Normal file
@@ -0,0 +1,96 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
/**Specific Army Strings **/
|
||||
|
||||
void MD_Army_Weapon_Strings(int MenuItem_Index){
|
||||
char* weapon_string[13];
|
||||
weapon_string[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
weapon_string[1] = "< Desert Eagle >";
|
||||
weapon_string[2] = "< pump shotgun >";
|
||||
weapon_string[3] = "< MP5 >";
|
||||
weapon_string[4] = "< M4 >";
|
||||
weapon_string[5] = "< RPG >";
|
||||
weapon_string[6] = "< Sniper >";
|
||||
weapon_string[7] = "< grenade >";
|
||||
weapon_string[8] = "< molotov >";
|
||||
weapon_string[9] = "< baseball bat >";
|
||||
weapon_string[10] = "< knife >";
|
||||
weapon_string[11] = "< poolcue >";
|
||||
weapon_string[12] = "< ~COL_NET_4~Remove >";
|
||||
menu_item[MenuItem_Index].charval = weapon_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Army_Formation_Strings(int MenuItem_Index){
|
||||
char* Formation_String[6];
|
||||
Formation_String[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Formation_String[1] = "< Around / Facing u >";
|
||||
Formation_String[2] = "< Around / Facing same >";
|
||||
Formation_String[3] = "< Lined Up >";
|
||||
Formation_String[4] = "< Behind u >";
|
||||
Formation_String[5] = "< Behind u 2 >";
|
||||
menu_item[MenuItem_Index].charval = Formation_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Army_Spacing_Strings(int MenuItem_Index){
|
||||
char* Spacing_String[5];
|
||||
Spacing_String[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Spacing_String[1] = "< Close >";
|
||||
Spacing_String[2] = "< Medium >";
|
||||
Spacing_String[3] = "< Medium + >";
|
||||
Spacing_String[4] = "< Far >";
|
||||
menu_item[MenuItem_Index].charval = Spacing_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Army_Action_Strings(int MenuItem_Index){
|
||||
char* Action_String[7];
|
||||
Action_String[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Action_String[1] = "< Arm Your Vehicle >";
|
||||
Action_String[2] = "< Give Guards Helmet >";
|
||||
Action_String[3] = "< Take Guards Helmet >";
|
||||
Action_String[4] = "< Give Guards Godmode >";
|
||||
Action_String[5] = "< Take Guards Godmode >";
|
||||
Action_String[6] = "< Clear Tasks >";
|
||||
menu_item[MenuItem_Index].charval = Action_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Army_Attack_Strings(int MenuItem_Index){
|
||||
char* Attack_String[6];
|
||||
Attack_String[0] = "< Not used >"; //We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Attack_String[1] = "< Attack Now >";
|
||||
Attack_String[2] = "< Attack Teleported >";
|
||||
Attack_String[3] = "< Delete 1 Guard >";
|
||||
Attack_String[4] = "< Delete All Guards >";
|
||||
Attack_String[5] = "< Clear Tasks >";
|
||||
//Attack_String[6] = "< Fire Guard Weapon >";
|
||||
menu_item[MenuItem_Index].charval = Attack_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Army_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover 5
|
||||
else if(MenuItem_Index == 6)return MD_Army_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 7)return MD_Army_Formation_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 8)return MD_Army_Spacing_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 9)return MD_Army_Action_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10)return MD_Army_Attack_Strings(MenuItem_Index);
|
||||
//Sub Attachments 11
|
||||
//Sub Animations 12
|
||||
//Jumpover 13
|
||||
else if(MenuItem_Index == 14)return MD_Ped_Model_Uniform_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15)return MD_Ped_Model_Gang_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16)return MD_Ped_Model_Stripper_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17)return MD_Ped_Model_Medical_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 18)return MD_Ped_Model_Business_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 19)return MD_Ped_Model_Cluck_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 20)return MD_Ped_Model_Funny_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 21)return MD_Ped_Model_SingleP_Strings(MenuItem_Index);
|
||||
|
||||
}
|
||||
|
||||
229
Trident/MD_Strings/MDSTR_Attachment_Strings.c
Normal file
229
Trident/MD_Strings/MDSTR_Attachment_Strings.c
Normal file
@@ -0,0 +1,229 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
void MD_Attach_Cube_Strings(int MenuItem_Index){ //DONE
|
||||
char* Cube_String[9];
|
||||
Cube_String[0] = "< ERROR >";
|
||||
Cube_String[1] = "< Red >";
|
||||
Cube_String[2] = "< Orange >";
|
||||
Cube_String[3] = "< Yellow >";
|
||||
Cube_String[4] = "< Green >";
|
||||
Cube_String[5] = "< Blue >";
|
||||
Cube_String[6] = "< Purple >";
|
||||
Cube_String[7] = "< Cube Man >";
|
||||
Cube_String[8] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Cube_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Hand_Strings(int MenuItem_Index){//DONE
|
||||
char* Hand_string[19];
|
||||
Hand_string[0] = "< ERROR >";
|
||||
Hand_string[1] = "< Umbrella 1 >";
|
||||
Hand_string[2] = "< Umbrella 2 >";
|
||||
Hand_string[3] = "< Umbrella 3 >";
|
||||
Hand_string[4] = "< GunUmbrella 1 >";
|
||||
Hand_string[5] = "< GunUmbrella 2 >";
|
||||
Hand_string[6] = "< GunUmbrella 3 >";
|
||||
Hand_string[7] = "< Shopping bag >";
|
||||
Hand_string[8] = "< Picolo >";
|
||||
Hand_string[9] = "< Barrel Hand >";
|
||||
Hand_string[10] = "< Glowgun >";
|
||||
Hand_string[11] = "< Lightsaber >";
|
||||
Hand_string[12] = "< Lasergun >";
|
||||
Hand_string[13] = "< Rocketgun >";
|
||||
Hand_string[14] = "< Turbo M4 >";
|
||||
Hand_string[15] = "< TurboDeagle >";
|
||||
Hand_string[16] = "< Disco Launcher >";
|
||||
Hand_string[17] = "< Saxplayer >";
|
||||
Hand_string[18] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Hand_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Tool_Strings(int MenuItem_Index){//DONE
|
||||
char* Hand_string[21];
|
||||
Hand_string[0] = "< ERROR >";
|
||||
Hand_string[1] = "< Cane >";
|
||||
Hand_string[2] = "< Cane 2 >";
|
||||
Hand_string[3] = "< Slegehammer >";
|
||||
Hand_string[4] = "< Pickaxe >";
|
||||
Hand_string[5] = "< Broom >";
|
||||
Hand_string[6] = "< Rake >";
|
||||
Hand_string[7] = "< Spade >";
|
||||
Hand_string[8] = "< Wrench >";
|
||||
Hand_string[9] = "< SAW >";
|
||||
Hand_string[10] = "< Axe >";
|
||||
Hand_string[11] = "< Jackhammer >";
|
||||
Hand_string[12] = "< Pickaxe >";
|
||||
Hand_string[13] = "< rake >";
|
||||
Hand_string[14] = "< Big Hammer >";
|
||||
Hand_string[15] = "< Nailgun >";
|
||||
Hand_string[16] = "< Hammer >";
|
||||
Hand_string[17] = "< Drill >";
|
||||
Hand_string[18] = "< Broom >";
|
||||
Hand_string[19] = "< Laptop >";
|
||||
Hand_string[20] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Hand_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Light_Strings(int MenuItem_Index){//DONE
|
||||
char* Body_string[12];
|
||||
Body_string[0] = "< ERROR >";
|
||||
Body_string[1] = "< Red Body Glow >";
|
||||
Body_string[2] = "< Yellow Body Glow >";
|
||||
Body_string[3] = "< White Body Glow>";
|
||||
Body_string[4] = "< Face Glow >";
|
||||
Body_string[5] = "< Blue Neon Underneath) >";
|
||||
Body_string[6] = "< White Neon(Underneath) >";
|
||||
Body_string[7] = "< Purple Flash(Underneath) >";
|
||||
Body_string[8] = "< Green Flash(Underneath) >";
|
||||
Body_string[9] = "< Red Hands >";
|
||||
Body_string[10] = "< Blue Hands >";
|
||||
Body_string[11] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Body_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Building_Strings(int MenuItem_Index){//DONE
|
||||
char* Body_string[3];
|
||||
Body_string[0] = "< ERROR >";
|
||||
Body_string[1] = "< Shark Building >";
|
||||
Body_string[2] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Body_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Fire_Strings(int MenuItem_Index){//DONE
|
||||
char* Body_string[7];
|
||||
Body_string[0] = "< ERROR >";
|
||||
Body_string[1] = "< Flamer 1 >";
|
||||
Body_string[2] = "< Flamer 2 >";
|
||||
Body_string[3] = "< Flamer 3 >";
|
||||
Body_string[4] = "< Flames >";
|
||||
Body_string[5] = "< Fireball >";
|
||||
Body_string[6] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Body_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Feet_Strings(int MenuItem_Index){//DONE
|
||||
char* Body_string[5];
|
||||
Body_string[0] = "< ERROR >";
|
||||
Body_string[1] = "< Sneakers >";
|
||||
Body_string[2] = "< Green Neon >";
|
||||
Body_string[3] = "< Pink Neon >";
|
||||
Body_string[4] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Body_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Head_Strings(int MenuItem_Index){//DONE
|
||||
char* Head_String[18];
|
||||
Head_String[0] = "< ERROR >";
|
||||
Head_String[1] = "< Ugly Face >";
|
||||
Head_String[2] = "< Welder Mask >";
|
||||
Head_String[3] = "< Purple Flasher >";
|
||||
Head_String[4] = "< Green Flasher >";
|
||||
Head_String[5] = "< Torch Head >";
|
||||
Head_String[6] = "< Discoball >";
|
||||
Head_String[7] = "< Conehead >";
|
||||
Head_String[8] = "< PornTV >";
|
||||
Head_String[9] = "< Devils Horns >";
|
||||
Head_String[10] = "< NightVision >";
|
||||
Head_String[11] = "< Hammerhead >";
|
||||
Head_String[12] = "< Pinokkio >";
|
||||
Head_String[13] = "< Red Hat >";
|
||||
Head_String[14] = "< Yellow Hat >";
|
||||
Head_String[15] = "< Purple Hat >";
|
||||
Head_String[16] = "< Black Hat >";
|
||||
Head_String[17] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Bust_Strings(int MenuItem_Index){//DONE
|
||||
char* Head_String[10];
|
||||
Head_String[0] = "< ERROR >";
|
||||
Head_String[1] = "< Bust/Head 1 >";
|
||||
Head_String[2] = "< Bust/Head 2 >";
|
||||
Head_String[3] = "< Bust/Head 3 >";
|
||||
Head_String[4] = "< Bust/Head 4 >";
|
||||
Head_String[5] = "< Bust/Head 5 >";
|
||||
Head_String[6] = "< Gold Angel >"; //3 --> OK
|
||||
Head_String[7] = "< Egypt Statue 1 >"; //5 --> OK
|
||||
Head_String[8] = "< Egypt Statue 2 >"; //6 --> OK
|
||||
Head_String[9] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Tribe_Strings(int MenuItem_Index){//DONE
|
||||
char* Head_String[8];
|
||||
Head_String[0] = "< ERROR >";
|
||||
Head_String[1] = "< Tribe 1 >";
|
||||
Head_String[2] = "< Tribe 2 >";
|
||||
Head_String[3] = "< Tribe 3 >";
|
||||
Head_String[4] = "< Tribe 4 >";
|
||||
Head_String[5] = "< TribeMan 1 >";
|
||||
Head_String[6] = "< TribeMan 2 >";
|
||||
Head_String[7] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Funny_Strings(int MenuItem_Index){//DONE
|
||||
char* Head_String[10];
|
||||
Head_String[0] = "< ERROR >";
|
||||
Head_String[1] = "< Have a Dick >";
|
||||
Head_String[2] = "< Have a Huge Dick >";
|
||||
Head_String[3] = "< Leprechaun (on Crotch) >";
|
||||
Head_String[4] = "< Stop !!! >";
|
||||
Head_String[5] = "< HippoSuit >";
|
||||
Head_String[6] = "< Shower Backpack>";
|
||||
Head_String[7] = "< Devils Wings >";
|
||||
Head_String[8] = "< Devils Wings xl >";
|
||||
Head_String[9] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Birds_Strings(int MenuItem_Index){//DONE
|
||||
char* Head_String[5];
|
||||
Head_String[0] = "< ERROR >";
|
||||
Head_String[1] = "< Pigeon on Shoulder >";
|
||||
Head_String[2] = "< 2 Pigeons >";
|
||||
Head_String[3] = "< Birdman >";
|
||||
Head_String[4] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Attach_Effects_Strings(int MenuItem_Index){//DONE
|
||||
char* Head_String[7];
|
||||
Head_String[0] = "< ERROR >";
|
||||
Head_String[1] = "< White Smoke >";
|
||||
Head_String[2] = "< Red Smoke >";
|
||||
Head_String[3] = "< Shower >";
|
||||
Head_String[4] = "< Sparks >";
|
||||
Head_String[5] = "< Darkness >";
|
||||
Head_String[6] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Attach_Vegetation_Strings(int MenuItem_Index){//DONE
|
||||
char* Head_String[8];
|
||||
Head_String[0] = "< ERROR >";
|
||||
Head_String[1] = "< Big And Bushy >";
|
||||
Head_String[2] = "< Flower Pot >";
|
||||
Head_String[3] = "< Scotchpine >";
|
||||
Head_String[4] = "< AG Tree >";
|
||||
Head_String[5] = "< Beech Tree >";
|
||||
Head_String[6] = "< Live Oak >";
|
||||
Head_String[7] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Attach_Strings (int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
//Bool
|
||||
else if(MenuItem_Index == 7) return MD_Attach_Cube_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 8) return MD_Attach_Hand_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 9) return MD_Attach_Tool_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return MD_Attach_Light_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_Attach_Building_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return MD_Attach_Fire_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return MD_Attach_Feet_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return MD_Attach_Head_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15) return MD_Attach_Bust_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16) return MD_Attach_Tribe_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17) return MD_Attach_Funny_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 18) return MD_Attach_Birds_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 19) return MD_Attach_Effects_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 20) return MD_Attach_Vegetation_Strings(MenuItem_Index);
|
||||
}
|
||||
584
Trident/MD_Strings/MDSTR_ChangePlayer_Strings.c
Normal file
584
Trident/MD_Strings/MDSTR_ChangePlayer_Strings.c
Normal file
@@ -0,0 +1,584 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//General change player strings - Coded one time Pplayer and admin
|
||||
|
||||
void MD_Ped_Model_Uniform_Strings(int MenuItem_Index){
|
||||
char* Uniform_string[14];
|
||||
Uniform_string[0] = "< Fat Cop >";
|
||||
Uniform_string[1] = "< N.O.O.S.E (Crouched) >";
|
||||
Uniform_string[2] = "< N.O.O.S.E >";
|
||||
Uniform_string[3] = "< FBI >";
|
||||
Uniform_string[4] = "< Normal Cop >";
|
||||
Uniform_string[5] = "< Traffic Cop >";
|
||||
Uniform_string[6] = "< Fire man >";
|
||||
Uniform_string[7] = "< Fire Chief >";
|
||||
Uniform_string[8] = "< Security >";
|
||||
Uniform_string[9] = "< Armoured >";
|
||||
Uniform_string[10] = "< Club Fit >";
|
||||
Uniform_string[11] = "< Prisoner >";
|
||||
Uniform_string[12] = "< Prisoner Old >";
|
||||
Uniform_string[13] = "< Cluck >";
|
||||
menu_item[MenuItem_Index].charval = Uniform_string[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Ped_Model_Gang_Strings(int MenuItem_Index){
|
||||
char* Gang_string[4];
|
||||
Gang_string[0] = "< Normal >";
|
||||
Gang_string[1] = "< Normal + Coat >";
|
||||
Gang_string[2] = "< Experienced >";
|
||||
Gang_string[3] = "< Boss >";
|
||||
menu_item[MenuItem_Index].charval = Gang_string[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Ped_Model_Medical_Strings(int MenuItem_Index){
|
||||
char* Medical_string[5];
|
||||
Medical_string[0] = "< Male Doctor >";
|
||||
Medical_string[1] = "< Female Doctor >";
|
||||
Medical_string[2] = "< Female Nurse >";
|
||||
Medical_string[3] = "< Scrub Doctor >";
|
||||
Medical_string[4] = "< Dodgy Doctor >";
|
||||
menu_item[MenuItem_Index].charval = Medical_string[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Ped_Model_Stripper_Strings(int MenuItem_Index){
|
||||
char* Stripper_string[2];
|
||||
Stripper_string[0] = "< White >";
|
||||
Stripper_string[1] = "< Black >";
|
||||
menu_item[MenuItem_Index].charval = Stripper_string[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Ped_Model_Business_Strings(int MenuItem_Index){
|
||||
char* Business_String[9];
|
||||
Business_String[0] = "< Business 1 >";
|
||||
Business_String[1] = "< Business 2 >";
|
||||
Business_String[2] = "< Business 3 >";
|
||||
Business_String[3] = "< Business 4 >";
|
||||
Business_String[4] = "< Business 5 >";
|
||||
Business_String[5] = "< Business 6 >";
|
||||
Business_String[6] = "< Business 7 >";
|
||||
Business_String[7] = "< Business 8 >";
|
||||
Business_String[8] = "< Business 9 >";
|
||||
menu_item[MenuItem_Index].charval = Business_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Ped_Model_Cluck_Strings(int MenuItem_Index){
|
||||
char* cluck_string[3];
|
||||
cluck_string[0] = "< Female >";
|
||||
cluck_string[1] = "< Male >";
|
||||
menu_item[MenuItem_Index].charval = cluck_string[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Ped_Model_Funny_Strings(int MenuItem_Index){
|
||||
char* Funny_String[2];
|
||||
Funny_String[0] = "< Gay Middle Aged >";
|
||||
Funny_String[1] = "< Gay Young >";
|
||||
menu_item[MenuItem_Index].charval = Funny_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Ped_Model_SingleP_Strings(int MenuItem_Index){
|
||||
char* Various_String[9];
|
||||
Various_String[0] = "< Lil Jacob >";
|
||||
Various_String[1] = "< Brucie >";
|
||||
Various_String[2] = "< Roman >";
|
||||
Various_String[3] = "< Dwayne >";
|
||||
Various_String[4] = "< Badman >";
|
||||
Various_String[5] = "< Dmitri >";
|
||||
Various_String[6] = "< Michelle >";
|
||||
Various_String[7] = "< Packie >";
|
||||
Various_String[8] = "< Playboy >";
|
||||
menu_item[MenuItem_Index].charval = Various_String[menu_item[MenuItem_Index].num_val - 1];
|
||||
}
|
||||
void MD_Texture_Head_Strings(int MenuItem_Index){
|
||||
char* Text_Head_String[5];
|
||||
Text_Head_String[0] = "< REMOVE >";
|
||||
Text_Head_String[1] = "< Superhero Female >";
|
||||
Text_Head_String[2] = "< Superhero Male >";
|
||||
Text_Head_String[3] = "< Jamaican >";
|
||||
Text_Head_String[4] = "< Jamaican 2 >";
|
||||
menu_item[MenuItem_Index].charval = Text_Head_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Texture_Body_Strings(int MenuItem_Index){
|
||||
char* Text_Body_String[7];
|
||||
Text_Body_String[0] = "< Variations 1 >";
|
||||
Text_Body_String[1] = "< Variations 2 >";
|
||||
Text_Body_String[2] = "< Variations 3 >";
|
||||
Text_Body_String[3] = "< Variations 4 >";
|
||||
Text_Body_String[4] = "< Variations 5 >";
|
||||
Text_Body_String[5] = "< Variations 6 >";
|
||||
Text_Body_String[6] = "< Variations 7 >";
|
||||
menu_item[MenuItem_Index].charval = Text_Body_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
|
||||
//Order
|
||||
void Player_Changer_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
//Sco
|
||||
//Function
|
||||
//Bool
|
||||
if(MenuItem_Index == 9)return MD_Texture_Head_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10)return MD_Texture_Body_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11)return MD_Ped_Model_Uniform_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12)return MD_Ped_Model_Gang_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13)return MD_Ped_Model_Stripper_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14)return MD_Ped_Model_Medical_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15)return MD_Ped_Model_Business_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16)return MD_Ped_Model_Cluck_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17)return MD_Ped_Model_Funny_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 18)return MD_Ped_Model_SingleP_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 19)return MD_Stride_Strings(MenuItem_Index);
|
||||
}
|
||||
//Order
|
||||
|
||||
void AllModelsItem6(int MenuItem_Index){
|
||||
char* Model_String[46];
|
||||
Model_String[0] = "< IG_ANNA >";
|
||||
Model_String[1] = "< IG_ANTHONY >";
|
||||
Model_String[2] = "< IG_BADMAN >";
|
||||
Model_String[3] = "< IG_BERNIE_CRANE >";
|
||||
Model_String[4] = "< IG_BLEDAR >";
|
||||
Model_String[5] = "< IG_BRIAN >";
|
||||
Model_String[6] = "< IG_BULGARIN >";
|
||||
Model_String[7] = "< IG_CHARISE >";
|
||||
Model_String[8] = "< IG_CHARLIEUC >";
|
||||
Model_String[9] = "< IG_CLARENCE >";
|
||||
Model_String[10] = "< IG_DARDAN >";
|
||||
Model_String[11] = "< IG_DARKO >";
|
||||
Model_String[12] = "< IG_DERRICK_MC >";
|
||||
Model_String[13] = "< IG_DMITRI >";
|
||||
Model_String[14] = "< IG_DWAYNE >";
|
||||
Model_String[15] = "< IG_EDDIELOW >";
|
||||
Model_String[16] = "< IG_FAUSTIN >";
|
||||
Model_String[17] = "< IG_FRANCIS_MC >";
|
||||
Model_String[18] = "< IG_FRENCH_TOM >";
|
||||
Model_String[19] = "< IG_GORDON >";
|
||||
Model_String[20] = "< IG_GRACIE >";
|
||||
Model_String[21] = "< IG_HOSSAN >";
|
||||
Model_String[22] = "< IG_ILYENA >";
|
||||
Model_String[23] = "< IG_ISAAC >";
|
||||
Model_String[24] = "< IG_IVAN >";
|
||||
Model_String[25] = "< IG_JAY >";
|
||||
Model_String[26] = "< IG_JASON >";
|
||||
Model_String[27] = "< IG_JEFF >";
|
||||
Model_String[28] = "< IG_JIMMY >";
|
||||
Model_String[29] = "< IG_JOHNNYBIKER >";
|
||||
Model_String[30] = "< IG_KATEMC >";
|
||||
Model_String[31] = "< IG_KENNY >";
|
||||
Model_String[32] = "< IG_LILJACOB >";
|
||||
Model_String[33] = "< IG_LILJACOBW >";
|
||||
Model_String[34] = "< IG_LUCA >";
|
||||
Model_String[35] = "< IG_LUIS >";
|
||||
Model_String[36] = "< IG_MALLORIE >";
|
||||
Model_String[37] = "< IG_MAMC >";
|
||||
Model_String[38] = "< IG_MANNY >";
|
||||
Model_String[39] = "< IG_MARNIE >";
|
||||
Model_String[40] = "< IG_MEL >";
|
||||
Model_String[41] = "< IG_MICHAEL >";
|
||||
Model_String[42] = "< IG_MICHELLE >";
|
||||
Model_String[43] = "< IG_MICKEY >";
|
||||
Model_String[44] = "< IG_PACKIE_MC >";
|
||||
Model_String[45] = "< IG_PATHOS >";
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem7(int MenuItem_Index){
|
||||
char* Model_String[11];
|
||||
Model_String[0] = "< IG_PETROVIC >";
|
||||
Model_String[1] = "< IG_PHIL_BELL >";
|
||||
Model_String[2] = "< IG_PLAYBOY_X >";
|
||||
Model_String[3] = "< IG_RAY_BOCCINO >";
|
||||
Model_String[4] = "< IG_RICKY >";
|
||||
Model_String[5] = "< IG_ROMAN >";
|
||||
Model_String[6] = "< IG_ROMANW >";
|
||||
Model_String[7] = "< IG_SARAH >";
|
||||
Model_String[8] = "< IG_TUNA >";
|
||||
Model_String[9] = "< IG_VINNY_SPAZ >";
|
||||
Model_String[10] = "< IG_VLAD >";
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem8(int MenuItem_Index){
|
||||
char* Model_String[44];
|
||||
Model_String[0] = "< M_Y_GAFR_LO_01 >";
|
||||
Model_String[1] = "< M_Y_GAFR_LO_02 >";
|
||||
Model_String[2] = "< M_Y_GAFR_HI_01 >";
|
||||
Model_String[3] = "< M_Y_GAFR_HI_02 >";
|
||||
Model_String[4] = "< M_Y_GALB_LO_01 >";
|
||||
Model_String[5] = "< M_Y_GALB_LO_02 >";
|
||||
Model_String[6] = "< M_Y_GALB_LO_03 >";
|
||||
Model_String[7] = "< M_Y_GALB_LO_04 >";
|
||||
Model_String[8] = "< M_M_GBIK_LO_03 >";
|
||||
Model_String[9] = "< M_Y_GBIK_HI_01 >";
|
||||
Model_String[10] = "< M_Y_GBIK_HI_02 >";
|
||||
Model_String[11] = "< M_Y_GBIK02_LO_02 >";
|
||||
Model_String[12] = "< M_Y_GIRI_LO_01 >";
|
||||
Model_String[13] = "< M_Y_GIRI_LO_02 >";
|
||||
Model_String[14] = "< M_Y_GIRI_LO_03 >";
|
||||
Model_String[15] = "< M_M_GJAM_HI_01 >";
|
||||
Model_String[16] = "< M_M_GJAM_HI_02 >";
|
||||
Model_String[17] = "< M_M_GJAM_HI_03 >";
|
||||
Model_String[18] = "< M_Y_GJAM_LO_01 >";
|
||||
Model_String[19] = "< M_Y_GJAM_LO_02 >";
|
||||
Model_String[20] = "< M_Y_GKOR_LO_01 >";
|
||||
Model_String[21] = "< M_Y_GKOR_LO_02 >";
|
||||
Model_String[22] = "< M_Y_GLAT_LO_01 >";
|
||||
Model_String[23] = "< M_Y_GLAT_LO_02 >";
|
||||
Model_String[24] = "< M_Y_GLAT_HI_01 >";
|
||||
Model_String[25] = "< M_Y_GLAT_HI_02 >";
|
||||
Model_String[26] = "< M_Y_GMAF_HI_01 >";
|
||||
Model_String[27] = "< M_Y_GMAF_HI_02 >";
|
||||
Model_String[28] = "< M_Y_GMAF_LO_01 >";
|
||||
Model_String[29] = "< M_Y_GMAF_LO_02 >";
|
||||
Model_String[30] = "< M_O_GRUS_HI_01 >";
|
||||
Model_String[31] = "< M_Y_GRUS_LO_01 >";
|
||||
Model_String[32] = "< M_Y_GRUS_LO_02 >";
|
||||
Model_String[33] = "< M_Y_GRUS_HI_02 >";
|
||||
Model_String[34] = "< M_M_GRU2_HI_01 >";
|
||||
Model_String[35] = "< M_M_GRU2_HI_02 >";
|
||||
Model_String[36] = "< M_M_GRU2_LO_02 >";
|
||||
Model_String[37] = "< M_Y_GRU2_LO_01 >";
|
||||
Model_String[38] = "< M_M_GTRI_HI_01 >";
|
||||
Model_String[39] = "< M_M_GTRI_HI_02 >";
|
||||
Model_String[40] = "< M_Y_GTRI_LO_01 >";
|
||||
Model_String[41] = "< M_Y_GTRI_LO_02 >";
|
||||
Model_String[42] = "< M_Y_GBIK_LO_01 >";
|
||||
Model_String[43] = "< M_Y_GBIK_LO_02 >";
|
||||
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem9(int MenuItem_Index){
|
||||
char* Model_String[50];
|
||||
Model_String[0] = "< M_M_ALCOHOLIC >";
|
||||
Model_String[1] = "< M_M_ARMOURED >";
|
||||
Model_String[2] = "< M_M_BUSDRIVER >";
|
||||
Model_String[3] = "< M_M_CHINATOWN_01 >";
|
||||
Model_String[4] = "< M_M_CRACKHEAD >";
|
||||
Model_String[5] = "< M_M_DOC_SCRUBS_01 >";
|
||||
Model_String[6] = "< M_M_DOCTOR_01 >";
|
||||
Model_String[7] = "< M_M_DODGYDOC >";
|
||||
Model_String[8] = "< M_M_EECOOK >";
|
||||
Model_String[9] = "< M_M_ENFORCER >";
|
||||
Model_String[10] = "< M_M_FACTORY_01 >";
|
||||
Model_String[11] = "< M_M_FATCOP_01 >";
|
||||
Model_String[12] = "< M_M_FBI >";
|
||||
Model_String[13] = "< M_M_FEDCO >";
|
||||
Model_String[14] = "< M_M_FIRECHIEF >";
|
||||
Model_String[15] = "< M_M_GUNNUT_01 >";
|
||||
Model_String[16] = "< M_M_HELIPILOT_01 >";
|
||||
Model_String[17] = "< M_M_HPORTER_01 >";
|
||||
Model_String[18] = "< M_M_KOREACOOK_01 >";
|
||||
Model_String[19] = "< M_M_LAWYER_01 >";
|
||||
Model_String[20] = "< M_M_LAWYER_02 >";
|
||||
Model_String[21] = "< M_M_LOONYBLACK >";
|
||||
Model_String[22] = "< M_M_PILOT >";
|
||||
Model_String[23] = "< M_M_PINDUS_01 >";
|
||||
Model_String[24] = "< M_M_POSTAL_01 >";
|
||||
Model_String[25] = "< M_M_SAXPLAYER_01 >";
|
||||
Model_String[26] = "< M_M_SECURITYMAN >";
|
||||
Model_String[27] = "< M_M_SELLER_01 >";
|
||||
Model_String[28] = "< M_M_SHORTORDER >";
|
||||
Model_String[29] = "< M_M_STREETFOOD_01 >";
|
||||
Model_String[30] = "< M_M_SWEEPER >";
|
||||
Model_String[31] = "< M_M_TAXIDRIVER >";
|
||||
Model_String[32] = "< M_M_TELEPHONE >";
|
||||
Model_String[33] = "< M_M_TENNIS >";
|
||||
Model_String[34] = "< M_M_TRAIN_01 >";
|
||||
Model_String[35] = "< M_M_TRAMPBLACK >";
|
||||
Model_String[36] = "< M_M_TRUCKER_01 >";
|
||||
Model_String[37] = "< M_O_JANITOR >";
|
||||
Model_String[38] = "< M_O_HOTEL_FOOT >";
|
||||
Model_String[39] = "< M_O_MPMOBBOSS >";
|
||||
Model_String[40] = "< M_Y_AIRWORKER >";
|
||||
Model_String[41] = "< M_Y_BARMAN_01 >";
|
||||
Model_String[42] = "< M_Y_BOUNCER_01 >";
|
||||
Model_String[43] = "< M_Y_BOUNCER_02 >";
|
||||
Model_String[44] = "< M_Y_BOWL_01 >";
|
||||
Model_String[45] = "< M_Y_BOWL_02 >";
|
||||
Model_String[46] = "< M_Y_CHINVEND_01 >";
|
||||
Model_String[47] = "< M_Y_CLUBFIT >";
|
||||
Model_String[48] = "< M_Y_CONSTRUCT_01 >";
|
||||
Model_String[49] = "< M_Y_CONSTRUCT_02 >";
|
||||
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem10(int MenuItem_Index){
|
||||
char* Model_String[37];
|
||||
Model_String[0] = "< M_Y_CONSTRUCT_03 >";
|
||||
Model_String[1] = "< M_Y_COP >";
|
||||
Model_String[2] = "< M_Y_COP_TRAFFIC >";
|
||||
Model_String[3] = "< M_Y_COURIER >";
|
||||
Model_String[4] = "< M_Y_COWBOY_01 >";
|
||||
Model_String[5] = "< M_Y_DEALER >";
|
||||
Model_String[6] = "< M_Y_DRUG_01 >";
|
||||
Model_String[7] = "< M_Y_FF_BURGER_R >";
|
||||
Model_String[8] = "< M_Y_FF_CLUCK_R >";
|
||||
Model_String[9] = "< M_Y_FF_RSCAFE >";
|
||||
Model_String[10] = "< M_Y_FF_TWCAFE >";
|
||||
Model_String[11] = "< M_Y_FF_WSPIZZA_R >";
|
||||
Model_String[12] = "< M_Y_FIREMAN >";
|
||||
Model_String[13] = "< M_Y_GARBAGE >";
|
||||
Model_String[14] = "< M_Y_GOON_01 >";
|
||||
Model_String[15] = "< M_Y_GYMGUY_01 >";
|
||||
Model_String[16] = "< M_Y_MECHANIC_02 >";
|
||||
Model_String[17] = "< M_Y_MODO >";
|
||||
Model_String[18] = "< M_Y_NHELIPILOT >";
|
||||
Model_String[19] = "< M_Y_PERSEUS >";
|
||||
Model_String[20] = "< M_Y_PINDUS_01 >";
|
||||
Model_String[21] = "< M_Y_PINDUS_02 >";
|
||||
Model_String[22] = "< M_Y_PINDUS_03 >";
|
||||
Model_String[23] = "< M_Y_PMEDIC >";
|
||||
Model_String[24] = "< M_Y_PRISON >";
|
||||
Model_String[25] = "< M_Y_PRISONAOM >";
|
||||
Model_String[26] = "< M_Y_ROMANCAB >";
|
||||
Model_String[27] = "< M_Y_RUNNER >";
|
||||
Model_String[28] = "< M_Y_SHOPASST_01 >";
|
||||
Model_String[29] = "< M_Y_STROOPER >";
|
||||
Model_String[30] = "< M_Y_SWAT >";
|
||||
Model_String[31] = "< M_Y_SWORDSWALLOW >";
|
||||
Model_String[32] = "< M_Y_THIEF >";
|
||||
Model_String[33] = "< M_Y_VALET >";
|
||||
Model_String[34] = "< M_Y_VENDOR >";
|
||||
Model_String[35] = "< M_Y_FRENCHTOM >";
|
||||
Model_String[36] = "< M_Y_JIM_FITZ >";
|
||||
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem11(int MenuItem_Index){
|
||||
char* Model_String[16];
|
||||
Model_String[0] = "< F_O_MAID_01 >";
|
||||
Model_String[1] = "< F_O_BINCO >";
|
||||
Model_String[2] = "< F_Y_BANK_01 >";
|
||||
Model_String[3] = "< F_Y_DOCTOR_01 >";
|
||||
Model_String[4] = "< F_Y_GYMGAL_01 >";
|
||||
Model_String[5] = "< F_Y_FF_BURGER_R >";
|
||||
Model_String[6] = "< F_Y_FF_CLUCK_R >";
|
||||
Model_String[7] = "< F_Y_FF_RSCAFE >";
|
||||
Model_String[8] = "< F_Y_FF_TWCAFE >";
|
||||
Model_String[9] = "< F_Y_FF_WSPIZZA_R >";
|
||||
Model_String[10] = "< F_Y_HOOKER_01 >";
|
||||
Model_String[11] = "< F_Y_HOOKER_03 >";
|
||||
Model_String[12] = "< F_Y_NURSE >";
|
||||
Model_String[13] = "< F_Y_STRIPPERC01 >";
|
||||
Model_String[14] = "< F_Y_STRIPPERC02 >";
|
||||
Model_String[15] = "< F_Y_WAITRESS_01 >";
|
||||
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem12(int MenuItem_Index){
|
||||
char* Model_String[87];
|
||||
Model_String[0] = "< M_Y_CONSTRUCT_03 >";
|
||||
Model_String[1] = "< M_Y_COP >";
|
||||
Model_String[2] = "< M_Y_COP_TRAFFIC >";
|
||||
Model_String[3] = "< M_Y_COURIER >";
|
||||
Model_String[4] = "< M_Y_COWBOY_01 >";
|
||||
Model_String[5] = "< M_Y_DEALER >";
|
||||
Model_String[6] = "< M_Y_DRUG_01 >";
|
||||
Model_String[7] = "< M_Y_FF_BURGER_R >";
|
||||
Model_String[8] = "< M_Y_FF_CLUCK_R >";
|
||||
Model_String[9] = "< M_Y_FF_RSCAFE >";
|
||||
Model_String[10] = "< M_Y_FF_TWCAFE >";
|
||||
Model_String[11] = "< M_Y_FF_WSPIZZA_R >";
|
||||
Model_String[12] = "< M_Y_FIREMAN >";
|
||||
Model_String[13] = "< M_Y_GARBAGE >";
|
||||
Model_String[14] = "< M_Y_GOON_01 >";
|
||||
Model_String[15] = "< M_Y_GYMGUY_01 >";
|
||||
Model_String[16] = "< M_Y_MECHANIC_02 >";
|
||||
Model_String[17] = "< M_Y_MODO >";
|
||||
Model_String[18] = "< M_Y_NHELIPILOT >";
|
||||
Model_String[19] = "< M_Y_PERSEUS >";
|
||||
Model_String[20] = "< M_Y_PINDUS_01 >";
|
||||
Model_String[21] = "< M_Y_PINDUS_02 >";
|
||||
Model_String[22] = "< M_Y_PINDUS_03 >";
|
||||
Model_String[23] = "< M_Y_PMEDIC >";
|
||||
Model_String[24] = "< M_Y_PRISON >";
|
||||
Model_String[25] = "< M_Y_PRISONAOM >";
|
||||
Model_String[26] = "< M_Y_ROMANCAB >";
|
||||
Model_String[27] = "< M_Y_RUNNER >";
|
||||
Model_String[28] = "< M_Y_SHOPASST_01 >";
|
||||
Model_String[29] = "< M_Y_STROOPER >";
|
||||
Model_String[30] = "< M_Y_SWAT >";
|
||||
Model_String[31] = "< M_Y_SWORDSWALLOW >";
|
||||
Model_String[32] = "< M_Y_THIEF >";
|
||||
Model_String[33] = "< M_Y_VALET >";
|
||||
Model_String[34] = "< M_Y_VENDOR >";
|
||||
Model_String[35] = "< M_Y_FRENCHTOM >";
|
||||
Model_String[36] = "< M_Y_JIM_FITZ >";
|
||||
Model_String[37] = "< M_Y_TOURIST_02 >";
|
||||
Model_String[38] = "< M_Y_TOUGH_05 >";
|
||||
Model_String[39] = "< M_Y_STREETPUNK_05 >";
|
||||
Model_String[40] = "< M_Y_STREETPUNK_04 >";
|
||||
Model_String[41] = "< M_Y_STREETPUNK_02 >";
|
||||
Model_String[42] = "< M_Y_STREETBLK_03 >";
|
||||
Model_String[43] = "< M_Y_STREETBLK_02 >";
|
||||
Model_String[44] = "< M_Y_STREET_04 >";
|
||||
Model_String[45] = "< M_Y_STREET_01 >";
|
||||
Model_String[46] = "< M_Y_STREET_03 >";
|
||||
Model_String[47] = "< M_Y_SOHO_01 >";
|
||||
Model_String[48] = "< M_Y_SKATEBIKE_01 >";
|
||||
Model_String[49] = "< M_Y_SHADY_02 >";
|
||||
Model_String[50] = "< M_Y_QUEENSBRIDGE >";
|
||||
Model_String[51] = "< M_Y_PVILLBO_03 >";
|
||||
Model_String[52] = "< M_Y_PVILLBO_02 >";
|
||||
Model_String[53] = "< M_Y_PVILLBO_01 >";
|
||||
Model_String[54] = "< M_Y_PRICH_01 >";
|
||||
Model_String[55] = "< M_Y_PQUEENS_01 >";
|
||||
Model_String[56] = "< M_Y_PORIENT_01 >";
|
||||
Model_String[57] = "< M_Y_PMANHAT_02 >";
|
||||
Model_String[58] = "< M_Y_PMANHAT_01 >";
|
||||
Model_String[59] = "< M_Y_PLATIN_03 >";
|
||||
Model_String[60] = "< M_Y_PLATIN_02 >";
|
||||
Model_String[61] = "< M_Y_PLATIN_01 >";
|
||||
Model_String[62] = "< M_Y_PJERSEY_01 >";
|
||||
Model_String[63] = "< M_Y_PHARLEM_01 >";
|
||||
Model_String[64] = "< M_Y_PHARBRON_01 >";
|
||||
Model_String[65] = "< M_Y_PCOOL_02 >";
|
||||
Model_String[66] = "< M_Y_PCOOL_01 >";
|
||||
Model_String[67] = "< M_Y_PBRONX_01 >";
|
||||
Model_String[68] = "< M_Y_LEASTSIDE_01 >";
|
||||
Model_String[69] = "< M_Y_HASID_01 >";
|
||||
Model_String[70] = "< M_Y_HARLEM_04 >";
|
||||
Model_String[71] = "< M_Y_HARLEM_02 >";
|
||||
Model_String[72] = "< M_Y_HARLEM_01 >";
|
||||
Model_String[73] = "< M_O_STREET_01 >";
|
||||
Model_String[74] = "< M_O_SUITED >";
|
||||
Model_String[75] = "< M_Y_BOHO_01 >";
|
||||
Model_String[76] = "< M_Y_DODGY_01 >";
|
||||
Model_String[77] = "< M_Y_DORK_02 >";
|
||||
Model_String[78] = "< M_Y_DOWNTOWN_01 >";
|
||||
Model_String[79] = "< M_Y_DOWNTOWN_02 >";
|
||||
Model_String[80] = "< M_Y_DOWNTOWN_03 >";
|
||||
Model_String[81] = "< M_Y_GAYYOUNG >";
|
||||
Model_String[82] = "< M_Y_GENSTREET_11 >";
|
||||
Model_String[83] = "< M_Y_GENSTREET_16 >";
|
||||
Model_String[84] = "< M_Y_GENSTREET_20 >";
|
||||
Model_String[85] = "< M_Y_GENSTREET_34 >";
|
||||
Model_String[86] = "< M_Y_HARDMAN_01 >";
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem13(int MenuItem_Index){
|
||||
char* Model_String[73];
|
||||
Model_String[0] = "< IG_AHMAD >";
|
||||
Model_String[1] = "< IG_ARMANDO >";
|
||||
Model_String[2] = "< IG_ARMSDEALER >";
|
||||
Model_String[3] = "< IG_ARNAUD >";
|
||||
Model_String[4] = "< IG_BANKER >";
|
||||
Model_String[5] = "< IG_BRUCIE2 >";
|
||||
Model_String[6] = "< IG_BULGARIN2 >";
|
||||
Model_String[7] = "< IG_DAISY >";
|
||||
Model_String[8] = "< IG_DEEJAY >";
|
||||
Model_String[9] = "< IG_DESSIE >";
|
||||
Model_String[10] = "< IG_EVAN >";
|
||||
Model_String[11] = "< IG_GRACIE2 >";
|
||||
Model_String[12] = "< IG_HENRIQUE >";
|
||||
Model_String[13] = "< IG_ISSAC2 >";
|
||||
Model_String[14] = "< IG_JOHNNY2 >";
|
||||
Model_String[15] = "< IG_LUIS2 >";
|
||||
Model_String[16] = "< IG_MARGOT >";
|
||||
Model_String[17] = "< IG_MORI_K >";
|
||||
Model_String[18] = "< IG_MR_SANTOS >";
|
||||
Model_String[19] = "< IG_OYVEY >";
|
||||
Model_String[20] = "< IG_NIKO >";
|
||||
Model_String[21] = "< IG_OYVEY >";
|
||||
Model_String[22] = "< IG_ROCCO >";
|
||||
Model_String[23] = "< IG_TAHIR >";
|
||||
Model_String[24] = "< IG_TIMUR >";
|
||||
Model_String[25] = "< IG_TONY >";
|
||||
Model_String[26] = "< IG_TRAMP2 >";
|
||||
Model_String[27] = "< IG_TRIAD >";
|
||||
Model_String[28] = "< IG_TROY >";
|
||||
Model_String[29] = "< IG_VIC >";
|
||||
Model_String[30] = "< IG_VICGIRL >";
|
||||
Model_String[31] = "< IG_VINCE >";
|
||||
Model_String[32] = "< IG_YUSEF >";
|
||||
Model_String[33] = "< F_Y_ASIANCLUB_01 >";
|
||||
Model_String[34] = "< F_Y_ASIANCLUB_02 >";
|
||||
Model_String[35] = "< F_Y_CLUBEURO_01 >";
|
||||
Model_String[36] = "< F_Y_DOMGIRL_01 >";
|
||||
Model_String[37] = "< F_Y_EMIDTOWN_02 >";
|
||||
Model_String[38] = "< F_Y_HOSTESS >";
|
||||
Model_String[39] = "< F_Y_HOTCHICK_01 >";
|
||||
Model_String[40] = "< F_Y_HOTCHICK_02 >";
|
||||
Model_String[41] = "< F_Y_HOTCHICK_03 >";
|
||||
Model_String[42] = "< F_Y_PGIRL_01 >";
|
||||
Model_String[43] = "< F_Y_PGIRL_02 >";
|
||||
Model_String[44] = "< M_M_E2MAF_01 >";
|
||||
Model_String[45] = "< M_M_E2MAF_02 >";
|
||||
Model_String[46] = "< M_Y_BATHROOM >";
|
||||
Model_String[47] = "< M_Y_CIADLC_01 >";
|
||||
Model_String[49] = "< M_Y_CIADLC_02 >";
|
||||
Model_String[50] = "< M_Y_GAYBLACK_01 >";
|
||||
Model_String[51] = "< M_Y_GAYDANCER >";
|
||||
Model_String[52] = "< M_Y_FIGHTCLUB_01 >";
|
||||
Model_String[53] = "< M_Y_FIGHTCLUB_02 >";
|
||||
Model_String[54] = "< M_Y_FIGHTCLUB_03 >";
|
||||
Model_String[55] = "< M_Y_FIGHTCLUB_04 >";
|
||||
Model_String[56] = "< M_Y_FIGHTCLUB_05 >";
|
||||
Model_String[57] = "< M_Y_FIGHTCLUB_06 >";
|
||||
Model_String[58] = "< M_Y_FIGHTCLUB_07 >";
|
||||
Model_String[59] = "< M_Y_FIGHTCLUB_08 >";
|
||||
Model_String[60] = "< F_Y_CLOEPARKER >";
|
||||
Model_String[61] = "< F_Y_DANCER_01 >";
|
||||
Model_String[62] = "< F_Y_JONI >";
|
||||
Model_String[63] = "< M_M_MAFUNION >";
|
||||
Model_String[64] = "< M_Y_CELEBBLOG >";
|
||||
Model_String[65] = "< M_Y_EXSPORTS >";
|
||||
Model_String[66] = "< M_Y_MOBPARTY >";
|
||||
Model_String[67] = "< M_Y_PAPARAZZI_01 >";
|
||||
Model_String[68] = "< IG_BLUEBROS >";
|
||||
Model_String[69] = "< IG_JACKSON >";
|
||||
Model_String[70] = "< IG_NAPOLI >";
|
||||
Model_String[71] = "< IG_ROYAL >";
|
||||
Model_String[72] = "< IG_SPADE >";
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
void AllModelsItem14(int MenuItem_Index){
|
||||
char* Model_String[26];
|
||||
Model_String[0] = "< IG_NIKO >";
|
||||
Model_String[1] = "< IG_ASHLEYA >";
|
||||
Model_String[2] = "< IG_CLAY >";
|
||||
Model_String[3] = "< IG_MALC >";
|
||||
Model_String[4] = "< IG_BILLY >";
|
||||
Model_String[5] = "< IG_JIM_FITZ >";
|
||||
Model_String[6] = "< IG_BRIANJ >";
|
||||
Model_String[7] = "< IG_EVAN >";
|
||||
Model_String[8] = "< IG_TERRY >";
|
||||
Model_String[9] = "< IG_DAVE_GROSSMAN >";
|
||||
Model_String[10] = "< IG_LOSTGIRL >";
|
||||
Model_String[11] = "< IG_BILLYPRISON >";
|
||||
Model_String[12] = "< IG_MARTA >";
|
||||
Model_String[13] = "< IG_DESEAN >";
|
||||
Model_String[14] = "< IG_MATTHEWS >";
|
||||
Model_String[15] = "< IG_MCCORNISH >";
|
||||
Model_String[16] = "< IG_PGIRL_01 >";
|
||||
Model_String[17] = "< IG_PGIRL_02 >";
|
||||
Model_String[18] = "< IG_ROMAN_E1 >";
|
||||
Model_String[19] = "< IG_STROOPER >";
|
||||
Model_String[20] = "< F_Y_BIKESTRIPPER_01 >";
|
||||
Model_String[21] = "< F_Y_EMIDTOWN_01 >";
|
||||
Model_String[22] = "< M_M_SPRETZER >";
|
||||
Model_String[23] = "< M_Y_CIADLC_01 >";
|
||||
Model_String[24] = "< M_O_HISPANIC_01 >";
|
||||
Model_String[25] = "< M_Y_HISPANIC_01 >";
|
||||
menu_item[MenuItem_Index].charval = Model_String[(menu_item[MenuItem_Index].num_val - 1)];
|
||||
}
|
||||
|
||||
|
||||
void Player_MoreChanger_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover
|
||||
//Sco
|
||||
//Function
|
||||
//Bool
|
||||
else if(MenuItem_Index == 9)return MD_Texture_Body_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10)return AllModelsItem6(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11)return AllModelsItem7(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12)return AllModelsItem8(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13)return AllModelsItem9(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14)return AllModelsItem10(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15)return AllModelsItem11(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16)return AllModelsItem12(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17)return AllModelsItem13(MenuItem_Index);
|
||||
else if(MenuItem_Index == 18)return AllModelsItem14(MenuItem_Index);
|
||||
else if(MenuItem_Index == 20)return MD_Stride_Strings(MenuItem_Index);
|
||||
}//super nice
|
||||
115
Trident/MD_Strings/MDSTR_ContentBuilder_Strings.c
Normal file
115
Trident/MD_Strings/MDSTR_ContentBuilder_Strings.c
Normal file
@@ -0,0 +1,115 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
void Content_Builder_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover//5
|
||||
else if(MenuItem_Index == 6){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 7){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 8){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 9){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 10){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 11){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 12){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 13){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 14){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
else if(MenuItem_Index == 15){
|
||||
char* Ccbuilder_String[6];
|
||||
Ccbuilder_String[0] = "< ERROR >";
|
||||
Ccbuilder_String[1] = "< Item 1 >";
|
||||
Ccbuilder_String[2] = "< Item 2 >";
|
||||
Ccbuilder_String[3] = "< Item 3 >";
|
||||
Ccbuilder_String[4] = "< Item 4 >";
|
||||
Ccbuilder_String[5] = "< Item 5 >";
|
||||
menu_item[MenuItem_Index].charval = Ccbuilder_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
64
Trident/MD_Strings/MDSTR_Navigator_Strings.c
Normal file
64
Trident/MD_Strings/MDSTR_Navigator_Strings.c
Normal file
@@ -0,0 +1,64 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//!Navigator Specific Strings (Others can be found in >Generallu used strings)
|
||||
|
||||
void Unfriendly_Strings(int MenuItem_Index){
|
||||
char* String[7];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = Print_Kill_Feed ? "< ~COL_NET_1~Killfeed on screen ~w~>" : "< Killfeed on screen >";
|
||||
String[2] = "< Burn Vehicle >";
|
||||
String[3] = "< Break Vehicle >";
|
||||
String[4] = "< Kill Player >";
|
||||
String[5] = "< Kick Player >";
|
||||
String[6] = "< Freak Out >";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void Canonball_Strings(int MenuItem_Index){
|
||||
char* String[13];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = "< ANNIHILATOR >";
|
||||
String[2] = (Episode == 2) ? "< BUZZARD >" : "< MAVERICK >";
|
||||
String[3] = "< SULTANRS >";
|
||||
String[4] = "< NRG900 >";
|
||||
String[5] = "< AMBULANCE >";
|
||||
String[6] = "< FBI >";
|
||||
String[7] = "< FIRETRUCK >";
|
||||
String[8] = "< NOOSE >";
|
||||
String[9] = "< POLICE >";
|
||||
String[10] = "< POLICE2 >";
|
||||
String[11] = "< POLPATRIOT >";
|
||||
String[12] = "< PSTOCKADE >";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void WeaponVehicle_Strings(int MenuItem_Index){
|
||||
char* String[4];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = MD_Weapon_Vehicle ? "< ~COL_NET_1~Rocket Vehicle ~w~>" : "< Rocket Vehicle >";
|
||||
String[2] = Devils_Rapid_Fire_Heli ? "< ~COL_NET_1~Rapid Fire Heli ~w~>" : "< Rapid Fire Heli >";
|
||||
//String[2] = GetBit(MD_Misc_OptionsBitSet, MD_MISC_NATHANS_RAPID_FIRE_HELI) ? "< ~COL_NET_1~Rapid Fire Heli ~w~>" : "< Rapid Fire Heli >";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Navigator_Strings(uint MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 6) return Player_Help_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 7) return Helper_Loop_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 9) return Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return Physics_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return Unfriendly_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return Canonball_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return MD_VehOpt_Pplayer_Forces_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return MD_VehOpt_Pplayer_Heading_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15) return MD_VehOpt_Pplayer_Trans_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16) return WeaponVehicle_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17) return Help_Strings(MenuItem_Index);
|
||||
}
|
||||
130
Trident/MD_Strings/MDSTR_Net_Vehicle_Options_Strings.c
Normal file
130
Trident/MD_Strings/MDSTR_Net_Vehicle_Options_Strings.c
Normal file
@@ -0,0 +1,130 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
void MD_Net_VehOpt_QuickSpawn_Strings(int MenuItem_Index){
|
||||
char* Vehicle[14];
|
||||
Vehicle[1] = "~PAD_LEFT~ COMET ~PAD_RIGHT~";
|
||||
Vehicle[2] = "~PAD_LEFT~ TURISMO ~PAD_RIGHT~";
|
||||
Vehicle[3] = "~PAD_LEFT~ INFERNUS ~PAD_RIGHT~";
|
||||
Vehicle[4] = "~PAD_LEFT~ SUPERGT ~PAD_RIGHT~";
|
||||
Vehicle[5] = "~PAD_LEFT~ SULTANRS ~PAD_RIGHT~";
|
||||
Vehicle[6] = "~PAD_LEFT~ ORACLE ~PAD_RIGHT~";
|
||||
Vehicle[7] = "~PAD_LEFT~ PATRIOT ~PAD_RIGHT~";
|
||||
Vehicle[8] = "~PAD_LEFT~ FBI ~PAD_RIGHT~";
|
||||
Vehicle[9] = "~PAD_LEFT~ BUS ~PAD_RIGHT~";
|
||||
Vehicle[10] = "~PAD_LEFT~ SQUALO ~PAD_RIGHT~";
|
||||
Vehicle[11] = "~PAD_LEFT~ NRG900 ~PAD_RIGHT~";
|
||||
Vehicle[12] = "~PAD_LEFT~ MAVERICK ~PAD_RIGHT~";
|
||||
Vehicle[13] = "~PAD_LEFT~ ANNIHILATOR ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Vehicle[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Net_VehOpt_General_Strings(int MenuItem_Index){
|
||||
char* general_strings[8];
|
||||
//general_strings[1] = IS_CHARS_VEHICLE_LOCKED(PLAYER_CHAR(players[ChangeNetPlayer].id)) ? "~PAD_LEFT~ ~COL_NET_1~Lock ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Lock ~PAD_RIGHT~";
|
||||
general_strings[1] = "~PAD_LEFT~ Fix & Wash ~PAD_RIGHT~";
|
||||
general_strings[2] = "~PAD_LEFT~ Flip ~PAD_RIGHT~";
|
||||
general_strings[3] = "~PAD_LEFT~ Delete ~PAD_RIGHT~";
|
||||
general_strings[4] = "~PAD_LEFT~ Try to damage proof ~PAD_RIGHT~";
|
||||
general_strings[5] = "~PAD_LEFT~ Make visible ~PAD_RIGHT~";
|
||||
general_strings[6] = "~PAD_LEFT~ Make invisible ~PAD_RIGHT~";
|
||||
general_strings[7] = "~PAD_LEFT~ Clone ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = general_strings[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_Net_VehOpt_Pplayer_ActiveOption_Strings(int MenuItem_Index)
|
||||
{
|
||||
////10 Vehicle Helper / Visibility / Drive - Walk on water / Stick to ground / Autospawn Boat in water
|
||||
char* physics_strings[4];
|
||||
//physics_strings[1] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_INVINCIBLE) ? "~PAD_LEFT~ ~COL_NET_1~Invincible ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Invincible ~PAD_RIGHT~";
|
||||
//physics_strings[2] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_INVISIBLE) ? "~PAD_LEFT~ ~COL_NET_1~Invisible ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Invisible ~PAD_RIGHT~";
|
||||
physics_strings[1] = DOES_OBJECT_EXIST(drive_water[iPlayer]) ? "~PAD_LEFT~ ~COL_NET_1~Drive on water ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Drive on water ~PAD_RIGHT~" ;
|
||||
physics_strings[2] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY) ? "~PAD_LEFT~ ~COL_NET_1~Desolidify ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Desolidify ~PAD_RIGHT~";;
|
||||
physics_strings[3] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_AUTO_BOAT) ? "~PAD_LEFT~ ~COL_NET_1~Auto-spawn boat ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Auto-spawn boat ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = physics_strings[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void MD_Net_VehOpt_SpawnSettings_Strings(int MenuItem_Index)
|
||||
{
|
||||
////9 Upgrades / Damage proof / Sirens
|
||||
char* Playeroption_example1[6];
|
||||
Playeroption_example1[1] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ALL_UPGRADES) ? "~PAD_LEFT~ ~COL_NET_1~All upgrades ~w~~PAD_RIGHT~" : "~PAD_LEFT~ All upgrades ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_INVINCIBLE) ? "~PAD_LEFT~ ~COL_NET_1~Invincible ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Invincible ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_SIREN) ? "~PAD_LEFT~ ~COL_NET_1~Sirens ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Sirens ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_RAINBOW) ? "~PAD_LEFT~ ~COL_NET_1~Rainbow Car ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Rainbow Car ~PAD_RIGHT~";
|
||||
Playeroption_example1[5] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_ENGINE) ? "~PAD_LEFT~ ~COL_NET_1~Engine ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Engine ~PAD_RIGHT~";
|
||||
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
|
||||
void MD_Net_VehOpt_Action_Strings(int MenuItem_Index)
|
||||
{
|
||||
char* Playeroption_example1[5];
|
||||
Playeroption_example1[1] = "~PAD_LEFT~ Duplicate ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = "~PAD_LEFT~ Freeze position ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = "~PAD_LEFT~ Un-freeze position ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = "~PAD_LEFT~ Break ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
//Misc: Flymod, Player inferno, Weapons + armour, Remove armour, Explode self, Spawn money
|
||||
}
|
||||
|
||||
void MD_Net_VehOpt_Throw_Strings(const int MenuItem_Index)
|
||||
{
|
||||
char* Throw_Vehicle_String[7];
|
||||
Throw_Vehicle_String[1] = "~PAD_LEFT~ Up ~PAD_RIGHT~";
|
||||
Throw_Vehicle_String[2] = "~PAD_LEFT~ Down ~PAD_RIGHT~";
|
||||
Throw_Vehicle_String[3] = "~PAD_LEFT~ Left ~PAD_RIGHT~";
|
||||
Throw_Vehicle_String[4] = "~PAD_LEFT~ Right ~PAD_RIGHT~";
|
||||
Throw_Vehicle_String[5] = "~PAD_LEFT~ Forwards ~PAD_RIGHT~";
|
||||
Throw_Vehicle_String[6] = "~PAD_LEFT~ Backwards ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Throw_Vehicle_String[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
|
||||
void MD_Net_VehOpt_Heading_Strings(const int MenuItem_Index)
|
||||
{
|
||||
////Speedboost, Reverse + Speedboost, Turn Right, Turn Left,
|
||||
char* Heading_String[6];
|
||||
Heading_String[1] = "~PAD_LEFT~ Speedboost ~PAD_RIGHT~";
|
||||
Heading_String[2] = "~PAD_LEFT~ Reverse + Speedboost ~PAD_RIGHT~";
|
||||
Heading_String[3] = "~PAD_LEFT~ Reverse ~PAD_RIGHT~";
|
||||
Heading_String[4] = "~PAD_LEFT~ Turn Left ~PAD_RIGHT~";
|
||||
Heading_String[5] = "~PAD_LEFT~ Turn Right ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Heading_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Net_VehOpt_HelperLoop_Strings(const int MenuItem_Index) //"Vehicle helpers"
|
||||
{
|
||||
char* VehHelper_Loop_strings[3];
|
||||
VehHelper_Loop_strings[1] = (GetBit(autoFixVehBitSet,players[ChangeNetPlayer].id)) ? "~PAD_LEFT~ ~COL_NET_1~Auto fix ~PAD_RIGHT~" : "~PAD_LEFT~ Auto fix ~PAD_RIGHT~";
|
||||
VehHelper_Loop_strings[2] = (GetBit(autoFlipVehBitSet,players[ChangeNetPlayer].id)) ? "~PAD_LEFT~ ~COL_NET_1~Auto flip ~PAD_RIGHT~" : "~PAD_LEFT~ Auto flip ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = VehHelper_Loop_strings[menu_item[MenuItem_Index].num_val];
|
||||
/*autoFlipVehBitSet; //covers all players! :D - Nathan
|
||||
uint autoFixVehBitSet; /*/
|
||||
}
|
||||
|
||||
|
||||
void MD_VehOpt_NetPlayer_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover 5
|
||||
//Sub Spawner 6
|
||||
//Sub Addons 7
|
||||
//Sub Upgrades 8
|
||||
else if(MenuItem_Index == 9) return MD_Net_VehOpt_QuickSpawn_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return MD_Net_VehOpt_General_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_Net_VehOpt_Heading_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return MD_Net_VehOpt_HelperLoop_Strings(MenuItem_Index); //Vehicle helpers...
|
||||
else if(MenuItem_Index == 13) return MD_Net_VehOpt_Throw_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return MD_Net_VehOpt_SpawnSettings_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15) return MD_Net_VehOpt_Action_Strings(MenuItem_Index);
|
||||
}
|
||||
35
Trident/MD_Strings/MDSTR_Netplayer_Options_Strings.c
Normal file
35
Trident/MD_Strings/MDSTR_Netplayer_Options_Strings.c
Normal file
@@ -0,0 +1,35 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
|
||||
void MD_Helper_Loop_Strings(int MenuItem_Index){
|
||||
char* Helper_Loop[3];
|
||||
Helper_Loop[0] = "< Not Used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Helper_Loop[1] = "< Enable >";
|
||||
Helper_Loop[2] = "< Disable >";
|
||||
menu_item[MenuItem_Index].charval = Helper_Loop[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_NetPlayer_Options_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover 5
|
||||
else if(MenuItem_Index == 7)return MD_Helper_Loop_Strings(MenuItem_Index);
|
||||
}
|
||||
|
||||
/*
|
||||
char* Invincibility_Strings[3];
|
||||
Invincibility_Strings[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
|
||||
if(godmode)Invincibility_Strings[1] = "< Godmode (Orange)>";
|
||||
else(godmode)Invincibility_Strings[1] = "< Godmode (White) >";
|
||||
if(armour)Invincibility_Strings[2] = "< Auto Armour (Orange) >";
|
||||
Invincibility_Strings[2] = "< Auto Armour (White) >";
|
||||
menu_item[MenuItem_Index].charval = Invincibility_Strings[menu_item[MenuItem_Index].num_val];
|
||||
*/
|
||||
47
Trident/MD_Strings/MDSTR_Netplayer_unfriendly.c
Normal file
47
Trident/MD_Strings/MDSTR_Netplayer_unfriendly.c
Normal file
@@ -0,0 +1,47 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
|
||||
void MD_Net_Unfr_Telport_Strings(int MenuItem_Index){
|
||||
char* Unfriendly[6];
|
||||
Unfriendly[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Unfriendly[1] = "< Airport Building >";
|
||||
Unfriendly[2] = "< Barge Basement >";
|
||||
Unfriendly[3] = "< Subway >";
|
||||
Unfriendly[4] = "< Isolate Building >";
|
||||
Unfriendly[5] = "< Statue Cup >";
|
||||
menu_item[MenuItem_Index].charval = Unfriendly[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Net_Unfr_FC_Strings(int MenuItem_Index){
|
||||
char* Unfriendly[7];
|
||||
Unfriendly[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Unfriendly[1] = "< Patriot >";
|
||||
Unfriendly[2] = "< Romero >";
|
||||
Unfriendly[3] = "< Limo TBOGT >";
|
||||
Unfriendly[4] = "< Shafter 1 TBOGT >";
|
||||
Unfriendly[5] = "< Shafter 2 TBOGT>";
|
||||
Unfriendly[6] = "< Mix All >";
|
||||
menu_item[MenuItem_Index].charval = Unfriendly[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Net_Unfr_Obj_Strings(int MenuItem_Index){
|
||||
char* Unfriendly[6];
|
||||
Unfriendly[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Unfriendly[1] = "< V6 >";
|
||||
Unfriendly[2] = "< V7 >";
|
||||
Unfriendly[3] = "< V8 >";
|
||||
Unfriendly[4] = "< V11 >";
|
||||
Unfriendly[5] = "< Laglight >";
|
||||
menu_item[MenuItem_Index].charval = Unfriendly[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Net_Unfr_Lag_Strings(int MenuItem_Index){
|
||||
char* Unfriendly[4];
|
||||
Unfriendly[0] = "< Not used >";//We dont have an itemline 0, please keep numbers same as itemlines
|
||||
Unfriendly[1] = "< Annihilator >";
|
||||
Unfriendly[2] = "< Tugboats >";
|
||||
Unfriendly[3] = "< Firetrucks >";
|
||||
menu_item[MenuItem_Index].charval = Unfriendly[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
76
Trident/MD_Strings/MDSTR_Player_Options_Strings.c
Normal file
76
Trident/MD_Strings/MDSTR_Player_Options_Strings.c
Normal file
@@ -0,0 +1,76 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MD TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//!Player options Specific Strings (Others can be found in >Generallu used strings)
|
||||
|
||||
void MD_PO_Protect_Strings(int MenuItem_Index){
|
||||
char* protect_strings[4];
|
||||
protect_strings[1] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_GODMODE) ? "< ~COL_NET_1~Godmode ~w~>" : "< Godmode >";
|
||||
protect_strings[2] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_JUGGERNAUT) ? "< ~COL_NET_1~Juggernaut ~w~>" : "< Juggernaut >";
|
||||
protect_strings[3] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_NEVER_WANTED) ? "< ~COL_NET_1~Ignored by police ~w~>" : "< Ignored by police >";
|
||||
menu_item[MenuItem_Index].charval = protect_strings[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_PO_Visibility_Strings(int MenuItem_Index){
|
||||
char* Visibility_Strings[6];
|
||||
Visibility_Strings[1] = !IS_CHAR_VISIBLE(pPlayer) ? "< ~COL_NET_1~Invisible ~BLIP_63~~w~>" : "< Invisible ~BLIP_63~ >";
|
||||
Visibility_Strings[2] = !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE) ? "< ~COL_NET_1~Invisible ~BLIP_79~ ~w~>" : "< Invisible ~BLIP_79~ >";
|
||||
Visibility_Strings[3] = !IS_CHAR_VISIBLE(pPlayer) && !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVISIBLE) ? "< ~COL_NET_1~Invisible ~BLIP_63~ + ~BLIP_79~ ~w~>" : "< Invisible ~BLIP_63~ + ~BLIP_79~ >";
|
||||
Visibility_Strings[4] = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP) ? "< ~COL_NET_1~Ninja Mode ~BLIP_63~~w~>" : "< Ninja Mode ~BLIP_63~ >";
|
||||
Visibility_Strings[5] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_REMOVE_BLIP) ? "< ~COL_NET_1~Ninja Mode ~BLIP_63~ + ~BLIP_79~ ~w~>" : "< Ninja Mode ~BLIP_63~ + ~BLIP_79~ >";
|
||||
menu_item[MenuItem_Index].charval = Visibility_Strings[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_PO_Power_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[5];
|
||||
Playeroption_example1[1] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_RUN) ? "< ~COL_NET_1~Super run ~w~>" : "< Super run >";
|
||||
Playeroption_example1[2] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_JUMP) ? "< ~COL_NET_1~Super jump ~w~>" : "< Super jump >";
|
||||
Playeroption_example1[3] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_SUPER_PUNCH) ? "< ~COL_NET_1~Super punch ~w~>" : "< Super punch >";
|
||||
Playeroption_example1[4] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_FORCE_FIELD) ? "< ~COL_NET_1~Force field ~w~>" : "< Force field >";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_PO_NameColor_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[19];
|
||||
Playeroption_example1[0] = "< Black >";
|
||||
Playeroption_example1[1] = "< Black ~w~>";
|
||||
Playeroption_example1[2] = "< ~COL_NET_1~ Orange ~w~>";
|
||||
Playeroption_example1[3] = "< ~COL_NET_2~ Purple ~w~>";
|
||||
Playeroption_example1[4] = "< ~COL_NET_3~ Green ~w~>";
|
||||
Playeroption_example1[5] = "< ~COL_NET_4~ Red ~w~>";
|
||||
Playeroption_example1[6] = "< ~COL_NET_5~ Yellow ~w~>";
|
||||
Playeroption_example1[7] = "< ~COL_NET_6~ L.Blue ~w~>";
|
||||
Playeroption_example1[8] = "< ~COL_NET_7~ Pink ~w~>";
|
||||
Playeroption_example1[9] = "< ~COL_NET_8~ Peach ~w~>";
|
||||
Playeroption_example1[10] = "< ~COL_NET_9~ D.Green ~w~>";
|
||||
Playeroption_example1[11] = "< ~COL_NET_10~ D.Blue ~w~>";
|
||||
Playeroption_example1[12] = "< ~COL_NET_11~ L.Pink ~w~>";
|
||||
Playeroption_example1[13] = "< ~COL_NET_12~ L.Blue ~w~>";
|
||||
Playeroption_example1[14] = "< ~COL_NET_13~ Shit ~w~>";
|
||||
Playeroption_example1[15] = "< ~COL_NET_14~ L.Green ~w~>";
|
||||
Playeroption_example1[16] = "< ~COL_NET_15~ Grey ~w~>";
|
||||
Playeroption_example1[17] = "< ~COL_NET_16~ Brown ~w~>";
|
||||
Playeroption_example1[18] = "< RESET >";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
//Show window / Set Player 1 - Set Player 2
|
||||
|
||||
void MD_Player_Options_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover 5
|
||||
else if(MenuItem_Index == 6) return MD_PO_Protect_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 7) return Player_Help_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 8) return MD_PO_Weapon_Option_Strings(MenuItem_Index);
|
||||
|
||||
else if(MenuItem_Index == 9) return MD_PO_Visibility_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return MD_PO_Power_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_PO_Physics_Strings(MenuItem_Index);
|
||||
|
||||
else if(MenuItem_Index == 17) return MD_PO_NameColor_Strings(MenuItem_Index);
|
||||
//else if(MenuItem_Index == 20) return MD_PO_PlayerInfo_Strings(MenuItem_Index);
|
||||
}
|
||||
190
Trident/MD_Strings/MDSTR_Rotation_Strings.c
Normal file
190
Trident/MD_Strings/MDSTR_Rotation_Strings.c
Normal file
@@ -0,0 +1,190 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
void Rotation_Speed_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[6];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< Slow >";
|
||||
Veh_Rot_String[2] = "< Medium >";
|
||||
Veh_Rot_String[3] = "< Fast >";
|
||||
Veh_Rot_String[4] = "< Superfast >";
|
||||
Veh_Rot_String[5] = "< ~COL_NET_4~Stop ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Distance_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[5];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< Close >";
|
||||
Veh_Rot_String[2] = "< Medium >";
|
||||
Veh_Rot_String[3] = "< Far >";
|
||||
Veh_Rot_String[4] = "< Centered >";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Position_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[4];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< 90 DEGREES >";
|
||||
Veh_Rot_String[2] = "< 180 DEGREES >";
|
||||
Veh_Rot_String[3] = "< 360 DEGREES >";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Height_Strings(int MenuItem_Index){
|
||||
char* Uniform_string[8];
|
||||
Uniform_string[0] = "< ERROR >";
|
||||
Uniform_string[1] = "< -1.5 >";
|
||||
Uniform_string[2] = "< -1.0 >";
|
||||
Uniform_string[3] = "< -0.5 >";
|
||||
Uniform_string[4] = "< DEFAULT >";
|
||||
Uniform_string[5] = "< 0.5 >";
|
||||
Uniform_string[6] = "< 1.0 >";
|
||||
Uniform_string[7] = "< 2.0 >";
|
||||
menu_item[MenuItem_Index].charval = Uniform_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Vehicle_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[11];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< Sultan >";
|
||||
Veh_Rot_String[2] = "< Sultan RS >";
|
||||
Veh_Rot_String[3] = "< Turismo >";
|
||||
Veh_Rot_String[4] = "< COMET >";
|
||||
Veh_Rot_String[5] = "< INFERNUS >";
|
||||
Veh_Rot_String[6] = "< SENTINEL >";
|
||||
Veh_Rot_String[7] = "< TRASH >";
|
||||
Veh_Rot_String[8] = "< STRETCH >";
|
||||
Veh_Rot_String[9] = "< VOODOO >";
|
||||
Veh_Rot_String[10] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Emergency_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[10];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< Ambulance >";
|
||||
Veh_Rot_String[2] = "< F.B.I >";
|
||||
Veh_Rot_String[3] = "< Noose Cruiser >";
|
||||
Veh_Rot_String[4] = "< Police Cruiser >";
|
||||
Veh_Rot_String[5] = "< Police Patrol >";
|
||||
Veh_Rot_String[6] = "< Noose Patriot >";
|
||||
Veh_Rot_String[7] = "< Police Stockade >";
|
||||
Veh_Rot_String[8] = "< Fire Trucks >";
|
||||
Veh_Rot_String[9] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Truck_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[11];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< BIFF >";
|
||||
Veh_Rot_String[2] = "< BOXVILLE >";
|
||||
Veh_Rot_String[3] = "< FLATBED >";
|
||||
Veh_Rot_String[4] = "< MRTASTY >";
|
||||
Veh_Rot_String[5] = "< PHANTOM >";
|
||||
Veh_Rot_String[6] = "< RIPLEY >";
|
||||
Veh_Rot_String[7] = "< STEED >";
|
||||
Veh_Rot_String[8] = "< FEROCI2 >";
|
||||
Veh_Rot_String[9] = "< FORKLIFT >";
|
||||
Veh_Rot_String[10] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Bike_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[9];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< BOBBER >";
|
||||
Veh_Rot_String[2] = "< FAGGIO >";
|
||||
Veh_Rot_String[3] = "< HELLFURY >";
|
||||
Veh_Rot_String[4] = "< NRG900 >";
|
||||
Veh_Rot_String[5] = "< PCJ >";
|
||||
Veh_Rot_String[6] = "< SANCHEZ >";
|
||||
Veh_Rot_String[7] = "< ZOMBIEB >";
|
||||
Veh_Rot_String[8] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Boat_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[10];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< DINGHY >";
|
||||
Veh_Rot_String[2] = "< JETMAX >";
|
||||
Veh_Rot_String[3] = "< MARQUIS >";
|
||||
Veh_Rot_String[4] = "< PREDATOR >";
|
||||
Veh_Rot_String[5] = "< REEFER >";
|
||||
Veh_Rot_String[6] = "< SQUALO >";
|
||||
Veh_Rot_String[7] = "< TROPIC >";
|
||||
Veh_Rot_String[8] = "< TUGA >";
|
||||
Veh_Rot_String[9] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Heli_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[6];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< ANNIHILATOR >";
|
||||
Veh_Rot_String[2] = "< MAVERICK >";
|
||||
Veh_Rot_String[3] = "< POLMAV >";
|
||||
Veh_Rot_String[4] = "< TOURMAV >";
|
||||
Veh_Rot_String[5] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Ped_Strings(int MenuItem_Index){
|
||||
char* Ped_Rot_String[5];
|
||||
Ped_Rot_String[0] = "< ERROR >";
|
||||
Ped_Rot_String[1] = "< Strippers >";
|
||||
Ped_Rot_String[2] = "< N.O.O.S.E >";
|
||||
Ped_Rot_String[3] = "< Security >";
|
||||
Ped_Rot_String[4] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Ped_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Object_Strings(int MenuItem_Index){
|
||||
char* Rotate_string[18];
|
||||
Rotate_string[0] = "< ERROR >";
|
||||
Rotate_string[1] = "< Blue Neons >";
|
||||
Rotate_string[2] = "< Green Flash ~y~Above >";
|
||||
Rotate_string[3] = "< Green Flash ~y~Under >";
|
||||
Rotate_string[4] = "< Purple Flash ~y~Above >";
|
||||
Rotate_string[5] = "< Purple Flash ~y~Under >";
|
||||
Rotate_string[6] = "< Flaming Barrel >";
|
||||
Rotate_string[7] = "< Flames >";
|
||||
Rotate_string[8] = "< Stars >";
|
||||
Rotate_string[9] = "< Light around >";
|
||||
Rotate_string[10] = "< Disco >";
|
||||
Rotate_string[11] = "< Red Neons >";
|
||||
Rotate_string[12] = "< Sparks >";
|
||||
Rotate_string[13] = "< Shower >";
|
||||
Rotate_string[14] = "< Smoke >";
|
||||
Rotate_string[15] = "< Hamburger 1 >";
|
||||
Rotate_string[16] = "< Hamburger 2 >";
|
||||
Rotate_string[17] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = Rotate_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void Rotation_Mode_Strings(int MenuItem_Index){
|
||||
char* Veh_Rot_String[3];
|
||||
Veh_Rot_String[0] = "< ERROR >";
|
||||
Veh_Rot_String[1] = "< Solid >";
|
||||
Veh_Rot_String[2] = "< Unsolid >";
|
||||
menu_item[MenuItem_Index].charval = Veh_Rot_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_Rotation_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover//5
|
||||
//Bool renew //6
|
||||
else if(MenuItem_Index == 7) return Rotation_Speed_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 8) return Rotation_Distance_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 9) return Rotation_Position_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return Rotation_Height_Strings(MenuItem_Index);
|
||||
//Function detach
|
||||
else if(MenuItem_Index == 12) return Rotation_Vehicle_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return Rotation_Emergency_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return Rotation_Truck_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15) return Rotation_Bike_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 16) return Rotation_Boat_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17) return Rotation_Heli_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 18) return Rotation_Ped_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 19) return Rotation_Object_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 20) return Rotation_Mode_Strings(MenuItem_Index);
|
||||
}
|
||||
|
||||
|
||||
|
||||
66
Trident/MD_Strings/MDSTR_Shortcut_Strings.c
Normal file
66
Trident/MD_Strings/MDSTR_Shortcut_Strings.c
Normal file
@@ -0,0 +1,66 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//Coded only one time used allover the menu
|
||||
|
||||
void MD_Delete_Strings (int MenuItem_Index){
|
||||
char* delete_string[13];
|
||||
delete_string[1] = "< peds >";
|
||||
delete_string[2] = "< objects >";
|
||||
delete_string[3] = "< vehicles.all >";
|
||||
delete_string[4] = "< vehicles.abandoned >";
|
||||
delete_string[5] = "< cars.all >";
|
||||
delete_string[6] = "< cars.abandoned >";
|
||||
delete_string[7] = "< bikes.all >";
|
||||
delete_string[8] = "< bikes.abandoned >";
|
||||
delete_string[9] = "< boats.all >";
|
||||
delete_string[10] = "< boats.abandoned >";
|
||||
delete_string[11] = "< helis.all >";
|
||||
delete_string[12] = "< helis.abandoned >";
|
||||
menu_item[MenuItem_Index].charval = delete_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_PlayerOption_Strings (int MenuItem_Index){
|
||||
char* quick_string[11];
|
||||
quick_string[0] = "< ERROR >";
|
||||
quick_string[1] = "< Weapons & Armour >";
|
||||
quick_string[2] = "< Mute/Un-mute All >";
|
||||
quick_string[3] = "< Kill Self (Delay) >";
|
||||
quick_string[4] = "< Emergency Teleport >";
|
||||
quick_string[5] = "< Fix Vehicle >";
|
||||
quick_string[6] = "< Flip Vehicle >";
|
||||
quick_string[7] = "< Delete Vehicle >";
|
||||
quick_string[8] = "< Spawn Sultan RS >";
|
||||
quick_string[9] = "< Spawn Heli >";
|
||||
quick_string[10] = "< Teleport to Helipads >";
|
||||
menu_item[MenuItem_Index].charval = quick_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Spy_Strings (int MenuItem_Index){
|
||||
char* Spy_string[4];
|
||||
Spy_string[0] = "< ERROR >";
|
||||
Spy_string[1] = "~w~Spectate / AutoSpectate ~COL_NET_4~OFF";
|
||||
Spy_string[2] = "~w~Spectate / AutoSpectate ~COL_NET_3~ON";
|
||||
Spy_string[3] = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD) ? "~COL_NET_1~Flymod" : "Flymod";
|
||||
menu_item[MenuItem_Index].charval = Spy_string[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_QuickTeleport_Strings(int MenuItem_Index){
|
||||
char* Q_Teleport_String[7];
|
||||
Q_Teleport_String[0] = "< ERROR >";
|
||||
Q_Teleport_String[1] = "< You to Player ~BLIP_63~ >";
|
||||
Q_Teleport_String[2] = "< You to Player ~BLIP_79~ >";
|
||||
Q_Teleport_String[3] = "< In Player Vehicle >";
|
||||
Q_Teleport_String[4] = "< Player to You >";
|
||||
Q_Teleport_String[5] = "< Player to Killzone >";
|
||||
Q_Teleport_String[6] = "< Detach >";
|
||||
menu_item[MenuItem_Index].charval = Q_Teleport_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void NETWORK_FIRST_FOUR_STRINGS(int MenuItem_Index){
|
||||
if(SelectedItem == 1) return MD_Spy_Strings (MenuItem_Index);
|
||||
else if(SelectedItem == 2) return MD_Delete_Strings (MenuItem_Index);
|
||||
else if(SelectedItem == 3) return MD_PlayerOption_Strings (MenuItem_Index);
|
||||
else if(SelectedItem == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
}
|
||||
|
||||
299
Trident/MD_Strings/MDSTR_Shortcut_Strings_Action.c
Normal file
299
Trident/MD_Strings/MDSTR_Shortcut_Strings_Action.c
Normal file
@@ -0,0 +1,299 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
void MD_Spy_Strings_Action(int playerIndex){
|
||||
if(!PLAYER_HAS_CHAR(playerIndex)) return;
|
||||
SetBit(MD_Misc_OptionsBitSet, MD_MISC_AUTO_SPECTATE, (menu_item[SelectedItem].num_val == 2));
|
||||
if(menu_item[SelectedItem].num_val > 0 && menu_item[SelectedItem].num_val < 3){
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD, false);
|
||||
char * buffer[64];
|
||||
Strcpy(buffer, "~b~MD: ~s~");
|
||||
if(Player_Display_Selection(playerIndex)){
|
||||
Strcat(buffer, "You cannot spy on ");
|
||||
PLAYER_NAME_WITH_COLOUR(playerIndex, &buffer); //WORKS!
|
||||
Strcat(buffer, "~s~.");
|
||||
Alert(buffer,false);
|
||||
return;
|
||||
}
|
||||
else{
|
||||
SetByteSet(&SpectateAndAttachByteSet, SPECTATE_PLAYER_INDEX, playerIndex);
|
||||
/* //Lets have peoples attention drawn to the spectate shotrcut draws and not the whack useless print :) - Nathan
|
||||
Strcat(buffer, "Spectating: "); //31
|
||||
PLAYER_NAME_WITH_COLOUR(playerIndex, &buffer); //WORKS! 40
|
||||
Strcat(buffer, "~s~.~n~~PAD_LB~ & ~PAD_RB~ to disable."); //74
|
||||
Alert(buffer,false);
|
||||
*/
|
||||
}
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3){
|
||||
Detach_pPlayer_On_Coord();
|
||||
Alert("~b~MD: ~s~Spectate mode disabled for flymod!",false);
|
||||
}
|
||||
bool flymod = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD);
|
||||
if(flymod)
|
||||
{
|
||||
if(DOES_CAM_EXIST(scriptedCam))
|
||||
{
|
||||
SET_CAM_ACTIVE(scriptedCam, false);
|
||||
SET_CAM_PROPAGATE(scriptedCam, false);
|
||||
ACTIVATE_SCRIPTED_CAMS(false, false);
|
||||
UNATTACH_CAM(scriptedCam);
|
||||
DESTROY_CAM(scriptedCam);
|
||||
while (DOES_CAM_EXIST(scriptedCam)) WAIT(0);
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
scriptedCam = 0;
|
||||
}
|
||||
FREEZE_CHAR_POSITION(pPlayer, false);
|
||||
}
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_FLYMOD, !flymod);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MD_PlayerOption_Strings_Action(){ //this is all pplayer, why pass playerindex and char at all... pfft - Nathan
|
||||
bool VehicleAlert;
|
||||
if(VehicleAlert){
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
Alert(Error_Personal_Vehicle,false);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
SET_CHAR_HEALTH(pPlayer,500);
|
||||
ADD_ARMOUR_TO_CHAR(pPlayer,200);
|
||||
GIVE_EPISODIC_WEAPONS_TO_CHAR(pPlayer,Episode);
|
||||
Alert("~b~MD: ~s~Health, armour and weapons given.", false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
ToggleBit(MD_Misc_OptionsBitSet, MD_MISC_MUTE_ALL);
|
||||
menu_item[SelectedItem].extra_val = GetBit(MD_Misc_OptionsBitSet, MD_MISC_MUTE_ALL);
|
||||
MUTE_ALL_PLAYERS(GetBit(MD_Misc_OptionsBitSet, MD_MISC_MUTE_ALL)); //Nice!
|
||||
char * buffer[16]; // 64 chars
|
||||
Strcpy(buffer, "~b~MD: ~s~All players have been "); //32
|
||||
Strcat(buffer, GetBit(MD_Misc_OptionsBitSet, MD_MISC_MUTE_ALL) ? "~COL_NET_4~muted" : "~COL_NET_3~un-muted"); //19 = 51
|
||||
Strcat(buffer, "~s~."); //55 chars
|
||||
Alert(buffer,false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ~s~You will die in 2 seconds"); //37
|
||||
if(Episode == 0) //Original
|
||||
{
|
||||
Strcat(buffer, ", pause the game to stay dead"); //29
|
||||
}
|
||||
Strcat(buffer, "."); //67 chars
|
||||
Alert(buffer,false);
|
||||
int die;
|
||||
for(die = 0;die <= 80;die++)WAIT(0); ///looooooooooool
|
||||
SET_CHAR_HEALTH(pPlayer,-1);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
|
||||
SetBit(pPlayerOptionsBitSet, PLAYER_OPTION_GODMODE, true);
|
||||
SET_PLAYER_INVINCIBLE(iPlayer, true);
|
||||
SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_INVINCIBLE, true);
|
||||
Detach_pPlayer();
|
||||
MD_VEHICLE_SPAWNER_ON_ID(iPlayer,MODEL_ANNIHILATOR);
|
||||
if(IS_CHAR_IN_ANY_HELI(pPlayer))
|
||||
{
|
||||
MD_Teleport_ID_Heading(iPlayer, 3706.1404, -2496.5984, 0.9329, 94.6);
|
||||
Alert("~b~MD: ~s~You were teleported to the safe zone, explosions will not render out here.",false);
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3){
|
||||
Alert("~b~MD: ~s~Fuction disabled in spymode",false);
|
||||
return;
|
||||
}
|
||||
VehicleAlert = true;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &Personal_Vehicle);
|
||||
FIX_CAR(Personal_Vehicle);
|
||||
SET_VEHICLE_DIRT_LEVEL(Personal_Vehicle, 0);
|
||||
SET_CAR_ENGINE_ON(Personal_Vehicle,true,true);
|
||||
Alert("~b~MD: ~s~Vehicle fixed.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3){
|
||||
Alert("~b~MD: ~s~Fuction disabled in spymode",false);
|
||||
return;
|
||||
}
|
||||
VehicleAlert = true;
|
||||
Vehicle Personal_Vehicle;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &Personal_Vehicle);
|
||||
if(!IS_CHAR_IN_ANY_HELI(pPlayer)){
|
||||
float h;
|
||||
GET_CAR_HEADING(Personal_Vehicle,&h);
|
||||
SET_VEHICLE_QUATERNION(Personal_Vehicle,0,0,0,0);
|
||||
SET_CAR_HEADING(Personal_Vehicle,h);
|
||||
SET_CAR_ON_GROUND_PROPERLY(Personal_Vehicle);
|
||||
Alert("~b~MD: ~s~Your vehicle was flipped.",false);
|
||||
}
|
||||
else Alert("~b~MD: ~s~Function disabled for heli's.",false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 7){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3){
|
||||
Alert("~b~MD: ~s~Fuction disabled in spymode",false);
|
||||
return;
|
||||
}
|
||||
|
||||
VehicleAlert = true;
|
||||
Vehicle Personal_Vehicle;
|
||||
GET_CAR_CHAR_IS_USING(pPlayer, &Personal_Vehicle);
|
||||
if(is_driving(pPlayer)){
|
||||
DELETE_CAR(&Personal_Vehicle);
|
||||
Alert("~b~MD: ~s~Vehicle deleted.",false);
|
||||
}
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 8){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) != 3)MD_VEHICLE_SPAWNER_ON_ID(iPlayer,MODEL_SULTANRS);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 9){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) != 3)MD_VEHICLE_SPAWNER_ON_ID(iPlayer,MODEL_ANNIHILATOR);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 10){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3) Detach_pPlayer();
|
||||
MD_Teleport_ID_Heading(iPlayer, 2219.8132, 745.6130, 5.830, 0.0);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void MD_QuickTeleport_Strings_Action(int playerIndex){
|
||||
if(menu_item[SelectedItem].num_val != 5){
|
||||
if(!PLAYER_HAS_CHAR(playerIndex)) return;
|
||||
}
|
||||
int Net_Ped = PLAYER_CHAR(playerIndex);
|
||||
int Net_Vehicle;
|
||||
float x,y,z,h;
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,2,&rand);
|
||||
bool player_is_in_car = IS_CHAR_IN_ANY_CAR(Net_Ped);
|
||||
bool pPlayer_is_in_car = IS_CHAR_IN_ANY_CAR(pPlayer);
|
||||
if(menu_item[SelectedItem].num_val == 1){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3)Detach_pPlayer();
|
||||
Teleport_iPlayer_To_PlayerIndex(playerIndex, false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 2){
|
||||
if(GetByteInSet(SpectateAndAttachByteSet, ATTACH_TYPE) == 3)Detach_pPlayer();
|
||||
Teleport_iPlayer_To_PlayerIndex(playerIndex, true);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 3){
|
||||
char * buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ");
|
||||
PLAYER_NAME_WITH_COLOUR(playerIndex, &buffer); //WORKS!
|
||||
if(player_is_in_car){
|
||||
GET_CAR_CHAR_IS_USING(Net_Ped,&Net_Vehicle);
|
||||
int model;
|
||||
GET_CAR_MODEL(Net_Vehicle,&model); //used for string below
|
||||
if(WARP_PED_INTO_VEHICLE(pPlayer,Net_Vehicle)){
|
||||
return;
|
||||
}
|
||||
Strcat(buffer, "'s ~s~");
|
||||
Strcat(buffer, GET_STRING_FROM_TEXT_FILE(GET_DISPLAY_NAME_FROM_VEHICLE_MODEL(model)));
|
||||
Strcat(buffer, " is full.");
|
||||
}
|
||||
else{
|
||||
Strcat(buffer, " ~s~isn't in a vehicle.");
|
||||
}
|
||||
Alert(buffer, false);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 4){
|
||||
if(Net_Ped == pPlayer){
|
||||
Alert("~b~MD: ~s~U can't teleport urself to urself dumbass!",false);
|
||||
return;
|
||||
}
|
||||
/*
|
||||
int Net_Vehicle_ID;
|
||||
GET_CAR_CHAR_IS_USING(Net_Ped,&Net_Vehicle);
|
||||
GET_NETWORK_ID_FROM_VEHICLE(Net_Vehicle,&Net_Vehicle_ID);
|
||||
*/
|
||||
float x,y,z,h;
|
||||
//int lol;
|
||||
//GET_CHAR_HEADING(pPlayer,&h);
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer))GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(pPlayer,-2.7f,0,-0.5,&x,&y,&z);
|
||||
else GET_OFFSET_FROM_CAR_IN_WORLD_COORDS(GetPlayerVeh(),-3,0,0,&x,&y,&z);
|
||||
MD_Teleport_ID(playerIndex,x,y,z);
|
||||
/*
|
||||
int lol;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
if(!IS_CHAR_IN_ANY_CAR(pPlayer)){
|
||||
if(lol == 1) GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(pPlayer,2.7f,0,-0.5,&x,&y,&z);
|
||||
else GET_OFFSET_FROM_CHAR_IN_WORLD_COORDS(pPlayer,-2.7f,0,-0.5,&x,&y,&z);
|
||||
}
|
||||
else{
|
||||
if(lol == 1) GET_OFFSET_FROM_CAR_IN_WORLD_COORDS(GetPlayerVeh(),3,0,0,&x,&y,&z);
|
||||
else GET_OFFSET_FROM_CAR_IN_WORLD_COORDS(GetPlayerVeh(),-3,0,0,&x,&y,&z);
|
||||
}
|
||||
if(DOES_VEHICLE_EXIST(Net_Vehicle) && network_control(Net_Vehicle_ID)){
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0,2,&lol);
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
SET_CAR_COORDINATES(Net_Vehicle,x,y,z);
|
||||
SET_CAR_FORWARD_SPEED(Net_Vehicle,0.0f);
|
||||
SET_CAR_HEADING(Net_Vehicle,h);
|
||||
SET_CAR_ON_GROUND_PROPERLY(Net_Vehicle);
|
||||
Alert("~BLIP_76~ ~c~Teleported Player to You ~n~~w~Player Can Be Teleported on Foot If Your Host!",false);
|
||||
}
|
||||
else{
|
||||
h = (h - 180);
|
||||
z = (z - 1);
|
||||
REGISTER_PLAYER_RESPAWN_COORDS(playerIndex, x, y, z);
|
||||
REQUEST_COLLISION_AT_POSN( x, y, z );
|
||||
RESURRECT_NETWORK_PLAYER(playerIndex,x,y,z,h);
|
||||
}
|
||||
*/
|
||||
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 5){
|
||||
RESURRECT_NETWORK_PLAYER(playerIndex,3600.0f,1251.0f,-1.0f, 0);
|
||||
}
|
||||
else if(menu_item[SelectedItem].num_val == 6){
|
||||
Detach_pPlayer();
|
||||
}
|
||||
}
|
||||
|
||||
//Nathan begin cleanup.......
|
||||
void NETWORK_FIRST_FOUR_ITEMS_MENU_SETUP(void)
|
||||
{
|
||||
AddFunction_ValueLine_CB(3); //1 Spy Auto or not auto
|
||||
AddFunction_Value("Quick~c~ Delete",12); //2 //Delete All Peds / Delete All Vehicles / Delete abandoned Vehicles / Delete all Objects / AutoDelete Objects ON/ AutoDelete Objects OFF
|
||||
AddFunction_Value("Quick~c~ Options",10); //3 Exact Number of strings //3
|
||||
AddFunction_Value_CB("Quick~c~ Teleport",6); //4
|
||||
menu_item[4].num_val = (IS_CHAR_IN_ANY_CAR(pPlayer) ? 2 : 1);
|
||||
}
|
||||
|
||||
void NETWORK_FIRST_FOUR_ITEMS_MENU_ACTION(void)
|
||||
{
|
||||
if(SelectedItem > 4) return;
|
||||
else if(SelectedItem == 1)
|
||||
{
|
||||
MD_Spy_Strings_Action( players[ChangeNetPlayer].id);
|
||||
}
|
||||
else if(SelectedItem == 2) Universal_Delete(Delete_Distance_Radius, menu_item[SelectedItem].num_val, true);
|
||||
else if(SelectedItem == 3) MD_PlayerOption_Strings_Action();
|
||||
else if(SelectedItem == 4 ) MD_QuickTeleport_Strings_Action( players[ChangeNetPlayer].id);
|
||||
/*
|
||||
switch(SelectedItem) //ready for ap ii..
|
||||
{
|
||||
case 1:
|
||||
MD_Spy_Strings_Action(players[ChangeNetPlayer].id);
|
||||
break;
|
||||
case 2:
|
||||
Universal_Delete(Delete_Distance_Radius, menu_item[SelectedItem].num_val, true);
|
||||
break;
|
||||
case 3:
|
||||
MD_PlayerOption_Strings_Action();
|
||||
break;
|
||||
case 4:
|
||||
MD_QuickTeleport_Strings_Action( players[ChangeNetPlayer].id);
|
||||
break;
|
||||
default:
|
||||
return;
|
||||
}
|
||||
*/
|
||||
}
|
||||
303
Trident/MD_Strings/MDSTR_Strings_BASE_Structure.c
Normal file
303
Trident/MD_Strings/MDSTR_Strings_BASE_Structure.c
Normal file
@@ -0,0 +1,303 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
void Add_StringValue(int MenuItem_Index){
|
||||
/**Main Page**/
|
||||
if (menu_level == 1){
|
||||
if(MenuItem_Index == 18){
|
||||
return MD_Delete_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 19){
|
||||
Delete_Distance_Radius = menu_item[MenuItem_Index].num_val;
|
||||
}
|
||||
else if(MenuItem_Index == 20) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page**/
|
||||
else if (menu_level == 2){
|
||||
/**Submenus on Main Page - Player Options**/
|
||||
if (last_selected[1] == 1){
|
||||
return MD_Player_Options_Strings(MenuItem_Index);
|
||||
}
|
||||
else if (last_selected[1] == 2){
|
||||
if(MenuItem_Index == 3)return MD_PO_PlayerInfo_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Vehicle Options**/
|
||||
else if (last_selected[1] == 3){
|
||||
return MD_VehOpt_Pplayer_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Weapons**/
|
||||
else if (last_selected[1] == 4){
|
||||
return MD_Weapon_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Player Changer**/
|
||||
else if(last_selected[1] == 7){
|
||||
return Player_Changer_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Animations**/
|
||||
else if(last_selected[1] == 8){
|
||||
return MD_Animation_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Attachments**/
|
||||
else if (last_selected[1] == 9){
|
||||
return MD_Attach_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Rotations**/
|
||||
else if (last_selected[1] == 10){
|
||||
return MD_Rotation_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Rotations**/
|
||||
else if (last_selected[1] == 11){
|
||||
return Content_Builder_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Submenus on Main Page - Premium Options**/
|
||||
else if(last_selected[1] == 22){
|
||||
if(MenuItem_Index == 1){
|
||||
char* episodes[4];
|
||||
episodes[0] = "< ERROR >";
|
||||
episodes[1] = "< Original >";
|
||||
episodes[2] = "< TLaD >";
|
||||
episodes[3] = "< TBoGT >";
|
||||
menu_item[MenuItem_Index].charval = episodes[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(menu_level == 3){
|
||||
/**Submenus on Main Page - Network Players**/
|
||||
if(last_selected[1] == 2){
|
||||
/**All Players - Main**/
|
||||
if(last_selected[2] == 1){
|
||||
if(MenuItem_Index == 2){
|
||||
char* teleportAllString[4];
|
||||
teleportAllString[0] = "< ERROR > ";
|
||||
teleportAllString[1] = "< Around (Face away) >";
|
||||
teleportAllString[2] = "< Around (Face you) >";
|
||||
teleportAllString[3] = "< Lined up >";
|
||||
menu_item[MenuItem_Index].charval = teleportAllString[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
}
|
||||
else if(last_selected[2] == 2){
|
||||
return MD_Navigator_Strings(MenuItem_Index);
|
||||
}
|
||||
/**Selected Players Players - Main**/
|
||||
else if(last_selected[2] > 3){
|
||||
if(MenuItem_Index == 1){
|
||||
return MD_Spy_Strings (MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 2){
|
||||
return MD_Delete_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 3){
|
||||
return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 4){
|
||||
return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
else if(last_selected[2] == 21){
|
||||
return Player_MoreChanger_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 3){ //Vehicle garage
|
||||
if(last_selected[2] == 3){ //Active options
|
||||
if(MenuItem_Index == 12){ //Auto-lock vehicle
|
||||
char* autolockstring[4];
|
||||
autolockstring[0] = "< ERROR >";
|
||||
autolockstring[1] = "< On >";
|
||||
autolockstring[2] = "< On + Unlock for friends >";
|
||||
autolockstring[3] = "< Off >";
|
||||
menu_item[MenuItem_Index].charval = autolockstring[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 7){
|
||||
if(last_selected[2] == 21){
|
||||
return Player_MoreChanger_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 21){
|
||||
if(last_selected[2] == 7){
|
||||
if(MenuItem_Index == 6){
|
||||
char* Sound_String[21];
|
||||
Sound_String[0] = "Error";
|
||||
Sound_String[1] = "FRONTEND_GAME_MP_TICKER_MESSAGE";
|
||||
Sound_String[2] = "FRONTEND_MENU_MP_UNREADY";
|
||||
Sound_String[3] = "FRONTEND_MENU_MP_SERVER_OPTION_CHANGE";
|
||||
Sound_String[4] = "FRONTEND_OTHER_COUNTDOWN";
|
||||
Sound_String[5] = "FRONTEND_MENU_MP_READY";
|
||||
Sound_String[6] = "FRONTEND_MENU_MP_SERVER_HIGHLIGHT";
|
||||
Sound_String[7] = "FRONTEND_GAME_MP_TICKER_MESSAGE";
|
||||
Sound_String[8] = "MOBILE_PHONE_SMS_RECIEVE";
|
||||
Sound_String[9] = "FRONTEND_OTHER_RACE_321";
|
||||
Sound_String[10] = "FRONTEND_OTHER_RACE_GO";
|
||||
Sound_String[11] = "FRONTEND_GAME_PICKUP_CHECKPOINT_LAP";
|
||||
Sound_String[12] = "FRONTEND_GAME_PICKUP_CHECKPOINT";
|
||||
Sound_String[13] = "RADIO_RETUNE_BEEP";
|
||||
Sound_String[14] = "RADIO_ADVERTS";
|
||||
Sound_String[15] = "RADIO_RETUNE_MONO_ONE_SHOT";
|
||||
Sound_String[16] = "RADIO_RETUNE_MONO";
|
||||
Sound_String[17] = "RADIO_TUNER_MULTI"; //Keeps running
|
||||
Sound_String[18] = "RADIO_INTERFERENCE_SINGLE";
|
||||
Sound_String[19] = "MOBILE_PRERING_SOUND";
|
||||
|
||||
menu_item[MenuItem_Index].charval = Sound_String[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else if(menu_level == 4){
|
||||
/**Selected Players Players - Main Submenus**/
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[3] == 5){
|
||||
return MD_NetPlayer_Options_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[3] == 6){
|
||||
return MD_Weapon_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[3] == 7){
|
||||
MD_VehOpt_NetPlayer_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[3] == 9){
|
||||
return MD_Army_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[3] == 10){
|
||||
return MD_Rotation_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[3] == 11){
|
||||
return MD_Attach_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[3] == 15){
|
||||
if(MenuItem_Index == 16){
|
||||
return MD_Net_Unfr_Telport_Strings(MenuItem_Index);
|
||||
}
|
||||
if(MenuItem_Index == 17){
|
||||
return MD_Net_Unfr_FC_Strings(MenuItem_Index);
|
||||
}
|
||||
if(MenuItem_Index == 18){
|
||||
return MD_Net_Unfr_Obj_Strings(MenuItem_Index);
|
||||
}
|
||||
if(MenuItem_Index == 19){
|
||||
return MD_Net_Unfr_Lag_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
/*
|
||||
else if(last_selected[3] == 16){ //Pilot
|
||||
if(MenuItem_Index == 3){
|
||||
return Pilot_Weapon_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
*/
|
||||
else if(last_selected[3] == 18){
|
||||
if(MenuItem_Index == 1){
|
||||
return MD_Spy_Strings (MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 2){
|
||||
return MD_Delete_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 3){ // Main
|
||||
return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 4){ // Main
|
||||
return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(MenuItem_Index == 6){ // Main
|
||||
return MD_QuickAdmin_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(last_selected[1] == 3){
|
||||
if(last_selected[2] == 7){
|
||||
if(last_selected[3] == 1){
|
||||
return MD_VehOpt_Save_ColourSettings_Strings(20);
|
||||
}
|
||||
else if(last_selected[3] == 2){
|
||||
return MD_VehOpt_Save_ColourSettings_Strings(21);
|
||||
}
|
||||
else if(last_selected[3] == 3){
|
||||
return MD_VehOpt_Save_ColourSettings_Strings(5);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(menu_level == 5){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3){
|
||||
if(last_selected[3] == 9){
|
||||
if(last_selected[4] == 11){
|
||||
return MD_Animation_Strings(MenuItem_Index);
|
||||
}
|
||||
else if (last_selected[4] == 12){
|
||||
return MD_Attach_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
else if(last_selected[3] == 18){
|
||||
if(last_selected[4] == 7){
|
||||
return Admin_Message_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 8){
|
||||
return Admin_Player_Stringitems(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 9){
|
||||
return Admin_Weapon_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 10){
|
||||
return Admin_Vehicle_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 11){
|
||||
return Admin_Teleport_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 12){
|
||||
return Admin_Weather_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 13){
|
||||
return Admin_Model_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 14){
|
||||
return Admin_Animations_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 15){
|
||||
return Admin_Attachments_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 16){
|
||||
return Admin_Troll_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 17){
|
||||
return Admin_Menu_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 18){
|
||||
return Admin_Freeze_Strings(MenuItem_Index);
|
||||
}
|
||||
else if(last_selected[4] == 19){
|
||||
return Admin_Temp_Strings(MenuItem_Index);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if(menu_level == 6){
|
||||
if(last_selected[1] == 2){
|
||||
if(last_selected[2] > 3){
|
||||
if(last_selected[3] == 7){
|
||||
if(last_selected[4] == 7){
|
||||
if(last_selected[5] == 1){
|
||||
return MD_VehOpt_Save_ColourSettings_Strings(20);
|
||||
}
|
||||
else if(last_selected[5] == 2){
|
||||
return MD_VehOpt_Save_ColourSettings_Strings(21);
|
||||
}
|
||||
else if(last_selected[5] == 3){
|
||||
return MD_VehOpt_Save_ColourSettings_Strings(5);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else menu_item[MenuItem_Index].charval = "~PAD_LEFT~ Not Implemented ~PAD_RIGHT~";
|
||||
}
|
||||
202
Trident/MD_Strings/MDSTR_Vehicle_Options_Strings.c
Normal file
202
Trident/MD_Strings/MDSTR_Vehicle_Options_Strings.c
Normal file
@@ -0,0 +1,202 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
//ANCHOR_BOAT(Vehicle boat, boolean anchor); - Nathan thinks this be useful :D
|
||||
|
||||
void MD_VehOpt_QuickSpawn_Strings(int MenuItem_Index){
|
||||
char* Vehicle[14];
|
||||
Vehicle[1] = "~PAD_LEFT~COMET ~PAD_RIGHT~";
|
||||
Vehicle[2] = "~PAD_LEFT~TURISMO ~PAD_RIGHT~";
|
||||
Vehicle[3] = "~PAD_LEFT~INFERNUS ~PAD_RIGHT~";
|
||||
Vehicle[4] = "~PAD_LEFT~SUPERGT ~PAD_RIGHT~";
|
||||
Vehicle[5] = "~PAD_LEFT~SULTANRS ~PAD_RIGHT~";
|
||||
Vehicle[6] = "~PAD_LEFT~ORACLE ~PAD_RIGHT~";
|
||||
Vehicle[7] = "~PAD_LEFT~PATRIOT ~PAD_RIGHT~";
|
||||
Vehicle[8] = "~PAD_LEFT~FBI ~PAD_RIGHT~";
|
||||
Vehicle[9] = "~PAD_LEFT~BUS ~PAD_RIGHT~";
|
||||
Vehicle[10] = "~PAD_LEFT~SQUALO ~PAD_RIGHT~";
|
||||
Vehicle[11] = "~PAD_LEFT~NRG900 ~PAD_RIGHT~";
|
||||
Vehicle[12] = "~PAD_LEFT~MAVERICK ~PAD_RIGHT~";
|
||||
Vehicle[13] = "~PAD_LEFT~ANNIHILATOR ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Vehicle[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_VehOpt_Pplayer_General_Strings(int MenuItem_Index){
|
||||
char* general_strings[9];
|
||||
//general_strings[1] = IS_CHARS_VEHICLE_LOCKED(PLAYER_CHAR(players[ChangeNetPlayer].id)) ? "~PAD_LEFT~ ~COL_NET_1~Lock ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Lock ~PAD_RIGHT~";
|
||||
general_strings[1] = "~PAD_LEFT~ Fix & Wash ~PAD_RIGHT~";
|
||||
general_strings[2] = "~PAD_LEFT~ Flip ~PAD_RIGHT~";
|
||||
general_strings[3] = "~PAD_LEFT~ Burst Tyres ~PAD_RIGHT~";
|
||||
general_strings[4] = "~PAD_LEFT~ Fix Tyres ~PAD_RIGHT~";
|
||||
general_strings[5] = (!IS_CHAR_VISIBLE(pPlayer) ? "~PAD_LEFT~ ~COL_NET_1~Invisible~w~ ~BLIP_63~ ~PAD_RIGHT~" : "~PAD_LEFT~ Invisible ~BLIP_63~ ~PAD_RIGHT~"); // Set player invisible --~PAD_RIGHT~ This should be a bool
|
||||
general_strings[6] = (!IS_CHAR_VISIBLE(pPlayer) && GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_INVISIBLE)) ? "~PAD_LEFT~ ~COL_NET_1~Invisible~w~ ~BLIP_63~ + ~BLIP_79~~PAD_RIGHT~" : "~PAD_LEFT~ Invisible ~BLIP_63~ + ~BLIP_79~~PAD_RIGHT~"; // Set Player + Vehicle --~PAD_RIGHT~ This should be a bool
|
||||
general_strings[7] = (GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_REMOVE_BLIP) && GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_REMOVE_BLIP)) ? "~PAD_LEFT~ ~COL_NET_1~Hide Blip ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Hide Blip ~PAD_RIGHT~";// Hide Blip and set vehicle + Player Invisible --~PAD_RIGHT~ YES! I need it here - This should be a bool
|
||||
general_strings[8] = "~PAD_LEFT~ Delete ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = general_strings[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_VehOpt_Pplayer_ActiveOption_Strings(int MenuItem_Index)
|
||||
{
|
||||
////10 Vehicle Helper / Visibility / Drive - Walk on water / Stick to ground / Autospawn Boat in water
|
||||
char* physics_strings[4];
|
||||
//physics_strings[1] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_INVINCIBLE) ? "~PAD_LEFT~ ~COL_NET_1~Invincible ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Invincible ~PAD_RIGHT~";
|
||||
//physics_strings[2] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_INVISIBLE) ? "~PAD_LEFT~ ~COL_NET_1~Invisible ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Invisible ~PAD_RIGHT~";
|
||||
physics_strings[1] = DOES_OBJECT_EXIST(drive_water[iPlayer]) ? "~PAD_LEFT~ ~COL_NET_1~Drive on water ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Drive on water ~PAD_RIGHT~" ;
|
||||
physics_strings[2] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_DESOLIDIFY) ? "~PAD_LEFT~ ~COL_NET_1~Desolidify ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Desolidify ~PAD_RIGHT~";;
|
||||
physics_strings[3] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_AUTO_BOAT) ? "~PAD_LEFT~ ~COL_NET_1~Auto-spawn boat ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Auto-spawn boat ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = physics_strings[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_VehOpt_Save_ColourSettings_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[3];
|
||||
Playeroption_example1[1] = "~PAD_LEFT~ Your Vehicle ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = "~PAD_LEFT~ Net Vehicles ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
|
||||
void MD_VehOpt_Pplayer_SpawnSettings_Strings(int MenuItem_Index)
|
||||
{
|
||||
////9 Upgrades / Damage proof / Sirens
|
||||
char* Playeroption_example1[9];
|
||||
Playeroption_example1[1] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ALL_UPGRADES) ? "~PAD_LEFT~ ~COL_NET_1~All upgrades ~w~~PAD_RIGHT~" : "~PAD_LEFT~ All upgrades ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_INVINCIBLE) ? "~PAD_LEFT~ ~COL_NET_1~Invincible ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Invincible ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_SIREN) ? "~PAD_LEFT~ ~COL_NET_1~Sirens ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Sirens ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_RAINBOW) ? "~PAD_LEFT~ ~COL_NET_1~Rainbow Car ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Rainbow Car ~PAD_RIGHT~";
|
||||
Playeroption_example1[5] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_ENGINE) ? "~PAD_LEFT~ ~COL_NET_1~Engine ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Engine ~PAD_RIGHT~";
|
||||
Playeroption_example1[6] = Coloursetting_Personal ? "~PAD_LEFT~ ~COL_NET_1~Personal Colour ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Personal Colour ~PAD_RIGHT~";
|
||||
Playeroption_example1[7] = Coloursetting_Net ? "~PAD_LEFT~ ~COL_NET_1~NetVehicle Colour ~w~~PAD_RIGHT~" : "~PAD_LEFT~ NetVehicle Colour ~PAD_RIGHT~";
|
||||
Playeroption_example1[8] = (!Coloursetting_Net && !Coloursetting_Personal) ? "~PAD_LEFT~ ~COL_NET_1~Random Colour ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Random Colour ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_VehOpt_pPlayer_Handling_Option_Strings(int MenuItem_Index)
|
||||
{
|
||||
//12 Super Speed / Drift Mode / Lower vehicle / Vehicle Jump / Super Bike / Stick on ground
|
||||
char* Playeroption_example1[6];
|
||||
Playeroption_example1[1] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_JUMP) ? "~PAD_LEFT~ ~COL_NET_1~Vehicle Jump ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Vehicle Jump ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_DRIFT) ? "~PAD_LEFT~ ~COL_NET_1~Drift mode ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Drift mode ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_LOWER) ? "~PAD_LEFT~ ~COL_NET_1~Lower ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Lower ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_STICK_GROUND) ? "~PAD_LEFT~ ~COL_NET_1~Stick to ground ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Stick to ground ~PAD_RIGHT~";
|
||||
Playeroption_example1[5] = GetBit(VehicleOptionsBitSet,VEHICLE_OPTION_SUPER_BIKE) ? "~PAD_LEFT~ ~COL_NET_1~Super bike ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Super bike ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_VehOpt_Pplayer_Autolock_Option_Strings(int MenuItem_Index)
|
||||
{
|
||||
//utolock: ~PAD_LEFT~ On, Unlock for friends, Off ~PAD_RIGHT~"
|
||||
char* Playeroption_example1[4];
|
||||
Playeroption_example1[1] = "~PAD_LEFT~ On ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = "~PAD_LEFT~ On + Unlock for friends ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = "~PAD_LEFT~ Off ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_VehOpt_pPlayer_Actions_Option_Strings(int MenuItem_Index)
|
||||
{
|
||||
char* Playeroption_example1[7];
|
||||
Playeroption_example1[1] = "~PAD_LEFT~ Duplicate ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = "~PAD_LEFT~ Freeze position ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = "~PAD_LEFT~ Un-freeze position ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = "~PAD_LEFT~ Break ~PAD_RIGHT~";
|
||||
Playeroption_example1[5] = "~PAD_LEFT~ Shuffle Seats ~PAD_RIGHT~";
|
||||
Playeroption_example1[6] = "~PAD_LEFT~ Eject from vehicle ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
//Misc: Flymod, Player inferno, Weapons + armour, Remove armour, Explode self, Spawn money
|
||||
}
|
||||
|
||||
void MD_VehOpt_Pplayer_Hide_Blip_Strings(int MenuItem_Index)
|
||||
{
|
||||
char* Playeroption_example1[3];
|
||||
Playeroption_example1[1] = GetBit(pPlayerOptionsBitSet, PLAYER_OPTION_REMOVE_BLIP) ? "~PAD_LEFT~ ~COL_NET_1~On foot ~w~~PAD_RIGHT~" : "~PAD_LEFT~ On foot ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_REMOVE_BLIP) ? "~PAD_LEFT~ ~COL_NET_1~Vehicle ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Vehicle ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_VehOpt_Pplayer_Speed_Strings(int MenuItem_Index){
|
||||
if (!GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_SPEED) && !GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_TURBO_SPEED))SetBit(VehicleOptionsBitSet, VEHICLE_OPTION_NORMAL_SPEED, true);
|
||||
char* Playeroption_example1[4];
|
||||
Playeroption_example1[1] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_NORMAL_SPEED) ? "~PAD_LEFT~ ~COL_NET_1~Normal ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Normal ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_TURBO_SPEED) ? "~PAD_LEFT~ ~COL_NET_1~Turbo ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Turbo ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_SUPER_SPEED) ? "~PAD_LEFT~ ~COL_NET_1~Superspeed ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Superspeed ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_VehOpt_Pplayer_Trans_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[7];
|
||||
Playeroption_example1[1] = "~PAD_LEFT~ Ufo ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = "~PAD_LEFT~ Tube ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = "~PAD_LEFT~ Roller ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = "~PAD_LEFT~ Fly it ~PAD_RIGHT~";
|
||||
Playeroption_example1[5] = "~PAD_LEFT~ Delete Transformer ~PAD_RIGHT~";
|
||||
Playeroption_example1[6] = "~PAD_LEFT~ Delete Vehicle ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_VehOpt_Pplayer_Forces_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[10];
|
||||
Playeroption_example1[1] = "~PAD_LEFT~ Up ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = "~PAD_LEFT~ Down ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = "~PAD_LEFT~ Left ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = "~PAD_LEFT~ Right ~PAD_RIGHT~";
|
||||
Playeroption_example1[5] = "~PAD_LEFT~ Forwards ~PAD_RIGHT~";
|
||||
Playeroption_example1[6] = "~PAD_LEFT~ Backwards ~PAD_RIGHT~";
|
||||
Playeroption_example1[7] = "~PAD_LEFT~ Freeze Position ~PAD_RIGHT~";
|
||||
Playeroption_example1[8] = "~PAD_LEFT~ Break ~PAD_RIGHT~";
|
||||
Playeroption_example1[9] = "~PAD_LEFT~ Fix ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_VehOpt_Pplayer_Heading_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[7];
|
||||
Playeroption_example1[1] = "~PAD_LEFT~ Speedboost ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = "~PAD_LEFT~ Reversed Speedboost ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = "~PAD_LEFT~ Reverse ~PAD_RIGHT~";
|
||||
Playeroption_example1[4] = "~PAD_LEFT~ Head Left ~PAD_RIGHT~";
|
||||
Playeroption_example1[5] = "~PAD_LEFT~ Head Right ~PAD_RIGHT~";
|
||||
Playeroption_example1[6] = GetBit(VehicleOptionsBitSet, VEHICLE_OPTION_ROTATE) ? "~PAD_LEFT~ ~COL_NET_1~Rotation Loop ~w~~PAD_RIGHT~" : "~PAD_LEFT~ Rotation Loop ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_VehOpt_Pplayer_Weapons_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[3];
|
||||
Playeroption_example1[1] = MD_Weapon_Vehicle ? "~PAD_LEFT~ ~COL_NET_1~Rocket Vehicle ~PAD_RIGHT~" : "~PAD_LEFT~ Rocket Vehicle ~PAD_RIGHT~";
|
||||
Playeroption_example1[2] = Devils_Rapid_Fire_Heli ? "~PAD_LEFT~ ~COL_NET_1~Rapid Fire Heli ~PAD_RIGHT~" : "~PAD_LEFT~ Rapid Fire Heli ~PAD_RIGHT~";
|
||||
//Playeroption_example1[2] = GetBit(MD_Misc_OptionsBitSet, MD_MISC_NATHANS_RAPID_FIRE_HELI) ? "~PAD_LEFT~ ~COL_NET_1~Rapid Fire Heli ~PAD_RIGHT~" : "~PAD_LEFT~ Rapid Fire Heli ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
void MD_VehOpt_Weapons_Strings(int MenuItem_Index){
|
||||
char* Playeroption_example1[4];
|
||||
Playeroption_example1[1] = (Vehicle_Weapon == WEAPON_RLAUNCHER) ? "~PAD_LEFT~ ~COL_NET_1~Rockets ~PAD_RIGHT~" : "~PAD_LEFT~ Rockets ~PAD_RIGHT~" ;
|
||||
Playeroption_example1[2] = (Vehicle_Weapon == WEAPON_M4) ? "~PAD_LEFT~ ~COL_NET_1~Machineguns ~PAD_RIGHT~" : "~PAD_LEFT~ Machineguns ~PAD_RIGHT~";
|
||||
Playeroption_example1[3] = (Vehicle_Weapon == WEAPON_SNIPERRIFLE) ? "~PAD_LEFT~ ~COL_NET_1~Snipers ~PAD_RIGHT~" : "~PAD_LEFT~ Snipers ~PAD_RIGHT~";
|
||||
menu_item[MenuItem_Index].charval = Playeroption_example1[menu_item[MenuItem_Index].num_val];
|
||||
|
||||
}
|
||||
//AddFunction_Value("Actions", 3); //14 Duplicate / Freeze position /Break
|
||||
void MD_VehOpt_Pplayer_Strings(int MenuItem_Index){
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
//Jumpover 5
|
||||
//Sub Spawner 6
|
||||
//Sub Addons 7
|
||||
//Sub Upgrades 8
|
||||
else if(MenuItem_Index == 9) return MD_VehOpt_QuickSpawn_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return MD_VehOpt_Pplayer_General_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_VehOpt_Pplayer_SpawnSettings_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return MD_VehOpt_Pplayer_ActiveOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return MD_VehOpt_pPlayer_Handling_Option_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 14) return MD_VehOpt_Pplayer_Speed_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 15) return MD_VehOpt_Pplayer_Autolock_Option_Strings(MenuItem_Index); //Autolock: ~PAD_LEFT~ On, Unlock for friends, Off ~PAD_RIGHT~"
|
||||
else if(MenuItem_Index == 16) return MD_VehOpt_pPlayer_Actions_Option_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 17) return MD_VehOpt_Pplayer_Forces_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 18) return MD_VehOpt_Pplayer_Heading_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 19) return MD_VehOpt_Pplayer_Trans_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 20) return MD_VehOpt_Weapons_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 21) return MD_VehOpt_Pplayer_Weapons_Strings(MenuItem_Index);
|
||||
}
|
||||
|
||||
|
||||
121
Trident/MD_Strings/MDSTR_Weapon_Strings.c
Normal file
121
Trident/MD_Strings/MDSTR_Weapon_Strings.c
Normal file
@@ -0,0 +1,121 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
void MD_All_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[6];
|
||||
Weapon_String[0] = "< ERROR >";
|
||||
Weapon_String[1] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_CARRY_ALL_WEAPONS) ? "< ~COL_NET_1~Carry All >" : "< Carry All >";
|
||||
Weapon_String[2] = "< Advanced >";
|
||||
Weapon_String[3] = "< Poor >";
|
||||
Weapon_String[4] = "< TBOGT >";
|
||||
Weapon_String[5] = "< ~COL_NET_4~REMOVE >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Melee_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[6];
|
||||
Weapon_String[0] = "< ERROR >";
|
||||
Weapon_String[1] = "< Fist >";
|
||||
Weapon_String[2] = "< Knife >";
|
||||
Weapon_String[3] = "< Baseball Bat >";
|
||||
Weapon_String[4] = "< Poolstick >";
|
||||
Weapon_String[5] = "< ~COL_NET_4~REMOVE >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Thrown_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[4];
|
||||
Weapon_String[0] = "< ERROR ~PAD_RIGHT~ >";
|
||||
Weapon_String[1] = "< Molotov Coctail >";
|
||||
Weapon_String[2] = "< Grenade >";
|
||||
Weapon_String[3] = "< ~COL_NET_4~REMOVE >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Poor_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[8];
|
||||
Weapon_String[0] = "< ERROR ~PAD_RIGHT~ >";
|
||||
Weapon_String[1] = "< Pistol (Glock 22) >";
|
||||
Weapon_String[2] = "< RPG (RPG-7) >";
|
||||
Weapon_String[3] = "< Micro SMG (IMI Micro Uzi) >";
|
||||
Weapon_String[4] = "< Assault Rifle (AK-47) >";
|
||||
Weapon_String[5] = "< Pump Shotgun(Ithaca M.37) >";
|
||||
Weapon_String[6] = "< Sniper(Remington 700) >";
|
||||
Weapon_String[7] = "< ~COL_NET_4~REMOVE >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Advanced_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[8];
|
||||
Weapon_String[0] = "< ERROR ~PAD_RIGHT~ >";
|
||||
Weapon_String[1] = "< Desert Eagle XIX >";
|
||||
Weapon_String[2] = "< RPG (RPG-7) >";
|
||||
Weapon_String[3] = "< SMG (SW MP-10) >";
|
||||
Weapon_String[4] = "< Carbine Rifle(Colt M4A1) >";
|
||||
Weapon_String[5] = "< Combat Shotgun(Remington) >";
|
||||
Weapon_String[6] = "< Combat Sniper(HK PSG-1) >";
|
||||
Weapon_String[7] = "< ~COL_NET_4~REMOVE >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Vehicle_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[11];
|
||||
Weapon_String[0] = "< ERROR ~PAD_RIGHT~ >";
|
||||
Weapon_String[1] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("weap10") > 0) ? "< ~COL_NET_1~Shoot Bomb ~w~>" : "< Shoot Bomb >";
|
||||
Weapon_String[2] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("weap12") > 0) ? "< ~COL_NET_1~Shoot Exploding cars ~w~>" : "< Shoot Exploding cars >";
|
||||
Weapon_String[3] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("Sam-turrets") > 0) ? "< ~COL_NET_1~Turret Airport Defence ~w~>" : "< Turret Airport Defence >";
|
||||
Weapon_String[4] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("rev_xml_heli") > 0) ? "< ~COL_NET_1~Heli Bullets ~w~>" : "< Heli Bullets >";
|
||||
Weapon_String[5] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("flameheli") > 0) ? "< ~COL_NET_1~Flaming Heli ~w~>" : "< Flaming Heli >";//xbox-ps3 diff .sco files!
|
||||
Weapon_String[6] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("weap2") > 0) ? "< ~COL_NET_1~Drop A Bomb ~w~>" : "< Drop A Bomb >";
|
||||
Weapon_String[7] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("weap3") > 0) ? "< ~COL_NET_1~Explosive Rounds ~w~>" : "< Explosive Rounds >";
|
||||
Weapon_String[8] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("weap13") > 0) ? "< ~COL_NET_1~Twisted Metal ~w~>" : "< Twisted Metal >";
|
||||
Weapon_String[9] = (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("AdvancedHeliRounds") > 0) ? "< ~COL_NET_1~Advanced HeliRounds ~w~>" : "< Advanced HeliRounds >";
|
||||
Weapon_String[10] = "< ~COL_NET_4~Disable All >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Special_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[15];
|
||||
Weapon_String[0] = "< ERROR ~PAD_RIGHT~ >";
|
||||
Weapon_String[1] = (DOES_OBJECT_EXIST(Attach_object[25])) ? "< ~COL_NET_1~Nailgun ~w~>" : "< Nailgun >";
|
||||
Weapon_String[2] = GetBit(rocketWeaponsBitSet,players[ChangeNetPlayer].id) ? "< ~COL_NET_1~Rocket Weapon ~w~>" : "< Rocket Weapon >";
|
||||
Weapon_String[3] = (IS_THIS_SCRIPT_RUNNING("aimbot") > 0) ? "< ~COL_NET_1~Aimbot~y ~(Only you) ~w~ >" : "< Aimbot ~y~(Only you) ~w~>";
|
||||
Weapon_String[4] = (IS_THIS_SCRIPT_RUNNING("m97_grav") > 0) ? "< ~COL_NET_1~Gravity Gun ~y~(Only you) ~w~>" : "< Gravity Gun ~y~(Only you) ~w~>";
|
||||
Weapon_String[5] = (IS_THIS_SCRIPT_RUNNING("m97_taser") > 0) ? "< ~COL_NET_1~Tazer Gun ~y~(Only you) ~w~>" : "< Tazer Gun ~y~(Only you) ~w~>";
|
||||
Weapon_String[6] = (IS_THIS_SCRIPT_RUNNING("rocketdeagle") > 0) ? "< ~COL_NET_1~Rocket Desert Eagle ~y~(Only you) ~w~>" : "< Rocket Desert Eagle ~y~(Only you) ~w~>";
|
||||
Weapon_String[7] = (IS_THIS_SCRIPT_RUNNING("drs01") > 0) ? "< ~COL_NET_1~Explosive Mp5/AK-47 ~y~(Only you) ~w~>" : "< Explosive Mp5/AK-47 ~y~(Only you) ~w~>";
|
||||
Weapon_String[8] = (IS_THIS_SCRIPT_RUNNING("buffy_force") > 0) ? "< ~COL_NET_1~Forcefield AK-47 ~y~(Only you) ~w~>" : "< Forcefield AK-47 ~y~(Only you) ~w~>";
|
||||
Weapon_String[9] = (IS_THIS_SCRIPT_RUNNING("ForceFieldv25") > 0) ? "< ~COL_NET_1~Advanced Forcefield ~y~(Only you) ~w~>" : "< Advanced Forcefield ~y~(Only you) ~w~>";
|
||||
Weapon_String[10] = (IS_THIS_SCRIPT_RUNNING("buffy_mp5") > 0) ? "< ~COL_NET_1~Rockets Mp5 ~y~(Only you) ~w~>" : "< Rockets Mp5 ~y~(Only you) ~w~>";
|
||||
Weapon_String[11] = (IS_THIS_SCRIPT_RUNNING("rob_cl") > 0) ? "< ~COL_NET_1~Vehicle Gun 1 ~y~(Only you) ~w~>" : "< Vehicle Gun 1 ~y~(Only you) ~w~>";
|
||||
Weapon_String[12] = (IS_THIS_SCRIPT_RUNNING("buffy_launcher") > 0) ? "< ~COL_NET_1~Vehicle Gun 2 ~y~(Only you) ~w~>" : "< Vehicle Gun 2 ~y~(Only you) ~w~>";
|
||||
Weapon_String[13] = (IS_THIS_SCRIPT_RUNNING("rob_carmod") > 0) ? "< ~COL_NET_1~Vehicle manipulator ~y~(Only you) ~w~>" : "< Vehicle manipulator ~y~(Only you) ~w~>";
|
||||
Weapon_String[14] = "< ~COL_NET_4~REMOVE / DISABLE ALL >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_TBOGT_Weapon_Strings(int MenuItem_Index){
|
||||
char* Weapon_String[11];
|
||||
Weapon_String[0] = "< ERROR ~PAD_RIGHT~ >";
|
||||
Weapon_String[1] = "< Gold SMG (Uzi) >";
|
||||
Weapon_String[2] = "< Grenade Launcher (HK69A1) >";
|
||||
Weapon_String[3] = "< Sticky Bombs >";
|
||||
Weapon_String[4] = "< Pistol .44 (AMT AutoMag 180) >";
|
||||
Weapon_String[5] = "< Explosive Shotgun (AA-12) >";
|
||||
Weapon_String[6] = "< Advanced MG (M249 SAW) >";
|
||||
Weapon_String[7] = "< Advanced Sniper (DSR-1) >";
|
||||
Weapon_String[8] = "< Parachute >";
|
||||
Weapon_String[9] = "< Assault SMG (FN P90) >";
|
||||
Weapon_String[10] = "< ~COL_NET_4~REMOVE / DISABLE ALL >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
void MD_Weapon_Strings(int MenuItem_Index){ //16
|
||||
if(MenuItem_Index == 1) return MD_Spy_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 2) return MD_Delete_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 3) return MD_PlayerOption_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 4) return MD_QuickTeleport_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 6) return MD_All_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 7) return MD_Melee_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 8) return MD_Thrown_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 9) return MD_Poor_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 10) return MD_Advanced_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 11) return MD_TBOGT_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 12) return MD_Special_Weapon_Strings(MenuItem_Index);
|
||||
else if(MenuItem_Index == 13) return MD_Vehicle_Weapon_Strings(MenuItem_Index);
|
||||
}
|
||||
95
Trident/MD_Strings/MD_Generally_Used_Strings.c
Normal file
95
Trident/MD_Strings/MD_Generally_Used_Strings.c
Normal file
@@ -0,0 +1,95 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
|
||||
//!Generally used strings allover the place ONLY ONCE IN CODE !!!!
|
||||
|
||||
|
||||
void Player_Help_Strings(int MenuItem_Index){
|
||||
char* String[6];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = "< Health >";
|
||||
String[2] = "< Armour >";
|
||||
String[3] = "< ~COL_NET_4~Remove Armour ~w~>";
|
||||
String[4] = "< Fix Vehicle >";
|
||||
String[5] = "< Flip Vehicle >";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void Helper_Loop_Strings(int MenuItem_Index){
|
||||
char* String[6];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = GetBit(autoFixVehBitSet,players[ChangeNetPlayer].id) ? "< ~COL_NET_1~Auto Fix Vehicle ~w~>" : "< Auto Fix Vehicle >";
|
||||
String[2] = GetBit(autoFlipVehBitSet,players[ChangeNetPlayer].id) ? "< ~COL_NET_1~Auto Flip Vehicle ~w~>" : "< Auto Flip Vehicle >";
|
||||
String[3] = GetBit(infiniteArmourBitSet,players[ChangeNetPlayer].id) ? "< ~COL_NET_1~Juggernaut Player ~w~>" : "< Juggernaut Player >";
|
||||
String[4] = GetBit(freezeGunProtectBitSet,players[ChangeNetPlayer].id) ? "< ~COL_NET_1~Freezegun Protection ~w~>" : "< Freezegun Protection >";
|
||||
String[5] = GetBit(neverWantedBitSet,players[ChangeNetPlayer].id) ? "< ~COL_NET_1~Never wanted ~w~>": "< Never wanted >";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
|
||||
void MD_PO_Weapon_Option_Strings(int MenuItem_Index){
|
||||
char* Weapon_Opt_Strings[6];
|
||||
Weapon_Opt_Strings[1] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_INFINITE_AMMO) ? "< ~COL_NET_1~Unlimited clip ~w~>" : "< Unlimited clip >";
|
||||
Weapon_Opt_Strings[2] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_RAPID_FIRE) ? "< ~COL_NET_1~Rapid fire ~w~>" : "< Rapid fire >";
|
||||
Weapon_Opt_Strings[3] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_AUTO_AIM) ? "< ~COL_NET_1~Auto aim ~w~>" : "< Auto aim >";
|
||||
Weapon_Opt_Strings[4] = "< Give Weapons >";
|
||||
Weapon_Opt_Strings[5] = "< Remove Weapons >";
|
||||
menu_item[MenuItem_Index].charval = Weapon_Opt_Strings[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
|
||||
void Weapon_Strings(int MenuItem_Index){
|
||||
char* String[5];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = "< Advanced >";
|
||||
String[2] = "< Poor >";
|
||||
String[3] = "< Episodic >";
|
||||
String[4] = "< ~COL_NET_4~Remove ~w~>";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_PO_Physics_Strings(int MenuItem_Index){
|
||||
char* physics_strings[4];
|
||||
physics_strings[1] = DOES_OBJECT_EXIST(drive_water[iPlayer]) ? "< ~COL_NET_1~Drive/Walk on water ~w~>" : "< Drive/Walk on water >";
|
||||
physics_strings[2] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_GRAVITY) ? "< ~COL_NET_1~Gravity ~w~>" : "< Gravity >" ;
|
||||
physics_strings[3] = GetBit(pPlayerOptionsBitSet,PLAYER_OPTION_SLOW_MO) ? "< ~COL_NET_1~Slow motion ~w~>" : "< Slow motion >";
|
||||
menu_item[MenuItem_Index].charval = physics_strings[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void Physics_Strings(int MenuItem_Index){
|
||||
char* String[3];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = "< Desolidify >";
|
||||
String[2] = "< Freeze Position ~w~>";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void Help_Strings(int MenuItem_Index){
|
||||
char* String[6];
|
||||
String[0] = "< ERROR >";
|
||||
String[1] = "< Spawn Anni >";
|
||||
String[2] = (Episode == 2) ? "< BUZZARD >" : "< MAVERICK >";
|
||||
String[3] = "< Spawn Sultan RS >";
|
||||
String[4] = "< Spawn NRG 900 >";
|
||||
String[5] = "< Give Armour >";
|
||||
menu_item[MenuItem_Index].charval = String[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
void MD_PO_PlayerInfo_Strings(int MenuItem_Index){
|
||||
char* PlayerInfo_Strings[10];
|
||||
PlayerInfo_Strings[1] = Attach_Player_Info ? "< ~COL_NET_1~Display ~w~>" : "< Display >";
|
||||
PlayerInfo_Strings[2] = (Player_INFO_ID1 != 99) ? ((Player_INFO_ID1 != iPlayer) ? "< ~COL_NET_1~Player 1 Saved ~w~>" : "< ~COL_NET_1~Default (You) ~w~>") : "< Save Player 1 >";
|
||||
PlayerInfo_Strings[3] = "< Delete Player 1 >";
|
||||
PlayerInfo_Strings[4] = (Player_INFO_ID2 != 99) ? "< ~COL_NET_1~Player 2 Saved ~w~>" : "< Save Player 2 >";
|
||||
PlayerInfo_Strings[5] = "< Delete Player 2 >";
|
||||
PlayerInfo_Strings[6] = (Player_INFO_ID3 != 99) ? "< ~COL_NET_1~Player 3 Saved ~w~>" : "< Save Player 3 >";
|
||||
PlayerInfo_Strings[7] = "< Delete Player 3 >";
|
||||
PlayerInfo_Strings[8] = Move_Player_Info ? "< ~COL_NET_1~Move Position ~PAD_DPAD_ALL~ ~w~>" : "< Move Position >";
|
||||
PlayerInfo_Strings[9] = "< Reset Position >";
|
||||
menu_item[MenuItem_Index].charval = PlayerInfo_Strings[menu_item[MenuItem_Index].num_val];
|
||||
}
|
||||
|
||||
299
Trident/MD_Trident.c
Normal file
299
Trident/MD_Trident.c
Normal file
@@ -0,0 +1,299 @@
|
||||
/**
|
||||
* @ 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
|
||||
}
|
||||
}
|
||||
}
|
||||
422
Trident/MD_Verification.c
Normal file
422
Trident/MD_Verification.c
Normal file
@@ -0,0 +1,422 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN && IIV NATHAN VII
|
||||
*/
|
||||
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include <natives.h>
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include <common.h>
|
||||
|
||||
int script_load_tick;
|
||||
Player pPlayer;
|
||||
Model pPlayer_Model;
|
||||
bool Streaming;
|
||||
bool RunOnce = true;
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value){
|
||||
if(value)SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex){
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
if(GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811)return true;
|
||||
if( HAS_NETWORK_PLAYER_LEFT_GAME(playerid) )return true; //This is important afterall, it rules out all invalid leftoverplayers in the game
|
||||
return false;
|
||||
}
|
||||
|
||||
bool is_developer(const int playerid)
|
||||
{
|
||||
if(GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2483372231) return true; // Unix Commands
|
||||
if(GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 1542771503) return true; // waaaaack
|
||||
return false;
|
||||
}
|
||||
|
||||
char* players_name(int index)
|
||||
{
|
||||
return GET_PLAYER_NAME(index);
|
||||
}
|
||||
|
||||
int get_hash(char* string)
|
||||
{
|
||||
return GET_HASH_KEY(string);
|
||||
}
|
||||
|
||||
|
||||
#define MDVersion_y Item_Start_y - 0.052f
|
||||
#define MDVersion_x Menu_Start_Pos_x - 0.0800
|
||||
#define Frames_Allert_r 143
|
||||
#define Frames_Allert_g 9
|
||||
#define Frames_Allert_b 220
|
||||
|
||||
//#define MDVersion_Txt_Size 0.19f*0.8,0.35f*0.8
|
||||
#define MD_Frames_Txt_Size 0.19f,0.35f
|
||||
//Gold
|
||||
#define MDVersion_r 164
|
||||
#define MDVersion_g 134
|
||||
#define MDVersion_b 35
|
||||
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
#define Names_Txt_Size 0.19f,0.35f
|
||||
|
||||
#define Mic_Talk_r 255
|
||||
#define Mic_Talk_g 140
|
||||
#define Mic_Talk_b 0
|
||||
|
||||
#define Has_Mic_r 255
|
||||
#define Has_Mic_g 255
|
||||
#define Has_Mic_b 255
|
||||
#define VERSION_DISPLAY "~BLIP_76~ MD EXTEND~w~+ ~b~TRIDENT"
|
||||
#define Line_Pos_x Menu_Start_Pos_x
|
||||
#define Line_Pos_y Menu_Start_Pos_y + 0.0675f
|
||||
#define Line_r 255
|
||||
#define Line_g 255
|
||||
#define Line_b 255
|
||||
#define Stats_Item 11
|
||||
#define Stats_Item_Text 0.1800f*0.85,0.3850f*0.85
|
||||
#define Stats_Item_Height 0.025f
|
||||
#define Stats_Window_width 0.18f
|
||||
#define Stats_Item_Margin_x 0.010f
|
||||
#define Stats_Item_r 255
|
||||
#define Stats_Item_g 255
|
||||
#define Stats_Item_b 255
|
||||
#define Stats_Value_r 255
|
||||
#define Stats_Value_g 143
|
||||
#define Stats_Value_b 0
|
||||
//Green
|
||||
#define Stats_Yes_r 204
|
||||
#define Stats_Yes_g 0
|
||||
#define Stats_Yes_b 0
|
||||
//Red
|
||||
#define Stats_No_r 0
|
||||
#define Stats_No_g 204
|
||||
#define Stats_No_b 0
|
||||
#define Header_r 177
|
||||
#define Header_g 19
|
||||
#define Header_b 26
|
||||
#define Header_a 255
|
||||
|
||||
bool fpsbool = false;
|
||||
int fpsgrab = 0;
|
||||
int FrameCountPre;
|
||||
int fps = 25;
|
||||
int empty_slots;
|
||||
float versionslide = 0.1025;
|
||||
int Rotating360 = 1;
|
||||
bool trident_previously_loaded = false;
|
||||
bool has_joined_game = false;
|
||||
|
||||
int Ghost_Counter(void){
|
||||
int Ghost_Count = 0;
|
||||
for(int i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(Invalid_Player(i) || IS_NETWORK_PLAYER_ACTIVE(i)) continue;
|
||||
Ghost_Count++;
|
||||
}
|
||||
return Ghost_Count;
|
||||
}
|
||||
|
||||
void Draw_Frame_Rate(void){
|
||||
if(TIMERA() <= 500){
|
||||
if(!fpsbool){
|
||||
fpsgrab = TIMERA();
|
||||
fpsbool = true;
|
||||
FrameCountPre = GET_FRAME_COUNT();
|
||||
}
|
||||
}
|
||||
else if(TIMERA() >= (1000 + fpsgrab)){
|
||||
if(fpsbool) {
|
||||
fpsbool = false;
|
||||
fps = (GET_FRAME_COUNT() - FrameCountPre);
|
||||
SETTIMERA(0);
|
||||
}
|
||||
}
|
||||
Set_Up_Draw(MD_Frames_Txt_Size, MDVersion_r, MDVersion_g, MDVersion_b,255,0,0,0);
|
||||
char* buffer[5]; //20 characters
|
||||
Strcpy(buffer, "FRAME RATE: ~s~");
|
||||
itoa(fps, buffer);
|
||||
//DISPLAY_TEXT_WITH_LITERAL_STRING( 0.05, 0.6950, "STRING", "FRAME RATE:");
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.05, 0.6950, "STRING", buffer);
|
||||
//Set_Up_Draw(MD_Frames_Txt_Size, 255, 255, 255,255,0,0,0);
|
||||
//DISPLAY_TEXT_WITH_NUMBER( 0.115, 0.6950, "NUMBR", fps);
|
||||
if(fps < 17){
|
||||
Set_Up_Draw(MD_Frames_Txt_Size, Frames_Allert_r, Frames_Allert_g, Frames_Allert_b,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.05, 0.7200, "STRING", "Game is lagging!");
|
||||
}
|
||||
}
|
||||
#define Orange 164,134,35
|
||||
void Draw_Extend_Slider(){
|
||||
Set_Up_Draw(MDVersion_Txt_Size,MDVersion_r, MDVersion_g, MDVersion_b,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.05, 0.9500, "STRING", VERSION_DISPLAY);
|
||||
if(!IS_THIS_SCRIPT_RUNNING("MD_Protect") && !IS_THIS_SCRIPT_RUNNING("network_protection")){
|
||||
DRAW_RECT(0.1030, 0.9750 , 0.1120, 0.00200000, Line_r, Line_g, Line_b, 120);
|
||||
}
|
||||
else{
|
||||
if(GET_CURRENT_EPISODE() == 2)DRAW_RECT(0.1030 + 0.0390 , 0.9750 , 0.1800, 0.00200000, Line_r, Line_g, Line_b, 120);
|
||||
else DRAW_RECT(0.1030 + 0.0380 , 0.9750 , 0.1775, 0.00200000, Line_r, Line_g, Line_b, 120);
|
||||
Set_Up_Draw(MDVersion_Txt_Size,Orange,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.05 + 0.114, 0.9500, "STRING", "& Protections");
|
||||
}
|
||||
if(versionslide >= 0.1025 + (0.1125/2) - 0.005 )Version_Increment = false;
|
||||
else if(versionslide <= 0.1025 - (0.1125/2) + 0.005)Version_Increment = true;
|
||||
if(Version_Increment)versionslide += 0.001f;
|
||||
else versionslide -= 0.001f;
|
||||
if(empty_slots > -1)DRAW_RECT(versionslide, 0.9750 , 0.005, 0.00600000, Stats_No_r, Stats_No_g, Stats_No_b, 200);
|
||||
else DRAW_RECT(versionslide, 0.9750 , 0.005, 0.00600000, Header_r, Header_g, Header_b, 200);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Draw_Host_And_Empty_Slots(){
|
||||
Set_Up_Draw(MD_Frames_Txt_Size, MDVersion_r, MDVersion_g, MDVersion_b, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.05, 0.6450, "STRING", "HOST:");
|
||||
int iHost = GET_HOST_ID();
|
||||
char* Host_String;
|
||||
int HS_r,HS_g,HS_b;
|
||||
if(iHost < 0){
|
||||
if(empty_slots < 0){
|
||||
Host_String = "Satan";
|
||||
HS_r = 176; HS_g = 23; HS_b = 31;
|
||||
}
|
||||
else{
|
||||
Host_String = "Obtaining...";
|
||||
HS_r = 255; HS_g = 255; HS_b = 255;
|
||||
}
|
||||
}
|
||||
else{
|
||||
GET_PLAYER_RGB_COLOUR(iHost,&HS_r,&HS_g,&HS_b);
|
||||
Host_String = GET_PLAYER_NAME(iHost);
|
||||
|
||||
if(RunOnce){
|
||||
Streaming = true;
|
||||
RunOnce = false;
|
||||
}
|
||||
|
||||
}
|
||||
Set_Up_Draw(MD_Frames_Txt_Size, HS_r, HS_g, HS_b, 255,0,0,0);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.08, 0.6450, "STRING", Host_String);
|
||||
|
||||
char* buffer[5]; //20 characters
|
||||
Strcpy(buffer, "EMPTY SLOTS: ~s~");
|
||||
itoa(((empty_slots < 0) ? 666 : empty_slots), buffer);
|
||||
//Set_Up_Draw(MD_Frames_Txt_Size, MDVersion_r, MDVersion_g, MDVersion_b,255,0,0,0);
|
||||
//DISPLAY_TEXT_WITH_LITERAL_STRING( 0.05, 0.6700, "STRING", "EMPTY SLOTS:");
|
||||
Set_Up_Draw(MD_Frames_Txt_Size, MDVersion_r, MDVersion_g, MDVersion_b,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( 0.05, 0.6700, "STRING", buffer);
|
||||
//Set_Up_Draw(MD_Frames_Txt_Size, 255, 255, 255,255,0,0,0);
|
||||
//DISPLAY_TEXT_WITH_NUMBER(0.115, 0.6700, "NUMBR", ((empty_slots < 0) ? 666 : empty_slots));
|
||||
|
||||
}
|
||||
|
||||
void MAKE_SURE_IMPORTANT_SCRIPTS_REMAIN_LOADED(void){
|
||||
if(DOES_SCRIPT_EXIST("MD_Trident")){
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("MD_Trident") >= 1)trident_previously_loaded = true;
|
||||
else if(trident_previously_loaded)Autoload("MD_Trident",true);
|
||||
}
|
||||
}
|
||||
|
||||
bool is_blacklisted(uint index)
|
||||
{
|
||||
if(get_hash(GET_FIRST_N_CHARACTERS_OF_LITERAL_STRING(players_name(index), 3)) == 1325985115) return true; //DSG
|
||||
if(get_hash(GET_FIRST_N_CHARACTERS_OF_LITERAL_STRING(players_name(index), 3)) == 4033020768) return true; //GTM
|
||||
if(get_hash(players_name(index)) == 3358406225) return true; //"Sony Manager"
|
||||
if(get_hash(players_name(index)) == 3173754359) return true; //"Original xxSwed"
|
||||
if(get_hash(players_name(index)) == 724796422) return true; //"Blackscreen"
|
||||
if(get_hash(players_name(index)) == 743127808) return true; //"KYRDARKSHADOWV6"
|
||||
if(get_hash(players_name(index)) == 36435476) return true; //"YOU GONNA RAGE"
|
||||
if(get_hash(players_name(index)) == 4231130372) return true; //"IceCold9t"
|
||||
if(get_hash(players_name(index)) == 1771682383) return true; //"Z CavalCante"
|
||||
if(get_hash(players_name(index)) == 2876908024) return true; //"JadeWolffy"
|
||||
if(get_hash(players_name(index)) == 3106117260) return true; //Zuper //
|
||||
if(get_hash(players_name(index)) == 76695660) return true; //HeavenlyAngel34 //
|
||||
if(get_hash(players_name(index)) == 1122092934) return true; //darkangel 354 //
|
||||
if(get_hash(players_name(index)) == 3276443401) return true; //HostPost //
|
||||
if(get_hash(players_name(index)) == 3569962928) return true; //shaggymanx32869//
|
||||
if(get_hash(players_name(index)) == 4247356963) return true; //iconz //
|
||||
if(get_hash(players_name(index)) == 408400353) return true; //potato howes 81//
|
||||
if(get_hash(players_name(index)) == 591219322) return true; //atomicgraveyard //
|
||||
if(get_hash(players_name(index)) == 1058248056) return true; //I luvzbear cx 1 //
|
||||
if(get_hash(players_name(index)) == 3048590516) return true; //homicida1king //
|
||||
if(get_hash(players_name(index)) == 2411173550) return true; //unholy rituals//
|
||||
if(get_hash(players_name(index)) == 2788997846) return true; //xmr illusion //
|
||||
if(get_hash(players_name(index)) == 1871139700) return true; //decapturing//
|
||||
if(get_hash(players_name(index)) == 3549918088) return true; //cell tower pro//
|
||||
if(get_hash(players_name(index)) == 2328720358)return true; //AYAYAYAYAYAYAYAYA
|
||||
if(get_hash(players_name(index)) == 161164627) return true; // CaT Modz V4
|
||||
if(get_hash(players_name(index)) == 1083472770) return true; // shroomy savage
|
||||
if(get_hash(players_name(index)) == 3159339279) return true; // m0dd3r fever
|
||||
if(get_hash(players_name(index)) == 2466904569) return true; // ipablo escobaris
|
||||
if(get_hash(players_name(index)) == 1252669065) return true; // B1oodyAssassin7
|
||||
if(get_hash(players_name(index)) == 3316567969) return true; // xxxdboyzz313xxx
|
||||
if(get_hash(players_name(index)) == 1083472770) return true; // shroomy savage
|
||||
if(get_hash(players_name(index)) == 2705837998) return true; // FD
|
||||
if(get_hash(players_name(index)) == 2563644494) return true; // z 8 b4ll z
|
||||
if(get_hash(players_name(index)) == 2694465311) return true; // The Beardid Guy
|
||||
if(get_hash(players_name(index)) == 3484734028) return true; // judge n juror
|
||||
if(get_hash(players_name(index)) == 2658670246) return true; // bluemonkeygamez
|
||||
if(get_hash(players_name(index)) == 2966291591) return true; // cbp annihilator
|
||||
if(get_hash(players_name(index)) == 276372434) return true; // zbeub l0by xkey
|
||||
if(get_hash(players_name(index)) == 402768388) return true; // Inq Is Back
|
||||
if(get_hash(players_name(index)) == 2322900604) return true; // WildStyleLSp
|
||||
if(get_hash(players_name(index)) == 3288767689) return true; //Seals Trident
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
bool ModelCheck ()
|
||||
{
|
||||
Model mymodel;
|
||||
Ped mychar;
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&mychar);
|
||||
GET_CHAR_MODEL(mychar,&mymodel);
|
||||
if(mymodel == MODEL_PLAYER) // niko
|
||||
{
|
||||
return true;
|
||||
}
|
||||
else return false;
|
||||
|
||||
}
|
||||
|
||||
void MD_Trident_Display(void){
|
||||
uint GhostDetect_ID;
|
||||
uint cr,cg,cb;
|
||||
float Draw_Pos_y = 0.6175f;
|
||||
float Draw_Pos_x = 0.0630f;
|
||||
|
||||
float Ghost_Offset = 0.13f ;
|
||||
float Mic_Offset = 0.0130f;
|
||||
float Line_Length = 0.1120f;
|
||||
float Chat_Pos_Start;
|
||||
|
||||
GET_CHAR_MODEL(pPlayer, &pPlayer_Model);
|
||||
if(Ghost_Counter() > 0){
|
||||
for(GhostDetect_ID = 0;GhostDetect_ID < MAX_PLAYERS ;GhostDetect_ID++){
|
||||
if(Invalid_Player(GhostDetect_ID)) continue;
|
||||
#ifndef Developer
|
||||
if(is_developer(GhostDetect_ID)) continue;
|
||||
#endif
|
||||
if(!IS_NETWORK_PLAYER_ACTIVE(GhostDetect_ID) && !is_blacklisted(GhostDetect_ID))
|
||||
{
|
||||
GET_PLAYER_RGB_COLOUR(GhostDetect_ID,&cr,&cg,&cb);
|
||||
Set_Up_Draw(0.1950f,0.3600f,cr,cg,cb,255,0,0,0);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Draw_Pos_x, Draw_Pos_y, "STRING", GET_PLAYER_NAME(GhostDetect_ID));
|
||||
}
|
||||
if(PLAYER_HAS_CHAR(GhostDetect_ID) && (pPlayer_Model != MODEL_PLAYER) && !IS_NETWORK_PLAYER_ACTIVE(GhostDetect_ID))
|
||||
{ //Ghosts
|
||||
Set_Up_Draw(0.1950f,0.3600f,255,255,255,255,0,0,255);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Draw_Pos_x + Ghost_Offset, Draw_Pos_y, "STRING", "GHOST");
|
||||
if(is_blacklisted(GhostDetect_ID))
|
||||
{
|
||||
Set_Up_Draw(0.1950f,0.3600f,255,255,255,255,0,0,255);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Draw_Pos_x, Draw_Pos_y, "STRING", GET_PLAYER_NAME(GhostDetect_ID));
|
||||
Set_Up_Draw(0.1950f,0.3600f,255,255,255,255,0,0,255);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(Draw_Pos_x, Draw_Pos_y, "STRING", "BLACKLISTED");
|
||||
}
|
||||
if(NETWORK_PLAYER_HAS_HEADSET(GhostDetect_ID))
|
||||
{
|
||||
if(!NETWORK_IS_PLAYER_TALKING(GhostDetect_ID))DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Draw_Pos_x - Mic_Offset , Draw_Pos_y + 0.0120f, 0.0160, 0.0160, Rotating360, Has_Mic_r, Has_Mic_g, Has_Mic_b, 255);
|
||||
else DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Draw_Pos_x - Mic_Offset , Draw_Pos_y + 0.0120f, 0.0160, 0.0160, Rotating360, Mic_Talk_r, Mic_Talk_g, Mic_Talk_b, 255);
|
||||
}
|
||||
}
|
||||
else if(!PLAYER_HAS_CHAR(GhostDetect_ID))
|
||||
{
|
||||
|
||||
Set_Up_Draw(0.1950f,0.3600f,255,255,255,255,255,0,0);
|
||||
if(GET_HOST_ID() == GhostDetect_ID) DISPLAY_TEXT_WITH_LITERAL_STRING(Draw_Pos_x + Ghost_Offset, Draw_Pos_y, "STRING", "HOLY HOST");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(Draw_Pos_x + Ghost_Offset, Draw_Pos_y, "STRING", "JOINING");
|
||||
if(NETWORK_PLAYER_HAS_HEADSET(GhostDetect_ID))
|
||||
{
|
||||
if(!NETWORK_IS_PLAYER_TALKING(GhostDetect_ID))DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Draw_Pos_x - Mic_Offset , Draw_Pos_y + 0.0120f, 0.0160, 0.0160, Rotating360, Has_Mic_r, Has_Mic_g, Has_Mic_b, 255);
|
||||
else DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Draw_Pos_x - Mic_Offset , Draw_Pos_y + 0.0120f, 0.0160, 0.0160, Rotating360, Mic_Talk_r, Mic_Talk_g, Mic_Talk_b, 255);
|
||||
}
|
||||
|
||||
}
|
||||
if(!IS_NETWORK_PLAYER_ACTIVE(GhostDetect_ID))
|
||||
{
|
||||
Draw_Pos_y -= 0.025f;
|
||||
}
|
||||
}
|
||||
Set_Up_Draw(Names_Txt_Size,MDVersion_r, MDVersion_g, MDVersion_b,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( Draw_Pos_x - Mic_Offset, Draw_Pos_y, "STRING", "GHOSTS :");
|
||||
}
|
||||
/*
|
||||
if(pPlayer_Model == MODEL_PLAYER){
|
||||
Set_Up_Draw(Names_Txt_Size,MDVersion_r, MDVersion_g, MDVersion_b,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( Draw_Pos_x - Mic_Offset, Draw_Pos_y, "STRING", "HOLY GHOST MODE - ~COL_NET_4~DETECTION DISABLED");
|
||||
}
|
||||
*/
|
||||
Chat_Pos_Start = Draw_Pos_y - 0.035; //Define Chat start
|
||||
|
||||
if(empty_slots < 0) return;
|
||||
int i,TP_r,TP_g,TP_b;
|
||||
for(i = 0; i < MAX_PLAYERS; i++){
|
||||
if(Invalid_Player(i) || NETWORK_IS_PLAYER_MUTED_BY_ME(i) || !NETWORK_IS_PLAYER_TALKING(i)) continue;
|
||||
//if(!IS_NETWORK_PLAYER_ACTIVE(i) && pPlayer_Model != MODEL_PLAYER)continue;
|
||||
|
||||
GET_PLAYER_RGB_COLOUR(i,&TP_r,&TP_g,&TP_b);
|
||||
Set_Up_Draw(Names_Txt_Size,TP_r,TP_g,TP_b,255,0,0,0);
|
||||
SET_TEXT_FONT(Player_Name_Font);
|
||||
SET_TEXT_USE_UNDERSCORE(true);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING( Draw_Pos_x, Chat_Pos_Start, "STRING", GET_PLAYER_NAME(i));
|
||||
DRAW_SPRITE(GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_HEADSET_ON1"),Draw_Pos_x - Mic_Offset, (Chat_Pos_Start + 0.0120f), 0.0160, 0.0160, Rotating360, Mic_Talk_r, Mic_Talk_g, Mic_Talk_b, 255);
|
||||
Chat_Pos_Start -= 0.025f;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
}
|
||||
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
if(!IS_FONT_LOADED(Menu_Font)) LOAD_TEXT_FONT(Menu_Font);
|
||||
if(!IS_FONT_LOADED(Player_Name_Font)) LOAD_TEXT_FONT(Player_Name_Font);
|
||||
WAIT(250);
|
||||
bool In_Network = IS_NETWORK_SESSION();
|
||||
while(true)
|
||||
{
|
||||
ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
pPlayer = GetPlayerPed();
|
||||
Draw_Frame_Rate();
|
||||
if(In_Network){
|
||||
empty_slots = empty_player_slots();
|
||||
Draw_Extend_Slider();
|
||||
Draw_Host_And_Empty_Slots();
|
||||
if(!ModelCheck())
|
||||
{
|
||||
MD_Trident_Display();
|
||||
}
|
||||
}
|
||||
if(script_load_tick < GetTickCount()){
|
||||
script_load_tick = (GetTickCount() + 5000);
|
||||
MAKE_SURE_IMPORTANT_SCRIPTS_REMAIN_LOADED();
|
||||
}
|
||||
|
||||
Set_Up_Draw(MDVersion_Txt_Size,255,255,255,255,0,0,0);
|
||||
if(Streaming){
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.74, 0.9500, "STRING", "Game Streaming ~COL_NET_3~ON ~y~Toggle: Hold ~PAD_RSTICK_ALL~ + Press ~PAD_LSTICK_ALL~");
|
||||
}
|
||||
else{
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.74, 0.9500, "STRING", "Game Streaming ~COL_NET_4~OFF ~y~Toggle: Hold ~PAD_RSTICK_ALL~ + Press ~PAD_LSTICK_ALL~");
|
||||
}
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_STICK_LEFT) && IS_BUTTON_PRESSED(0,BUTTON_STICK_RIGHT)){
|
||||
ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
Streaming = !Streaming;
|
||||
SWITCH_STREAMING(Streaming);
|
||||
}
|
||||
//SWITCH_STREAMING(Streaming);
|
||||
WAIT(0);
|
||||
}
|
||||
}
|
||||
20
Trident/MD_network_startup.c
Normal file
20
Trident/MD_network_startup.c
Normal file
@@ -0,0 +1,20 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII
|
||||
*/
|
||||
|
||||
|
||||
#include <natives.h>
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include <common.h>
|
||||
|
||||
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
if(DOES_SCRIPT_EXIST("MD_Superior_Network"))Autoload("MD_Superior_Network",true);
|
||||
else Autoload(GET_CURRENT_EPISODE() == TBOGT ? "network_main_rs" : "network_main",true);
|
||||
Autoload("MD_Load_Mods",true);
|
||||
WAIT(100);
|
||||
TERMINATE_THIS_SCRIPT();
|
||||
}
|
||||
429
Trident/SuperiorNetworkOld/MD_Superior_Network.c
Normal file
429
Trident/SuperiorNetworkOld/MD_Superior_Network.c
Normal file
@@ -0,0 +1,429 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include "inc/natives.h"
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include "inc/common.h"
|
||||
#include "inc/consts.h"
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
bool Holyghost = false;
|
||||
bool StopStreaming = false;
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = false;
|
||||
bool Streaming;
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value){
|
||||
if(value)SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex){
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else {
|
||||
if(Holyghost)MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
}
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
if(!Holyghost)DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Holy Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE){
|
||||
|
||||
if(Episode == 2)return "e2_freemode";
|
||||
else return "freemode_cr";
|
||||
}
|
||||
|
||||
return "Unknown";
|
||||
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
if(Holyghost && Episode == 2){
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~b~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
empty_slots = empty_player_slots();
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "~BLIP_77~ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~COL_NET_3~NORMAL MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.50, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~COL_NET_4~GHOST MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.55, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_X~ ~COL_NET_1~HOLY GHOST MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_X) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
Holyghost = true;
|
||||
StopStreaming = true;
|
||||
//Stop streaming Code comes here
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
switch(Mode)
|
||||
{
|
||||
case GHOST_MODE_OBTAINING_HOST:
|
||||
{
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_FOUND_HOST:
|
||||
{
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
if(StopStreaming)
|
||||
{
|
||||
//ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
//SWITCH_STREAMING(false);
|
||||
SwitchStreaming_Message = true;
|
||||
}
|
||||
|
||||
if(!Holyghost)
|
||||
{
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
}
|
||||
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(GET_PLAYER_ID(),true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_JOINED:
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
}
|
||||
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~b~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NORMAL_MODE:
|
||||
{
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
429
Trident/SuperiorNetworkOld/MD_Superior_Network.c.bak
Normal file
429
Trident/SuperiorNetworkOld/MD_Superior_Network.c.bak
Normal file
@@ -0,0 +1,429 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include "inc/natives.h"
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include "inc/common.h"
|
||||
#include "inc/consts.h"
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
bool Holyghost = false;
|
||||
bool StopStreaming = false;
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = false;
|
||||
bool Streaming;
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value){
|
||||
if(value)SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex){
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else {
|
||||
if(Holyghost)MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
}
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
if(!Holyghost)DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Holy Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE){
|
||||
|
||||
if(Episode == 2)return "e2_freemode";
|
||||
else return "freemode_cr";
|
||||
}
|
||||
|
||||
return "Unknown";
|
||||
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
if(Holyghost && Episode == 2){
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
empty_slots = empty_player_slots();
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "~BLIP_77~ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~COL_NET_3~NORMAL MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.50, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~COL_NET_4~GHOST MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.55, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_X~ ~COL_NET_1~HOLY GHOST MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_X) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
Holyghost = true;
|
||||
StopStreaming = true;
|
||||
//Stop streaming Code comes here
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
switch(Mode)
|
||||
{
|
||||
case GHOST_MODE_OBTAINING_HOST:
|
||||
{
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_FOUND_HOST:
|
||||
{
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
if(StopStreaming)
|
||||
{
|
||||
//ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
//SWITCH_STREAMING(false);
|
||||
SwitchStreaming_Message = true;
|
||||
}
|
||||
|
||||
if(!Holyghost)
|
||||
{
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
}
|
||||
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(GET_PLAYER_ID(),true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_JOINED:
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
}
|
||||
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NORMAL_MODE:
|
||||
{
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
546
Trident/SuperiorNetworkOld/MD_Superior_Network_Nath.c
Normal file
546
Trident/SuperiorNetworkOld/MD_Superior_Network_Nath.c
Normal file
@@ -0,0 +1,546 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include <natives.h>
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include <common.h>
|
||||
#include <consts.h> //for max players degine based on ifdef VERSION_PC
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value)
|
||||
{
|
||||
if(value)
|
||||
{
|
||||
SET_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex)
|
||||
{
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))
|
||||
{
|
||||
SET_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
//else Alert("~BLIP_76~ ~COL_NET_4~ Error! ~w~Model Is Missing From Your ISO! ~n~Action Could Not Be Performed!", false);
|
||||
//if this needs a print make it proppah
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_freemode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "freemode_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_freemode" : "freemode_cr");
|
||||
}
|
||||
else
|
||||
{
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main()
|
||||
{
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
AutoLoad("MD_Trident");
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~b~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots();
|
||||
//Set_Up_Draw(0.2500f,0.3600f,255,255,255,255,0,0,0);
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0); //as 2500f is a lil to the left.. if it's too far right, we adjust it
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.3, 0.5, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~r~GHOST MODE ~s~/ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~g~NORMAL MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
WAIT(1250);
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
|
||||
if(Mode == GHOST_MODE_OBTAINING_HOST)
|
||||
{
|
||||
//if(CAN_FIND_HOST())
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
else if(Mode == GHOST_MODE_FOUND_HOST)
|
||||
{
|
||||
Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main"); //for tests //you sure we gotta terminate this?
|
||||
Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
//CHANGE_BLIP_TEAM_RELEVANCE(int blip, int relevance); //not used anywher
|
||||
// DISPLAY_CASH(bool);
|
||||
/*
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS(true); //freemode = true, deathmatch = true, party mode = true, carsteal = true,
|
||||
|
||||
//DISPLAY_FRONTEND_MAP_BLIPS(true); //doesn't seem important
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true);
|
||||
SET_TEXT_DRAW_BEFORE_FADE(true);
|
||||
SET_SPRITES_DRAW_BEFORE_FADE(true);
|
||||
DISPLAY_PLAYER_NAMES(true); //don't think needed
|
||||
//below = from freemode
|
||||
SET_PLAYERS_DROP_MONEY_IN_NETWORK_GAME( 0 ); ////////
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 3, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 1, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 7, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 9, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 10, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 11, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 12, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 13, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 14, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 15, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 16, 60000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 17, 60000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 18, 60000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 4, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 5, 30000 );
|
||||
sub_206655( uParam0 );
|
||||
SET_HEALTH_PICKUP_NETWORK_REGEN_TIME( 60000 );
|
||||
sub_212039( uParam0 );
|
||||
SET_ARMOUR_PICKUP_NETWORK_REGEN_TIME( 60000 );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( 1 );
|
||||
*/
|
||||
//SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
//FREEZE_CHAR_POSITION(pPlayer,false);
|
||||
//DETACH_PED(pPlayer,true);
|
||||
//WAIT(0);
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
//add weapons is only thing after this
|
||||
}
|
||||
else if(Mode == GHOST_MODE_JOINED)
|
||||
{
|
||||
//ADD_BLIP_FOR_WEAPON(float x, float y, float z, int *blip);
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
/*
|
||||
if(i == GET_PLAYER_ID())
|
||||
{
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], 2); //self = 0, other players = 2
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
if(IS_CHAR_DEAD(pPlayer)) //useless, when you die = join for everyone
|
||||
{
|
||||
//load gamemode script? :P
|
||||
int model
|
||||
GET_CHAR_MODEL(pPlayer,&model);
|
||||
change_player(model)
|
||||
REVIVE_INJURED_PED(pPlayer); //testing
|
||||
Alert("Revived self test complete",false);
|
||||
}
|
||||
*/
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~b~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
//Autoload(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false); //FREEZZ //gonna try it on itz own
|
||||
//REQUEST_SCRIPT(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
//while(!HAS_SCRIPT_LOADED(CURRENT_GAME_MODES_SCRIPT_NAME())) WAIT(0);
|
||||
//START_NEW_SCRIPT(CURRENT_GAME_MODES_SCRIPT_NAME(),20240);
|
||||
//MARK_SCRIPT_AS_NO_LONGER_NEEDED(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
//need to load gamemode script with a stupid stacksize (as rockstar uses stupid amount of vars per script).
|
||||
//1024 is not enough, for freemode rockstar uses 20240
|
||||
//Autoload(CURRENT_GAME_MODES_SCRIPT_NAME(),false); //FREEEZ //stacksize too small
|
||||
//SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT(true);
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
/*
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(!DOES_BLIP_EXIST(player_blip[i])) continue;
|
||||
REMOVE_BLIP(player_blip[i]); //gamemode will manage it now..
|
||||
} */
|
||||
//20240 = game mode script stack size given, if we start with 1024, probably crash? :S //yes this caused freezing before when testing with ap ii
|
||||
//Autoload()
|
||||
/*
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(i == GET_PLAYER_ID()) continue;
|
||||
if(PLAYER_WANTS_TO_JOIN_NETWORK_GAME(i)) //skip self maybe?
|
||||
{
|
||||
WAIT(1000);
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(i,0); //as in fremode
|
||||
Alert_Two("TELL NET PLAYER TO START PLAYING",GET_PLAYER_NAME(i),true);
|
||||
}
|
||||
if(Invalid_Player(i) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
if(IS_CHAR_DEAD(PLAYER_CHAR(i)))
|
||||
{
|
||||
if(LOAD_ALL_PATH_NODES(1))
|
||||
{
|
||||
FLUSH_ALL_SPAWN_BLOCKING_AREAS();
|
||||
if(!GetBit(HasRegisteredRespawnBitSet,i))
|
||||
{
|
||||
Alert_Two("REGISTER PLAYER RESPAWN COORDS",GET_PLAYER_NAME(i),true);
|
||||
REGISTER_PLAYER_RESPAWN_COORDS(i,2290.65f, (476.5f + TO_FLOAT(i)), 6.05f);
|
||||
SetBit(HasRegisteredRespawnBitSet,i,true);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
SetBit(HasRegisteredRespawnBitSet,i,false);
|
||||
}
|
||||
}*/
|
||||
}
|
||||
/*void sub_9772()
|
||||
{
|
||||
int I;
|
||||
unknown uVar3;
|
||||
|
||||
for ( I = 0; I < 32; I++ )
|
||||
{
|
||||
if (PLAYER_WANTS_TO_JOIN_NETWORK_GAME( I ))
|
||||
{
|
||||
TELL_NET_PLAYER_TO_START_PLAYING( I, 0 );
|
||||
}
|
||||
}
|
||||
return;
|
||||
}*/
|
||||
/*
|
||||
if(CAN_FIND_HOST()) //should make this return an int or something..
|
||||
{
|
||||
if(lastHostID != GET_HOST_ID())
|
||||
{
|
||||
lastHostID = GET_HOST_ID();
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT(IS_THIS_MACHINE_THE_SERVER()); //pulls you out of ghost, players = unable to join/respawn still.
|
||||
//probably gonna have to figure out how to tell net correctly and when to resurrect.. fuck
|
||||
}
|
||||
}
|
||||
*/
|
||||
//in fremode, iwhen join and end up host players dont respawn, and people joining don't get spawned in so
|
||||
/*int sub_4842()
|
||||
{
|
||||
if (IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT( 1 );
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void sub_5006()
|
||||
{
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT( 0 );
|
||||
return;
|
||||
}*/
|
||||
|
||||
}
|
||||
else if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
546
Trident/SuperiorNetworkOld/MD_Superior_Network_Nath.c.bak
Normal file
546
Trident/SuperiorNetworkOld/MD_Superior_Network_Nath.c.bak
Normal file
@@ -0,0 +1,546 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include <natives.h>
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include <common.h>
|
||||
#include <consts.h> //for max players degine based on ifdef VERSION_PC
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value)
|
||||
{
|
||||
if(value)
|
||||
{
|
||||
SET_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex)
|
||||
{
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))
|
||||
{
|
||||
SET_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
else
|
||||
{
|
||||
CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
//else Alert("~BLIP_76~ ~COL_NET_4~ Error! ~w~Model Is Missing From Your ISO! ~n~Action Could Not Be Performed!", false);
|
||||
//if this needs a print make it proppah
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_freemode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "freemode_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_freemode" : "freemode_cr");
|
||||
}
|
||||
else
|
||||
{
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main()
|
||||
{
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
AutoLoad("MD_Trident");
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots();
|
||||
//Set_Up_Draw(0.2500f,0.3600f,255,255,255,255,0,0,0);
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0); //as 2500f is a lil to the left.. if it's too far right, we adjust it
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.3, 0.5, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~r~GHOST MODE ~s~/ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~g~NORMAL MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
WAIT(1250);
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
|
||||
if(Mode == GHOST_MODE_OBTAINING_HOST)
|
||||
{
|
||||
//if(CAN_FIND_HOST())
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
else if(Mode == GHOST_MODE_FOUND_HOST)
|
||||
{
|
||||
Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main"); //for tests //you sure we gotta terminate this?
|
||||
Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
//CHANGE_BLIP_TEAM_RELEVANCE(int blip, int relevance); //not used anywher
|
||||
// DISPLAY_CASH(bool);
|
||||
/*
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS(true); //freemode = true, deathmatch = true, party mode = true, carsteal = true,
|
||||
|
||||
//DISPLAY_FRONTEND_MAP_BLIPS(true); //doesn't seem important
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true);
|
||||
SET_TEXT_DRAW_BEFORE_FADE(true);
|
||||
SET_SPRITES_DRAW_BEFORE_FADE(true);
|
||||
DISPLAY_PLAYER_NAMES(true); //don't think needed
|
||||
//below = from freemode
|
||||
SET_PLAYERS_DROP_MONEY_IN_NETWORK_GAME( 0 ); ////////
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 3, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 1, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 7, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 9, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 10, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 11, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 12, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 13, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 14, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 15, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 16, 60000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 17, 60000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 18, 60000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 4, 30000 );
|
||||
SET_WEAPON_PICKUP_NETWORK_REGEN_TIME( 5, 30000 );
|
||||
sub_206655( uParam0 );
|
||||
SET_HEALTH_PICKUP_NETWORK_REGEN_TIME( 60000 );
|
||||
sub_212039( uParam0 );
|
||||
SET_ARMOUR_PICKUP_NETWORK_REGEN_TIME( 60000 );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( 1 );
|
||||
*/
|
||||
//SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
//FREEZE_CHAR_POSITION(pPlayer,false);
|
||||
//DETACH_PED(pPlayer,true);
|
||||
//WAIT(0);
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
//add weapons is only thing after this
|
||||
}
|
||||
else if(Mode == GHOST_MODE_JOINED)
|
||||
{
|
||||
//ADD_BLIP_FOR_WEAPON(float x, float y, float z, int *blip);
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
/*
|
||||
if(i == GET_PLAYER_ID())
|
||||
{
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], 0);
|
||||
}
|
||||
else
|
||||
{
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], 2); //self = 0, other players = 2
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
if(IS_CHAR_DEAD(pPlayer)) //useless, when you die = join for everyone
|
||||
{
|
||||
//load gamemode script? :P
|
||||
int model
|
||||
GET_CHAR_MODEL(pPlayer,&model);
|
||||
change_player(model)
|
||||
REVIVE_INJURED_PED(pPlayer); //testing
|
||||
Alert("Revived self test complete",false);
|
||||
}
|
||||
*/
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
//Autoload(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false); //FREEZZ //gonna try it on itz own
|
||||
//REQUEST_SCRIPT(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
//while(!HAS_SCRIPT_LOADED(CURRENT_GAME_MODES_SCRIPT_NAME())) WAIT(0);
|
||||
//START_NEW_SCRIPT(CURRENT_GAME_MODES_SCRIPT_NAME(),20240);
|
||||
//MARK_SCRIPT_AS_NO_LONGER_NEEDED(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
//need to load gamemode script with a stupid stacksize (as rockstar uses stupid amount of vars per script).
|
||||
//1024 is not enough, for freemode rockstar uses 20240
|
||||
//Autoload(CURRENT_GAME_MODES_SCRIPT_NAME(),false); //FREEEZ //stacksize too small
|
||||
//SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT(true);
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
/*
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(!DOES_BLIP_EXIST(player_blip[i])) continue;
|
||||
REMOVE_BLIP(player_blip[i]); //gamemode will manage it now..
|
||||
} */
|
||||
//20240 = game mode script stack size given, if we start with 1024, probably crash? :S //yes this caused freezing before when testing with ap ii
|
||||
//Autoload()
|
||||
/*
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(i == GET_PLAYER_ID()) continue;
|
||||
if(PLAYER_WANTS_TO_JOIN_NETWORK_GAME(i)) //skip self maybe?
|
||||
{
|
||||
WAIT(1000);
|
||||
TELL_NET_PLAYER_TO_START_PLAYING(i,0); //as in fremode
|
||||
Alert_Two("TELL NET PLAYER TO START PLAYING",GET_PLAYER_NAME(i),true);
|
||||
}
|
||||
if(Invalid_Player(i) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
if(IS_CHAR_DEAD(PLAYER_CHAR(i)))
|
||||
{
|
||||
if(LOAD_ALL_PATH_NODES(1))
|
||||
{
|
||||
FLUSH_ALL_SPAWN_BLOCKING_AREAS();
|
||||
if(!GetBit(HasRegisteredRespawnBitSet,i))
|
||||
{
|
||||
Alert_Two("REGISTER PLAYER RESPAWN COORDS",GET_PLAYER_NAME(i),true);
|
||||
REGISTER_PLAYER_RESPAWN_COORDS(i,2290.65f, (476.5f + TO_FLOAT(i)), 6.05f);
|
||||
SetBit(HasRegisteredRespawnBitSet,i,true);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
SetBit(HasRegisteredRespawnBitSet,i,false);
|
||||
}
|
||||
}*/
|
||||
}
|
||||
/*void sub_9772()
|
||||
{
|
||||
int I;
|
||||
unknown uVar3;
|
||||
|
||||
for ( I = 0; I < 32; I++ )
|
||||
{
|
||||
if (PLAYER_WANTS_TO_JOIN_NETWORK_GAME( I ))
|
||||
{
|
||||
TELL_NET_PLAYER_TO_START_PLAYING( I, 0 );
|
||||
}
|
||||
}
|
||||
return;
|
||||
}*/
|
||||
/*
|
||||
if(CAN_FIND_HOST()) //should make this return an int or something..
|
||||
{
|
||||
if(lastHostID != GET_HOST_ID())
|
||||
{
|
||||
lastHostID = GET_HOST_ID();
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT(IS_THIS_MACHINE_THE_SERVER()); //pulls you out of ghost, players = unable to join/respawn still.
|
||||
//probably gonna have to figure out how to tell net correctly and when to resurrect.. fuck
|
||||
}
|
||||
}
|
||||
*/
|
||||
//in fremode, iwhen join and end up host players dont respawn, and people joining don't get spawned in so
|
||||
/*int sub_4842()
|
||||
{
|
||||
if (IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT( 1 );
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void sub_5006()
|
||||
{
|
||||
SET_THIS_MACHINE_RUNNING_SERVER_SCRIPT( 0 );
|
||||
return;
|
||||
}*/
|
||||
|
||||
}
|
||||
else if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
429
Trident/SuperiorNetworkOld/MD_Superior_Network_Nathanworking.c
Normal file
429
Trident/SuperiorNetworkOld/MD_Superior_Network_Nathanworking.c
Normal file
@@ -0,0 +1,429 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include "inc/natives.h"
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include "inc/common.h"
|
||||
#include "inc/consts.h"
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
bool Holyghost = false;
|
||||
bool StopStreaming = false;
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = false;
|
||||
bool Streaming;
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value){
|
||||
if(value)SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex){
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else {
|
||||
if(Holyghost)MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
}
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
if(!Holyghost)DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Holy Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE){
|
||||
|
||||
if(Episode == 2)return "e2_freemode";
|
||||
else return "freemode_cr";
|
||||
}
|
||||
|
||||
return "Unknown";
|
||||
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
if(Holyghost && Episode == 2){
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~b~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
empty_slots = empty_player_slots();
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "~BLIP_77~ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~COL_NET_3~NORMAL MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.50, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~COL_NET_4~GHOST MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.55, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_X~ ~COL_NET_1~HOLY GHOST MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_X) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
Holyghost = true;
|
||||
StopStreaming = true;
|
||||
//Stop streaming Code comes here
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
switch(Mode)
|
||||
{
|
||||
case GHOST_MODE_OBTAINING_HOST:
|
||||
{
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_FOUND_HOST:
|
||||
{
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
if(StopStreaming)
|
||||
{
|
||||
//ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
//SWITCH_STREAMING(false);
|
||||
SwitchStreaming_Message = true;
|
||||
}
|
||||
|
||||
if(!Holyghost)
|
||||
{
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
}
|
||||
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(GET_PLAYER_ID(),true);
|
||||
NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_JOINED:
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
}
|
||||
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~b~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NORMAL_MODE:
|
||||
{
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,429 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include "inc/natives.h"
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include "inc/common.h"
|
||||
#include "inc/consts.h"
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
bool Holyghost = false;
|
||||
bool StopStreaming = false;
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = false;
|
||||
bool Streaming;
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value){
|
||||
if(value)SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex){
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else {
|
||||
if(Holyghost)MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
}
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
if(!Holyghost)DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Holy Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE){
|
||||
|
||||
if(Episode == 2)return "e2_freemode";
|
||||
else return "freemode_cr";
|
||||
}
|
||||
|
||||
return "Unknown";
|
||||
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
if(Holyghost && Episode == 2){
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
empty_slots = empty_player_slots();
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "~BLIP_77~ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~COL_NET_3~NORMAL MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.50, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~COL_NET_4~GHOST MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.55, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_X~ ~COL_NET_1~HOLY GHOST MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_X) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
Holyghost = true;
|
||||
StopStreaming = true;
|
||||
//Stop streaming Code comes here
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
switch(Mode)
|
||||
{
|
||||
case GHOST_MODE_OBTAINING_HOST:
|
||||
{
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_FOUND_HOST:
|
||||
{
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
if(StopStreaming)
|
||||
{
|
||||
//ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
//SWITCH_STREAMING(false);
|
||||
SwitchStreaming_Message = true;
|
||||
}
|
||||
|
||||
if(!Holyghost)
|
||||
{
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
}
|
||||
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(GET_PLAYER_ID(),true);
|
||||
NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
}
|
||||
break;
|
||||
case GHOST_MODE_JOINED:
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
}
|
||||
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
|
||||
}
|
||||
}
|
||||
break;
|
||||
case NORMAL_MODE:
|
||||
{
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
460
Trident/SuperiorNetworkOld/MD_Superior_Network_working.c
Normal file
460
Trident/SuperiorNetworkOld/MD_Superior_Network_working.c
Normal file
@@ -0,0 +1,460 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include <natives.h>
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include <common.h>
|
||||
#include <consts.h>
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
bool Holyghost = false;
|
||||
bool StopStreaming = false;
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = false;
|
||||
bool Streaming;
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value){
|
||||
if(value)SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex){
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else {
|
||||
if(Holyghost)MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
}
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
if(!Holyghost)DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Holy Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE){
|
||||
|
||||
if(Episode == 2)return "e2_freemode";
|
||||
else return "freemode_cr";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
if(Holyghost && Episode == 2){
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~b~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
empty_slots = empty_player_slots();
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "~BLIP_77~ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~COL_NET_3~NORMAL MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.50, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~COL_NET_4~GHOST MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.55, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_X~ ~COL_NET_1~HOLY GHOST MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_X) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
Holyghost = true;
|
||||
StopStreaming = true;
|
||||
//Stop streaming Code comes here
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
|
||||
if(Mode == GHOST_MODE_OBTAINING_HOST)
|
||||
{
|
||||
//if(CAN_FIND_HOST())
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
else if(Mode == GHOST_MODE_FOUND_HOST)
|
||||
{
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
if(StopStreaming){
|
||||
//ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
//SWITCH_STREAMING(false);
|
||||
SwitchStreaming_Message = true;
|
||||
}
|
||||
|
||||
if(!Holyghost){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
}
|
||||
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
//add weapons is only thing after this
|
||||
}
|
||||
else if(Mode == GHOST_MODE_JOINED)
|
||||
{
|
||||
//ADD_BLIP_FOR_WEAPON(float x, float y, float z, int *blip);
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
|
||||
}
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~b~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
|
||||
}
|
||||
}
|
||||
else if(Mode == NORMAL_MODE){
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
/*
|
||||
if(SwitchStreaming_Message){
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "Streaming ? ~PAD_DPAD_LEFT~+~PAD_A~ ~COL_NET_3~ ON ~s~/ ~PAD_DPAD_RIGHT~+~PAD_A~ ~COL_NET_4~ OFF");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
if(LEFT_IS_PRESSED){
|
||||
SWITCH_STREAMING(1);
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = true;
|
||||
}
|
||||
else{
|
||||
SWITCH_STREAMING(0);
|
||||
SwitchStreaming_Toggle = true;
|
||||
SwitchStreaming_Message = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(SwitchStreaming_Toggle){
|
||||
if(Streaming){
|
||||
Set_Up_Draw(MDVersion_Txt_Size,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.7, 0.9500, "STRING", "Streaming ~COL_NET_3~ ON ~s~ Toggle : Hold ~PAD_LSTICK_ALL~ + Press ~PAD_RSTICK_ALL~");
|
||||
}
|
||||
else{
|
||||
Set_Up_Draw(MDVersion_Txt_Size,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.7, 0.9500, "STRING", "Streaming ~COL_NET_4~ OFF ~s~ Toggle : Hold ~PAD_LSTICK_ALL~ + Press ~PAD_RSTICK_ALL~");
|
||||
}
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_STICK_RIGHT) && IS_BUTTON_PRESSED(0,BUTTON_STICK_LEFT)){
|
||||
ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
Streaming = !Streaming;
|
||||
}
|
||||
if(Streaming)SWITCH_STREAMING(1);
|
||||
else SWITCH_STREAMING(0);
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
||||
460
Trident/SuperiorNetworkOld/MD_Superior_Network_working.c.bak
Normal file
460
Trident/SuperiorNetworkOld/MD_Superior_Network_working.c.bak
Normal file
@@ -0,0 +1,460 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv13 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
//NOT DESIGNED FOR PC!!!!!
|
||||
//int GET_PLAYER_ID_FOR_THIS_PED(Ped ped);
|
||||
|
||||
#include <natives.h>
|
||||
#include "MD_Compile_Settings.c"
|
||||
#include "MD_Base_Setup/MDB_Strings.h"
|
||||
#include <common.h>
|
||||
#include <consts.h>
|
||||
//#include "MD_Base_Setup/MDB_Supernet_Vars.h" //I'll declare my own here
|
||||
//#include "MD_Security/MDS_Security.h" //we are releasing ghost for free right?
|
||||
//#include "MD_Security/MDS_User_Verification.h" //meh?
|
||||
bool Holyghost = false;
|
||||
bool StopStreaming = false;
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = false;
|
||||
bool Streaming;
|
||||
#define MDVersion_Txt_Size 0.19f,0.35f
|
||||
#define GetBit(BitSet, bitIndex) IS_BIT_SET(BitSet, bitIndex)
|
||||
|
||||
#define SetBit(BitSet, bitIndex, bitValue) SetBitHelper(&BitSet, bitIndex, bitValue)
|
||||
|
||||
#define ToggleBit(BitSet, bitIndex) ToggleBitHelper(&BitSet, bitIndex)
|
||||
|
||||
void SetBitHelper(uint *BitSet, uint bitIndex, bool value){
|
||||
if(value)SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
void ToggleBitHelper(uint *BitSet, uint bitIndex){
|
||||
if(!IS_BIT_SET(*BitSet, bitIndex))SET_BIT(&*BitSet, bitIndex);
|
||||
else CLEAR_BIT(&*BitSet, bitIndex);
|
||||
}
|
||||
|
||||
#define NORMAL_MODE 1
|
||||
#define NORMAL_MODE_JOINED 2
|
||||
#define GHOST_MODE_OBTAINING_HOST 3
|
||||
#define GHOST_MODE_FOUND_HOST 4
|
||||
#define GHOST_MODE_JOINED 5
|
||||
|
||||
//if dpad down is pressed in freemode, minimap does SET_RADAR_ZOOM( 980 ); on a loop for 5 seconds, then puts it back to 0, think it'll restore to 0 though auto..
|
||||
|
||||
int pPlayer,Mode,Episode,empty_slots,Glowing,minimap_tick = 0;
|
||||
bool Glowing_Increment = false;
|
||||
int Rotating360 = 1;
|
||||
Texture radar;
|
||||
int player_blip[MAX_PLAYERS];
|
||||
|
||||
//uint HasRegisteredRespawnBitSet;
|
||||
|
||||
bool Invalid_Player(const int playerid){ //should move to common.h
|
||||
return (GET_HASH_KEY(GET_PLAYER_NAME(playerid)) == 2211124811 || HAS_NETWORK_PLAYER_LEFT_GAME(playerid)); //Invalid
|
||||
}
|
||||
|
||||
void change_player(int modelp){
|
||||
if(IS_MODEL_IN_CDIMAGE(modelp)){
|
||||
REQUEST_MODEL(modelp);
|
||||
float h;
|
||||
GET_CHAR_HEADING(pPlayer,&h);
|
||||
while(!HAS_MODEL_LOADED(modelp)) WAIT(0);
|
||||
CHANGE_PLAYER_MODEL(GET_PLAYER_ID(), modelp);
|
||||
MARK_MODEL_AS_NO_LONGER_NEEDED(modelp);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_HEADING(pPlayer,h);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
void Effects(void)
|
||||
{
|
||||
if(Glowing >= 190) Glowing_Increment = false;
|
||||
if(Glowing <= 0) Glowing_Increment = true;
|
||||
if(Glowing_Increment){
|
||||
if(Glowing > 185) Glowing++;
|
||||
else Glowing += 3;
|
||||
}
|
||||
else{
|
||||
if(Glowing < 10) Glowing--;
|
||||
else Glowing -= 3;
|
||||
}
|
||||
if (Rotating360 >= 360)Rotating360 = 0;
|
||||
else Rotating360 += 5;
|
||||
|
||||
|
||||
if(empty_slots == -2) DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 100, 100, 200);
|
||||
else {
|
||||
if(Holyghost)MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
DRAW_SPRITE(radar,0.37f , 0.620f, 0.0500, 0.0500, Rotating360, Glowing, 255, Glowing, 255);
|
||||
}
|
||||
|
||||
if(Mode == NORMAL_MODE)
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, Glowing, 255, Glowing, 255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining Normally");
|
||||
}
|
||||
else
|
||||
{
|
||||
Set_Up_Draw(0.2150f*2,0.3600f*2, 255, Glowing, Glowing, 255,0,0,0);
|
||||
if(!Holyghost)DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Ghost");
|
||||
else DISPLAY_TEXT_WITH_LITERAL_STRING(0.40, 0.60, "STRING", "Joining As Holy Ghost");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
char* CURRENT_GAME_MODES_SCRIPT_NAME(void)
|
||||
{
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
//THIS DOES NOT TAKE INTO ACCOUNT SCRIPT NAME DIFFERENCES FROM 360/PS3 (if there are any)
|
||||
//YET......
|
||||
if(GameMode == GAME_MODE_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_quickdm";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_deathmatch" : "deathmatch_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_DEATHMATCH)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_deathmatch";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "deathmatch_cr";
|
||||
}
|
||||
}
|
||||
else if(GameMode == GAME_MODE_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_MAFIYA_WORK)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TEAM_CAR_JACK_CITY)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_CAR_JACK_CITY)
|
||||
{
|
||||
//carsteal?
|
||||
}
|
||||
else if(GameMode == GAME_MODE_RACE)
|
||||
{
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_races";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "races_cr";
|
||||
}
|
||||
//return ( (Episode == 2) ? "e2_races" : "races_cr");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_PARTY_MODE)
|
||||
{
|
||||
|
||||
if(Episode == 2)
|
||||
{
|
||||
return "e2_party_mode";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "party_mode";
|
||||
}
|
||||
|
||||
//return ( (Episode == 2) ? "e2_party_mode" : "party_mode");
|
||||
}
|
||||
else if(GameMode == GAME_MODE_COPS_AND_CROOKS)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_TURF_WAR)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_DEAL_BREAKER)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_HANGMANS_NOOSE)
|
||||
{
|
||||
|
||||
}
|
||||
else if(GameMode == GAME_MODE_BOMB_DA_BASE_II)
|
||||
{
|
||||
return "coop_bombdbase";
|
||||
}
|
||||
else if(GameMode == GAME_MODE_FREE_MODE){
|
||||
|
||||
if(Episode == 2)return "e2_freemode";
|
||||
else return "freemode_cr";
|
||||
}
|
||||
else
|
||||
{
|
||||
return "Unknown";
|
||||
}
|
||||
}
|
||||
|
||||
bool CAN_FIND_HOST()
|
||||
{
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(GET_HOST_ID() != i || Invalid_Player(i)) continue;
|
||||
//if(Invalid_Player(i)) continue;
|
||||
if(Holyghost && Episode == 2){
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//today, should check if gamemode returns int val correctly, if so make a char* GAME_MODES_SCRIPT_NAME(const int Gamemode)
|
||||
void main(){
|
||||
THIS_SCRIPT_IS_SAFE_FOR_NETWORK_GAME();
|
||||
REQUEST_STREAMED_TXD("network", 1);
|
||||
FORCE_LOADING_SCREEN(false);
|
||||
DO_SCREEN_FADE_IN(false);
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer);
|
||||
SET_CHAR_VISIBLE(pPlayer,true);
|
||||
SET_CHAR_COORDINATES_NO_OFFSET(pPlayer, 2635.0f, 416.0f, 79.35f); //yes nathan got theze coords optimised nigga, tower top center for x & y
|
||||
SET_CHAR_HEADING(pPlayer, 90.0f); //facing the city :)
|
||||
SET_CAM_BEHIND_PED(pPlayer);
|
||||
Episode = GET_CURRENT_EPISODE();
|
||||
if(!IS_PLAYER_ONLINE())
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You need to sign in before playing online.",false);
|
||||
WAIT(3000);
|
||||
SHOW_SIGNIN_UI();
|
||||
WAIT(5000);
|
||||
}
|
||||
bool grabbed_input;
|
||||
do
|
||||
{
|
||||
WAIT(0);
|
||||
empty_slots = empty_player_slots();
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "~BLIP_77~ ~PAD_DPAD_RIGHT~ + ~PAD_A~ ~COL_NET_3~NORMAL MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.50, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_A~ ~COL_NET_4~GHOST MODE");
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.55, "STRING", "~BLIP_77~ ~PAD_DPAD_LEFT~ ~s~+ ~PAD_X~ ~COL_NET_1~HOLY GHOST MODE");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) )
|
||||
{
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
else if(IS_BUTTON_JUST_PRESSED(0,BUTTON_X) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
Autoload( ((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main", false);
|
||||
if(LEFT_IS_PRESSED) //ghost mode
|
||||
{
|
||||
Mode = GHOST_MODE_OBTAINING_HOST;
|
||||
Holyghost = true;
|
||||
StopStreaming = true;
|
||||
//Stop streaming Code comes here
|
||||
WAIT(1250);//(was 1250)
|
||||
if(empty_slots >= (MAX_PLAYERS - 1)) SHUTDOWN_AND_LAUNCH_NETWORK_GAME(Episode);
|
||||
|
||||
}
|
||||
else //normal mode
|
||||
{
|
||||
Holyghost = false;
|
||||
Mode = NORMAL_MODE;
|
||||
}
|
||||
//ifdef developer and r1 + x is pressed, mode is normal ghost join just HOLY_GHOST_MODE_JOINING_HOLY
|
||||
grabbed_input = true;
|
||||
//should use int joined mode or something
|
||||
}
|
||||
}
|
||||
while(!grabbed_input);
|
||||
|
||||
radar = GET_TEXTURE_FROM_STREAMED_TXD("network", "ICON_W_TOTALTIME");
|
||||
//will have loaded by now..
|
||||
|
||||
while(true)
|
||||
{
|
||||
WAIT(0);
|
||||
|
||||
empty_slots = empty_player_slots(); //if needed idk
|
||||
|
||||
//iHost = GET_HOST_ID();
|
||||
GET_PLAYER_CHAR(GET_PLAYER_ID(),&pPlayer); //better than get player ped its poopy old.. literally this but only this is faster..
|
||||
|
||||
if(Mode == GHOST_MODE_OBTAINING_HOST)
|
||||
{
|
||||
//if(CAN_FIND_HOST())
|
||||
if(empty_slots >= 0 && CAN_FIND_HOST()) //found
|
||||
{
|
||||
Mode = GHOST_MODE_FOUND_HOST;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
Effects();
|
||||
}
|
||||
}
|
||||
else if(Mode == GHOST_MODE_FOUND_HOST)
|
||||
{
|
||||
MD_Terminate_Script(CURRENT_GAME_MODES_SCRIPT_NAME());
|
||||
MD_Terminate_Script(((Episode == 2) || IS_XBOX360_VERSION()) ? "network_main_rs" : "network_main");
|
||||
|
||||
RELEASE_TEXTURE(radar);
|
||||
Mode = GHOST_MODE_JOINED;
|
||||
int GameMode = NETWORK_GET_GAME_MODE();
|
||||
USE_PLAYER_COLOUR_INSTEAD_OF_TEAM_COLOUR( (GameMode == GAME_MODE_FREE_MODE) );
|
||||
SWITCH_ARROW_ABOVE_BLIPPED_PICKUPS( (GameMode == GAME_MODE_FREE_MODE) || (GameMode == GAME_MODE_DEATHMATCH) || (GameMode == GAME_MODE_PARTY_MODE) );
|
||||
SET_SYNC_WEATHER_AND_GAME_TIME(true); //for now itz fine
|
||||
DISPLAY_FRONTEND_MAP_BLIPS(true); //pretty much all gamemodez i tinkle? //not doing anything :S
|
||||
if(StopStreaming){
|
||||
//ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
//SWITCH_STREAMING(false);
|
||||
SwitchStreaming_Message = true;
|
||||
}
|
||||
|
||||
if(!Holyghost){
|
||||
change_player(GET_PLAYERSETTINGS_MODEL_CHOICE());
|
||||
SET_PLAYERSETTINGS_MODEL_VARIATIONS_CHOICE(GET_PLAYER_ID());
|
||||
}
|
||||
|
||||
SET_PLAYER_CONTROL(GET_PLAYER_ID(),true);
|
||||
//ALLOW_LOCKON_TO_FRIENDLY_PLAYERS(iPlayer,true);
|
||||
//NETWORK_SET_FRIENDLY_FIRE_OPTION(true);
|
||||
SET_CHAR_HEALTH(pPlayer,500); //probably not needed
|
||||
GIVE_WEAPON_TO_CHAR(pPlayer,WEAPON_UNARMED,AMMO_MAX,false); //i THINK its needed, unsure, best to have weapon tho..
|
||||
ADD_TO_PREVIOUS_BRIEF("Chillout on GTA IV, only this time normal players don't know who you are!");
|
||||
//add weapons is only thing after this
|
||||
}
|
||||
else if(Mode == GHOST_MODE_JOINED)
|
||||
{
|
||||
//ADD_BLIP_FOR_WEAPON(float x, float y, float z, int *blip);
|
||||
int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
if(DOES_BLIP_EXIST(player_blip[i]) && Invalid_Player(i))
|
||||
{
|
||||
REMOVE_BLIP(player_blip[i]);
|
||||
continue;
|
||||
}
|
||||
//else blah.. (i guess, we checking skip invalid and does blip exist twice..)
|
||||
if(Invalid_Player(i) || DOES_BLIP_EXIST(player_blip[i]) || !PLAYER_HAS_CHAR(i)) continue;
|
||||
ADD_BLIP_FOR_CHAR(PLAYER_CHAR(i),&player_blip[i]);
|
||||
CHANGE_BLIP_COLOUR(player_blip[i],GET_PLAYER_COLOUR(i));
|
||||
CHANGE_BLIP_PRIORITY(player_blip[i],3);
|
||||
CHANGE_BLIP_NAME_FROM_ASCII(player_blip[i],GET_PLAYER_NAME(i));
|
||||
CHANGE_BLIP_DISPLAY(player_blip[i], ( (i == GET_PLAYER_ID()) ? 0 : 2) );
|
||||
|
||||
}
|
||||
|
||||
if(IS_BUTTON_JUST_PRESSED(0,DPAD_DOWN)) //Minimap zoom (just like freemode does it) works flawless //flashes when scrolling and menu open (doesnt normally so)
|
||||
{
|
||||
//BUILT IN CRASH HOPEFULLY IF MENU STARTUP NOT FOUND!
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT("menu_startup") < 1)
|
||||
{
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
minimap_tick = (GetTickCount() - 5000);
|
||||
}
|
||||
else
|
||||
{
|
||||
minimap_tick = (GetTickCount() + 5000);
|
||||
}
|
||||
}
|
||||
}
|
||||
if(minimap_tick > GetTickCount())
|
||||
{
|
||||
SET_RADAR_ZOOM(980);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(minimap_tick != 0)
|
||||
{
|
||||
SET_RADAR_ZOOM(0); //no need to loop this me don't think
|
||||
minimap_tick = 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if(IS_THIS_MACHINE_THE_SERVER()) //something seems to bust me outta ghost here..
|
||||
{
|
||||
Alert("~COL_NET_4~MD: ~s~You are now host, ghost is now useless, changing to normal mode.",true);
|
||||
|
||||
Mode = NORMAL_MODE_JOINED;
|
||||
|
||||
}
|
||||
}
|
||||
else if(Mode == NORMAL_MODE){
|
||||
Effects();
|
||||
if(CAN_FIND_HOST()) Mode = NORMAL_MODE_JOINED;
|
||||
}
|
||||
/*
|
||||
if(SwitchStreaming_Message){
|
||||
Set_Up_Draw(0.2750f,0.3600f,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.5, 0.45, "STRING", "Streaming ? ~PAD_DPAD_LEFT~+~PAD_A~ ~COL_NET_3~ ON ~s~/ ~PAD_DPAD_RIGHT~+~PAD_A~ ~COL_NET_4~ OFF");
|
||||
bool LEFT_IS_PRESSED = IS_BUTTON_PRESSED(0,BUTTON_DPAD_LEFT);
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_A) && (LEFT_IS_PRESSED || IS_BUTTON_PRESSED(0,BUTTON_DPAD_RIGHT)) ){
|
||||
ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
if(LEFT_IS_PRESSED){
|
||||
SWITCH_STREAMING(1);
|
||||
SwitchStreaming_Message = false;
|
||||
SwitchStreaming_Toggle = true;
|
||||
}
|
||||
else{
|
||||
SWITCH_STREAMING(0);
|
||||
SwitchStreaming_Toggle = true;
|
||||
SwitchStreaming_Message = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
if(SwitchStreaming_Toggle){
|
||||
if(Streaming){
|
||||
Set_Up_Draw(MDVersion_Txt_Size,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.7, 0.9500, "STRING", "Streaming ~COL_NET_3~ ON ~s~ Toggle : Hold ~PAD_LSTICK_ALL~ + Press ~PAD_RSTICK_ALL~");
|
||||
}
|
||||
else{
|
||||
Set_Up_Draw(MDVersion_Txt_Size,255,255,255,255,0,0,0);
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(0.7, 0.9500, "STRING", "Streaming ~COL_NET_4~ OFF ~s~ Toggle : Hold ~PAD_LSTICK_ALL~ + Press ~PAD_RSTICK_ALL~");
|
||||
}
|
||||
if(IS_BUTTON_JUST_PRESSED(0,BUTTON_STICK_RIGHT) && IS_BUTTON_PRESSED(0,BUTTON_STICK_LEFT)){
|
||||
ALLOW_GAME_TO_PAUSE_FOR_STREAMING(true);
|
||||
Streaming = !Streaming;
|
||||
}
|
||||
if(Streaming)SWITCH_STREAMING(1);
|
||||
else SWITCH_STREAMING(0);
|
||||
}
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
||||
367
Trident/inc/common.h
Normal file
367
Trident/inc/common.h
Normal file
@@ -0,0 +1,367 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv12 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/**Setup the font for Extend+ Trident*/
|
||||
#define Menu_Font 5
|
||||
#define Player_Name_Font 0
|
||||
#define GTAIV 1
|
||||
#define TBOGT 2
|
||||
|
||||
#define Length(array) (sizeof(array) / 4)
|
||||
|
||||
#define PREMIUM_ONLY_STRING "~b~MD: ~s~This feature is premium only, visit www.consolecrunch.com"
|
||||
bool Version_Increment;
|
||||
bool Menu_Ptfx = true;
|
||||
|
||||
|
||||
bool VEHICLE_HAS_EMPTY_SEATS(const int tmp_veh)
|
||||
{
|
||||
if(!DOES_VEHICLE_EXIST(tmp_veh)) return false;
|
||||
int maxSeats;
|
||||
GET_MAXIMUM_NUMBER_OF_PASSENGERS(tmp_veh,&maxSeats);
|
||||
int i;
|
||||
for(i = -1; i < maxSeats; i++)
|
||||
{
|
||||
if(IS_CAR_PASSENGER_SEAT_FREE(tmp_veh,i)) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
int PLAYERS_RELATIONSHIP_GROUP(const int playerIndex){
|
||||
if(IS_NETWORK_SESSION())return (playerIndex + 31);
|
||||
else return RELATIONSHIP_GROUP_PLAYER; //0
|
||||
}
|
||||
|
||||
int PLAYER_CHAR(const int playerindex){
|
||||
int ped;
|
||||
GET_PLAYER_CHAR(playerindex,&ped);
|
||||
//maybe try returning (playerindex % 100)
|
||||
return ped;
|
||||
}
|
||||
|
||||
bool IS_PLAYER_IN_A_VEHICLE(const int playerindex)
|
||||
{
|
||||
int ped = PLAYER_CHAR(playerindex);
|
||||
return (DOES_CHAR_EXIST(ped) && IS_CHAR_IN_ANY_CAR(ped));
|
||||
}
|
||||
|
||||
int PLAYERS_VEHICLE(const int playerindex)
|
||||
{
|
||||
int veh;
|
||||
if(IS_PLAYER_IN_A_VEHICLE(playerindex))
|
||||
{
|
||||
GET_CAR_CHAR_IS_USING(PLAYER_CHAR(playerindex), &veh);
|
||||
return veh;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int GetTickCount()
|
||||
{
|
||||
uint tick = 0;
|
||||
GET_GAME_TIMER(&tick);
|
||||
return tick;
|
||||
}
|
||||
|
||||
int FIND_CONTROLLER_OF_NETWORK_ID(const int Network_ID)
|
||||
{
|
||||
register int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
//if(is_invalid(i)) continue;
|
||||
if(!DOES_PLAYER_HAVE_CONTROL_OF_NETWORK_ID(i,Network_ID)) continue;
|
||||
return i;
|
||||
//break;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
void debugPrint(char* message)
|
||||
{
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(true);
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", message, 5000,true);
|
||||
WAIT(100);
|
||||
}
|
||||
|
||||
void Alert(char* message, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", message, 4000,true);
|
||||
}
|
||||
|
||||
void Alert_Abort(char* message, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", message, 4000,true);
|
||||
return;
|
||||
}
|
||||
|
||||
void Alert_Two(char* message,char* message2, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_TWO_LITERAL_STRINGS_NOW("STRTNM3", message, message2, 3000, true);
|
||||
}
|
||||
|
||||
void Alert_Two_Long(char* message,char* message2, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_TWO_LITERAL_STRINGS_NOW("STRTNM3", message, message2, 5000, true);
|
||||
}
|
||||
|
||||
void Alert_Number(int num, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_WITH_NUMBER_NOW("NUMBR", num, 3500, true);
|
||||
}
|
||||
void printInt(int num){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
PRINT_WITH_NUMBER_NOW("NUMBR", num, 3500, true);
|
||||
}
|
||||
|
||||
void Alert_2_Numbers(int value1,int value2, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(false);
|
||||
PRINT_WITH_2_NUMBERS_NOW("NUMBR", value1, value2, 2000,true);
|
||||
}
|
||||
|
||||
|
||||
|
||||
void Set_Up_Draw(float width, float height, uint r, uint g, uint b, uint a, uint r2, uint g2, uint b2){
|
||||
//loading incorrect font will cause all sorts of random glitchy crashes/ map not loading
|
||||
#ifdef VERSION_PC
|
||||
SET_TEXT_FONT(6);
|
||||
#else
|
||||
SET_TEXT_FONT(Menu_Font);
|
||||
#endif
|
||||
|
||||
SET_TEXT_BACKGROUND(0);
|
||||
SET_TEXT_DROPSHADOW(0, 0, 0, 0, 255);
|
||||
SET_TEXT_EDGE(1, r2, g2, b2, 200);
|
||||
SET_TEXT_COLOUR(r, g, b, a);
|
||||
SET_TEXT_SCALE(width, height);
|
||||
SET_TEXT_PROPORTIONAL(1);
|
||||
//SET_TEXT_JUSTIFY(0);
|
||||
SET_TEXT_CENTRE(0);
|
||||
//SET_TEXT_RIGHT_JUSTIFY(0);
|
||||
}
|
||||
|
||||
|
||||
void Draw_Text(char *gxtName, float x, float y, char *val){
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(x, y, gxtName, val);
|
||||
// return;
|
||||
}
|
||||
void Draw_Number(char *gxtName, float x, float y, int val){
|
||||
DISPLAY_TEXT_WITH_NUMBER(x, y, gxtName, val);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//Nathans Functions//
|
||||
|
||||
/*
|
||||
bool NETWORK_PLAYER_IS_ON_FRIENDS_LIST(const int player_id)
|
||||
{
|
||||
//register int i; //maybe register int makes it too fast and that crashes it? (POSSIBLY)
|
||||
int i; //no register
|
||||
const char* PossibleFriend = GET_PLAYER_NAME(playerid); //1 less process to do 100+ times at once (possible frez)
|
||||
for(i = 0;i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
if(COMPARE_STRING(PossibleFriend,NETWORK_GET_FRIEND_NAME(i))) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
bool NETWORK_PLAYER_IS_ON_FRIENDS_LIST(const int player_id)
|
||||
{
|
||||
int i;
|
||||
const char* playerid_name = GET_PLAYER_NAME(player_id);
|
||||
for(i = 0;i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
//char* friends_name = NETWORK_GET_FRIEND_NAME(i);
|
||||
//if(!NETWORK_IS_FRIEND_ONLINE(friends_name)) continue;
|
||||
if(COMPARE_STRING(playerid_name,NETWORK_GET_FRIEND_NAME(i))) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool FRIENDS_LIST_CONTAINS_GAMERTAG(char* Gamertag)
|
||||
{
|
||||
register int i;
|
||||
for(i = 0;i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
if(COMPARE_STRING(Gamertag,NETWORK_GET_FRIEND_NAME(i))) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool IS_THIS_PED_A_NETPLAYER(Ped query_ped){
|
||||
if(!IS_NETWORK_SESSION()) return false;
|
||||
int i,tmp_ped;
|
||||
for(i=0;i<GET_NUMBER_OF_PLAYERS();i++){
|
||||
//if(!IS_NETWORK_PLAYER_ACTIVE(i)) continue;
|
||||
GET_PLAYER_CHAR(i,&tmp_ped);
|
||||
if(tmp_ped == query_ped) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
int GET_PLAYER_INT_FROM_PLAYER_NAME(char* name){
|
||||
int i;
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(COMPARE_STRING(GET_PLAYER_NAME(CONVERT_INT_TO_PLAYERINDEX(i)), name)) return i;
|
||||
}
|
||||
return 0; //just for safekeeping....
|
||||
}
|
||||
|
||||
|
||||
void GET_CAR_PASSENGERS(int car, int *Passenger1, int *Passenger2, int *Passenger3)
|
||||
{
|
||||
GET_CHAR_IN_CAR_PASSENGER_SEAT(car,0,&*Passenger1);
|
||||
GET_CHAR_IN_CAR_PASSENGER_SEAT(car,1,&*Passenger2);
|
||||
GET_CHAR_IN_CAR_PASSENGER_SEAT(car,2,&*Passenger3);
|
||||
//return;
|
||||
}
|
||||
|
||||
//!Devils Functions//
|
||||
|
||||
|
||||
//Nathan redo
|
||||
void Autoload(char* sco, const bool print)
|
||||
{
|
||||
char* buffer[32];
|
||||
Strcpy(buffer, "~b~MD: ~s~");
|
||||
if(DOES_SCRIPT_EXIST(sco))
|
||||
{
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT(sco) == 0)
|
||||
{
|
||||
REQUEST_SCRIPT(sco);
|
||||
Strcat(buffer, "Loaded ");
|
||||
Strcat(buffer, sco);
|
||||
Strcat(buffer, ".sco");
|
||||
while(!HAS_SCRIPT_LOADED(sco)) WAIT(0);
|
||||
START_NEW_SCRIPT(sco,1024);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED(sco);
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcat(buffer, sco);
|
||||
Strcat(buffer, ".sco is already loaded.");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcat(buffer, sco);
|
||||
Strcat(buffer, ".sco does not exist.");
|
||||
}
|
||||
if(print)
|
||||
{
|
||||
Alert(buffer, false);
|
||||
}
|
||||
WAIT(2000);
|
||||
}
|
||||
|
||||
bool IS_THIS_SCRIPT_RUNNING(char* sco){
|
||||
if(DOES_SCRIPT_EXIST(sco) && GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT(sco) == 1)return true;
|
||||
else return false;
|
||||
}
|
||||
|
||||
void MD_Terminate_Script(char* sco){
|
||||
if (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT(sco) >= 1) TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME(sco);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Ped GetPlayerPed(void){
|
||||
Ped playerped = INVALID_HANDLE;
|
||||
if ( PLAYER_HAS_CHAR(GET_PLAYER_ID())) GET_PLAYER_CHAR(GET_PLAYER_ID(), &playerped);
|
||||
return playerped;
|
||||
}
|
||||
|
||||
int GetPlayerModel(void){
|
||||
int model;
|
||||
GET_CHAR_MODEL(GetPlayerPed(),&model);
|
||||
return model;
|
||||
}
|
||||
/*
|
||||
int empty_player_slots(void)
|
||||
{
|
||||
if(IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
return (NETWORK_GET_MAX_SLOTS() - GET_NUMBER_OF_PLAYERS());
|
||||
}
|
||||
else
|
||||
{
|
||||
return NETWORK_GET_NUM_OPEN_PUBLIC_SLOTS(); //crashez? i tinkle?
|
||||
}
|
||||
}
|
||||
*/
|
||||
//NETWORK_GET_NUM_OPEN_PUBLIC_SLOTS(void);
|
||||
int empty_player_slots(void){
|
||||
return (NETWORK_GET_MAX_SLOTS() - GET_NUMBER_OF_PLAYERS());
|
||||
}
|
||||
bool is_driving(int pd)
|
||||
{
|
||||
if(!IS_CHAR_IN_ANY_CAR(pd)) return false;
|
||||
int veh,dvr;
|
||||
GET_CAR_CHAR_IS_USING(pd,&veh);
|
||||
GET_DRIVER_OF_CAR(veh,&dvr);
|
||||
return dvr == pd;
|
||||
}
|
||||
|
||||
bool is_veh_locked(int veh){ //mmmmm should use other func for this set locked without net control request, + is chars vehicle locked
|
||||
int temp;
|
||||
GET_CAR_DOOR_LOCK_STATUS(veh,&temp);
|
||||
return temp == VEHICLE_DOOR_LOCKED_BOTH_SIDES; //need to also return true if temp is vehicle locked from outside only
|
||||
}
|
||||
|
||||
void UpdateWeaponOfPed(Ped ped, Weapon weapon){
|
||||
if (HAS_CHAR_GOT_WEAPON(ped, weapon)){
|
||||
SET_CHAR_AMMO(ped, weapon, AMMO_MAX);
|
||||
}
|
||||
else{
|
||||
GIVE_WEAPON_TO_CHAR(ped, weapon, AMMO_MAX, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
Vehicle GetPlayerVeh(void){
|
||||
Vehicle vehicle = INVALID_HANDLE;
|
||||
int ped = GetPlayerPed();
|
||||
if (IS_CHAR_IN_ANY_CAR(ped))
|
||||
GET_CAR_CHAR_IS_USING(ped, &vehicle);
|
||||
return vehicle;
|
||||
}
|
||||
|
||||
void Run_Ptfx(int Pointer){
|
||||
if(Menu_Ptfx){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0, 5, &rand);
|
||||
char* effect[6];
|
||||
effect[0] = "qub_lg_explode_blue";
|
||||
effect[1] = "qub_lg_explode_yellow";
|
||||
effect[2] = "qub_lg_explode_red";
|
||||
effect[3] = "qub_lg_explode_purple";
|
||||
effect[4] = "qub_lg_explode_orange";
|
||||
effect[5] = "qub_lg_explode_green";
|
||||
if (DOES_CHAR_EXIST(Pointer))START_PTFX_ON_PED(effect[rand], Pointer, 0, 0, 0, 0, 0, 0, 1);
|
||||
else if(DOES_VEHICLE_EXIST(Pointer))START_PTFX_ON_VEH(effect[rand], Pointer, 0, 0, 0, 0, 0, 0, 1);
|
||||
else if(DOES_OBJECT_EXIST(Pointer))START_PTFX_ON_OBJ(effect[rand], Pointer, 0, 0, 0, 0, 0, 0, 1);
|
||||
}
|
||||
}
|
||||
|
||||
367
Trident/inc/common.h.bak
Normal file
367
Trident/inc/common.h.bak
Normal file
@@ -0,0 +1,367 @@
|
||||
/**
|
||||
* @ MAJOR DISTRIBUTION EXTEND
|
||||
* @ Version MDv12 TRIDENT
|
||||
* @ MADE BY - DEVILSDESIGN & IIV_NATHAN_VII & SHOCKixiXixiWAVE
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
/**Setup the font for Extend+ Trident*/
|
||||
#define Menu_Font 5
|
||||
#define Player_Name_Font 0
|
||||
#define GTAIV 1
|
||||
#define TBOGT 2
|
||||
|
||||
#define Length(array) (sizeof(array) / 4)
|
||||
|
||||
#define PREMIUM_ONLY_STRING "~COL_NET_4~MD: ~s~This feature is premium only, visit www.consolecrunch.com"
|
||||
bool Version_Increment;
|
||||
bool Menu_Ptfx = true;
|
||||
|
||||
|
||||
bool VEHICLE_HAS_EMPTY_SEATS(const int tmp_veh)
|
||||
{
|
||||
if(!DOES_VEHICLE_EXIST(tmp_veh)) return false;
|
||||
int maxSeats;
|
||||
GET_MAXIMUM_NUMBER_OF_PASSENGERS(tmp_veh,&maxSeats);
|
||||
int i;
|
||||
for(i = -1; i < maxSeats; i++)
|
||||
{
|
||||
if(IS_CAR_PASSENGER_SEAT_FREE(tmp_veh,i)) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
int PLAYERS_RELATIONSHIP_GROUP(const int playerIndex){
|
||||
if(IS_NETWORK_SESSION())return (playerIndex + 31);
|
||||
else return RELATIONSHIP_GROUP_PLAYER; //0
|
||||
}
|
||||
|
||||
int PLAYER_CHAR(const int playerindex){
|
||||
int ped;
|
||||
GET_PLAYER_CHAR(playerindex,&ped);
|
||||
//maybe try returning (playerindex % 100)
|
||||
return ped;
|
||||
}
|
||||
|
||||
bool IS_PLAYER_IN_A_VEHICLE(const int playerindex)
|
||||
{
|
||||
int ped = PLAYER_CHAR(playerindex);
|
||||
return (DOES_CHAR_EXIST(ped) && IS_CHAR_IN_ANY_CAR(ped));
|
||||
}
|
||||
|
||||
int PLAYERS_VEHICLE(const int playerindex)
|
||||
{
|
||||
int veh;
|
||||
if(IS_PLAYER_IN_A_VEHICLE(playerindex))
|
||||
{
|
||||
GET_CAR_CHAR_IS_USING(PLAYER_CHAR(playerindex), &veh);
|
||||
return veh;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
int GetTickCount()
|
||||
{
|
||||
uint tick = 0;
|
||||
GET_GAME_TIMER(&tick);
|
||||
return tick;
|
||||
}
|
||||
|
||||
int FIND_CONTROLLER_OF_NETWORK_ID(const int Network_ID)
|
||||
{
|
||||
register int i;
|
||||
for(i = 0; i < MAX_PLAYERS; i++)
|
||||
{
|
||||
//if(is_invalid(i)) continue;
|
||||
if(!DOES_PLAYER_HAVE_CONTROL_OF_NETWORK_ID(i,Network_ID)) continue;
|
||||
return i;
|
||||
//break;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
void debugPrint(char* message)
|
||||
{
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(true);
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", message, 5000,true);
|
||||
WAIT(100);
|
||||
}
|
||||
|
||||
void Alert(char* message, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", message, 4000,true);
|
||||
}
|
||||
|
||||
void Alert_Abort(char* message, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_LITERAL_STRING_NOW("STRING", message, 4000,true);
|
||||
return;
|
||||
}
|
||||
|
||||
void Alert_Two(char* message,char* message2, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_TWO_LITERAL_STRINGS_NOW("STRTNM3", message, message2, 3000, true);
|
||||
}
|
||||
|
||||
void Alert_Two_Long(char* message,char* message2, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_STRING_WITH_TWO_LITERAL_STRINGS_NOW("STRTNM3", message, message2, 5000, true);
|
||||
}
|
||||
|
||||
void Alert_Number(int num, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(AddToBrief);
|
||||
PRINT_WITH_NUMBER_NOW("NUMBR", num, 3500, true);
|
||||
}
|
||||
void printInt(int num){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
PRINT_WITH_NUMBER_NOW("NUMBR", num, 3500, true);
|
||||
}
|
||||
|
||||
void Alert_2_Numbers(int value1,int value2, bool AddToBrief){
|
||||
CLEAR_PRINTS();
|
||||
CLEAR_SMALL_PRINTS();
|
||||
ADD_NEXT_MESSAGE_TO_PREVIOUS_BRIEFS(false);
|
||||
PRINT_WITH_2_NUMBERS_NOW("NUMBR", value1, value2, 2000,true);
|
||||
}
|
||||
|
||||
|
||||
|
||||
void Set_Up_Draw(float width, float height, uint r, uint g, uint b, uint a, uint r2, uint g2, uint b2){
|
||||
//loading incorrect font will cause all sorts of random glitchy crashes/ map not loading
|
||||
#ifdef VERSION_PC
|
||||
SET_TEXT_FONT(6);
|
||||
#else
|
||||
SET_TEXT_FONT(Menu_Font);
|
||||
#endif
|
||||
|
||||
SET_TEXT_BACKGROUND(0);
|
||||
SET_TEXT_DROPSHADOW(0, 0, 0, 0, 255);
|
||||
SET_TEXT_EDGE(1, r2, g2, b2, 200);
|
||||
SET_TEXT_COLOUR(r, g, b, a);
|
||||
SET_TEXT_SCALE(width, height);
|
||||
SET_TEXT_PROPORTIONAL(1);
|
||||
//SET_TEXT_JUSTIFY(0);
|
||||
SET_TEXT_CENTRE(0);
|
||||
//SET_TEXT_RIGHT_JUSTIFY(0);
|
||||
}
|
||||
|
||||
|
||||
void Draw_Text(char *gxtName, float x, float y, char *val){
|
||||
DISPLAY_TEXT_WITH_LITERAL_STRING(x, y, gxtName, val);
|
||||
// return;
|
||||
}
|
||||
void Draw_Number(char *gxtName, float x, float y, int val){
|
||||
DISPLAY_TEXT_WITH_NUMBER(x, y, gxtName, val);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
//Nathans Functions//
|
||||
|
||||
/*
|
||||
bool NETWORK_PLAYER_IS_ON_FRIENDS_LIST(const int player_id)
|
||||
{
|
||||
//register int i; //maybe register int makes it too fast and that crashes it? (POSSIBLY)
|
||||
int i; //no register
|
||||
const char* PossibleFriend = GET_PLAYER_NAME(playerid); //1 less process to do 100+ times at once (possible frez)
|
||||
for(i = 0;i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
if(COMPARE_STRING(PossibleFriend,NETWORK_GET_FRIEND_NAME(i))) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
*/
|
||||
bool NETWORK_PLAYER_IS_ON_FRIENDS_LIST(const int player_id)
|
||||
{
|
||||
int i;
|
||||
const char* playerid_name = GET_PLAYER_NAME(player_id);
|
||||
for(i = 0;i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
//char* friends_name = NETWORK_GET_FRIEND_NAME(i);
|
||||
//if(!NETWORK_IS_FRIEND_ONLINE(friends_name)) continue;
|
||||
if(COMPARE_STRING(playerid_name,NETWORK_GET_FRIEND_NAME(i))) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool FRIENDS_LIST_CONTAINS_GAMERTAG(char* Gamertag)
|
||||
{
|
||||
register int i;
|
||||
for(i = 0;i < NETWORK_GET_FRIEND_COUNT(); i++)
|
||||
{
|
||||
if(COMPARE_STRING(Gamertag,NETWORK_GET_FRIEND_NAME(i))) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
bool IS_THIS_PED_A_NETPLAYER(Ped query_ped){
|
||||
if(!IS_NETWORK_SESSION()) return false;
|
||||
int i,tmp_ped;
|
||||
for(i=0;i<GET_NUMBER_OF_PLAYERS();i++){
|
||||
//if(!IS_NETWORK_PLAYER_ACTIVE(i)) continue;
|
||||
GET_PLAYER_CHAR(i,&tmp_ped);
|
||||
if(tmp_ped == query_ped) return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
int GET_PLAYER_INT_FROM_PLAYER_NAME(char* name){
|
||||
int i;
|
||||
for(i = 0; i < 16; i++)
|
||||
{
|
||||
if(COMPARE_STRING(GET_PLAYER_NAME(CONVERT_INT_TO_PLAYERINDEX(i)), name)) return i;
|
||||
}
|
||||
return 0; //just for safekeeping....
|
||||
}
|
||||
|
||||
|
||||
void GET_CAR_PASSENGERS(int car, int *Passenger1, int *Passenger2, int *Passenger3)
|
||||
{
|
||||
GET_CHAR_IN_CAR_PASSENGER_SEAT(car,0,&*Passenger1);
|
||||
GET_CHAR_IN_CAR_PASSENGER_SEAT(car,1,&*Passenger2);
|
||||
GET_CHAR_IN_CAR_PASSENGER_SEAT(car,2,&*Passenger3);
|
||||
//return;
|
||||
}
|
||||
|
||||
//!Devils Functions//
|
||||
|
||||
|
||||
//Nathan redo
|
||||
void Autoload(char* sco, const bool print)
|
||||
{ WAIT(1000);
|
||||
char* buffer[32];
|
||||
Strcpy(buffer, "~COL_NET_4~MD: ~s~");
|
||||
if(DOES_SCRIPT_EXIST(sco))
|
||||
{
|
||||
if(GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT(sco) == 0)
|
||||
{
|
||||
REQUEST_SCRIPT(sco);
|
||||
Strcat(buffer, "Loaded ");
|
||||
Strcat(buffer, sco);
|
||||
Strcat(buffer, ".sco");
|
||||
while(!HAS_SCRIPT_LOADED(sco)) WAIT(0);
|
||||
START_NEW_SCRIPT(sco,1024);
|
||||
MARK_SCRIPT_AS_NO_LONGER_NEEDED(sco);
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcat(buffer, sco);
|
||||
Strcat(buffer, ".sco is already loaded.");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Strcat(buffer, sco);
|
||||
Strcat(buffer, ".sco does not exist.");
|
||||
}
|
||||
if(print)
|
||||
{
|
||||
Alert(buffer, false);
|
||||
}
|
||||
WAIT(1250);
|
||||
}
|
||||
|
||||
bool IS_THIS_SCRIPT_RUNNING(char* sco){
|
||||
if(DOES_SCRIPT_EXIST(sco) && GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT(sco) == 1)return true;
|
||||
else return false;
|
||||
}
|
||||
|
||||
void MD_Terminate_Script(char* sco){
|
||||
if (GET_NUMBER_OF_INSTANCES_OF_STREAMED_SCRIPT(sco) >= 1) TERMINATE_ALL_SCRIPTS_WITH_THIS_NAME(sco);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
Ped GetPlayerPed(void){
|
||||
Ped playerped = INVALID_HANDLE;
|
||||
if ( PLAYER_HAS_CHAR(GET_PLAYER_ID())) GET_PLAYER_CHAR(GET_PLAYER_ID(), &playerped);
|
||||
return playerped;
|
||||
}
|
||||
|
||||
int GetPlayerModel(void){
|
||||
int model;
|
||||
GET_CHAR_MODEL(GetPlayerPed(),&model);
|
||||
return model;
|
||||
}
|
||||
/*
|
||||
int empty_player_slots(void)
|
||||
{
|
||||
if(IS_THIS_MACHINE_THE_SERVER())
|
||||
{
|
||||
return (NETWORK_GET_MAX_SLOTS() - GET_NUMBER_OF_PLAYERS());
|
||||
}
|
||||
else
|
||||
{
|
||||
return NETWORK_GET_NUM_OPEN_PUBLIC_SLOTS(); //crashez? i tinkle?
|
||||
}
|
||||
}
|
||||
*/
|
||||
//NETWORK_GET_NUM_OPEN_PUBLIC_SLOTS(void);
|
||||
int empty_player_slots(void){
|
||||
return (NETWORK_GET_MAX_SLOTS() - GET_NUMBER_OF_PLAYERS());
|
||||
}
|
||||
bool is_driving(int pd)
|
||||
{
|
||||
if(!IS_CHAR_IN_ANY_CAR(pd)) return false;
|
||||
int veh,dvr;
|
||||
GET_CAR_CHAR_IS_USING(pd,&veh);
|
||||
GET_DRIVER_OF_CAR(veh,&dvr);
|
||||
return dvr == pd;
|
||||
}
|
||||
|
||||
bool is_veh_locked(int veh){ //mmmmm should use other func for this set locked without net control request, + is chars vehicle locked
|
||||
int temp;
|
||||
GET_CAR_DOOR_LOCK_STATUS(veh,&temp);
|
||||
return temp == VEHICLE_DOOR_LOCKED_BOTH_SIDES; //need to also return true if temp is vehicle locked from outside only
|
||||
}
|
||||
|
||||
void UpdateWeaponOfPed(Ped ped, Weapon weapon){
|
||||
if (HAS_CHAR_GOT_WEAPON(ped, weapon)){
|
||||
SET_CHAR_AMMO(ped, weapon, AMMO_MAX);
|
||||
}
|
||||
else{
|
||||
GIVE_WEAPON_TO_CHAR(ped, weapon, AMMO_MAX, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
Vehicle GetPlayerVeh(void){
|
||||
Vehicle vehicle = INVALID_HANDLE;
|
||||
int ped = GetPlayerPed();
|
||||
if (IS_CHAR_IN_ANY_CAR(ped))
|
||||
GET_CAR_CHAR_IS_USING(ped, &vehicle);
|
||||
return vehicle;
|
||||
}
|
||||
|
||||
void Run_Ptfx(int Pointer){
|
||||
if(Menu_Ptfx){
|
||||
int rand;
|
||||
GENERATE_RANDOM_INT_IN_RANGE(0, 5, &rand);
|
||||
char* effect[6];
|
||||
effect[0] = "qub_lg_explode_blue";
|
||||
effect[1] = "qub_lg_explode_yellow";
|
||||
effect[2] = "qub_lg_explode_red";
|
||||
effect[3] = "qub_lg_explode_purple";
|
||||
effect[4] = "qub_lg_explode_orange";
|
||||
effect[5] = "qub_lg_explode_green";
|
||||
if (DOES_CHAR_EXIST(Pointer))START_PTFX_ON_PED(effect[rand], Pointer, 0, 0, 0, 0, 0, 0, 1);
|
||||
else if(DOES_VEHICLE_EXIST(Pointer))START_PTFX_ON_VEH(effect[rand], Pointer, 0, 0, 0, 0, 0, 0, 1);
|
||||
else if(DOES_OBJECT_EXIST(Pointer))START_PTFX_ON_OBJ(effect[rand], Pointer, 0, 0, 0, 0, 0, 0, 1);
|
||||
}
|
||||
}
|
||||
|
||||
1391
Trident/inc/consts copy.h
Normal file
1391
Trident/inc/consts copy.h
Normal file
File diff suppressed because it is too large
Load Diff
5879
Trident/inc/consts.h
Normal file
5879
Trident/inc/consts.h
Normal file
File diff suppressed because it is too large
Load Diff
3172
Trident/inc/natives.h
Normal file
3172
Trident/inc/natives.h
Normal file
File diff suppressed because it is too large
Load Diff
3179
Trident/inc/nativesMD.h
Normal file
3179
Trident/inc/nativesMD.h
Normal file
File diff suppressed because it is too large
Load Diff
26550
Trident/inc/objects.h
Normal file
26550
Trident/inc/objects.h
Normal file
File diff suppressed because it is too large
Load Diff
11
Trident/inc/strings.h
Normal file
11
Trident/inc/strings.h
Normal file
@@ -0,0 +1,11 @@
|
||||
/* ---------------------------------------------------------------
|
||||
This header contains GTAIV/EFLC PC script string functions.
|
||||
|
||||
This file is a part of scocl project (C) Alexander Blade 2011
|
||||
--------------------------------------------------------------- */
|
||||
|
||||
#pragma once
|
||||
|
||||
//#include "types.h"
|
||||
|
||||
extern void itos(int value, void *str, uint strsize);
|
||||
49
Trident/inc/types.h
Normal file
49
Trident/inc/types.h
Normal file
@@ -0,0 +1,49 @@
|
||||
/* ---------------------------------------------------------------
|
||||
This header contains GTAIV/EFLC PC script common functions.
|
||||
|
||||
This file is a part of scocl project (C) Alexander Blade 2011
|
||||
--------------------------------------------------------------- */
|
||||
|
||||
#pragma once
|
||||
|
||||
typedef unsigned int uint;
|
||||
typedef uint boolean;
|
||||
typedef uint bool; // not a mistake
|
||||
typedef uint ScriptAny;
|
||||
typedef uint Weapon;
|
||||
typedef int Player;
|
||||
typedef int FireId;
|
||||
typedef int Crotch;
|
||||
typedef int Vagina;
|
||||
typedef int Model;
|
||||
typedef int Fuck;
|
||||
typedef int Ped;
|
||||
typedef int Vehicle;
|
||||
typedef int Cam;
|
||||
typedef int CarGenerator;
|
||||
typedef int Group;
|
||||
typedef int Train;
|
||||
typedef int Pickup;
|
||||
typedef int Object;
|
||||
typedef int Interior;
|
||||
typedef int Blip;
|
||||
typedef int Texture;
|
||||
typedef int TextureDict;
|
||||
typedef int CoverPoint;
|
||||
typedef int DecisionMaker;
|
||||
typedef int Camera;
|
||||
typedef int TaskSequence;
|
||||
typedef int Char;
|
||||
typedef int Car;
|
||||
typedef int ColourIndex;
|
||||
typedef int Sphere;
|
||||
typedef struct _Vector3
|
||||
{
|
||||
float x;
|
||||
float y;
|
||||
float z;
|
||||
} Vector3, *PVector3;
|
||||
typedef int ExplosionType;
|
||||
typedef int ShootMode;
|
||||
typedef int RelationshipGroup;
|
||||
typedef int QuadChar;
|
||||
Reference in New Issue
Block a user