r5561 - in trunk/data: . qcsrc/client qcsrc/menu/nexuiz

esteel at icculus.org esteel at icculus.org
Thu Jan 15 17:15:45 EST 2009


Author: esteel
Date: 2009-01-15 17:15:29 -0500 (Thu, 15 Jan 2009)
New Revision: 5561

Modified:
   trunk/data/defaultNexuiz.cfg
   trunk/data/qcsrc/client/View.qc
   trunk/data/qcsrc/client/miscfunctions.qc
   trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_playersetup.c
Log:
csqc crosshair code which allows per weapon crosshairs, mostly done by MirceaKitsune with some advice by div0 and me.  The menu still needs better changes!!

Modified: trunk/data/defaultNexuiz.cfg
===================================================================
--- trunk/data/defaultNexuiz.cfg	2009-01-15 17:51:45 UTC (rev 5560)
+++ trunk/data/defaultNexuiz.cfg	2009-01-15 22:15:29 UTC (rev 5561)
@@ -84,6 +84,97 @@
 _cl_playermodel models/player/marine.zym
 _cl_playerskin 0
 crosshair 5
+seta crosshair_per_weapon 0
+seta crosshair_laser 15
+seta crosshair_laser_color_red 1
+seta crosshair_laser_color_green 0.65
+seta crosshair_laser_color_blue 0.65
+seta crosshair_laser_color_alpha 0.75
+seta crosshair_laser_size 0.75
+seta crosshair_shotgun 8
+seta crosshair_shotgun_color_red 0.75
+seta crosshair_shotgun_color_green 0.75
+seta crosshair_shotgun_color_blue 0.75
+seta crosshair_shotgun_color_alpha 1
+seta crosshair_shotgun_size 1.25
+seta crosshair_uzi 19
+seta crosshair_uzi_color_red 1
+seta crosshair_uzi_color_green 1
+seta crosshair_uzi_color_blue 0.85
+seta crosshair_uzi_color_alpha 1
+seta crosshair_uzi_size 1.35
+seta crosshair_grenadelauncher 4
+seta crosshair_grenadelauncher_color_red 0.85
+seta crosshair_grenadelauncher_color_green 1
+seta crosshair_grenadelauncher_color_blue 0.85
+seta crosshair_grenadelauncher_color_alpha 1
+seta crosshair_grenadelauncher_size 1.15
+seta crosshair_electro 3
+seta crosshair_electro_color_red 0.35
+seta crosshair_electro_color_green 0.5
+seta crosshair_electro_color_blue 1
+seta crosshair_electro_color_alpha 0.90
+seta crosshair_electro_size 1
+seta crosshair_crylink 1
+seta crosshair_crylink_color_red 0.85
+seta crosshair_crylink_color_green 0.25
+seta crosshair_crylink_color_blue 1
+seta crosshair_crylink_color_alpha 0.85
+seta crosshair_crylink_size 0.9
+seta crosshair_nex 9
+seta crosshair_nex_color_red 0
+seta crosshair_nex_color_green 1
+seta crosshair_nex_color_blue 1
+seta crosshair_nex_color_alpha 0.85
+seta crosshair_nex_size 0.65
+seta crosshair_hagar 11
+seta crosshair_hagar_color_red 1
+seta crosshair_hagar_color_green 0.75
+seta crosshair_hagar_color_blue 0.5
+seta crosshair_hagar_color_alpha 1
+seta crosshair_hagar_size 1.25
+seta crosshair_rocketlauncher 10
+seta crosshair_rocketlauncher_color_red 1
+seta crosshair_rocketlauncher_color_green 0.85
+seta crosshair_rocketlauncher_color_blue 0.85
+seta crosshair_rocketlauncher_color_alpha 1
+seta crosshair_rocketlauncher_size 1.35
+seta crosshair_porto 16
+seta crosshair_porto_color_red 0.5
+seta crosshair_porto_color_green 1
+seta crosshair_porto_color_blue 0.5
+seta crosshair_porto_color_alpha 0.85
+seta crosshair_porto_size 1.5
+seta crosshair_minstanex 12
+seta crosshair_minstanex_color_red 0.65
+seta crosshair_minstanex_color_green 0.65
+seta crosshair_minstanex_color_blue 1
+seta crosshair_minstanex_color_alpha 1
+seta crosshair_minstanex_size 0.35
+seta crosshair_hook 13
+seta crosshair_hook_color_red 0.65
+seta crosshair_hook_color_green 1
+seta crosshair_hook_color_blue 0.85
+seta crosshair_hook_color_alpha 0.85
+seta crosshair_hook_size 1.25
+seta crosshair_hlac 13
+seta crosshair_hlac_color_red 0.85
+seta crosshair_hlac_color_green 0.75
+seta crosshair_hlac_color_blue 0.75
+seta crosshair_hlac_color_alpha 1
+seta crosshair_hlac_size 2
+seta crosshair_seeker 19
+seta crosshair_seeker_color_red 1
+seta crosshair_seeker_color_green 0.35
+seta crosshair_seeker_color_blue 0.35
+seta crosshair_seeker_color_alpha 0.9
+seta crosshair_seeker_size 2
+seta crosshair_campingrifle 7
+seta crosshair_campingrifle_color_red 0.5
+seta crosshair_campingrifle_color_green 0.85
+seta crosshair_campingrifle_color_blue 0.5
+seta crosshair_campingrifle_color_alpha 1
+seta crosshair_campingrifle_size 2
 fov 90
 seta cl_zoomfactor 5  // how much +zoom will zoom (1-16)
 seta cl_zoomspeed 3.5 // how fast it will zoom (0.5-16), negative values mean instant zoom

Modified: trunk/data/qcsrc/client/View.qc
===================================================================
--- trunk/data/qcsrc/client/View.qc	2009-01-15 17:51:45 UTC (rev 5560)
+++ trunk/data/qcsrc/client/View.qc	2009-01-15 22:15:29 UTC (rev 5561)
@@ -403,7 +403,7 @@
 	// Draw the Crosshair
 	float scoreboard_active;
 	scoreboard_active = Sbar_WouldDrawScoreboard();
-	R_SetView(VF_DRAWCROSSHAIR, !scoreboard_active && !ons_showmap);
+	R_SetView(VF_DRAWCROSSHAIR, 0); //Make sure engine crosshairs are always hidden
 	
 	// Draw the Engine Status Bar (the default Quake HUD)
 	R_SetView(VF_DRAWENGINESBAR, 0);
@@ -438,6 +438,27 @@
 	// next R_RenderScene call
 	drawstring('0 0 0', "", '1 1 0', '1 1 1', 0, 0);
 
+	// crosshair
+	if(!scoreboard_active && !ons_showmap) {
+		string wcross_wep;
+		float wcross_alpha, wcross_style;
+		vector wcross_color, wcross_size;
+		if (cvar("crosshair_per_weapon")) {
+			e = get_weaponinfo(activeweapon);
+			if (e && e.netname)
+				wcross_wep = strcat("_", e.netname);
+		}
+		wcross_style = cvar(strcat("crosshair", wcross_wep));
+		wcross_color_x = cvar(strcat("crosshair", wcross_wep, "_color_red"));
+		wcross_color_y = cvar(strcat("crosshair", wcross_wep, "_color_green"));
+		wcross_color_z = cvar(strcat("crosshair", wcross_wep, "_color_blue"));
+		wcross_size_x = cvar(strcat("crosshair", wcross_wep, "_size")) * 24;
+		wcross_size_y = cvar(strcat("crosshair", wcross_wep, "_size")) * 24;
+		wcross_alpha = cvar(strcat("crosshair", wcross_wep, "_color_alpha"));
+		
+		drawpic('0.5 0 0' * (vid_conwidth - wcross_size_x) + '0 0.5 0' * (vid_conheight - wcross_size_y), strcat("gfx/crosshair", ftos(wcross_style)), wcross_size, wcross_color, wcross_alpha, DRAWFLAG_NORMAL);
+	}
+
 	// Draw the mouse cursor
 	// NOTE: drawpic must happen after R_RenderScene for some reason
 	//drawpic(getmousepos(), "gfx/cursor.tga", '11 14 0', '1 1 1', 1, 0);

Modified: trunk/data/qcsrc/client/miscfunctions.qc
===================================================================
--- trunk/data/qcsrc/client/miscfunctions.qc	2009-01-15 17:51:45 UTC (rev 5560)
+++ trunk/data/qcsrc/client/miscfunctions.qc	2009-01-15 22:15:29 UTC (rev 5561)
@@ -21,6 +21,7 @@
 		if(prev != e.sort_prev)
 			error(strcat("sort list chain error\nplease submit the output of 'prvm_edicts client' to the developers"));
 	}
+	RegisterWeapons();
 }
 
 

Modified: trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_playersetup.c
===================================================================
--- trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_playersetup.c	2009-01-15 17:51:45 UTC (rev 5560)
+++ trunk/data/qcsrc/menu/nexuiz/dialog_multiplayer_playersetup.c	2009-01-15 22:15:29 UTC (rev 5561)
@@ -93,28 +93,39 @@
 			e0.allowCut = 1;
 	me.TR(me);
 	me.TR(me);
+		me.TD(me, 1, 2.8, e = makeNexuizCheckBox(0, "crosshair_per_weapon", "Per weapon crosshairs"));
+	me.TR(me);
 		me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Crosshair:"));
-		for(i = 1; i <= 10; ++i)
+		for(i = 1; i <= 10; ++i) {
 			me.TDNoMargin(me, 1, 2 / 10, e = makeNexuizCrosshairButton(3, i), '0 0 0');
+			setDependent(e, "crosshair_per_weapon", 0, 0);
+		}
 	me.TR(me);
 		me.TDempty(me, 1);
-		for(i = 11; i <= 20; ++i)
+		for(i = 11; i <= 20; ++i) {
 			me.TDNoMargin(me, 1, 2 / 10, e = makeNexuizCrosshairButton(3, i), '0 0 0');
+			setDependent(e, "crosshair_per_weapon", 0, 0);
+		}
 	me.TR(me);
 		me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Crosshair Size:"));
 		me.TD(me, 1, 2, e = makeNexuizSlider(0.40, 2, 0.05, "crosshair_size"));
+		setDependent(e, "crosshair_per_weapon", 0, 0);
 	me.TR(me);
 		me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Crosshair Alpha:"));
 		me.TD(me, 1, 2, e = makeNexuizSlider(0, 1, 0.01, "crosshair_color_alpha"));
+		setDependent(e, "crosshair_per_weapon", 0, 0);
 	me.TR(me);
 		me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Crosshair Red:"));
 		me.TD(me, 1, 2, e = makeNexuizSlider(0, 1, 0.01, "crosshair_color_red"));
+		setDependent(e, "crosshair_per_weapon", 0, 0);
 	me.TR(me);
 		me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Crosshair Green:"));
 		me.TD(me, 1, 2, e = makeNexuizSlider(0, 1, 0.01, "crosshair_color_green"));
+		setDependent(e, "crosshair_per_weapon", 0, 0);
 	me.TR(me);
 		me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Crosshair Blue:"));
 		me.TD(me, 1, 2, e = makeNexuizSlider(0, 1, 0.01, "crosshair_color_blue"));
+		setDependent(e, "crosshair_per_weapon", 0, 0);
 	me.TR(me);
 	/*
 	 * not supported by the current csqc code




More information about the nexuiz-commits mailing list