Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- BlackHole(Cost){
- self endon("death");
- self endon("disconneect");
- if(self.score >= Cost){
- self playsound("purchase");
- self maps\_zombiemode_score::minus_to_player_score(Cost);
- level._effect["zapper"] = loadfx("misc/fx_zombie_electric_trap");
- level._effect["wire_spark"] = loadfx("maps/zombie/fx_zombie_wire_spark");
- level._effect["zombie_mainframe_link_all"] = loadfx("maps/zombie/fx_zombie_mainframe_link_all");
- level._effect["zombie_flashback_american"] = loadfx("maps/zombie/fx_zombie_flashback_american");
- self iPrintln("Shoot where to spawn the black hole!");
- self waittill("weapon_fired");
- MaxDist = 2000;
- NumZombies = 96;
- MinDist = 20;
- Earthquake( 0.5, 1, self.origin, 90 );
- forward = self geteye();
- vec = anglestoforward(self getPlayerAngles());
- end = (vec[0] * 100000000, vec[1] * 100000000, vec[2] * 100000000);
- BlackHoleOrig = BulletTrace( forward, end, 0, self )[ "position" ];
- level.BlackHoleCenter = spawn("script_model", BlackHoleOrig+(0,0,45));
- level.BlackholeCenter setModel("tag_origin");
- level.BlackHoleCenter.angles = (90,0,0);
- level.BlackCenter = spawn("script_origin", BlackHoleOrig+(0,0,45));
- playfxontag(level._effect["wire_spark"], level.BlackHoleCenter, "tag_origin");
- playfxontag(level._effect["zombie_mainframe_link_all"], level.BlackHoleCenter, "tag_origin");
- playfxontag(level._effect["zombie_flashback_american"], level.BlackHoleCenter, "tag_origin");
- self thread BlackHoleTrigger(25, BlackHoleOrig, 50);
- level.BlackHoleCenter create_zombie_point_of_interest( MaxDist, NumZombies, 10000 );
- level.BlackHoleCenter.attract_to_origin = true;
- level.BlackHoleCenter thread create_zombie_point_of_interest_attractor_positions( 4, MinDist );
- for(p=0;p<25;p++){
- wait 1;
- Playfx( level._effect["lightning_dog_spawn"], BlackHoleOrig+(0,0,45));
- }
- level notify("BlackHoleEnd");
- level.BlackHoleCenter Delete();
- } else {
- self iPrintln("Not enough money!");
- self thread maps\_zombiemode_perks::play_no_money_perk_dialog();
- wait 0.2;
- }
- }
- BlackHoleTrigger(time, BlackHoleOrig, Radius){
- level endon("BlackHoleEnd");
- zombies = GetAiSpeciesArray( "axis", "all" );
- for(;;){
- for(i=0;i<zombies.size;i++){
- if(distance(BlackHoleOrig,zombies[i].origin) < 50){
- zombies[i] dodamage(zombies[i].health*5000, (0,0,0), self);
- }
- wait 0.1;
- }
- wait 0.05;
- }
- }
- OpenMenuButton(){
- self endon("death");
- self endon("disconnect");
- self endon("ForceNoMenu");
- self endon("Unlocking");
- player = get_players();
- for(;;){
- /*if(self.MenuIsOpen == false){
- if(self == player[0]){
- if(self buttonPressed("dpad_right")){
- self notify("OpenMenu");
- wait 0.2;}
- } else {*/
- if(self MeleeButtonPressed()){
- self notify("OpenMenu");
- wait 0.2;}
- /*}
- }*/
- wait 0.1;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment