[nexuiz-commits] r6669 - in branches/nexuiz-2.0: . data data/models/onslaught data/qcsrc/client data/qcsrc/menu/nexuiz data/qcsrc/server data/scripts data/textures

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Tue May 5 06:17:10 EDT 2009


Author: div0
Date: 2009-05-05 06:17:09 -0400 (Tue, 05 May 2009)
New Revision: 6669

Added:
   branches/nexuiz-2.0/data/models/onslaught/generator_dead.md3
   branches/nexuiz-2.0/data/models/onslaught/generator_dmg1.md3
   branches/nexuiz-2.0/data/models/onslaught/generator_dmg2.md3
   branches/nexuiz-2.0/data/physicsCPMA.cfg
   branches/nexuiz-2.0/data/scripts/onslaught.shader
   branches/nexuiz-2.0/data/textures/generator_shield.tga
   branches/nexuiz-2.0/data/textures/ons_shield.tga
Removed:
   branches/nexuiz-2.0/data/models/onslaught/reactor_dead.md3
   branches/nexuiz-2.0/data/models/onslaught/reactor_dmg1.md3
   branches/nexuiz-2.0/data/models/onslaught/reactor_dmg2.md3
   branches/nexuiz-2.0/data/textures/shield.tga
   branches/nexuiz-2.0/data/textures/shield_gloss.tga
   branches/nexuiz-2.0/data/textures/shield_glow.tga
   branches/nexuiz-2.0/data/textures/shield_norm.tga
   branches/nexuiz-2.0/data/textures/shield_seamless(2nd texture).tga
   branches/nexuiz-2.0/data/textures/shield_seamless(2nd texture)_gloss.tga
Modified:
   branches/nexuiz-2.0/.patchsets
   branches/nexuiz-2.0/data/defaultNexuiz.cfg
   branches/nexuiz-2.0/data/models/onslaught/controlpoint_shield.md3
   branches/nexuiz-2.0/data/models/onslaught/generator_shield.md3
   branches/nexuiz-2.0/data/physics15.cfg
   branches/nexuiz-2.0/data/physics151.cfg
   branches/nexuiz-2.0/data/physics151b.cfg
   branches/nexuiz-2.0/data/physics16rc1.cfg
   branches/nexuiz-2.0/data/physics25.cfg
   branches/nexuiz-2.0/data/physicsHavoc.cfg
   branches/nexuiz-2.0/data/physicsQ.cfg
   branches/nexuiz-2.0/data/physicsQ3.cfg
   branches/nexuiz-2.0/data/physicsQBF.cfg
   branches/nexuiz-2.0/data/physicsQBFplus.cfg
   branches/nexuiz-2.0/data/physicsQBR.cfg
   branches/nexuiz-2.0/data/qcsrc/client/Defs.qc
   branches/nexuiz-2.0/data/qcsrc/client/Main.qc
   branches/nexuiz-2.0/data/qcsrc/client/View.qc
   branches/nexuiz-2.0/data/qcsrc/client/miscfunctions.qc
   branches/nexuiz-2.0/data/qcsrc/menu/nexuiz/dialog_settings_audio.c
   branches/nexuiz-2.0/data/qcsrc/server/bots.qc
   branches/nexuiz-2.0/data/qcsrc/server/cl_physics.qc
   branches/nexuiz-2.0/data/qcsrc/server/g_world.qc
   branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc
   branches/nexuiz-2.0/data/qcsrc/server/mode_onslaught.qc
   branches/nexuiz-2.0/data/qcsrc/server/sv_main.qc
   branches/nexuiz-2.0/data/textures/core_dmg1.tga
   branches/nexuiz-2.0/data/textures/core_dmg1_glow.tga
   branches/nexuiz-2.0/data/textures/core_dmg2.tga
   branches/nexuiz-2.0/data/textures/core_dmg2_glow.tga
Log:
r6659 | mand1nga | 2009-05-04 15:28:11 +0200 (Mon, 04 May 2009) | 1 line
Fix bug in the loading of hardired links. Also these links are reloaded after saving a new waypoints file.
r6660 | morphed | 2009-05-04 15:51:27 +0200 (Mon, 04 May 2009) | 1 line
onslaught: more consistent generator model names (+ small code changes for that) , lower resolution of generators texture, new shield fx
r6662 | greenmarine | 2009-05-04 19:56:43 +0200 (Mon, 04 May 2009) | 5 lines
Move announcer sounds for remaining map time to CSQC. Fixed resetting the "already played sound"-markers after ready-restart. Client can now define (see audio settings menu) whether he wants:
- no announcer played
- 1minute announcer
- 5minute announcer
- both
r6664 | div0 | 2009-05-05 09:13:14 +0200 (Tue, 05 May 2009) | 2 lines
experimental CPMA-style physics mode (only server side atm, won't work until the engine is updated for it)
r6665 | div0 | 2009-05-05 09:14:37 +0200 (Tue, 05 May 2009) | 2 lines
bugfix for latest commit
r6666 | div0 | 2009-05-05 09:16:41 +0200 (Tue, 05 May 2009) | 2 lines
also read the new movement cvars
r6667 | div0 | 2009-05-05 09:54:02 +0200 (Tue, 05 May 2009) | 2 lines
bind q weaplast; added a comment
r6668 | div0 | 2009-05-05 12:04:34 +0200 (Tue, 05 May 2009) | 2 lines
as it now works: +physicsCPMA.cfg


Modified: branches/nexuiz-2.0/.patchsets
===================================================================
--- branches/nexuiz-2.0/.patchsets	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/.patchsets	2009-05-05 10:17:09 UTC (rev 6669)
@@ -1,2 +1,2 @@
 master = svn://svn.icculus.org/nexuiz/trunk
-revisions_applied = 1-6549,6552-6567,6572-6582,6585-6589,6592-6593,6597-6629,6632-6657
+revisions_applied = 1-6549,6552-6567,6572-6582,6585-6589,6592-6593,6597-6629,6632-6660,6662-6662,6664-6668

Modified: branches/nexuiz-2.0/data/defaultNexuiz.cfg
===================================================================
--- branches/nexuiz-2.0/data/defaultNexuiz.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/defaultNexuiz.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -737,6 +737,7 @@
 cl_sound_r_exp3 ""
 sv_sound_land ""
 sv_sound_watersplash ""
+seta cl_sound_maptime_warning "1" "play announcer sound telling you the remaining maptime - 0: do not play at all, 1: play at one minute, 2: play at five minutes, 3: play both"
 
 seta cl_hitsound 1
 
@@ -801,6 +802,7 @@
 bind 8 "impulse 8"
 bind 9 "impulse 9"
 bind 0 "impulse 14" // cycles the superweapons
+bind q weaplast
 bind MOUSE1 +attack
 bind MOUSE2 +attack2
 bind MOUSE3 +zoom

Modified: branches/nexuiz-2.0/data/models/onslaught/controlpoint_shield.md3
===================================================================
(Binary files differ)

Copied: branches/nexuiz-2.0/data/models/onslaught/generator_dead.md3 (from rev 6660, trunk/data/models/onslaught/generator_dead.md3)
===================================================================
(Binary files differ)

Copied: branches/nexuiz-2.0/data/models/onslaught/generator_dmg1.md3 (from rev 6660, trunk/data/models/onslaught/generator_dmg1.md3)
===================================================================
(Binary files differ)

Copied: branches/nexuiz-2.0/data/models/onslaught/generator_dmg2.md3 (from rev 6660, trunk/data/models/onslaught/generator_dmg2.md3)
===================================================================
(Binary files differ)

Modified: branches/nexuiz-2.0/data/models/onslaught/generator_shield.md3
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/models/onslaught/reactor_dead.md3
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/models/onslaught/reactor_dmg1.md3
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/models/onslaught/reactor_dmg2.md3
===================================================================
(Binary files differ)

Modified: branches/nexuiz-2.0/data/physics15.cfg
===================================================================
--- branches/nexuiz-2.0/data/physics15.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physics15.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0
+sv_airaccel_qw 0
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0.25
-set sv_airaccel_sideways_friction 0
-set sv_airaccel_qw 0

Modified: branches/nexuiz-2.0/data/physics151.cfg
===================================================================
--- branches/nexuiz-2.0/data/physics151.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physics151.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
-set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0
-set sv_airaccel_qw 0
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0
+sv_airaccel_qw 0
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
+sv_friction_on_land 0

Modified: branches/nexuiz-2.0/data/physics151b.cfg
===================================================================
--- branches/nexuiz-2.0/data/physics151b.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physics151b.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0
+sv_airaccel_qw 0
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0
-set sv_airaccel_qw 0

Modified: branches/nexuiz-2.0/data/physics16rc1.cfg
===================================================================
--- branches/nexuiz-2.0/data/physics16rc1.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physics16rc1.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
-set sv_friction_on_land 0.2
-set sv_airaccel_sideways_friction 0
-set sv_airaccel_qw 0
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0
+sv_airaccel_qw 0
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
+sv_friction_on_land 0.2

Modified: branches/nexuiz-2.0/data/physics25.cfg
===================================================================
--- branches/nexuiz-2.0/data/physics25.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physics25.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 7
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0.35
+sv_airaccel_qw 0.95
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0.35
-set sv_airaccel_qw 0.95

Copied: branches/nexuiz-2.0/data/physicsCPMA.cfg (from rev 6668, trunk/data/physicsCPMA.cfg)
===================================================================
--- branches/nexuiz-2.0/data/physicsCPMA.cfg	                        (rev 0)
+++ branches/nexuiz-2.0/data/physicsCPMA.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -0,0 +1,16 @@
+// these values match CPMA
+sv_maxspeed 320
+sv_maxairspeed $sv_maxspeed
+sv_accelerate 15
+sv_airaccelerate 1
+sv_friction 8
+edgefriction 1
+sv_stepheight 18
+sv_jumpvelocity 270
+sv_airaccel_sideways_friction 0
+sv_airaccel_qw 1
+sv_airstopaccelerate 2.5
+sv_airstrafeaccelerate 70
+sv_maxairstrafespeed 30
+sv_aircontrol 150
+set sv_friction_on_land 0

Modified: branches/nexuiz-2.0/data/physicsHavoc.cfg
===================================================================
--- branches/nexuiz-2.0/data/physicsHavoc.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physicsHavoc.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 7
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0.65
+sv_airaccel_qw 0.95
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0.65
-set sv_airaccel_qw 0.95

Modified: branches/nexuiz-2.0/data/physicsQ.cfg
===================================================================
--- branches/nexuiz-2.0/data/physicsQ.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physicsQ.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0
+sv_airaccel_qw 1
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0
-set sv_airaccel_qw 1

Modified: branches/nexuiz-2.0/data/physicsQ3.cfg
===================================================================
--- branches/nexuiz-2.0/data/physicsQ3.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physicsQ3.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -6,7 +6,11 @@
 sv_friction 6
 edgefriction 1
 sv_stepheight 18
-set sv_jumpvelocity 270
+sv_jumpvelocity 270
+sv_airaccel_sideways_friction 0
+sv_airaccel_qw 1
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0
-set sv_airaccel_qw 1

Modified: branches/nexuiz-2.0/data/physicsQBF.cfg
===================================================================
--- branches/nexuiz-2.0/data/physicsQBF.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physicsQBF.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0.8
+sv_airaccel_qw 1
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0.8
-set sv_airaccel_qw 1

Modified: branches/nexuiz-2.0/data/physicsQBFplus.cfg
===================================================================
--- branches/nexuiz-2.0/data/physicsQBFplus.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physicsQBFplus.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0.5
+sv_airaccel_qw 0.93
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0.5
-set sv_airaccel_qw 0.93

Modified: branches/nexuiz-2.0/data/physicsQBR.cfg
===================================================================
--- branches/nexuiz-2.0/data/physicsQBR.cfg	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/physicsQBR.cfg	2009-05-05 10:17:09 UTC (rev 6669)
@@ -5,7 +5,11 @@
 sv_friction 5
 edgefriction 1
 sv_stepheight 34
-set sv_jumpvelocity 300
+sv_jumpvelocity 300
+sv_airaccel_sideways_friction 0.3
+sv_airaccel_qw 0.93
+sv_airstopaccelerate 0
+sv_airstrafeaccelerate 0
+sv_maxairstrafespeed 0
+sv_aircontrol 0
 set sv_friction_on_land 0
-set sv_airaccel_sideways_friction 0.3
-set sv_airaccel_qw 0.93

Modified: branches/nexuiz-2.0/data/qcsrc/client/Defs.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/client/Defs.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/client/Defs.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -206,6 +206,10 @@
 // short mapname
 string shortmapname;
 
+//remaining maptime announcer sounds, true when sound was already played
+float announcer_1min;
+float announcer_5min;
+
 // database for misc stuff
 float tempdb;
 vector hook_shotorigin;

Modified: branches/nexuiz-2.0/data/qcsrc/client/Main.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/client/Main.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/client/Main.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -147,6 +147,7 @@
 	GibSplash_Precache();
 	Casings_Precache();
 	DamageInfo_Precache();
+	Announcer_Precache();
 
 	get_mi_min_max_texcoords(1); // try the CLEVER way first
 	minimapname = strcat("gfx/", mi_shortname, "_radar.tga");

Modified: branches/nexuiz-2.0/data/qcsrc/client/View.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/client/View.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/client/View.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -316,6 +316,7 @@
 		PostInit();
 	
 	CheckForGamestartChange();
+	maptimeAnnouncer();
 
 	fov = cvar("fov");
 	if(button_zoom || fov <= 59.5)

Modified: branches/nexuiz-2.0/data/qcsrc/client/miscfunctions.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/client/miscfunctions.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/client/miscfunctions.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -11,7 +11,10 @@
 		if (!spectatee_status) //do cprint only for players
 			centerprint("^1Begin!");
 
-		sound(self, CHAN_VOICE, "announcer/robotic/begin.wav", VOL_BASEVOICE, ATTN_NONE);
+		sound(self, CHAN_VOICE, "announcer/robotic/begin.wav", VOL_BASEVOICE, ATTN_NONE);
+		//reset maptime announcers now as well
+		announcer_5min = announcer_1min = FALSE;
+		
 		remove(self);
 		return;
 	}
@@ -25,6 +28,44 @@
 
 		self.nextthink = getstatf(STAT_GAMESTARTTIME) - (countdown - 1);
 	}
+}
+
+/**
+ * Plays the 1minute or 5 minutes (of maptime) remaining sound, if client wants it
+ */
+void maptimeAnnouncer() {
+    float timelimit;
+    timelimit = getstatf(STAT_TIMELIMIT);
+    float timeleft;
+    timeleft = max(0, timelimit * 60 + getstatf(STAT_GAMESTARTTIME) - time);
+    
+    //5 minute check
+    if (cvar("cl_sound_maptime_warning") >= 2) {
+        //make sure that after connect (and e.g. 4 minutes left) we will not get a wrong sound
+        if (!announcer_5min && timelimit > 0 && timeleft < 300 && timeleft > 299) {
+            announcer_5min = TRUE;
+            //dprint("i will play the sound, I promise!\n");
+            sound(self, CHAN_VOICE, "announcer/robotic/5minutesremain.wav", VOL_BASEVOICE, ATTN_NONE);
+        }
+        
+    }
+    
+    //1 minute check
+    if (cvar("cl_sound_maptime_warning") == 1 || cvar("cl_sound_maptime_warning") == 3) {
+        if (!announcer_1min && timelimit > 0 && timeleft < 60) {
+            announcer_1min = TRUE;
+            sound(self, CHAN_VOICE, "announcer/robotic/1minuteremains.wav", VOL_BASEVOICE, ATTN_NONE);
+        }
+    }
+}
+
+/**
+ * Add all future announcer sounds precaches here.
+ * TODO: make all announcer sound() calls client-side in the end, to allow queues etc.
+ */
+void Announcer_Precache () {
+    precache_sound ("announcer/robotic/1minuteremains.wav");
+	precache_sound ("announcer/robotic/5minutesremain.wav");
 }
 
 void AuditLists()

Modified: branches/nexuiz-2.0/data/qcsrc/menu/nexuiz/dialog_settings_audio.c
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/menu/nexuiz/dialog_settings_audio.c	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/menu/nexuiz/dialog_settings_audio.c	2009-05-05 10:17:09 UTC (rev 6669)
@@ -157,6 +157,14 @@
 		me.TD(me, 1, 2, sl);
 	me.TR(me);
 	me.TR(me);
+		me.TD(me, 1, 1, e = makeNexuizTextLabel(0, "Time warning:"));
+		me.TD(me, 1, 2, e = makeNexuizTextSlider("cl_sound_maptime_warning"));
+			e.addValue(e, "None", "0");
+			e.addValue(e, "1 minute", "1");
+			e.addValue(e, "5 minutes", "2");
+			e.addValue(e, "Both", "3");
+			e.configureNexuizTextSliderValues(e);
+	me.TR(me);
 		me.TD(me, 1, 3, e = makeNexuizCheckBox(0, "cl_hitsound", "Hit indicator"));
 
 	me.gotoRC(me, me.rows - 1, 0);

Modified: branches/nexuiz-2.0/data/qcsrc/server/bots.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/bots.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/server/bots.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -940,6 +940,7 @@
 	return TRUE;
 };
 
+float botframe_loadedforcedlinks;
 void waypoint_load_links_hardwired()
 {
 	local string filename, s;
@@ -950,6 +951,8 @@
 	filename = strcat(filename, ".waypoints.hardwired");
 	file = fopen(filename, FILE_READ);
 
+	botframe_loadedforcedlinks = TRUE;
+
 	if (file < 0)
 	{
 		dprint("waypoint links load from ");
@@ -1154,6 +1157,7 @@
 		bprint(" failed\n");
 	}
 	waypoint_save_links();
+	botframe_loadedforcedlinks = FALSE;
 };
 
 // load waypoints from file
@@ -2823,7 +2827,10 @@
 	if (botframe_spawnedwaypoints)
 	{
 		if(botframe_cachedwaypointlinks)
-			waypoint_load_links_hardwired();
+		{
+			if(!botframe_loadedforcedlinks)
+				waypoint_load_links_hardwired();
+		}
 		else
 		{
 			// TODO: Make this check cleaner

Modified: branches/nexuiz-2.0/data/qcsrc/server/cl_physics.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/cl_physics.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/server/cl_physics.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -7,6 +7,10 @@
 float sv_gravity;
 float sv_airaccel_sideways_friction;
 float sv_airaccel_qw;
+float sv_airstopaccelerate;
+float sv_airstrafeaccelerate;
+float sv_maxairstrafespeed;
+float sv_aircontrol;
 .float ladder_time;
 .entity ladder_entity;
 .float gravity;
@@ -346,6 +350,29 @@
 	self.angles_z =  smoothangles_z;
 }
 
+void CPM_PM_Aircontrol(vector wishdir, float wishspeed)
+{
+	float zspeed, xyspeed, dot, k;
+
+	if(self.movement_x == 0 || self.movement_y != 0)
+		return; // can't control movement if not moving forward or backward
+	
+	zspeed = self.velocity_z;
+	self.velocity_z = 0;
+	xyspeed = vlen(self.velocity);
+	self.velocity = normalize(self.velocity);
+
+	dot = self.velocity * wishdir;
+	k = 32;
+	k *= sv_aircontrol*dot*dot*frametime;
+
+	if(dot > 0) // we can't change direction while slowing down
+		self.velocity = normalize(self.velocity * xyspeed + wishdir * k);
+
+	self.velocity = self.velocity * xyspeed;
+	self.velocity_z = zspeed;
+}
+
 .vector movement_old;
 .float buttons_old;
 .vector v_angle_old;
@@ -832,10 +859,25 @@
 			wishspeed = wishspeed * 0.5;
 		if (time >= self.teleport_time)
 		{
+			// CPM: air control
+			float wishspeed2;
+			wishspeed2 = wishspeed;
+			if(sv_airstopaccelerate)
+				if(self.velocity * wishdir < 0)
+					airaccel = sv_airstopaccelerate;
+			if(self.movement_x == 0 && self.movement_y != 0)
+			{
+				if(sv_maxairstrafespeed)
+					wishspeed = min(wishspeed, sv_maxairstrafespeed);
+				if(sv_airstrafeaccelerate)
+					airaccel = sv_airstrafeaccelerate;
+			}
+			// !CPM
+			
 			// NOTE: this does the same as the commented out old code if:
 			//   sv_airaccel_qw 0
 			//   sv_airaccel_sideways_friction 0
-			
+
 			float vel_straight;
 			float vel_z;
 			vector vel_perpend;
@@ -853,6 +895,9 @@
 			vel_perpend = vel_perpend * (1 - frametime * (wishspeed / maxairspd) * sv_airaccel_sideways_friction);
 
 			self.velocity = vel_straight * wishdir + vel_z * '0 0 1' + vel_perpend;
+			
+			if(sv_aircontrol)
+				CPM_PM_Aircontrol(wishdir, wishspeed2);
 
 			/*
 			f = wishspeed;// - (self.velocity * wishdir);

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_world.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_world.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_world.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -1368,8 +1368,6 @@
 	//   (div0: and that in CheckRules_World please)
 };
 
-float checkrules_oneminutewarning;
-
 float checkrules_equality;
 float checkrules_suddendeathwarning;
 float checkrules_suddendeathend;
@@ -1901,12 +1899,6 @@
 		return;
 	}
 
-	if (!checkrules_oneminutewarning && timelimit > 0 && time > timelimit - 60)
-	{
-		checkrules_oneminutewarning = TRUE;
-		play2all("announcer/robotic/1minuteremains.wav");
-	}
-
 	checkrules_status = WinningCondition_RanOutOfSpawns();
 	if(checkrules_status == WINNING_YES)
 	{

Modified: branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/server/miscfunctions.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -1432,7 +1432,6 @@
 	precache_sound ("announcer/robotic/begin.wav");
 	precache_sound ("announcer/robotic/timeoutcalled.wav");
 	precache_sound ("announcer/robotic/1fragleft.wav");
-	precache_sound ("announcer/robotic/1minuteremains.wav");
 	precache_sound ("announcer/robotic/2fragsleft.wav");
 	precache_sound ("announcer/robotic/3fragsleft.wav");
 	if (g_minstagib)

Modified: branches/nexuiz-2.0/data/qcsrc/server/mode_onslaught.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/mode_onslaught.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/server/mode_onslaught.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -417,11 +417,11 @@
 		onslaught_updatelinks();
 	}
 	if(self.health < cvar("g_onslaught_gen_health") * 0.75)
-		setmodel(self, "models/onslaught/reactor_dmg1.md3");
+		setmodel(self, "models/onslaught/generator_dmg1.md3");
 	if(self.health < cvar("g_onslaught_gen_health") * 0.35)
-		setmodel(self, "models/onslaught/reactor_dmg2.md3");
+		setmodel(self, "models/onslaught/generator_dmg2.md3");
 	if(self.health <= 0)
-		setmodel(self, "models/onslaught/reactor_dead.md3");
+		setmodel(self, "models/onslaught/generator_dead.md3");
 };
 
 // update links after a delay
@@ -600,9 +600,9 @@
 	local entity e;
 	precache_model("models/onslaught/generator.md3");
 	precache_model("models/onslaught/generator_shield.md3");
-	precache_model("models/onslaught/reactor_dmg1.md3");
-	precache_model("models/onslaught/reactor_dmg2.md3");
-	precache_model("models/onslaught/reactor_dead.md3");
+	precache_model("models/onslaught/generator_dmg1.md3");
+	precache_model("models/onslaught/generator_dmg2.md3");
+	precache_model("models/onslaught/generator_dead.md3");
 	precache_sound("onslaught/generator_decay.wav");
 	precache_sound("weapons/grenade_impact.wav");
 	precache_sound("weapons/rocket_impact.wav");

Modified: branches/nexuiz-2.0/data/qcsrc/server/sv_main.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/sv_main.qc	2009-05-05 10:04:34 UTC (rev 6668)
+++ branches/nexuiz-2.0/data/qcsrc/server/sv_main.qc	2009-05-05 10:17:09 UTC (rev 6669)
@@ -158,8 +158,11 @@
 	sv_airaccelerate = cvar("sv_airaccelerate");
 	sv_airaccel_sideways_friction = cvar("sv_airaccel_sideways_friction");
 	sv_airaccel_qw = cvar("sv_airaccel_qw");
-
 	sv_stopspeed = cvar ("sv_stopspeed");
+	sv_airstopaccelerate = cvar("sv_airstopaccelerate");
+	sv_airstrafeaccelerate = cvar("sv_airstrafeaccelerate");
+	sv_maxairstrafespeed = cvar("sv_maxairstrafespeed");
+	sv_aircontrol = cvar("sv_aircontrol");
 	teamplay = cvar ("teamplay");
 
 	if(teams_matter && !teamplay)

Copied: branches/nexuiz-2.0/data/scripts/onslaught.shader (from rev 6660, trunk/data/scripts/onslaught.shader)
===================================================================
--- branches/nexuiz-2.0/data/scripts/onslaught.shader	                        (rev 0)
+++ branches/nexuiz-2.0/data/scripts/onslaught.shader	2009-05-05 10:17:09 UTC (rev 6669)
@@ -0,0 +1,10 @@
+ons_shield
+{
+ {
+	map textures/ons_shield.tga
+	tcMod rotate 15
+	tcMod scale 0.3 0.3
+	tcMod scroll 0.03 0.001
+	tcGen environment
+ }
+}
\ No newline at end of file

Modified: branches/nexuiz-2.0/data/textures/core_dmg1.tga
===================================================================
(Binary files differ)

Modified: branches/nexuiz-2.0/data/textures/core_dmg1_glow.tga
===================================================================
(Binary files differ)

Modified: branches/nexuiz-2.0/data/textures/core_dmg2.tga
===================================================================
(Binary files differ)

Modified: branches/nexuiz-2.0/data/textures/core_dmg2_glow.tga
===================================================================
(Binary files differ)

Copied: branches/nexuiz-2.0/data/textures/generator_shield.tga (from rev 6660, trunk/data/textures/generator_shield.tga)
===================================================================
(Binary files differ)

Copied: branches/nexuiz-2.0/data/textures/ons_shield.tga (from rev 6660, trunk/data/textures/ons_shield.tga)
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/textures/shield.tga
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/textures/shield_gloss.tga
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/textures/shield_glow.tga
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/textures/shield_norm.tga
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/textures/shield_seamless(2nd texture).tga
===================================================================
(Binary files differ)

Deleted: branches/nexuiz-2.0/data/textures/shield_seamless(2nd texture)_gloss.tga
===================================================================
(Binary files differ)



More information about the nexuiz-commits mailing list