Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- trap1()
- {
- // level waittill("round_started");
- trig=getent("trap1_trigger","targetname");
- //fxer=getent("trap1_fx","targetname");
- hurt1=getent("ghost1_hurt","targetname");
- hurt2=getent("ghost2_hurt","targetname");
- hurt3=getent("ghost3_hurt","targetname");
- hurt4=getent("ghost4_hurt","targetname");
- hurt5=getent("ghost5_hurt","targetname");
- model1=getent("ghost1_model","targetname");
- model2=getent("ghost2_model","targetname");
- model3=getent("ghost3_model","targetname");
- model4=getent("ghost4_model","targetname");
- model5=getent("ghost5_model","targetname");
- thread linker();
- trig thread trap_execute();
- trig waittill("trigger", player);
- {
- iPrintLn("^3[Room Selection Open]");
- wait 0.5;
- //playfx(level.ghost_spawn,fxer.origin);
- model3 moveZ(128,3);
- wait 1;
- model2 moveZ(128,3);
- model4 moveZ(128,3);
- wait 1;
- model1 moveZ(128,3);
- model5 moveZ(128,3);
- wait 1.5;
- model3 thread attackPlayer();
- hurt3 thread damangetaken(model3);
- wait 1;
- model2 thread attackPlayer();
- model4 thread attackPlayer();
- hurt2 thread damangetaken(model2);
- hurt4 thread damangetaken(model4);
- wait 1;
- model1 thread attackPlayer();
- model5 thread attackPlayer();
- hurt1 thread damangetaken(model1);
- hurt5 thread damangetaken(model5);
- }
- wait 0.5;
- }
- linker()
- {
- hurt1=getent("ghost1_hurt","targetname");
- hurt2=getent("ghost2_hurt","targetname");
- hurt3=getent("ghost3_hurt","targetname");
- hurt4=getent("ghost4_hurt","targetname");
- hurt5=getent("ghost5_hurt","targetname");
- model1=getent("ghost1_model","targetname");
- model2=getent("ghost2_model","targetname");
- model3=getent("ghost3_model","targetname");
- model4=getent("ghost4_model","targetname");
- model5=getent("ghost5_model","targetname");
- hurt1 enablelinkto();
- hurt2 enablelinkto();
- hurt3 enablelinkto();
- hurt4 enablelinkto();
- hurt5 enablelinkto();
- hurt1 linkto(model1);
- hurt2 linkto(model2);
- hurt3 linkto(model3);
- hurt4 linkto(model4);
- hurt5 linkto(model5);
- }
- damangetaken(model)
- {
- self endon( "ghost_killed" );
- self.hp = 650;
- for(;;)
- {
- self waittill( "trigger" , player );
- if(isdefined(player) && isalive(player) && player.pers["team"] == "allies")
- {
- dmg = randomIntRange(80,120);
- self.hp = self.hp - dmg;
- iprintlnbold(self.hp);
- if( self.hp <= 0 )
- {
- EarthQuake( 1.5, 1, self.origin, 350 );
- model PlaySound( "laugh" );
- playfxontag( level.sparks, model, "tag_origin" );
- self delete();
- model delete();
- self notify( "ghost_killed" );
- }
- }
- wait 0.05;
- }
- }
- attackPlayer()
- {
- self endon("ghost_killed");
- wait 0.5;
- self thread ghostDamage();
- self thread ghostSound();
- self thread ghostFX();
- wait 0.5;
- for(;;)
- {
- wait 0.5;
- iprintlnbold("attackPlayer");
- players = getentarray("player","classname");
- player = players[randomInt(players.size)];
- self ghost_move(player);
- self waittill("target_done");
- }
- }
- ghost_move(player_random)
- {
- self endon("ghost_killed");
- self endon("target_done");
- for(;;)
- {
- if(isdefined(player_random) && isalive(player_random) && player_random.pers["team"] == "allies")
- {
- newLocation = player_random getorigin();
- currentLocation = self getorigin();
- dist = distance(currentLocation,newLocation);
- self moveto(newlocation,(dist/150));
- self.angles =(vectortoangles((player_random.origin)-(self.origin)));
- self waittill("move_done");// Just in case lol
- if(isdefined(player_random) && !isalive(player_random) && player_random.pers["team"] == "allies")
- self notify("target_done");
- }
- wait 0.7;
- }
- }
- ghostDamage()
- {
- self endon("ghost_killed");
- for(;;)
- {
- radiusdamage(self.origin,150,35,15);
- wait 0.5;
- }
- wait 0.05;
- }
- ghostFX()
- {
- self endon("ghost_killed");
- for(;;)
- {
- wait 1.5;
- playfxontag( level.ghost, self, "tag_origin" );
- wait 0.5;
- }
- wait 0.05;
- }
- ghostSound()
- {
- self endon("ghost_killed");
- self.sound = RandomIntRange( 1, 3 );
- for(;;)
- {
- self playsound("ghost_loop");
- wait 5;
- self playsound("ghost0"+self.sound);
- wait 5;
- self playsound("ghost0"+self.sound);
- wait 5;
- self playsound("ghost0"+self.sound);
- wait 5;
- self playsound("ghost0"+self.sound);
- }
- wait 0.05;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement