Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * Black Ops 2 - GSC Studio by iMCSx
- *
- * Creator : FineNerds
- * Project : Custom Zombies
- * Mode : Zombies
- * Date : 2015/08/20 - 06:26:19
- *
- */
- #include maps\mp\_utility;
- #include common_scripts\utility;
- #include maps\mp\gametypes_zm\_hud_util;
- #include maps\mp\gametypes_zm\_hud_message;
- init()
- {
- level thread onPlayerConnect();
- level.customPerks = [];
- level.customPerksCoords = [];
- level thread isPowerOn();
- }
- onPlayerConnect()
- {
- for(;;)
- {
- level waittill("connected", player);
- player thread onPlayerSpawned();
- player displayMessage();
- }
- }
- displayMessage()
- {
- self endon( "disconnect" );
- self waittill( "spawned_player" );
- self iprintln("^1FineZombies^7: ^4Loaded");
- }
- onPlayerSpawned()
- {
- self endon("disconnect");
- level endon("game_ended");
- for(;;)
- {
- self waittill("spawned_player");
- self thread testPerk();
- }
- }
- testPerk()
- {
- for(;;)
- {
- self waittill("weapon_fired");
- self iprintln("Weapon fired");
- start = self getTagOrigin("tag_eye");
- end = anglesToForward(self getPlayerAngles()) * 1000000;
- loc = Bullettrace(start, end, true, level)["position"];
- self iprintlnbold(loc);
- initNewPerk("Random Perk Name", 2500, "zombie_vending_jugg_on", loc);
- self iprintln("Spawning perk...");
- }
- }
- initNewPerk(name, price, machine_model, loc)
- {
- p = level.customPerks.size;
- level.customPerks[p] = name;
- self iprintln("Perk ^1" + level.customPerks[p] + "^7 added to perk list");
- c = level.customPerksCoords.size;
- level.customPerksCoords[c] = spawn("script_model", loc);
- level.customPerksCoords[c].angles = (0, 0, 0);
- level.customPerksCoords[c] setModel(model);
- self iprintln("Perk Coords contains " + level.customPerksCoords.size + " entries.");
- self iprintlnbold("Perk " + name + " spawned at " + loc + " as " + machine_model);
- for(;;)
- {
- foreach(player in level.players)
- {
- if(distance(self.origin, player.origin) <100 && player.hasDrink && isPowerOn())
- {
- player iPrintlnBold("Hold &&1 to buy " + name + "[Cost: " + price + "]");
- player.hasDrink = true;
- }
- else if(distance(self.origin, player.origin) <100 && !player.hasDrink && !isPowerOn())
- {
- player iPrintlnBold("The power must be turned on first!");
- }
- }
- }
- }
- isPowerOn()
- {
- flag_wait("electricity_on");
- return true;
- }
- // Not needed at this moment.
- displayPerkHintstring(name, price)
- {
- level endon("game_ended");
- self iprintln("Hintstring displayed");
- for(;;)
- {
- foreach(player in level.players)
- {
- if(distance(self.origin, player.origin) <100 && player.hasDrink && isPowerOn())
- {
- player iPrintlnBold("Hold &&1 to buy " + name + "[Cost: " + price + "]");
- player.hasDrink = true;
- }
- else if(distance(self.origin, player.origin) <100 && !player.hasDrink && !isPowerOn())
- {
- player iPrintlnBold("The power must be turned on first!");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment