Add files via upload

This commit is contained in:
iDisaster
2026-01-28 21:32:26 +04:00
committed by GitHub
parent 9dc5fe61aa
commit f80d6e8a4c
100 changed files with 88887 additions and 0 deletions

View 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);
}
}
}

View 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);
}
}

View 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));
}
}
}
}

View 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){
}
}
}

View 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");
}
}

View 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();
}
}

View 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);
}
}

View 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
};
*/

View 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
};
*/

View 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);
}
}
}

View 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){
//
}
*/
}

View 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)");
}

View 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);
}
}

View 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);
}
}
}
}

View 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!");
}
}
}
}

View 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();
}

View 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();
}

View 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);
}
}

View 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);
}
}

View 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);
}
}

View 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;
}
}

View 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);
}
}

View 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;
}

View 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);}
}

View 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);
}
}

View 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);
}
}

View 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;
}

File diff suppressed because it is too large Load Diff

View 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);
}

File diff suppressed because it is too large Load Diff

View 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
}
}
}

View 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);
}
}
}
}

View 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(&current_hour,&current_minute);
GET_CURRENT_WEATHER(&current_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(&current_hour,&current_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);
}
}