script_brushmodel Doesn't Show

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

Moderator: Core Staff

Post Reply
paintlax21
CJ Donator
CJ Donator
Posts: 52
Joined: August 10th, 2009, 5:20 pm

script_brushmodel Doesn't Show

Post by paintlax21 » July 18th, 2010, 3:15 am

I have a script_brushmodel in my map that isnt visible but you can walk on it and run into it

User avatar
Soviet
Core Staff
Core Staff
Posts: 7762
Joined: April 23rd, 2005, 9:12 pm

Re: script_brushmodel Doesn't Show

Post by Soviet » July 18th, 2010, 8:18 am

What texture are you using for the script_brushmodel? If it is obviously a visible texture then try just remaking the script_brushmodel, chances are it got glitched at some point. If remaking it doesn't work, post your script involving the brushmodel.

User avatar
Rezil
Core Staff
Core Staff
Posts: 2030
Joined: July 24th, 2006, 11:21 am
Location: Cramped in a small cubicle/making another jump map

Re: script_brushmodel Doesn't Show

Post by Rezil » July 18th, 2010, 10:47 am

Relevant code in the main map .gsc:

Code: Select all

#include maps\mp\_target_range;
#include maps\mp\_utility;
#include maps\mp\_weapon_pickup;
main()
{
	precachestring(&":");
	precachestring(&" ");
	precachestring(&"/");
	precachestring(&"Enemies hit:");
	precachestring(&"Time elapsed:");
	precachestring(&"Hit Percentage:");
	precachestring(&"Percent");

	maps\mp\_load::main();


	level.target_range_active = false; //reset after end
	level.done_four_targets = false; //reset after end
	level.threadedAlready = false;
	level.fading = false;
	
	level.door_closed = true;
	level.target_numbers = 17;
	enableLinkTos();

	target_stuff();
	
	thread pre_start_triggers_off();
	thread target_range_start();
	  thread waitForUser();
	  thread doorClose();
	thread target_four_targets_outside();
	thread targets_inside();
	thread stairs_special_target();
	thread top_of_house_targets();
	thread last_targets();
	
	thread target_range_finish();
	
	
	
}

target_stuff()
{
	t1  = getent("default_target_1","targetname");
	t2  = getent("default_target_2","targetname");
	t3  = getent("default_target_3","targetname");
	t4  = getent("default_target_4","targetname");
	t5  = getent("default_target_5","targetname");
	t6  = getent("default_target_6","targetname");
	t7  = getent("default_target_7","targetname");
	t8  = getent("default_target_8","targetname");
	t9  = getent("default_target_9","targetname");
	t10 = getent("default_target_10","targetname");
	t11 = getent("default_target_11","targetname");
	t12 = getent("default_target_12","targetname");
	t13 = getent("default_target_13","targetname");
	t14 = getent("default_target_14","targetname");
	t15 = getent("default_target_15","targetname");
	t16 = getent("default_target_16","targetname");
	t17 = getent("default_target_17","targetname");
	
	

	t1 thread give_target_values();
	t2 thread give_target_values();
	t3 thread give_target_values();
	t4 thread give_target_values();
	t5 thread give_target_values();
	t6 thread give_target_values();
	t7 thread give_target_values();
	t8 thread give_target_values();
	t9 thread give_target_values();
	t10 thread give_target_values();
	t11 thread give_target_values();
	t12 thread give_target_values();
	t13 thread give_target_values();
	t14 thread give_target_values();
	t15 thread give_target_values();
	t16 thread give_target_values();
	t17 thread give_target_values();
	
	t1 rotateto((0,0,0),0.1);
	t2 rotateto((0,0,0),0.1);
	t3 rotateto((0,0,0),0.1);
	t4 rotateto((0,0,0),0.1);
	t5 rotateto((0,0,0),0.1);
	t6 rotateto((0,0,0),0.1);
	t7 rotateto((0,0,0),0.1);
	t8 rotateto((0,0,0),0.1);
	t9 rotateto((0,0,0),0.1);
	t10 rotateto((0,0,0),0.1);
	t11 rotateto((0,0,0),0.1);
	t12 rotateto((0,0,0),0.1);
	t13 rotateto((0,0,0),0.1);
	t14 rotateto((0,0,0),0.1);
	t15 rotateto((0,0,0),0.1);
	t16 rotateto((0,0,0),0.1);
	t17 rotateto((0,0,0),0.1);
}

give_target_values()
{
	self.shot = false;
}


pre_start_triggers_off()
{
	t1  = getent("default_target_1_dmg","targetname");
	t2  = getent("default_target_2_dmg","targetname");
	t3  = getent("default_target_3_dmg","targetname");
	t4  = getent("default_target_4_dmg","targetname");
	t5  = getent("default_target_5_dmg","targetname");
	t6  = getent("default_target_6_dmg","targetname");
	t7  = getent("default_target_7_dmg","targetname");
	t8  = getent("default_target_8_dmg","targetname");
	t9  = getent("default_target_9_dmg","targetname");
	t10 = getent("default_target_10_dmg","targetname");
	t11 = getent("default_target_11_dmg","targetname");
	t12 = getent("default_target_12_dmg","targetname");
	t13 = getent("default_target_13_dmg","targetname");
	t14 = getent("default_target_14_dmg","targetname");
	t15 = getent("default_target_15_dmg","targetname");
	t16 = getent("default_target_16_dmg","targetname");
	t17 = getent("default_target_17_dmg","targetname");
	
	while(1)
	{
		if(!level.target_range_active)
		{
			t1 triggeroff();
			t2 triggeroff();
			t3 triggeroff();
			t4 triggeroff();
			t5 triggeroff();
			t6 triggeroff();
			t7 triggeroff();
			t8 triggeroff();
			t9 triggeroff();
			t10 triggeroff();
			t11 triggeroff();
			t12 triggeroff();
			t13 triggeroff();
			t14 triggeroff();
			t15 triggeroff();
			t16 triggeroff();
			t17 triggeroff();
		}
		wait 0.05;
	}
}

	


target_range_start()
{
	t = getent("default_trigger_range_start","targetname");
	door = getent(t.target, "targetname");
	tgt1 = getent("default_target_1","targetname");
	tgt1_dmg = getent("default_target_1_dmg","targetname");
	tgt2 = getent("default_target_2","targetname");
	tgt2_dmg = getent("default_target_2_dmg","targetname");
	tgt3 = getent("default_target_3","targetname");
	tgt3_dmg = getent("default_target_3_dmg","targetname");
	
	while(1)
	{
		t waittill("trigger", user);
		if(level.fading)
		{
			user iprintlnbold("");
			wait 0.05;
		}
		else
		{
			if(isdefined(user.hitcount_overlay))
			{
				user.hitcount_overlay destroy();
				user.hitcount_overlay = undefined;
			}
			if(isdefined(user.slash))
			{
				user.slash destroy();
				user.slash = undefined;
			}
			if(isdefined(user.total_num))
			{
				user.total_num destroy();
				user.total_num = undefined;
			}
			if(isdefined(user.targets_hit_text))
			{
				user.targets_hit_text destroy();
				user.targets_hit_text = undefined;
			}
			if(isdefined(user.time_elapsed_text))
			{
				user.time_elapsed_text destroy();
				user.time_elapsed_text = undefined;
			}
			if(isdefined(user.secondwatch))
			{
				user.secondwatch destroy();
				user.secondwatch = undefined;
			}
			if(isdefined(user.minutewatch))
			{
				user.minutewatch destroy();
				user.minutewatch = undefined;
			}
			if(isdefined(user.dots))
			{
				user.dots destroy();
				user.dots = undefined;
			}
			if(isdefined(user.percentage))
			{
				user.percentage destroy();
				user.percentage = undefined;
			}
			if(isdefined(user.secondtime))
			{
				user.secondtime = 0;
			}
			if(isdefined(user.minutetime))
			{
				user.minutetime = 0;
			}
			if(isdefined(user.percentage_text))
			{
				user.percentage_text destroy();
				user.percentage_text = undefined;
			}
			if(isdefined(user.percentage_text_add))
			{
				user.percentage_text_add destroy();
				user.percentage_text_add = undefined;
			}
			
			user.triggered_first = false;
			user.triggered_second = false;
			user.triggered_third = false;
			user.triggered_fourth = false;
			user.triggered_fifth = false;
			level.target_range_active = true;
			user makeStopwatch();
			user.hit_count = 0;
			user makeTargetRangeOverlays();
			
			door rotateyaw(-90, 0.5, 0.2, 0.2);
			level.door_closed = false;
			tgt1 rotateroll(-90, 0.3);
			tgt2 rotateroll(-90, 0.3);
			tgt3 rotateto((0,45,-90), 0.3);
			t triggeroff();
			tgt1_dmg triggeron();
			tgt2_dmg triggeron();
			tgt3_dmg triggeron();
			target_start_damage();
			wait 0.1;
		}
	}
}

doorClose()
{
	t = getent("trigger_to_close_door","targetname");
	t2 = getent("default_trigger_range_start","targetname");
	door = getent(t2.target, "targetname");
	while(1)
	{
		t waittill("trigger", user);
		if(!level.door_closed)
		{
			door rotateyaw(90, 0.5, 0.1, 0.3);
			door waittill("rotatedone");
			level.door_closed = true;
		}
	}
}

target_four_targets_outside()
{
	tgt1 = getent("default_target_1","targetname");
	tgt2 = getent("default_target_2","targetname");
	tgt3 = getent("default_target_3","targetname"); //need these three for the check

	tgt4 = getent("default_target_4","targetname");
	tgt4_dmg = getent("default_target_4_dmg","targetname");
	tgt5 = getent("default_target_5","targetname");
	tgt5_dmg = getent("default_target_5_dmg","targetname");
	tgt6 = getent("default_target_6","targetname");
	tgt6_dmg = getent("default_target_6_dmg","targetname");
	tgt7 = getent("default_target_7","targetname");
	tgt7_dmg = getent("default_target_7_dmg","targetname");

	while(1)
	{
		if(!level.done_four_targets)
		{
			if((tgt1.shot) && (tgt2.shot) && (tgt3.shot))
			{
				tgt4 rotateroll(-90, 0.3);
				tgt5 rotateroll(-90, 0.3);
				tgt6 rotateroll(-90, 0.3);
				tgt7 rotateroll(-90, 0.3);
				level.done_four_targets = true;
				wait 0.05;	
				tgt4_dmg triggeron();
				tgt5_dmg triggeron();
				tgt6_dmg triggeron();
				tgt7_dmg triggeron();
				four_targets_outside_damage();
				
			}
		}
		
		wait 0.05;
	}
}

waitForUser()
{
		t = getent("four_targets_trigger_range","targetname");
		
		tgt4 = getent("default_target_4","targetname");
		tgt4_dmg = getent("default_target_4_dmg","targetname");
		tgt5 = getent("default_target_5","targetname");
		tgt5_dmg = getent("default_target_5_dmg","targetname");
		tgt6 = getent("default_target_6","targetname");
		tgt6_dmg = getent("default_target_6_dmg","targetname");
		tgt7 = getent("default_target_7","targetname");
		tgt7_dmg = getent("default_target_7_dmg","targetname");
		while(1)
		{
			t waittill("trigger", user);
			
			user.triggered_first = true;
			wait 0.05;
			if(!level.done_four_targets)
			{
				tgt4 rotateroll(-90, 0.3);
				tgt5 rotateroll(-90, 0.3);
				tgt6 rotateroll(-90, 0.3);
				tgt7 rotateroll(-90, 0.3);
				level.done_four_targets = true;
				wait 0.05;
				tgt4_dmg triggeron();
				tgt5_dmg triggeron();
				tgt6_dmg triggeron();
				tgt7_dmg triggeron();
				four_targets_outside_damage();
			}
		}
}

targets_inside()
{
	t = getent("entered_house_trigger_range","targetname");
	
	tgt8 = getent("default_target_8","targetname");
	tgt8_dmg = getent("default_target_8_dmg","targetname");
	tgt9 = getent("default_target_9","targetname");
	tgt9_dmg = getent("default_target_9_dmg","targetname");
	while(1)
	{
		t waittill("trigger", user);
		
		user.triggered_second = true;
		tgt9 rotateroll(-90, 0.3);
		tgt8 rotateto((0,-45,-90), 0.3);
		t triggeroff();
		wait 0.05;
		tgt8_dmg triggeron();
		tgt9_dmg triggeron();
		targets_inside_damage();
	}
	
}

stairs_special_target()
{
	t = getent("mid_stairs_trigger_range","targetname");
	
	tgt10 = getent("default_target_10","targetname");
	tgt10_dmg = getent("default_target_10_dmg","targetname");
	while(1)
	{
		t waittill("trigger", user);
		
		user.triggered_third = true;
		
		tgt10 rotateyaw(90,0.3);
		t triggeroff();
		tgt10_dmg triggeron();
		special_target_damage();
	}
	
}

top_of_house_targets()
{
	t = getent("top_room_trigger_range","targetname");
	
	tgt11 = getent("default_target_11","targetname");
	tgt11_dmg = getent("default_target_11_dmg","targetname");
	tgt12 = getent("default_target_12","targetname");
	tgt12_dmg = getent("default_target_12_dmg","targetname");
	tgt13 = getent("default_target_13","targetname");
	tgt13_dmg = getent("default_target_13_dmg","targetname");
	while(1)
	{
		t waittill("trigger", user);
		user.triggered_fourth = true;
		
		tgt11 rotateto((-90,0,45), 0.3);
		tgt12 rotatepitch(90, 0.3);
		tgt13 rotatepitch(90, 0.3);
		t triggeroff();
		wait 0.05;
		tgt11_dmg triggeron();
		tgt12_dmg triggeron();
		tgt13_dmg triggeron();
		top_of_house_damage();
		
	}
	
}

last_targets()
{
	t = getent("drop_down_trigger_range","targetname");
	
	tgt14 = getent("default_target_14","targetname");
	tgt14_dmg = getent("default_target_14_dmg","targetname");
	tgt15 = getent("default_target_15","targetname");
	tgt15_dmg = getent("default_target_15_dmg","targetname");
	tgt16 = getent("default_target_16","targetname");
	tgt16_dmg = getent("default_target_16_dmg","targetname");
	tgt17 = getent("default_target_17","targetname");
	tgt17_dmg = getent("default_target_17_dmg","targetname");
	tgt17 rotateto((0,-45,0), 0.1);
	while(1)
	{
		t waittill("trigger", user);
		
		user.triggered_fifth = true;
		
		
		tgt14 rotateroll(90, 0.3);
		tgt15 rotateroll(90, 0.3);
		tgt16 rotateroll(90, 0.3);
		tgt17 rotateto((0,-45,90), 0.3);
		t triggeroff();
		tgt14_dmg triggeron();
		tgt15_dmg triggeron();
		tgt16_dmg triggeron();
		tgt17_dmg triggeron();
		last_targets_damage();
	}
	
}





//////////////////////////////////////DAMAGES
target_start_damage()
{
	tgt1 = getent("default_target_1","targetname");
	tgt1_dmg = getent("default_target_1_dmg","targetname");
	tgt2 = getent("default_target_2","targetname");
	tgt2_dmg = getent("default_target_2_dmg","targetname");
	tgt3 = getent("default_target_3","targetname");
	tgt3_dmg = getent("default_target_3_dmg","targetname");
	if(!level.threadedAlready)
	{

	tgt1_dmg thread targetthinkstraight(tgt1, 0);
	tgt2 thread targetMoveXThenMinusX(100, 1);
	tgt2_dmg thread targetthinkstraight(tgt2, 0);
	tgt3_dmg thread targetthinkangled(tgt3, 0, 0, 0);
	}
}

four_targets_outside_damage()
{
	tgt4 = getent("default_target_4","targetname");
	tgt4_dmg = getent("default_target_4_dmg","targetname");
	tgt5 = getent("default_target_5","targetname");
	tgt5_dmg = getent("default_target_5_dmg","targetname");
	tgt6 = getent("default_target_6","targetname");
	tgt6_dmg = getent("default_target_6_dmg","targetname");
	tgt7 = getent("default_target_7","targetname");
	tgt7_dmg = getent("default_target_7_dmg","targetname");
	
	if(!level.threadedAlready)
	{
		tgt4 thread targetMoveXThenMinusX(-120, 1.2);
		tgt5 thread targetMoveXThenMinusX(-120, 1.2);
		tgt6 thread targetMoveXThenMinusX(-120, 1.2);
		tgt7 thread targetMoveXThenMinusX(120, 1.2);
		tgt4_dmg thread targetthinkstraight(tgt4, 0);
		tgt5_dmg thread targetthinkstraight(tgt5, 0);
		tgt6_dmg thread targetthinkstraight(tgt6, 0);
		tgt7_dmg thread targetthinkstraight(tgt7, 0);
	}
}

targets_inside_damage()
{
	tgt8 = getent("default_target_8","targetname");
	tgt8_dmg = getent("default_target_8_dmg","targetname");
	tgt9 = getent("default_target_9","targetname");
	tgt9_dmg = getent("default_target_9_dmg","targetname");
	if(!level.threadedAlready)
	{
	tgt9 thread targetMoveXThenMinusX(-120, 1.2);
	tgt9_dmg thread targetthinkstraight(tgt9, 0);
	tgt8_dmg thread targetthinkangled(tgt8, 0, 0, 0);
	}
}

special_target_damage()
{
	tgt10 = getent("default_target_10","targetname");
	tgt10_dmg = getent("default_target_10_dmg","targetname");
	
	tgt10_dmg waittill("trigger", user);
	tgt10_dmg triggeroff();
	tgt10 notify("target_shot");
	tgt10.shot = true; //reset after end
	tgt10 rotateyaw(-90, 0.3);
	user.hit_count++; //reset after end
	wait 0.05;
	user updateTargetRangeOverlays();
	wait 0.1;
}

top_of_house_damage()
{
	tgt11 = getent("default_target_11","targetname");
	tgt11_dmg = getent("default_target_11_dmg","targetname");
	tgt12 = getent("default_target_12","targetname");
	tgt12_dmg = getent("default_target_12_dmg","targetname");
	tgt13 = getent("default_target_13","targetname");
	tgt13_dmg = getent("default_target_13_dmg","targetname");
	
	if(!level.threadedAlready)
	{
		tgt11_dmg thread targetthinkangled(tgt11, 0, 0, 0);
		tgt12 thread targetMoveYThenMinusY(120,1.2);
		tgt12_dmg thread targetthinkstraightpitch(tgt12, 0);
		tgt13_dmg thread targetthinkstraightpitch(tgt13, 0);
		wait 0.05;
	}
}

last_targets_damage()
{
	tgt14 = getent("default_target_14","targetname");
	tgt14_dmg = getent("default_target_14_dmg","targetname");
	tgt15 = getent("default_target_15","targetname");
	tgt15_dmg = getent("default_target_15_dmg","targetname");
	tgt16 = getent("default_target_16","targetname");
	tgt16_dmg = getent("default_target_16_dmg","targetname");
	tgt17 = getent("default_target_17","targetname");
	tgt17_dmg = getent("default_target_17_dmg","targetname");
	
	if(!level.threadedAlready)
	{
	tgt14 thread targetMoveXThenMinusX(120, 1.2);
	tgt14_dmg thread targetthinkstraight(tgt14, 0);
	tgt15_dmg thread targetthinkstraight(tgt15, 0);
	tgt16_dmg thread targetthinkstraight(tgt16, 0);
	tgt17_dmg thread targetthinkangled(tgt17, 0, -45, 0);
	}
}

target_range_finish()
{
	trig = getent("range_finished","targetname");
	starttrig = getent("default_trigger_range_start","targetname");
	trig_four = getent("four_targets_trigger_range","targetname");
	trig_house = getent("entered_house_trigger_range","targetname");
	trig_stairs = getent("mid_stairs_trigger_range","targetname");
	trig_top = getent("top_room_trigger_range","targetname");
	trig_drop = getent("drop_down_trigger_range","targetname");
	
	t1  = getent("default_target_1","targetname");
	t2  = getent("default_target_2","targetname");
	t3  = getent("default_target_3","targetname");
	t4  = getent("default_target_4","targetname");
	t5  = getent("default_target_5","targetname");
	t6  = getent("default_target_6","targetname");
	t7  = getent("default_target_7","targetname");
	t8  = getent("default_target_8","targetname");
	t9  = getent("default_target_9","targetname");
	t10 = getent("default_target_10","targetname");
	t11 = getent("default_target_11","targetname");
	t12 = getent("default_target_12","targetname");
	t13 = getent("default_target_13","targetname");
	t14 = getent("default_target_14","targetname");
	t15 = getent("default_target_15","targetname");
	t16 = getent("default_target_16","targetname");
	t17 = getent("default_target_17","targetname");
	
	while(1)
	{
		trig waittill("trigger", user);
		if(isdefined(user.triggered_first))
		{
			if((user.triggered_first) && (user.triggered_second) && (user.triggered_third) && (user.triggered_fourth) && (user.triggered_fifth) && (level.target_range_active))
			{
				stats = user getstats();
				level.target_range_active = false;
				user makeAndKillFinalHUDStuff();
				user.dots.label = &":";
				if(stats > 100) stats = 100; //debug
				else if(stats == 100)
				{
					user iprintlnbold("You had a flawless run, well done!");
					wait 1;
				}
				minutes = int(user.minutetime);
				seconds = int(user.secondtime);
				if(minutes > 0)
				{
					iprintln("" +user.name, "^7 has finished the obstacle course in " +minutes, " minutes and " +seconds, " seconds!");
				}
				else
				{
					iprintln("" +user.name, "^7 has finished the obstacle course in " +seconds, " seconds!");
				}
				wait 2;
				user iprintlnbold("If you want to improve your time, go back to the first gate.");
				level.done_four_targets = false;
				level.threadedAlready = true;
				thread target_stuff();
				starttrig triggeron();
				trig_four triggeron();
				trig_house triggeron();
				trig_stairs triggeron();
				trig_top triggeron();
				trig_drop triggeron();
				wait 3;
				
				level.fading = true;
				user.hitcount_overlay fadeovertime(2);
				user.slash fadeovertime(2);
				user.total_num fadeovertime(2);
				user.targets_hit_text fadeovertime(2);
				user.time_elapsed_text fadeovertime(2);
				user.slash fadeovertime(2);
				user.hitcount_overlay fadeovertime(2);
				user.slash fadeovertime(2);
				user.secondwatch fadeovertime(2);
				user.minutewatch fadeovertime(2);
				user.dots fadeovertime(2);
				user.percentage fadeovertime(2);
				user.percentage_text fadeovertime(2);
				user.percentage_text_add fadeovertime(2);
				user.hitcount_overlay.alpha = 0;
				user.slash.alpha = 0;
				user.total_num.alpha = 0;
				user.targets_hit_text.alpha = 0;
				user.time_elapsed_text.alpha = 0;
				user.slash.alpha = 0;
				user.hitcount_overlay.alpha = 0;
				user.slash.alpha = 0;
				user.secondwatch.alpha = 0;
				user.minutewatch.alpha = 0;
				user.dots.alpha = 0;
				user.percentage.alpha = 0;
				user.percentage_text.alpha = 0;
				user.percentage_text_add.alpha = 0;
				level.fading = false;
			}   
			else wait 0.05;
		}
	}
}

enableLinkTos()
{
	tgt1 = getent("default_target_1","targetname");
	tgt1_dmg = getent("default_target_1_dmg","targetname");
	tgt2 = getent("default_target_2","targetname");
	tgt2_dmg = getent("default_target_2_dmg","targetname");
	tgt3 = getent("default_target_3","targetname");
	tgt3_dmg = getent("default_target_3_dmg","targetname");
	tgt4 = getent("default_target_4","targetname");
	tgt4_dmg = getent("default_target_4_dmg","targetname");
	tgt5 = getent("default_target_5","targetname");
	tgt5_dmg = getent("default_target_5_dmg","targetname");
	tgt6 = getent("default_target_6","targetname");
	tgt6_dmg = getent("default_target_6_dmg","targetname");
	tgt7 = getent("default_target_7","targetname");
	tgt7_dmg = getent("default_target_7_dmg","targetname");
	tgt8 = getent("default_target_8","targetname");
	tgt8_dmg = getent("default_target_8_dmg","targetname");
	tgt9 = getent("default_target_9","targetname");
	tgt9_dmg = getent("default_target_9_dmg","targetname");
	tgt10 = getent("default_target_10","targetname");
	tgt10_dmg = getent("default_target_10_dmg","targetname");
	tgt11 = getent("default_target_11","targetname");
	tgt11_dmg = getent("default_target_11_dmg","targetname");
	tgt12 = getent("default_target_12","targetname");
	tgt12_dmg = getent("default_target_12_dmg","targetname");
	tgt13 = getent("default_target_13","targetname");
	tgt13_dmg = getent("default_target_13_dmg","targetname");
	tgt14 = getent("default_target_14","targetname");
	tgt14_dmg = getent("default_target_14_dmg","targetname");
	tgt15 = getent("default_target_15","targetname");
	tgt15_dmg = getent("default_target_15_dmg","targetname");
	tgt16 = getent("default_target_16","targetname");
	tgt16_dmg = getent("default_target_16_dmg","targetname");
	tgt17 = getent("default_target_17","targetname");
	tgt17_dmg = getent("default_target_17_dmg","targetname");
	
	tgt1_dmg enablelinkto();
	tgt1_dmg linkto(tgt1);
	tgt2_dmg enablelinkto();
	tgt2_dmg linkto(tgt2);
	tgt3_dmg enablelinkto();
	tgt3_dmg linkto(tgt3);
	tgt4_dmg enablelinkto();
	tgt4_dmg linkto(tgt4);
	tgt5_dmg enablelinkto();
	tgt5_dmg linkto(tgt5);
	tgt6_dmg enablelinkto();
	tgt6_dmg linkto(tgt6);
	tgt7_dmg enablelinkto();
	tgt7_dmg linkto(tgt7);
	tgt8_dmg enablelinkto();
	tgt8_dmg linkto(tgt8);
	tgt9_dmg enablelinkto();
	tgt9_dmg linkto(tgt9);
	tgt10_dmg enablelinkto();
	tgt10_dmg linkto(tgt10);
	tgt11_dmg enablelinkto();
	tgt11_dmg linkto(tgt11);
	tgt12_dmg enablelinkto();
	tgt12_dmg linkto(tgt12);
	tgt13_dmg enablelinkto();
	tgt13_dmg linkto(tgt13);
    tgt14_dmg enablelinkto();
    tgt14_dmg linkto(tgt14);
    tgt15_dmg enablelinkto();
    tgt15_dmg linkto(tgt15);
    tgt16_dmg enablelinkto();
    tgt16_dmg linkto(tgt16);
    tgt17_dmg enablelinkto();
    tgt17_dmg linkto(tgt17);
}
    
    
_target_range.gsc:

Code: Select all

#include maps\mp\_utility;
GetStats()
{
	if(isdefined(self.hit_count))
	{
		stats = int((self.hit_count/level.target_numbers)*100);
		return stats;
	}
}


makeTargetRangeOverlays() //reset after end
{	
	//number of targets you have hit
	if(!isdefined(self.hitcount_overlay))
	{
		self.hitcount_overlay = newclienthudelem(self);
		self.hitcount_overlay.x = 550; //max 650
		self.hitcount_overlay.y = 110; //max 475
		self.hitcount_overlay.alignX = "right";
		self.hitcount_overlay.alignY = "bottom";
		self.hitcount_overlay.font = "default";
		self.hitcount_overlay.fontScale = 1;   
		self.hitcount_overlay.archived = false;
		self.hitcount_overlay.color = (1, 1, 1);
		self.hitcount_overlay setvalue(self.hit_count);
	}
	
	//the "/" sign
	if(!isdefined(self.slash))
	{
		self.slash = newclienthudelem(self);
		self.slash.x = 555; //max 650
		self.slash.y = 110; //max 475
		self.slash.alignX = "left";
		self.slash.alignY = "bottom";
		self.slash.font = "default";
		self.slash.fontScale = 1;   
		self.slash.archived = false;
		self.slash.color = (1, 1, 1);
		self.slash.label = &"/";
	}
	
	//the total number of targets
	if(!isdefined(self.total_num))
	{
		self.total_num = newclienthudelem(self);
		self.total_num.x = 560; //max 650
		self.total_num.y = 110; //max 475
		self.total_num.alignX = "left";
		self.total_num.alignY = "bottom";
		self.total_num.font = "default";
		self.total_num.fontScale = 1;   
		self.total_num.archived = false;
		self.total_num.color = (1, 1, 1);
		self.total_num setvalue(level.target_numbers);
	}
	
	if(!isdefined(self.targets_hit_text))
	{
		self.targets_hit_text = newclienthudelem(self);
		self.targets_hit_text.x = 535; //max 650
		self.targets_hit_text.y = 110; //max 475
		self.targets_hit_text.alignX = "right";
		self.targets_hit_text.alignY = "bottom";
		self.targets_hit_text.font = "default";
		self.targets_hit_text.fontScale = 1;   
		self.targets_hit_text.archived = false;
		self.targets_hit_text.color = (1, 1, 1);
		self.targets_hit_text.label = &"Enemies hit:";
	}
	
	if(!isdefined(self.time_elapsed_text))
	{
		self.time_elapsed_text = newclienthudelem(self);
		self.time_elapsed_text.x = 535; //max 650
		self.time_elapsed_text.y = 100; //max 475
		self.time_elapsed_text.alignX = "right";
		self.time_elapsed_text.alignY = "bottom";
		self.time_elapsed_text.font = "default";
		self.time_elapsed_text.fontScale = 1;   
		self.time_elapsed_text.archived = false;
		self.time_elapsed_text.color = (1, 1, 1);
		self.time_elapsed_text.label = &"Time elapsed:";
	}
}

updateTargetRangeOverlays()
{
	if(isdefined(self.hitcount_overlay))
	{
		newvalue = self.hit_count;
		self.hitcount_overlay setvalue(newvalue);
	}
}

targetThinkStraight(target, angle) //Damage check for targets
{
	while(1)
	{
		self waittill("trigger", user);
		if(!target.shot)
		{
			target.shot = true; //reset after end
			target rotateto((0,0, angle), 0.3);
			user.hit_count++; //reset after end
			wait 0.05;
			self triggeroff();
			user updateTargetRangeOverlays();
		}
	wait 0.05;
	}
}

targetThinkStraightPitch(target, angle) //Damage check for targets on the top of the house
{
	while(1)
	{
		self waittill("trigger", user);
		if(!target.shot)
		{
			target.shot = true; //reset after end
			target rotateto((0, angle, 0), 0.3);
			user.hit_count++; //reset after end
			wait 0.05;
			self triggeroff();
			user updateTargetRangeOverlays();
		}
		wait 0.05;
	}
}


targetThinkAngled(target, yawangle, pitchangle, rollangle) //Damage check for targets 45 degree angled
{
	while(1)
	{
		self waittill("trigger", user);
		if(!target.shot)
		{
			target.shot = true; //reset after end
			target rotateto((yawangle, pitchangle, rollangle), 0.3);
			user.hit_count++; //reset after end
			wait 0.05;
			self triggeroff();
			user updateTargetRangeOverlays();
		}
		wait 0.05;
	}
}

targetMoveXThenMinusX(xRange, speed)
{
	negrange = (xrange-(xrange*2));
	while(1)
	{
		if((!self.shot) && (level.target_range_active))
		{
			self movex(xrange, speed);
			self waittill("movedone");
			self movex(negrange, speed);
			self waittill("movedone");
		}
		else wait 0.05;
	}
}

targetMoveYThenMinusY(yRange, speed)
{
	negrange = (yrange-(yrange*2));
	while(1)
	{
		if((!self.shot) && (level.target_range_active))
		{
			self movey(yrange, speed);
			self waittill("movedone");
			self movey(negrange, speed);
			self waittill("movedone");
		}
		else wait 0.05;
	}
}
	














////////////////////////////////////////////////////////////////
makeStopwatch()
{
	if((!isdefined(self.secondwatch)) && (!isdefined(self.minutewatch))) //after the user is done with the range, make these undef again
	{
		self thread make_secondswatch();
		self thread make_minuteswatch();
		self thread dots_inbetween();
		wait 0.05;
	}
}

make_secondswatch()
{
   self.secondwatch = newclienthudelem(self);
   self.secondwatch.x = 561; //max 650
   self.secondwatch.y = 100; //max 475
   self.secondwatch.alignX = "left";
   self.secondwatch.alignY = "bottom";
   self.secondwatch.font = "default";
   self.secondwatch.fontScale = 1;   
   self.secondwatch.archived = false;
   self.secondwatch.color = (1, 1, 1);
   for(;;)
   {
	
		secondtime = 0;
		secondtime = secondtime * 10;
		seconds = 0;
		for(i=seconds;i<=599;i++)
		{
			if(!level.target_range_active)
			{
				break;
			}
		  self.secondtime = i / 10;
		  self.secondwatch setValue(self.secondtime);
		  wait 0.1;
		}
	wait 0.05;
	}
}

make_minuteswatch()
{
    self.minutewatch = newclienthudelem(self);
    self.minutewatch.x = 550; //max 650
    self.minutewatch.y = 100; //max 475
    self.minutewatch.alignX = "right";
    self.minutewatch.alignY = "bottom";
    self.minutewatch.font = "default";
    self.minutewatch.fontScale = 1;   
    self.minutewatch.archived = false;
    self.minutewatch.color = (1, 1, 1);
	self.minutetime = 0;
    minutes = 0;

    for(i=minutes;i>=0;i++)
    {
		if(!level.target_range_active)
		{
			break;
		}
      self.minutewatch setValue(self.minutetime);
	  if(self.secondtime == 599/10) self.minutetime++;
	  wait 0.1;
    }
}

dots_inbetween()
{
	self.dots = newclienthudelem(self);
	self.dots.x = 556; //max 650
	self.dots.y = 100; //max 475
	self.dots.alignX = "right";
	self.dots.alignY = "bottom";
	self.dots.font = "default";
	self.dots.fontScale = 1;   
	self.dots.archived = false;
	self.dots.color = (1, 1, 1);
	for(;;)
	{
		if(!level.target_range_active)
		{
			self.dots.label = &":";
			break;
		}
		self.dots.label = &":";
		wait 0.6;
		self.dots.label = &" ";
		wait 0.6;
	}
}

////////////////////////////////////////////////////////////

makeAndKillFinalHUDStuff()
{
	stats = self getstats();
	
	if(!isdefined(self.percentage))
	{
		self.percentage = newclienthudelem(self);
		self.percentage.x = 539; //max 650
		self.percentage.y = 120; //max 475
		self.percentage.alignX = "left";
		self.percentage.alignY = "bottom";
		self.percentage.font = "default";
		self.percentage.fontScale = 1;   
		self.percentage.archived = false;
		if(stats==100)
		{
			self.percentage.color = (0, 1, 0);
		}
		else self.percentage.color = (1, 1, 1);
		self.percentage setvalue(stats);
	}
	if(!isdefined(self.percentage_text))
	{
		self.percentage_text = newclienthudelem(self);
		self.percentage_text.x = 535; //max 650
		self.percentage_text.y = 120; //max 475
		self.percentage_text.alignX = "right";
		self.percentage_text.alignY = "bottom";
		self.percentage_text.font = "default";
		self.percentage_text.fontScale = 1;   
		self.percentage_text.archived = false;
		if(stats==100)
		{
			self.percentage_text.color = (0, 1, 0);
		}
		else self.percentage_text.color = (1, 1, 1);
		self.percentage_text.label = &"Hit Percentage:";
		
		self.percentage_text_add = newclienthudelem(self);
		self.percentage_text_add.x = 555; //max 650
		self.percentage_text_add.y = 120; //max 475
		self.percentage_text_add.alignX = "left";
		self.percentage_text_add.alignY = "bottom";
		self.percentage_text_add.font = "default";
		self.percentage_text_add.fontScale = 1;   
		self.percentage_text_add.archived = false;
		if(stats==100)
		{
			self.percentage_text_add.color = (0, 1, 0);
		}
		else self.percentage_text_add.color = (1, 1, 1);
		self.percentage_text_add.label = &"Percent";
	}
}

Have fun going through it. I'm positive there's no command that hides the brushmodel, just truns the triggers on and off.
Drofder2004: Drofder's rules for reviewing a map
[...]
#5 If your name is Rezil, minimum 5/5.
---
<LT>YosemiteSam[NL]:
I heard somewhere that the best way to start is juggling 2 balls with one hand, so you will get a feel for it.

User avatar
waywaaaard
Core Staff
Core Staff
Posts: 2214
Joined: February 6th, 2006, 3:18 pm
Location: Germany/Bayern

Re: script_brushmodel Doesn't Show

Post by waywaaaard » July 18th, 2010, 11:33 pm

jesus what code :P Have you ever heard of DRY and arrays ...
THAT HANDS WERE NOT TRACED!
visit my blog: Link
Soviet wrote:Yeah, watch out, Peds will hit you with his +5 D-Battleaxe of homosexuality :roll:

User avatar
Rezil
Core Staff
Core Staff
Posts: 2030
Joined: July 24th, 2006, 11:21 am
Location: Cramped in a small cubicle/making another jump map

Re: script_brushmodel Doesn't Show

Post by Rezil » July 19th, 2010, 12:00 am

DRY? Never heard of it, sorry. :P

I suppose I could've used arrays a bit more but meh, it's perfectly functional the way it is now(save for a few small bugs).
Drofder2004: Drofder's rules for reviewing a map
[...]
#5 If your name is Rezil, minimum 5/5.
---
<LT>YosemiteSam[NL]:
I heard somewhere that the best way to start is juggling 2 balls with one hand, so you will get a feel for it.

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

Re: script_brushmodel Doesn't Show

Post by Drofder2004 » July 19th, 2010, 2:17 am

DRY = Don't Repeat Yourself

If a function is repeated twice, make it more general and then use entities/variables to repeat multiple threads.
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

Post Reply

Who is online

Users browsing this forum: No registered users and 6 guests