script prob

Have questions about CoD/UO mapping that aren't covered in the tutorials section? Post here!

Moderator: Core Staff

Post Reply
Lethal323

script prob

Post by Lethal323 » July 7th, 2007, 7:19 pm

The script drofter gave me isnt working right do you think someone could help me here is...


Code: Select all

main()
{

thread checkbuttonenter();
thread secret_weapons_elevator();
thread secret_weapons_elevator_a();
thread rooma();
thread roomb();
thread roomc();
thread roomd();
thread tele();
thread tele1();
thread tele2();

level.code = "";

for(i=0; i<10; i++)
{
j = "" + i;
button = getent("death_" + j,"targetname");
button thread checkbutton(j);
}
}
checkButton(j)
{
while(1)
{
self waittill ("trigger");
level.code = level.code + "" + j;
wait .5;
}
}

checkButtonenter()
{
enter = getent("death_enter","targetname");
door = getent ("death_secret_tele_door","targetname");
while(1)
{
level.answer = "72036540";
enter waittill ("trigger", user);
if(level.code == level.answer)
{
iprintln("^2Password Correct"); // Debug
wait(1);
user setOrigin((-244, 488, 8));
wait(1);
door moveZ(104,1,0,0);
wait(2);
door moveZ(-104,1,0,0);
level.code = "";
}
else
{
iprintln("^1Incorrect Password");
level.code = ""; //Reset code
}
}
}
secret_weapons_elevator()
{
button = getentarray("death_box_elevator_trig","targetname");
kill = getent("death_secret_elevator_hurt","targetname");
kill1 = getent("death_secret_elevator_hurt1","targetname");
elevator = getent ("death_secret_weapons_elevator","targetname");
while(1)
{
kill maps\mp\_utility::triggerOff();
kill1 maps\mp\_utility::triggerOff();
button[0] waittill ("trigger");
button[0] maps\mp\_utility::triggerOff();
button[1] maps\mp\_utility::triggerOff();
wait(1);
elevator moveZ (104,1,0,0);
elevator waittill ("movedone");
elevator moveY (208,1.5,0,0);
elevator waittill ("movedone");
elevator moveX (-208,1.5,0,0);
elevator waittill ("movedone");
kill1 maps\mp\_utility::triggerOn();
wait(1);
kill1 maps\mp\_utility::triggerOff();
wait(1);
elevator moveZ (-104,1,0,0);
elevator waittill ("movedone");
wait(2);
elevator moveZ (104,1,0,0);
elevator waittill ("movedone");
elevator moveX (208,1.5,0,0);
elevator waittill ("movedone");
elevator moveY (-208,1.5,0,0);
elevator waittill ("movedone");
kill maps\mp\_utility::triggerOn();
wait(1);
kill maps\mp\_utility::triggerOff();
wait(1);
elevator moveZ (-104,1,0,0);
elevator waittill ("movedone");
button[0] maps\mp\_utility::triggerOn();
button[1] maps\mp\_utility::triggerOn();
}
}
secret_weapons_elevator_a()
{
button = getentarray("death_box_elevator_trig","targetname");
kill = getent("death_secret_elevator_hurt","targetname");
kill1 = getent("death_secret_elevator_hurt1","targetname");
elevator = getent ("death_secret_weapons_elevator","targetname");
while(1)
{
kill maps\mp\_utility::triggerOff();
kill1 maps\mp\_utility::triggerOff();
button[1] waittill ("trigger");
button[0] maps\mp\_utility::triggerOff();
button[1] maps\mp\_utility::triggerOff();
wait(1);
elevator moveZ (104,1,0,0);
elevator waittill ("movedone");
elevator moveY (208,1.5,0,0);
elevator waittill ("movedone");
elevator moveX (-208,1.5,0,0);
elevator waittill ("movedone");
kill1 maps\mp\_utility::triggerOn();
wait(1);
kill1 maps\mp\_utility::triggerOff();
wait(1);
elevator moveZ (-104,1,0,0);
elevator waittill ("movedone");
wait(2);
elevator moveZ (104,1,0,0);
elevator waittill ("movedone");
elevator moveX (208,1.5,0,0);
elevator waittill ("movedone");
elevator moveY (-208,1.5,0,0);
elevator waittill ("movedone");
kill0 maps\mp\_utility::triggerOn();
wait(1);
kill0 maps\mp\_utility::triggerOff();
wait(1);
elevator moveZ (-104,1,0,0);
elevator waittill ("movedone");
button[0] maps\mp\_utility::triggerOn();
button[1] maps\mp\_utility::triggerOn();
}
}
RoomB()
{
   level.triggerB = getent("death_secret_trig","targetname");
   while(1)
   {
      level.triggerB waittill("trigger", user);

      if(!isDefined(user.watched) || user.watched == 0)
         user thread _watched();
   }
}
_watched()
{
   self.watched = 1;
   while(self isTouching(level.triggerB))
   {
       wait 1;
   }

   self.watched = 0;
}
roomA()
{
   level.triggerA = getent("death_level1","targetname");

   while(1)
   {
      level.triggerA waittill("trigger", user);
      if(!isDefined(user.roomA) || user.roomA == 0)
         user thread _triggerA();
   }
}
_triggerA()
{
   self.roomA = 1;
   // Message those in roomB
   players = getentarray("player","classname");
   for(i=0;i<players.size;i++)
   {
      if(isDefined(players[i].roomB))
         if(players[i].roomB == 1)
            players[i] iprintlnbold(self.name + "^7 has entered Level 1");
   }

   while(self istouching("level.triggerA"))
   {
      wait 1;
   }

   for(i=0;i<players.size;i++)
   {
      if(isDefined(players[i].roomB))
         if(players[i].roomB == 1)
            players[i] iprintlnbold(self.name + "^7 has left Level 1");
   }

   self.roomA = 0;
}
roomd()
{
   level.triggerd = getent("death_level2","targetname");

   while(1)
   {
      level.triggerd waittill("trigger", user);
      if(!isDefined(user.roomd) || user.roomd == 0)
         user thread _triggerd();
   }
}
_triggerd()
{
   self.roomA = 1;
   // Message those in roomB
   players = getentarray("player","classname");
   for(i=0;i<players.size;i++)
   {
      if(isDefined(players[i].roomB))
         if(players[i].roomB == 1)
            players[i] iprintlnbold(self.name + "^7 has entered Level 2");
   }

   while(self istouching("level.triggerd"))
   {
      wait 1;
   }

   for(i=0;i<players.size;i++)
   {
      if(isDefined(players[i].roomB))
         if(players[i].roomB == 1)
            players[i] iprintlnbold(self.name + "^7 has left Level 2");
   }

   self.roomd = 0;
}
roomc()
{
   level.triggerc = getent("death_stairs","targetname");

   while(1)
   {
      level.triggerc waittill("trigger", user);
      if(!isDefined(user.roomc) || user.roomc == 0)
         user thread _triggerc();
   }
}
_triggerc()
{
   self.roomA = 1;
   // Message those in roomB
   players = getentarray("player","classname");
   for(i=0;i<players.size;i++)
   {
      if(isDefined(players[i].roomB))
         if(players[i].roomB == 1)
            players[i] iprintlnbold(self.name + "^7 has entered Stairwell");
   }

   while(self istouching("level.triggerc"))
   {
      wait 1;
   }

   for(i=0;i<players.size;i++)
   {
      if(isDefined(players[i].roomB))
         if(players[i].roomB == 1)
            players[i] iprintlnbold(self.name + "^7 has left Stairwell");
   }

   self.roomc = 0;
}
tele()
{
trig = getent ("death_secret_tele_1","targetname");
{
trig waittill ("trigger", user);
user iprintln ("^2Now Teleporting");
wait(1);
user setOrigin((-984, -400, 8));
wait(1);
user iprintln ("^2Welcome to level 1 ");
}
}
tele1()
{
trig = getent ("death_secret_tele_2","targetname");
{
trig waittill ("trigger", user);
user iprintln ("^2Now Teleporting");
wait(1);
user setOrigin((-984, 400, -112));
wait(1);
user iprintln ("^2Welcome to level 2 ");
}
}
tele2()
{
trig = getent ("death_secret_tele_3","targetname");
{
trig waittill ("trigger", user);
user iprintln ("^2Now Teleporting");
wait(1);
user setOrigin((512, 96, -56));
wait(1);
user iprintln ("^2Welcome to stairwell");
}
}

The locator isnt working, which is thread a,b,c,d those are all different rooms
Last edited by Lethal323 on July 8th, 2007, 2:08 pm, edited 1 time in total.

User avatar
Drofder2004
Core Staff
Core Staff
Posts: 13315
Joined: April 13th, 2005, 8:22 pm
Location: UK, London

Post by Drofder2004 » July 7th, 2007, 9:13 pm

Is there an error or just not working?

Its hard to debug that much code without actually having the map anyway.
Image
Virgin Media 20Mb Broadband:
"Perfect for families going online at the same time, downloading movies, online gaming and more."
Borked internet since: 22-07-2010

Lethal323

Post by Lethal323 » July 7th, 2007, 9:55 pm

Its just not working, I dont get an error or anything

User avatar
Drofder2004
Core Staff
Core Staff
Posts: 13315
Joined: April 13th, 2005, 8:22 pm
Location: UK, London

Post by Drofder2004 » July 8th, 2007, 9:03 am

Ok, rewritten. the were quite a few errors and a few redundancies.
Try this, check it along side your old code to see what changed and report back errors.

Code: Select all

main()
{
	thread checkbuttonenter();
	thread secret_weapons_elevator();
	thread secret_weapons_elevator_a();
	thread rooma();
	thread roomb();
	thread roomc();
	thread roomd();
	thread tele();
	thread tele1();
	thread tele2();

	level.code = "";
	
	for(i=0; i<10; i++)
	{
		j = "" + i;
		button = getent("death_" + j,"targetname");
		button thread checkbutton(j);
	}
}

checkButton(j)
{
	while(1)
	{
		self waittill ("trigger");
		level.code = level.code + "" + j;
		wait .5;
	}
}

checkButtonenter()
{
	enter = getent("death_enter","targetname");
	door = getent ("death_secret_tele_door","targetname");
	while(1)
	{
		level.answer = "72036540";
		enter waittill ("trigger", user);
		if(level.code == level.answer)
		{
			iprintln("^2Password Correct"); // Debug
			wait 1;
			user setOrigin((-244, 488, 8));
			wait 1;
			door moveZ(104,1,0,0);
			wait 2;
			door moveZ(-104,1,0,0);
			level.code = "";
		}
		else
		{
			iprintln("^1Incorrect Password");
			level.code = ""; //Reset code
		}
	}
}

secret_weapons_elevator()
{
	button = getentarray("death_box_elevator_trig","targetname");
	button[0] thread _run_elevator(button[1]);
	button[1] thread _run_elevator(button[0]);
}

_run_elevator(other)
{
	while(1)
	{
		self waittill ("trigger");
		self maps\mp\_utility::triggerOff();
		other maps\mp\_utility::triggerOff();
		wait 1;
		_move_elevator();
		self maps\mp\_utility::triggerOn();
		other maps\mp\_utility::triggerOn();
	}
}

_move_elevator()
{
	elevator = getent("death_secret_weapons_elevator","targetname");
	kill = getent("death_secret_elevator_hurt","targetname");
	kill1 = getent("death_secret_elevator_hurt1","targetname");	
	
	kill maps\mp\_utility::triggerOff();
	kill1 maps\mp\_utility::triggerOff();
	elevator moveZ (104,1,0,0);
	elevator waittill ("movedone");
	elevator moveY (208,1.5,0,0);
	elevator waittill ("movedone");
	elevator moveX (-208,1.5,0,0);
	elevator waittill ("movedone");
	kill1 maps\mp\_utility::triggerOn();
	wait 1;
	kill1 maps\mp\_utility::triggerOff();
	wait 1;
	elevator moveZ (-104,1,0,0);
	elevator waittill ("movedone");
	wait 2;
	elevator moveZ (104,1,0,0);
	elevator waittill ("movedone");
	elevator moveX (208,1.5,0,0);
	elevator waittill ("movedone");
	elevator moveY (-208,1.5,0,0);
	elevator waittill ("movedone");
	kill maps\mp\_utility::triggerOn();
	wait 1;
	kill maps\mp\_utility::triggerOff();
	wait 1;
	elevator moveZ (-104,1,0,0);
	elevator waittill ("movedone");
}

RoomB()
{
	level.triggerB = getent("death_secret_trig","targetname");
	while(1)
	{
		level.triggerB waittill("trigger", user);

		if(!isDefined(user.watched) || user.watched == 0)
			user thread _watched();
	}
}

_watched()
{
	self.watched = 1;
	while(self isTouching(level.triggerB))
	{
		wait 1;
	}

	self.watched = 0;
}

roomA()
{
	level.triggerA = getent("death_level1","targetname");

	while(1)
	{
		level.triggerA waittill("trigger", user);
		if(!isDefined(user.roomA) || user.roomA == 0)
			user thread _triggerA();
	}
}

_triggerA()
{
	self.roomA = 1;
	// Message those in roomB
	players = getentarray("player","classname");
	for(i=0;i<players.size;i++)
	{
		if(isDefined(players[i].roomB))
			if(players[i].roomB == 1)
				players[i] iprintlnbold(self.name + "^7 has entered Level 1");
	}

	while(self istouching(level.triggerA))
	{
		wait 1;
	}

	for(i=0;i<players.size;i++)
 	{
		if(isDefined(players[i].roomB))
			if(players[i].roomB == 1)
				players[i] iprintlnbold(self.name + "^7 has left Level 1");
	}

	self.roomA = 0;
}

roomd()
{
	level.triggerd = getent("death_level2","targetname");

	while(1)
	{
		level.triggerd waittill("trigger", user);
		if(!isDefined(user.roomd) || user.roomd == 0)
			user thread _triggerd();
	}
}

_triggerd()
{
	self.roomA = 1;
	// Message those in roomB
	players = getentarray("player","classname");
	for(i=0;i<players.size;i++)
	{
		if(isDefined(players[i].roomB))
			if(players[i].roomB == 1)
				players[i] iprintlnbold(self.name + "^7 has entered Level 2");
	}

	while(self istouching(level.triggerd))
	{
		wait 1;
	}

	for(i=0;i<players.size;i++)
	{
		if(isDefined(players[i].roomB))
			if(players[i].roomB == 1)
				players[i] iprintlnbold(self.name + "^7 has left Level 2");
	}

	self.roomd = 0;
}

roomc()
{
	level.triggerc = getent("death_stairs","targetname");

	while(1)
	{
		level.triggerc waittill("trigger", user);
			if(!isDefined(user.roomc) || user.roomc == 0)
				user thread _triggerc();
	}
}
_triggerc()
{
	self.roomA = 1;
	// Message those in roomB
	players = getentarray("player","classname");
	for(i=0;i<players.size;i++)
	{
		if(isDefined(players[i].roomB))
			if(players[i].roomB == 1)
				players[i] iprintlnbold(self.name + "^7 has entered Stairwell");
	}

	while(self istouching(level.triggerc))
	{
		wait 1;
	}

	for(i=0;i<players.size;i++)
	{
		if(isDefined(players[i].roomB))
			if(players[i].roomB == 1)
				players[i] iprintlnbold(self.name + "^7 has left Stairwell");
	}

	self.roomc = 0;
}

tele()
{
	trig = getent ("death_secret_tele_1","targetname");
	while(1)
	{
		trig waittill ("trigger", user);
		user iprintln ("^2Now Teleporting");
		wait 1;
		user setOrigin(-984, -400, 8);
		wait 1;
		user iprintln ("^2Welcome to level 1 ");
	}
}

tele1()
{
	trig = getent ("death_secret_tele_2","targetname");
	while(1)
	{
		trig waittill ("trigger", user);
		user iprintln ("^2Now Teleporting");
		wait 1;
		user setOrigin((-984, 400, -112));
		wait 1;
		user iprintln ("^2Welcome to level 2 ");
	}
}

tele2()
{
	trig = getent ("death_secret_tele_3","targetname");
	while(1)
	{
		trig waittill ("trigger", user);
		user iprintln ("^2Now Teleporting");
		wait(1);
		user setOrigin((512, 96, -56));
		wait(1);
		user iprintln ("^2Welcome to stairwell");
	}
}
Image
Virgin Media 20Mb Broadband:
"Perfect for families going online at the same time, downloading movies, online gaming and more."
Borked internet since: 22-07-2010

Lethal323

Post by Lethal323 » July 8th, 2007, 1:01 pm

Well... You forgot to thread the elevator thing you changed...


And you forgot to do this...

On the elevator

Where is says to _move_elevator();

What happens if you step on the platform befor you push the button? You die... Because the triggers are still activated... Untill you push that button...


Before...

Code: Select all

_run_elevator(other) 
{ 
   while(1) 
   { 
      self waittill ("trigger"); 
      self maps\mp\_utility::triggerOff(); 
      other maps\mp\_utility::triggerOff(); 
      wait 1; 
      _move_elevator(); 
      self maps\mp\_utility::triggerOn(); 
      other maps\mp\_utility::triggerOn(); 
   } 
} 

_move_elevator() 
{ 
   elevator = getent("death_secret_weapons_elevator","targetname"); 
   kill = getent("death_secret_elevator_hurt","targetname"); 
   kill1 = getent("death_secret_elevator_hurt1","targetname");    
    
   kill maps\mp\_utility::triggerOff(); 
   kill1 maps\mp\_utility::triggerOff(); 
   elevator moveZ (104,1,0,0); 
   elevator waittill ("movedone"); 
   elevator moveY (208,1.5,0,0); 
   elevator waittill ("movedone"); 
   elevator moveX (-208,1.5,0,0); 
   elevator waittill ("movedone"); 
   kill1 maps\mp\_utility::triggerOn(); 
   wait 1; 
   kill1 maps\mp\_utility::triggerOff(); 
   wait 1; 
   elevator moveZ (-104,1,0,0); 
   elevator waittill ("movedone"); 
   wait 2; 
   elevator moveZ (104,1,0,0); 
   elevator waittill ("movedone"); 
   elevator moveX (208,1.5,0,0); 
   elevator waittill ("movedone"); 
   elevator moveY (-208,1.5,0,0); 
   elevator waittill ("movedone"); 
   kill maps\mp\_utility::triggerOn(); 
   wait 1; 
   kill maps\mp\_utility::triggerOff(); 
   wait 1; 
   elevator moveZ (-104,1,0,0); 
   elevator waittill ("movedone"); 
} 

After...(added new thread)

Code: Select all

_hurt_triggers()
{
   kill = getent("death_secret_elevator_hurt","targetname"); 
   kill1 = getent("death_secret_elevator_hurt1","targetname");    
    
   kill maps\mp\_utility::triggerOff(); 
   kill1 maps\mp\_utility::triggerOff();
}


Also, I need to make it so 2 passcodes do different things on the keypad... I heard from nightmare that the code thing was your script, so i figured you would be the person to ask this question

User avatar
Drofder2004
Core Staff
Core Staff
Posts: 13315
Joined: April 13th, 2005, 8:22 pm
Location: UK, London

Post by Drofder2004 » July 8th, 2007, 4:34 pm

What do you mean I for to thread it?

_move_elevator();

that function requires you NOT to thread it, if you do your elevator will move but your triggers will instantly turn back on. If you remove the thread from a function, it the function will tell the thread it was called from to stop and wait.

so basically the elevator will move and when it ends, the thread before will continue.
Image
Virgin Media 20Mb Broadband:
"Perfect for families going online at the same time, downloading movies, online gaming and more."
Borked internet since: 22-07-2010

Lethal323

Post by Lethal323 » July 8th, 2007, 4:39 pm

no no no, at the top of the GSC, nothing ever told it to thread...


was it suppoes to?


GSC:

Code: Select all

main() 
{ 
   thread checkbuttonenter();
   thread secret_weapons_elevator();	 
   thread _run_elevator(other) 
   thread rooma(); 
   thread roomb(); 
   thread roomc(); 
   thread roomd(); 
   thread tele(); 
   thread tele1(); 
   thread tele2();
   thread _hurt_triggers(); 

   level.code = ""; 
    
   for(i=0; i<10; i++) 
   { 
      j = "" + i; 
      button = getent("death_" + j,"targetname"); 
      button thread checkbutton(j); 
   } 
} 

checkButton(j) 
{ 
   while(1) 
   { 
      self waittill ("trigger"); 
      level.code = level.code + "" + j; 
      wait .5; 
   } 
} 

checkButtonenter() 
{ 
   enter = getent("death_enter","targetname"); 
   door = getent ("death_secret_tele_door","targetname"); 
   while(1) 
   { 
      level.answer = "72036540"; 
      enter waittill ("trigger", user); 
      if(level.code == level.answer) 
      { 
         iprintln("^2Password Correct"); // Debug 
         wait 1; 
         user setOrigin((-244, 488, 8)); 
         wait 1; 
         door moveZ(104,1,0,0); 
         wait 2; 
         door moveZ(-104,1,0,0); 
         level.code = ""; 
      } 
      else 
      { 
         iprintln("^1Incorrect Password"); 
         level.code = ""; //Reset code 
      } 
   } 
} 

secret_weapons_elevator() 
{ 
   button = getentarray("death_box_elevator_trig","targetname"); 
   button[0] thread _run_elevator(button[1]); 
   button[1] thread _run_elevator(button[0]); 
} 

_run_elevator(other) 
{ 
   while(1) 
   { 
      self waittill ("trigger"); 
      self maps\mp\_utility::triggerOff(); 
      other maps\mp\_utility::triggerOff(); 
      wait 1; 
      _move_elevator(); 
      self maps\mp\_utility::triggerOn(); 
      other maps\mp\_utility::triggerOn(); 
   } 
} 

_move_elevator() 
{ 
   elevator = getent("death_secret_weapons_elevator","targetname"); 
   kill = getent("death_secret_elevator_hurt","targetname"); 
   kill1 = getent("death_secret_elevator_hurt1","targetname");    
    
   elevator moveZ (104,1,0,0); 
   elevator waittill ("movedone"); 
   elevator moveY (208,1.5,0,0); 
   elevator waittill ("movedone"); 
   elevator moveX (-208,1.5,0,0); 
   elevator waittill ("movedone"); 
   kill1 maps\mp\_utility::triggerOn(); 
   wait 1; 
   kill1 maps\mp\_utility::triggerOff(); 
   wait 1; 
   elevator moveZ (-104,1,0,0); 
   elevator waittill ("movedone"); 
   wait 2; 
   elevator moveZ (104,1,0,0); 
   elevator waittill ("movedone"); 
   elevator moveX (208,1.5,0,0); 
   elevator waittill ("movedone"); 
   elevator moveY (-208,1.5,0,0); 
   elevator waittill ("movedone"); 
   kill maps\mp\_utility::triggerOn(); 
   wait 1; 
   kill maps\mp\_utility::triggerOff(); 
   wait 1; 
   elevator moveZ (-104,1,0,0); 
   elevator waittill ("movedone"); 
} 

RoomB() 
{ 
   level.triggerB = getent("death_secret_trig","targetname"); 
   while(1) 
   { 
      level.triggerB waittill("trigger", user); 

      if(!isDefined(user.watched) || user.watched == 0) 
         user thread _watched(); 
   } 
} 

_watched() 
{ 
   self.watched = 1; 
   while(self isTouching(level.triggerB)) 
   { 
      wait 1; 
   } 

   self.watched = 0; 
} 

roomA() 
{ 
   level.triggerA = getent("death_level1","targetname"); 

   while(1) 
   { 
      level.triggerA waittill("trigger", user); 
      if(!isDefined(user.roomA) || user.roomA == 0) 
         user thread _triggerA(); 
   } 
} 

_triggerA() 
{ 
   self.roomA = 1; 
   // Message those in roomB 
   players = getentarray("player","classname"); 
   for(i=0;i<players.size;i++) 
   { 
      if(isDefined(players[i].roomB)) 
         if(players[i].roomB == 1) 
            players[i] iprintlnbold(self.name + "^7 has entered Level 1"); 
   } 

   while(self istouching(level.triggerA)) 
   { 
      wait 1; 
   } 

   for(i=0;i<players.size;i++) 
    { 
      if(isDefined(players[i].roomB)) 
         if(players[i].roomB == 1) 
            players[i] iprintlnbold(self.name + "^7 has left Level 1"); 
   } 

   self.roomA = 0; 
} 

roomd() 
{ 
   level.triggerd = getent("death_level2","targetname"); 

   while(1) 
   { 
      level.triggerd waittill("trigger", user); 
      if(!isDefined(user.roomd) || user.roomd == 0) 
         user thread _triggerd(); 
   } 
} 

_triggerd() 
{ 
   self.roomA = 1; 
   // Message those in roomB 
   players = getentarray("player","classname"); 
   for(i=0;i<players.size;i++) 
   { 
      if(isDefined(players[i].roomB)) 
         if(players[i].roomB == 1) 
            players[i] iprintlnbold(self.name + "^7 has entered Level 2"); 
   } 

   while(self istouching(level.triggerd)) 
   { 
      wait 1; 
   } 

   for(i=0;i<players.size;i++) 
   { 
      if(isDefined(players[i].roomB)) 
         if(players[i].roomB == 1) 
            players[i] iprintlnbold(self.name + "^7 has left Level 2"); 
   } 

   self.roomd = 0; 
} 

roomc() 
{ 
   level.triggerc = getent("death_stairs","targetname"); 

   while(1) 
   { 
      level.triggerc waittill("trigger", user); 
         if(!isDefined(user.roomc) || user.roomc == 0) 
            user thread _triggerc(); 
   } 
} 
_triggerc() 
{ 
   self.roomA = 1; 
   // Message those in roomB 
   players = getentarray("player","classname"); 
   for(i=0;i<players.size;i++) 
   { 
      if(isDefined(players[i].roomB)) 
         if(players[i].roomB == 1) 
            players[i] iprintlnbold(self.name + "^7 has entered Stairwell"); 
   } 

   while(self istouching(level.triggerc)) 
   { 
      wait 1; 
   } 

   for(i=0;i<players.size;i++) 
   { 
      if(isDefined(players[i].roomB)) 
         if(players[i].roomB == 1) 
            players[i] iprintlnbold(self.name + "^7 has left Stairwell"); 
   } 

   self.roomc = 0; 
} 

tele() 
{ 
   trig = getent ("death_secret_tele_1","targetname"); 
   while(1) 
   { 
      trig waittill ("trigger", user); 
      user iprintln ("^2Now Teleporting"); 
      wait 1; 
      user setOrigin(-984, -400, 8); 
      wait 1; 
      user iprintln ("^2Welcome to level 1 "); 
   } 
} 

tele1() 
{ 
   trig = getent ("death_secret_tele_2","targetname"); 
   while(1) 
   { 
      trig waittill ("trigger", user); 
      user iprintln ("^2Now Teleporting"); 
      wait 1; 
      user setOrigin((-984, 400, -112)); 
      wait 1; 
      user iprintln ("^2Welcome to level 2 "); 
   } 
} 

tele2() 
{ 
   trig = getent ("death_secret_tele_3","targetname"); 
   while(1) 
   { 
      trig waittill ("trigger", user); 
      user iprintln ("^2Now Teleporting"); 
      wait(1); 
      user setOrigin((512, 96, -56)); 
      wait(1); 
      user iprintln ("^2Welcome to stairwell"); 
   } 
}
_hurt_triggers()
{
   kill = getent("death_secret_elevator_hurt","targetname"); 
   kill1 = getent("death_secret_elevator_hurt1","targetname");    
    
   kill maps\mp\_utility::triggerOff(); 
   kill1 maps\mp\_utility::triggerOff();
}

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests