Release Black Ops 2 GSC Custom Game mode - Secret Room Zombies Alcatraz By Loimonde51 #1 **Reupload**

Loimonde51 Team51

Known Member
Messages
11
Points
108
Hello Everyone is Loimonde51
Today, I Introduce You My New Mods: The Secret Room Zombies Alcatraz By Loimonde51
I Would Post A Series Of Secret Room Zombies For Any Maps On cabconmodding.com

Picture:

No Power/Mob Of The Dead:



Power On/Mob Of The Dead:



Perks/Mob Of The Dead:



No Power/Grief:



Power On/Grief:



Perks/Grief:



PowerUps:



WallBuy:



Mysterybox:



Power:



Video:


Code:
[/COLOR][/CENTER][/COLOR][/CENTER][/COLOR][/CENTER]
[COLOR=#000000]
[CENTER][COLOR=#000000]
[CENTER][COLOR=#000000]/*
*    Secret Room Alcatraz By Loimonde51
*
*    Creator : Loimonde51
*    Project : Secret Room Alcatraz
*    Mode : Zombies
*
*/

#include maps/mp/_utility;
#include maps/mp/_visionset_mgr;
#include maps/mp/_music;
#include common_scripts/utility;
#include maps/mp/gametypes_zm/_hud_util;
#include maps/mp/gametypes_zm/_hud_message;
#include maps/mp/gametypes_zm/_gv_actions;
#include maps/mp/gametypes_zm/_damagefeedback;
#include maps/mp/zombies/_zm_magicbox;
#include maps/mp/zombies/_zm;
#include maps/mp/zombies/_zm_utility;
#include maps/mp/zombies/_zm_weapons;
#include maps/mp/zombies/_zm_audio;
#include maps/mp/animscripts/zm_combat;
#include maps/mp/animscripts/zm_utility;
#include maps/mp/animscripts/utility;
#include maps/mp/animscripts/shared;
#include maps/mp/zombies/_zm_game_module;
#include maps/mp/zombies/_zm_stats;
#include maps/mp/zombies/_zm_sidequests;

init()
{
    RoomInit();
    level thread onPlayerConnect();
}

onPlayerConnect()
{
    for(;;)
    {
        level waittill("connected", player);
        player thread onPlayerSpawned();
    }
}

onPlayerSpawned()
{
    self endon("disconnect");
    level endon("game_ended");
    for(;;)
    {
        self waittill("spawned_player");
        self thread DoGiveMoney();
        wait 5;
        self thread InitialiseSecretRoomAlcatraz();
    }
}

//Give Money :

DoGiveMoney()
{
        self.score+=1000000;
}

// Secret Room Zombies Alcatraz By Loimonde51 :

RoomInit()
{
        PrecacheModel("defaultactor");
        PrecacheModel("fxuse_lightsphere_blue");
        PrecacheModel("p6_zm_al_shock_box_on");
        Precachemodel("p6_zm_al_vending_pap_on");
        precachemodel("p6_anim_zm_al_magic_box");
        PrecacheModel("p6_zm_al_vending_jugg_on");
        PrecacheModel("p6_zm_al_vending_sleight_on");
        PrecacheModel("p6_zm_al_vending_doubletap2_on");
        PrecacheModel("p6_zm_vending_electric_cherry_on");
        PrecacheModel("p6_zm_al_vending_ads_on");
        PrecacheModel("p6_zm_al_vending_nuke_on");
        PrecacheModel("p6_zm_al_vending_three_gun_on");
        PrecacheModel("zombie_bomb");
        PrecacheModel("zombie_ammocan");
        PrecacheModel("zombie_x2_icon");
        PrecacheModel("zombie_skull");
        setdvar("ai_showFailedPaths",0);
        if(isDefined(level.player_out_of_playable_area_monitor))
        level.player_out_of_playable_area_monitor = false;
}

InitialiseSecretRoomAlcatraz()
{
        level.RoomTeleportBase = self.origin;
        self thread RoomTeleporter1Alcatraz();
        self thread RoomTeleporter2Alcatraz();
        self thread RoomMagicBoxAlcatraz();
        self thread RoomPowerAlcatraz();
        self RoomWeaponsAlcatraz();
        self thread RoomNukeAlcatraz();
        self thread RoomMaxAmmoAlcatraz();
        self thread RoomDoublePointsAlcatraz();
        self thread RoomInstantKillsAlcatraz();
}

RoomNukeAlcatraz()
{
        level thread LowerMessage( "Room Nuke Bomb", "Press [{+usereload}] For Send Nuke Bomb [Cost: 250]" );
        level.RoomBomb = spawn( "script_model", (-1075.05, -3242.06, -8398.88));
        level.RoomBomb setModel("zombie_bomb");
        level.RoomBomb rotateTo((0, 0, 90), .1);
        playfx( loadfx( "misc/fx_zombie_powerup_on" ), (-1075.05, -3242.06, -8398.88) );
        level.RoomBomb2 = spawn( "trigger_radius", (-1075.05, -3242.06, -8398.88), 1, 50, 10 );
        level.RoomBomb2 SetCursorHint( "HINT_NOICON" );
        level.RoomBomb2 UseTriggerRequireLookAt();
        level.RoomBomb2 setLowerMessage( level.RoomBomb2, "Room Nuke Bomb" );
        for(;;)
        {
                level.RoomBomb2 waittill( "trigger", i );
                if( i UseButtonPressed()  && i.score >= 250 && i.BombSend == false)
                {
                        i.score -= 250;
                        i.BombSend = true;
                        i doPNuke();
                        wait 2;
                        i.BombSend = false;
                   
                }
        }
}

RoomMaxAmmoAlcatraz()
{
        level thread LowerMessage( "Room Max Ammo", "Press [{+usereload}] For Max Ammo [Cost: 250]" );
        level.RoomAmmo = spawn( "script_model", (-1141, -3241.78, -8398.88));
        level.RoomAmmo setModel("zombie_ammocan");
        level.RoomAmmo rotateTo((0, 0, 0), .1);
        playfx( loadfx( "misc/fx_zombie_powerup_on" ), (-1141, -3241.78, -8398.88) );
        level.RoomAmmo2 = spawn( "trigger_radius", (-1141, -3241.78, -8398.88), 1, 50, 10 );
        level.RoomAmmo2 SetCursorHint( "HINT_NOICON" );
        level.RoomAmmo2 UseTriggerRequireLookAt();
        level.RoomAmmo2 setLowerMessage( level.RoomAmmo2, "Room Max Ammo" );
        for(;;)
        {
                level.RoomAmmo2 waittill( "trigger", i );
                if( i UseButtonPressed()  && i.score >= 250 && i.MaxAm == false)
                {
                        i.score -= 250;
                        i.MaxAm = true;
                        i doPMAmmo();
                        wait 2;
                        i.MaxAm = false;
                   
                }
        }
}

RoomDoublePointsAlcatraz()
{
        level thread LowerMessage( "Room Double Points", "Press [{+usereload}] For Double Points [Cost: 250]" );
        level.RoomDoubleP = spawn( "script_model", (-1195.89, -3241.84, -8398.88));
        level.RoomDoubleP setModel("zombie_x2_icon");
        level.RoomDoubleP rotateTo((0, 0, 0), .1);
        playfx( loadfx( "misc/fx_zombie_powerup_on" ), (-1195.89, -3241.84, -8398.88) );
        level.RoomDoubleP2 = spawn( "trigger_radius", (-1195.89, -3241.84, -8398.88), 1, 50, 10 );
        level.RoomDoubleP2 SetCursorHint( "HINT_NOICON" );
        level.RoomDoubleP2 UseTriggerRequireLookAt();
        level.RoomDoubleP2 setLowerMessage( level.RoomDoubleP2, "Room Double Points" );
        for(;;)
        {
                level.RoomDoubleP2 waittill( "trigger", i );
                if( i UseButtonPressed()  && i.score >= 250 && i.MaxP == false)
                {
                        i.score -= 250;
                        i.MaxP = true;
                        i doPDoublePoints();
                        wait 2;
                        i.MaxP = false;
                   
                }
        }
}

RoomInstantKillsAlcatraz()
{
        level thread LowerMessage( "Room Double Points", "Press [{+usereload}] For Insta Kill [Cost: 250]" );
        level.RoomIntKills = spawn( "script_model", (-1243.24, -3239.94, -8398.88));
        level.RoomIntKills setModel("zombie_skull");
        level.RoomIntKills rotateTo((0, 0, 0), .1);
        playfx( loadfx( "misc/fx_zombie_powerup_on" ), (-1243.24, -3239.94, -8398.88) );
        level.RoomIntKills2 = spawn( "trigger_radius", (-1243.24, -3239.94, -8398.88), 1, 50, 10 );
        level.RoomIntKills2 SetCursorHint( "HINT_NOICON" );
        level.RoomIntKills2 UseTriggerRequireLookAt();
        level.RoomIntKills2 setLowerMessage( level.RoomIntKills2, "Room Double Points" );
        for(;;)
        {
                level.RoomIntKills2 waittill( "trigger", i );
                if( i UseButtonPressed()  && i.score >= 250 && i.IntKills == false)
                {
                        i.score -= 250;
                        i.IntKills = true;
                        i doPInstaKills();
                        wait 2;
                        i.IntKills = false;
                   
                }
        }
}

RoomTeleporter1Alcatraz()
{
        level thread LowerMessage( "Room Teleporter 1", "Hold [{+usereload}] To Teleport To The Secret Room" );
        level.ModelTeleporter = spawn( "script_model", level.RoomTeleportBase);
        level.ModelTeleporter setModel("fxuse_lightsphere_blue");
        level.ModelTeleporter rotateTo((0, 0, 0), .1);
        level.RoomTeleporter1 = spawn( "trigger_radius", level.RoomTeleportBase, 1, 50, 10 );
        level.RoomTeleporter1 SetCursorHint( "HINT_NOICON" );
        level.RoomTeleporter1 UseTriggerRequireLookAt();
        level.RoomTeleporter1 setLowerMessage( level.RoomTeleporter1, "Room Teleporter 1" );
        self thread Teleporter1Fx();
        for(;;)
        {
                level.RoomTeleporter1 waittill( "trigger", i );
                if( i UseButtonPressed() && i.TeleportNotPossible == false)
                {
                        i SetOrigin((-1014.92, -3915.52, -8432.38));
                        i iprintln("Welcome ^2" + self.name + "^7 To ^1Secret Room^7 By ^5Loimonde51^7");
                        i.ignoreme=1;
                        i.TeleportNotPossible = true;
                        wait 2;
                        i.TeleportNotPossible = false;
                }
        }
}

RoomTeleporter2Alcatraz()
{
        level thread LowerMessage( "Room Teleporter 2", "Hold [{+usereload}] For Exit The Secret Room" );
        level.ModelTeleporter2 = spawn( "script_model", (-1014.92, -3915.52, -8432.38));
        level.ModelTeleporter2 setModel("fxuse_lightsphere_blue");
        level.ModelTeleporter2 rotateTo((0, 0, 0), .1);
        level.RoomTeleporter2 = spawn( "trigger_radius", (-1014.92, -3915.52, -8432.38), 1, 50, 10 );
        level.RoomTeleporter2 SetCursorHint( "HINT_NOICON" );
        level.RoomTeleporter2 UseTriggerRequireLookAt();
        level.RoomTeleporter2 setLowerMessage( level.RoomTeleporter2, "Room Teleporter 2" );
        self thread Teleporter2Fx();
        for(;;)
        {
                level.RoomTeleporter2 waittill( "trigger", i );
                if( i UseButtonPressed()  && i.TeleportNotPossible == false)
                {
                        i SetOrigin(level.RoomTeleportBase);
                        i iprintln("You ^1Left^7 The ^2Secret Room^7 By ^5Loimonde51^7");
                        i.TeleportNotPossible = true;
                        i.ignoreme=0;
                        wait(5);
                        i.TeleportNotPossible = false;
                }
        }
}

RoomMagicBoxAlcatraz()
{
        level thread LowerMessage( "MagicBox", "Hold [{+usereload}] For Mystery Box [Cost: 750]" );
        level.MagicWeapons = spawn( "script_model", (-680.371, -3307.64, -8447.88));
        level.MagicBox = spawn( "script_model", (-680.371, -3307.64, -8447.88));
        level.MagicBox setModel("p6_anim_zm_al_magic_box");
        level.MagicBox2 = spawn( "trigger_radius", (-680.371, -3307.64, -8447.88), 1, 50, 10 );
        level.MagicBox2 SetCursorHint( "HINT_NOICON" );
        level.MagicBox2 UseTriggerRequireLookAt();
        level.MagicBox2 setLowerMessage( level.MagicBox2, "MagicBox" );
        level.MagicBox rotateTo((0, 180, 0), .1);
        level.MagicBox2 rotateTo((0, 180, 0), .1);
        level.MagicWeapons rotateTo((0, 180, 0), .1);
        for(;;)
        {
                level.MagicBox2 waittill( "trigger", i );
                if( i UseButtonPressed() && i.score >= 750 && level.MagicBoxOpended == false )
                {
                        i.WeaponsList = [];
                        i.WeaponsList[0] = "mp5k_zm";
                        i.WeaponsList[1] = "pdw57_zm";
                        i.WeaponsList[2] = "uzi_zm";
                        i.WeaponsList[3] = "ak47_zm";
                        i.WeaponsList[4] = "fnfal_zm";
                        i.WeaponsList[5] = "galil_zm";
                        i.WeaponsList[6] = "m14_zm";
                        i.WeaponsList[7] = "tar21_zm";
                        i.WeaponsList[8] = "870mcs_zm";
                        i.WeaponsList[9] = "type95_zm";
                        i.WeaponsList[10] = "xm8_zm";
                        i.WeaponsList[11] = "870mcs_zm";
                        i.WeaponsList[12] = "blundergat_zm";
                        i.WeaponsList[13] = "rottweil72_zm";
                        i.WeaponsList[14] = "saiga12_zm";
                        i.WeaponsList[15] = "lsat_zm";
                        i.WeaponsList[16] = "minigun_alcatraz_zm";
                        i.WeaponsList[17] = "thompson_zm";
                        i.WeaponsList[18] = "dsr50_zm";
                        i.WeaponsList[19] = "barretm82_zm";
                        i.WeaponsList[20] = "beretta93r_zm";
                        i.WeaponsList[21] = "fiveseven_zm";
                        i.WeaponsList[22] = "judge_zm";
                        i.WeaponsList[23] = "kard_zm";
                        i.WeaponsList[24] = "usrpg_zm";
                        i.WeaponsList[25] = "blundersplat_zm";
                        i.WeaponsList[26] = "ray_gun_zm";
                        i.WeaponsList[27] = "raygun_mark2_zm";
                        i.WeaponsSelected = RandomInt( i.WeaponsList.size );
                        level.MagicBoxOpended = true;
                        level.MagicBox2 hide();
                        play_sound_at_pos( "open_chest", self.origin );
                        play_sound_at_pos( "music_chest", self.origin );
                        i.score -= 750;
                        MyWeapon = i getCurrentWeapon();
                        i giveWeapon( "zombie_knuckle_crack" );
                        i switchToWeapon( "zombie_knuckle_crack" );
                        level.MagicWeapons setModel(getWeaponModel(i.WeaponsList[i.WeaponsSelected]));
                        level.MagicWeapons MoveTo(level.MagicBox.origin + (0,0,55),1);
                        wait 2.8;
                        i takeWeapon( "zombie_knuckle_crack" );
                        i takeWeapon( MyWeapon );
                        level.MagicWeapons setModel("");
                        i giveweapon( "knife_zm_alcatraz" );
                        i giveweapon( i.WeaponsList[i.WeaponsSelected] );
                        i givemaxammo( i.WeaponsList[i.WeaponsSelected] );
                        i switchToWeapon( i.WeaponsList[i.WeaponsSelected] );
                        i play_weapon_vo( i.WeaponsList[i.WeaponsSelected] );
                        level.MagicWeapons MoveTo(level.MagicBox.origin,1);
                        level.MagicBox2 show();
                        level.MagicBoxOpended = false;
                }
                wait .1;
        }
}

RoomPowerAlcatraz()
{
        level thread LowerMessage( "Power", "Hold [{+usereload}] To Enable The Power [Cost: 1000]" );
        level.Power = spawn( "script_model", (-522.611, -3305.64, -8447.88));
        level.Power setModel("p6_zm_al_shock_box_on");
        level.Power2 = spawn( "trigger_radius", (-522.611, -3305.64, -8447.88), 1, 50, 10 );
        level.Power2 SetCursorHint( "HINT_NOICON" );
        level.Power2 UseTriggerRequireLookAt();
        level.Power2 setLowerMessage( level.Power2, "Power" );
        level.Power rotateTo((0, 0, 0), .1);
        level.Power2 rotateTo((0, 0, 0), .1);
        for(;;)
        {
                level.Power2 waittill( "trigger", i );
                if( i UseButtonPressed() && i.score >= 1000 && level.PowerActived == false )
                {
                    level.PowerActived = true;
                    i.score -= 1000;
                    level.Power movez( -135, .5 );
                    level.Power2 hide();
                    self thread TurnPowerOn();
                    if(getDvar("g_gametype") == "zgrief")
                    {
                    self RoomsPerksAlcatrazGrief();
                    self thread RoomPackaPunchAlcatrazGrief();
                    self thread RommsSoundAlcatrazGrief();
                    }
                    else
                    {
                    self RoomsPerksAlcatraz();
                    self thread RommsSoundAlcatraz();
                    }
                }
        }
}

RoomPackaPunchAlcatrazGrief()
{
        level thread LowerMessage( "PackaPunch", "Hold [{+usereload}] For Pack-a-Punch [Cost: 3500]" );
        level.PackaPunch = spawn( "script_model", (-1303.19, -3388.62, -8447.88));
        level.PackaPunch setModel("p6_zm_al_vending_pap_on");
        level.PackaPunch2 = spawn( "trigger_radius", (-1296, -3350.92, -8447.88), 1, 50, 10 );
        level.PackaPunch2 SetCursorHint( "HINT_NOICON" );
        level.PackaPunch2 UseTriggerRequireLookAt();
        level.PackaPunch2 setLowerMessage( level.PackaPunch2, "PackaPunch" );
        level.PackaPunch rotateTo((0, 90, 0), .1);
        level.PackaPunch2 rotateTo((0, 90, 0), .1);
        for(;;)
        {
                level.PackaPunch2 waittill( "trigger", i );
                if( i UseButtonPressed() && i.score >= 3500 && level.PackaPunch == false )
                {
                    level.PackaPunch = true;
                    i.score -= 3500;
                    level.PackaPunch2 hide();
                    self thread PackaPunch();
                }
        }
}

RoomWeaponsAlcatraz()
{
        self thread WeaponsSystemAlcatraz("Hold [{+usereload}] For Ray Gun [Cost: 1500]", (-403.141, -3470.99, -8390), 1500, "ray_gun_zm");
        self thread WeaponsSystemAlcatraz("Hold [{+usereload}] For Ray Gun Mark 2 [Cost: 2000]", (-403.141, -3520, -8390), 2000, "raygun_mark2_zm");
        self thread WeaponsSystemAlcatraz("Hold [{+usereload}] For Death Machine [Cost: 2500]", (-403.141, -3575, -8380), 2500, "minigun_alcatraz_zm");
        self thread WeaponsSystemAlcatraz("Hold [{+usereload}] For Acid Gat [Cost: 3000]", (-403.141, -3650, -8388.5), 3000, "blundersplat_zm");
}

RoomsPerksAlcatraz()
{
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_jugg", "p6_zm_al_vending_jugg_on", "Juggernog", 500, (-756.084, -3307.64, -8447.88), "specialty_armorvest" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_sleight", "p6_zm_al_vending_sleight_on", "Speed Cola", 500, (-800.944, -3307.64, -8447.88), "specialty_fastreload" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_doubletap", "p6_zm_al_vending_doubletap2_on", "Double Tap Root Beer", 500, (-855.775, -3295.64, -8447.88), "specialty_rof" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_cherry", "p6_zm_vending_electric_cherry_on", "Electric Cherry", 500, (-910.548, -3308.1, -8447.88), "specialty_grenadepulldeath" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_deadshot", "p6_zm_al_vending_ads_on", "Deadshot Daiquiri", 500, (-954.513, -3307.64, -8447.88), "specialty_deadshot" );
}

RoomsPerksAlcatrazGrief()
{
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_jugg", "p6_zm_al_vending_jugg_on", "Juggernaut", 500, (-756.084, -3307.64, -8447.88), "specialty_armorvest" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_sleight", "p6_zm_al_vending_sleight_on", "Speed Cola", 500, (-800.944, -3307.64, -8447.88), "specialty_fastreload" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_doubletap", "p6_zm_al_vending_doubletap2_on", "Double Tap Root Beer", 500, (-855.775, -3295.64, -8447.88), "specialty_rof" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_nuke", "p6_zm_al_vending_nuke_on", "PHD Flopper", 500, (-910.548, -3308.1, -8447.88), "specialty_flakjacket" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_deadshot", "p6_zm_al_vending_ads_on", "Deadshot Daiquiri", 500, (-954.513, -3307.64, -8447.88), "specialty_deadshot" );
        self thread PerksSystemAlcatraz( "zombie_perk_bottle_additionalprimaryweapon", "p6_zm_al_vending_three_gun_on", "Mule Kick", 500, (-1010.07, -3307.64, -8447.88), "specialty_additionalprimaryweapon" );
}

RommsSoundAlcatraz()
{
SoundOnOrigin( "mus_perks_jugganog_jingle", (-756.084, -3307.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_speed_jingle", (-800.944, -3307.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_doubletap_jingle", (-855.775, -3295.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_cherry_jingle", (-910.548, -3308.1, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_deadshot_jingle", (-954.513, -3307.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_packa_jingle", (-1260, -3388, -8398));
wait 100;
self thread RommsSoundAlcatraz();
}

RommsSoundAlcatrazGrief()
{
SoundOnOrigin( "mus_perks_jugganog_jingle", (-756.084, -3307.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_speed_jingle", (-800.944, -3307.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_doubletap_jingle", (-855.775, -3295.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_deadshot_jingle", (-954.513, -3307.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_mulekick_jingle", (-1010.07, -3307.64, -8447.88));
wait 50;
SoundOnOrigin( "mus_perks_packa_jingle", (-1260, -3388, -8398));
wait 100;
self thread RommsSoundAlcatrazGrief();
}

SoundOnOrigin(alias,origin)
{
        soundPlayer = spawn( "script_origin", origin );
        soundPlayer playsound( alias );
}

WeaponsSystemAlcatraz(string, origin, cost, weapon)
{
        level thread LowerMessage( "Secret Room Weapons", string );
        RWeapons = spawn( "script_model", origin);
        RWeapons setModel(getWeaponModel(weapon));
        RWeapons rotateTo((0, 270, 0), .1);
        RoomWeapons = spawn("trigger_radius", origin, 1, 20, 20);
        RoomWeapons rotateTo((0, 270, 0), .1);
        RoomWeapons SetCursorHint( "HINT_NOICON" );
        RoomWeapons setLowerMessage( RoomWeapons, "Secret Room Weapons" );
        for(;;)
        {
                RoomWeapons waittill("trigger", i);
                if(i useButtonPressed() && i.score >= cost)
                {
                        wait .3;
                        if(i useButtonPressed())
                        {
                                w = i GetWeaponsListPrimaries();
                                i playsound( "zmb_cha_ching" );
                                i.score -= cost;
                                level.RoomWeapons hide();
                                playerCurrent = i getCurrentWeapon();
                                i takeWeapon(playerCurrent);
                                i giveWeapon( weapon );
                                i switchToWeapon( weapon );
                                wait 2;
                                level.RoomWeapons show();
                        }
                }
        }
}

PerksSystemAlcatraz( botal, model, perkname, cost, origin, perk )
{
        RPerks = spawn( "script_model", origin );
        RPerks setModel( model );
        RPerks rotateTo((0, 0, 0), .1);
        level thread LowerMessage( "Secret Room Perks", "Hold [{+usereload}] For "+perkname+" [Cost: "+cost+"]" );
        trig = spawn("trigger_radius", origin, 1, 20, 20);
        trig SetCursorHint( "HINT_NOICON" );
        trig setLowerMessage( trig, "Secret Room Perks" );
        for(;;)
        {
                trig waittill("trigger", i);
                if(i useButtonPressed() && i.score >= cost)
                {
                        wait .3;
                        if(i useButtonPressed())
                        {
                                i playsound( "zmb_cha_ching" );
                                i.score -= cost;
                                level.trig hide();
                                i thread GivePerk( botal, perk );
                                wait 2;
                                level.trig show();
                        }
                }
        }
}

GivePerk( model, perk )
{
        self DisableOffhandWeapons();
        self DisableWeaponCycling();
        weaponA = self getCurrentWeapon();
        weaponB = model;
        self SetPerk( perk );
        self GiveWeapon( weaponB );
        self SwitchToWeapon( weaponB );
        self waittill( "weapon_change_complete" );
        self EnableOffhandWeapons();
        self EnableWeaponCycling();
        self TakeWeapon( weaponB );
        self SwitchToWeapon( weaponA );
        self maps/mp/zombies/_zm_perks::give_perk(perk);
}

doPNuke()
{
        foreach(player in level.players)
        {
                level thread maps\mp\zombies\_zm_powerups::nuke_powerup(self,player.team);
                player maps\mp\zombies\_zm_powerups::powerup_vo("nuke");
                zombies=getaiarray(level.zombie_team);
                player.zombie_nuked=arraysort(zombies,self.origin);
                player notify("nuke_triggered");
        }
}

doPMAmmo()
{
        foreach(player in level.players)
        {
                level thread maps\mp\zombies\_zm_powerups::full_ammo_powerup(self,player);
                player thread maps\mp\zombies\_zm_powerups::powerup_vo("full_ammo");
        }
}

doPDoublePoints()
{
        foreach(player in level.players)
        {
                level thread maps\mp\zombies\_zm_powerups::double_points_powerup(self,player);
                player thread maps\mp\zombies\_zm_powerups::powerup_vo("double_points");
        }
}

doPInstaKills()
{
        foreach(player in level.players)
        {
                level thread maps\mp\zombies\_zm_powerups::insta_kill_powerup(self,player);
                player thread maps\mp\zombies\_zm_powerups::powerup_vo("insta_kill");
        }
}

Teleporter1Fx()
{
    if(getDvar("g_gametype") == "zgrief")
    {
    for(;;)
    {
    playfx( loadfx( "electrical/fx_elec_player_sm" ), level.RoomTeleportBase );
    wait 2;
    }
    }
    else
    {
    playfx( loadfx( "maps/zombie_alcatraz/fx_alcatraz_player_revive" ), level.RoomTeleportBase );
    }
}

Teleporter2Fx()
{
    if(getDvar("g_gametype") == "zgrief")
    {
    for(;;)
    {
    playfx( loadfx( "electrical/fx_elec_player_sm" ), (-1014.92, -3915.52, -8432.38) );
    wait 2;
    }
    }
    else
    {
    playfx( loadfx( "maps/zombie_alcatraz/fx_alcatraz_player_revive" ), (-1014.92, -3915.52, -8432.38) );
    }
}

TurnPowerOn()
{
    self thread _zm_arena_openalldoors();
    trig = getEnt("use_elec_switch", "targetname");
    powerSwitch = getEnt("elec_switch", "targetname");
    powerSwitch notSolid();
    trig setHintString(&"ZOMBIE_ELECTRIC_SWITCH");
    trig setVisibleToAll();
    trig notify("trigger", self);
    trig setInvisibleToAll();
    powerSwitch rotateRoll(-90,0,3);
    powerSwitch playSound("zmb_switch_flip");
    powerSwitch playSound("zmb_poweron");
    level thread maps/mp/zombies/_zm_perks::perk_unpause_all_perks();
    self maps\mp\zombies\_zm_game_module::turn_power_on_and_open_doors();
    powerSwitch waittill("rotatedone");
    playFx(level._effect["switch_sparks"], powerSwitch.origin+(0, 12, -60), anglesToForward(powerSwitch.angles));
    powerSwitch playSound("zmb_turn_on");
    level notify("electric_door");
    flag_set("power_on");
    level setClientField("zombie_power_on", 1);
    self.PowerOn = 1;
}

_zm_arena_openalldoors()
{
    setdvar( "zombie_unlock_all", 1 );
    flag_set( "power_on" );
    players = get_players();
    zombie_doors = getentarray( "zombie_door", "targetname" );
    i = 0;
    while ( i < zombie_doors.size )
    {
        zombie_doors[ i ] notify( "trigger" );
        if ( is_true( zombie_doors[ i ].power_door_ignore_flag_wait ) )
        {
            zombie_doors[ i ] notify( "power_on" );
        }
        wait 0.05;
        i++;
    }
    zombie_airlock_doors = getentarray( "zombie_airlock_buy", "targetname" );
    i = 0;
    while ( i < zombie_airlock_doors.size )
    {
        zombie_airlock_doors[ i ] notify( "trigger" );
        wait 0.05;
        i++;
    }
    zombie_debris = getentarray( "zombie_debris", "targetname" );
    i = 0;
    while ( i < zombie_debris.size )
    {
        zombie_debris[ i ] notify("trigger");
        wait 0.05;
        i++;
    }
    level notify( "open_sesame" );
    wait 1;
    setdvar( "zombie_unlock_all", 0 );
}

packAPunch()
{
    weap = self getCurrentWeapon();
    weapon = get_upgraded(weap);
    papGun = "zombie_knuckle_crack";
    if(isDefined(weapon))
    {
        self TakeWeapon(weap);
        self GiveWeapon(papGun);
        self SwitchToWeapon(papGun);
        playFx( loadfx( "maps/zombie/fx_zombie_packapunch" ), (-1260, -3388, -8398) );
        self playSound("mus_perks_packa_sting");
        wait 4;
        self playSound("zmb_perks_packa_ready");
        self TakeWeapon(papGun);
        self GiveWeapon(weapon, 0, self maps\mp\zombies\_zm_weapons::get_pack_a_punch_weapon_options(weapon));
        self GiveStartAmmo(weapon);
        self SwitchToWeapon(weapon);
        self givemaxammo(weapon);
        self play_weapon_vo(weapon);
        wait 2;
        level.PackaPunch2 show();
        level.PackaPunch = false;
    }
}

get_upgraded( weaponname )
{
    if( IsDefined(level.zombie_weapons[weaponname]) && IsDefined(level.zombie_weapons[weaponname].upgrade_name) )
    {
        return maps\mp\zombies\_zm_weapons::get_upgrade_weapon( weaponname, false );
    }
    else
    {
        return maps\mp\zombies\_zm_weapons::get_upgrade_weapon( weaponname, true );
    }
}

LowerMessage( ref, text )
{
        if( !IsDefined( level.zombie_hints ) )
        {
                level.zombie_hints = [];
        }
        PrecacheString( text );
        level.zombie_hints[ref] = text;
}

setLowerMessage( ent, default_ref )
{
        if( IsDefined( ent.script_hint ) )
        {
                self SetHintString( get_zombie_hint( ent.script_hint ) );
        }
        else
        {
                self SetHintString( get_zombie_hint( default_ref ) );
        }
}

// Secret Room Zombies Alcatraz By Loimonde51 :

Excuse Me For My Bad English I'm French
 

Loimonde51 Team51

Known Member
Messages
11
Points
108
to use it we just need to compile in the BO2 GSC Editor?

Hello I am Loimonde51.
I will tell you the steps for using the secret room.
Step 1: Create a new project in GSC Studio
You do not have permission to view link Log in or register now.

Step 2: Copy the source code of the secret room in main.gsc
step 3: click on the tab editor then export the project to a compiled script file ... select your system console or pc then export on the desktop and you will have your gsc compile
step 4 for redacted: rename this file _clientids.gsc then copy this file in call of Duty Black ops 2 / data / maps / mp / gametypes_zm /
if you have any other question contact me in private!
 

AdrX003

Insane-Known Member
Messages
204
Points
378
Hello I am Loimonde51.
I will tell you the steps for using the secret room.
Step 1: Create a new project in GSC Studio
You do not have permission to view link Log in or register now.

Step 2: Copy the source code of the secret room in main.gsc
step 3: click on the tab editor then export the project to a compiled script file ... select your system console or pc then export on the desktop and you will have your gsc compile
step 4 for redacted: rename this file _clientids.gsc then copy this file in call of Duty Black ops 2 / data / maps / mp / gametypes_zm /
if you have any other question contact me in private!
((i kinda knew the how-to but tnx anyway)) Thanks alot!
 

AdrX003

Insane-Known Member
Messages
204
Points
378
just remembered that the nuketown one has a problem activating god mode to send the player elsewhere
 

Top