]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge branch 'tzork/vehicles-2' of ssh://git.xonotic.org/xonotic-data.pk3dir into...
authorJakob MG <jakob_mg@hotmail.com>
Wed, 6 Apr 2011 08:38:39 +0000 (10:38 +0200)
committerJakob MG <jakob_mg@hotmail.com>
Wed, 6 Apr 2011 08:38:39 +0000 (10:38 +0200)
45 files changed:
balanceSamual.cfg
defaultXonotic.cfg
gfx/hud/default/accelbar.tga [new file with mode: 0644]
gfx/hud/luminos/accelbar.tga [new file with mode: 0644]
gfx/hud/old/accelbar.tga [new file with mode: 0644]
models/items/5hp.tga [new file with mode: 0644]
models/items/5hp_gloss.tga [new file with mode: 0644]
models/items/5hp_glow.tga [new file with mode: 0644]
models/items/5hp_norm.tga [new file with mode: 0644]
models/items/5hp_reflect.tga [new file with mode: 0644]
models/items/g_h1.md3
models/items/g_h100.md3
models/items/g_h25.md3
models/items/g_h50.md3
models/items/glass_gloss.tga [new file with mode: 0644]
models/items/h25.tga [new file with mode: 0644]
models/items/h25_gloss.tga [new file with mode: 0644]
models/items/h25_glow.tga [new file with mode: 0644]
models/items/h25_norm.tga [new file with mode: 0644]
models/items/h25_reflect.tga [new file with mode: 0644]
models/items/h50.tga [new file with mode: 0644]
models/items/h50_gloss.tga [new file with mode: 0644]
models/items/h50_glow.tga [new file with mode: 0644]
models/items/h50_norm.tga [new file with mode: 0644]
models/items/h50_reflect.tga [new file with mode: 0644]
models/items/h_mega.tga [new file with mode: 0644]
models/items/h_mega_gloss.tga [new file with mode: 0644]
models/items/h_mega_glow.tga [new file with mode: 0644]
models/items/h_mega_norm.tga [new file with mode: 0644]
models/items/h_mega_reflect.tga [new file with mode: 0644]
models/items/red.tga [new file with mode: 0644]
models/items/red_gloss.tga [new file with mode: 0644]
models/items/red_reflect.tga [new file with mode: 0644]
qcsrc/client/damage.qc
qcsrc/client/hud.qc
qcsrc/client/mapvoting.qc
qcsrc/client/miscfunctions.qc
qcsrc/common/constants.qh
qcsrc/server/cl_player.qc
qcsrc/server/vehicles/racer.qc
qcsrc/server/vehicles/raptor.qc
qcsrc/server/vehicles/spiderbot.qc
qcsrc/server/vehicles/vehicles.qc
qcsrc/server/w_common.qc
scripts/items.shader [new file with mode: 0644]

index 6979fb6b9e53c4265771a342e6bc50fec5b61f82..187362d70f59a13239fda7c178b0e85cb8be0ed1 100644 (file)
@@ -13,7 +13,7 @@ set g_start_weapon_minstanex -1 "0 = never provide the weapon, 1 = always provid
 set g_start_weapon_porto -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms"
 set g_start_weapon_hook -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms"
 set g_start_weapon_hlac 0 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms" // UNTIL IT CAN BE REMOVED FROM CODE
-set g_start_weapon_sniperrifle -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms"
+set g_start_weapon_sniperrifle 0 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms" // UNTIL IT CAN BE REMOVED FROM CODE
 set g_start_weapon_tuba -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms"
 set g_start_weapon_fireball -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms"
 set g_start_weapon_seeker -1 "0 = never provide the weapon, 1 = always provide the weapon, -1 = game mode default, -2 = provide the weapon in ca and lms"
@@ -26,26 +26,26 @@ set g_start_ammo_cells 0
 set g_start_ammo_fuel 0
 set g_warmup_start_health 100 "starting values when being in warmup-stage"
 set g_warmup_start_armor 100 "starting values when being in warmup-stage"
-set g_warmup_start_ammo_shells 50 "starting values when being in warmup-stage"
-set g_warmup_start_ammo_nails 150 "starting values when being in warmup-stage"
-set g_warmup_start_ammo_rockets 50 "starting values when being in warmup-stage"
-set g_warmup_start_ammo_cells 50 "starting values when being in warmup-stage"
+set g_warmup_start_ammo_shells 30 "starting values when being in warmup-stage"
+set g_warmup_start_ammo_nails 160 "starting values when being in warmup-stage"
+set g_warmup_start_ammo_rockets 80 "starting values when being in warmup-stage"
+set g_warmup_start_ammo_cells 90 "starting values when being in warmup-stage"
 set g_warmup_start_ammo_fuel 0 "starting values when being in warmup-stage"
 set g_lms_start_health 200
 set g_lms_start_armor 200
-set g_lms_start_ammo_shells 120
-set g_lms_start_ammo_nails 400
-set g_lms_start_ammo_rockets 120
-set g_lms_start_ammo_cells 200
+set g_lms_start_ammo_shells 60
+set g_lms_start_ammo_nails 320
+set g_lms_start_ammo_rockets 160
+set g_lms_start_ammo_cells 180
 set g_lms_start_ammo_fuel 0
 set g_balance_nix_roundtime 25
 set g_balance_nix_incrtime 1.6
-set g_balance_nix_ammo_shells 120
-set g_balance_nix_ammo_nails 400
-set g_balance_nix_ammo_rockets 120
-set g_balance_nix_ammo_cells 200
+set g_balance_nix_ammo_shells 60
+set g_balance_nix_ammo_nails 320
+set g_balance_nix_ammo_rockets 160
+set g_balance_nix_ammo_cells 180
 set g_balance_nix_ammo_fuel 0
-set g_balance_nix_ammoincr_shells 2
+set g_balance_nix_ammoincr_shells 2 // eh this will need figured out later I assume
 set g_balance_nix_ammoincr_nails 6
 set g_balance_nix_ammoincr_rockets 2
 set g_balance_nix_ammoincr_cells 2
@@ -84,16 +84,16 @@ set g_pickup_armorlarge 100
 set g_pickup_armorlarge_max 200
 set g_pickup_armorlarge_anyway 1
 set g_pickup_healthsmall 5
-set g_pickup_healthsmall_max 250
+set g_pickup_healthsmall_max 200
 set g_pickup_healthsmall_anyway 1
 set g_pickup_healthmedium 25
-set g_pickup_healthmedium_max 250
+set g_pickup_healthmedium_max 200
 set g_pickup_healthmedium_anyway 1
 set g_pickup_healthlarge 50
-set g_pickup_healthlarge_max 250
+set g_pickup_healthlarge_max 200
 set g_pickup_healthlarge_anyway 1
 set g_pickup_healthmega 100
-set g_pickup_healthmega_max 250
+set g_pickup_healthmega_max 200
 set g_pickup_healthmega_anyway 1
 set g_pickup_respawntime_short 15
 set g_pickup_respawntime_medium 20
@@ -114,16 +114,16 @@ set g_balance_health_regen 0
 set g_balance_health_regenlinear 5
 set g_balance_pause_health_regen 5
 set g_balance_pause_health_regen_spawn 0
-set g_balance_health_rot 0.05
+set g_balance_health_rot 0.04
 set g_balance_health_rotlinear 2
 set g_balance_pause_health_rot 0.5
 set g_balance_pause_health_rot_spawn 5
 set g_balance_health_regenstable 100
-set g_balance_health_rotstable 150
+set g_balance_health_rotstable 100
 set g_balance_health_limit 999
 set g_balance_armor_regen 0
 set g_balance_armor_regenlinear 0
-set g_balance_armor_rot 0.05
+set g_balance_armor_rot 0.04
 set g_balance_armor_rotlinear 2
 set g_balance_pause_armor_rot 1
 set g_balance_pause_armor_rot_spawn 5
@@ -174,11 +174,11 @@ set g_projectiles_spread_style 7
 // 5: forward + circle with 1-r falloff
 // 6: forward + circle with 1-r^2 falloff
 // 7: forward + circle with (1-r)(2-r) falloff
-set g_balance_falldamage_deadminspeed 150
-set g_balance_falldamage_minspeed 1000
+set g_balance_falldamage_deadminspeed 250
+set g_balance_falldamage_minspeed 900
 set g_balance_falldamage_factor 0.20
-set g_balance_falldamage_maxdamage 15
-set g_balance_damagepush_speedfactor 0
+set g_balance_falldamage_maxdamage 40
+set g_balance_damagepush_speedfactor 2.5
 // }}}
 
 // {{{ powerups
@@ -776,7 +776,7 @@ set g_balance_seeker_missile_speed_up 0
 set g_balance_seeker_missile_speed_z 0
 set g_balance_seeker_missile_speed_max 2000 // LOG: 1400 -> 1300
 set g_balance_seeker_missile_spread 0
-set g_balance_seeker_missile_turnrate 0.2
+set g_balance_seeker_missile_turnrate 0.15
 set g_balance_seeker_reload_ammo 0 //default: 15
 set g_balance_seeker_reload_time 2
 // End new seeker
index e9e50c5c171659d2d9a022d28a7e41dbdc698ced..bddddb12e409430f7dfa9a41e8dd8e470c1b3b39 100644 (file)
@@ -241,6 +241,7 @@ vid_conheight 600
 v_deathtilt 0 // needed for spectators (who are dead to avoid prediction)
 
 // these settings determine how much the view is affected by movement/damage
+cl_smoothviewheight 0.05 // time of the averaging to the viewheight value so that it creates a smooth transition for crouching and such. 0 for instant transition
 cl_deathfade 1 // fade screen to dark red when dead, value represents how fast the fade is (higher is faster)
 cl_bobcycle 0 // how long the cycle of up/down view movement takes (only works if cl_bob is not 0), default is 0.6
 cl_bob 0.01 // how much view moves up/down when moving (does not move if cl_bobcycle is 0, but still enables cl_bobmodel), default is 0.02
diff --git a/gfx/hud/default/accelbar.tga b/gfx/hud/default/accelbar.tga
new file mode 100644 (file)
index 0000000..fd93858
Binary files /dev/null and b/gfx/hud/default/accelbar.tga differ
diff --git a/gfx/hud/luminos/accelbar.tga b/gfx/hud/luminos/accelbar.tga
new file mode 100644 (file)
index 0000000..fd93858
Binary files /dev/null and b/gfx/hud/luminos/accelbar.tga differ
diff --git a/gfx/hud/old/accelbar.tga b/gfx/hud/old/accelbar.tga
new file mode 100644 (file)
index 0000000..0bbad17
Binary files /dev/null and b/gfx/hud/old/accelbar.tga differ
diff --git a/models/items/5hp.tga b/models/items/5hp.tga
new file mode 100644 (file)
index 0000000..e731fe4
Binary files /dev/null and b/models/items/5hp.tga differ
diff --git a/models/items/5hp_gloss.tga b/models/items/5hp_gloss.tga
new file mode 100644 (file)
index 0000000..4e4b32b
Binary files /dev/null and b/models/items/5hp_gloss.tga differ
diff --git a/models/items/5hp_glow.tga b/models/items/5hp_glow.tga
new file mode 100644 (file)
index 0000000..f1ae8f2
Binary files /dev/null and b/models/items/5hp_glow.tga differ
diff --git a/models/items/5hp_norm.tga b/models/items/5hp_norm.tga
new file mode 100644 (file)
index 0000000..78eb7c3
Binary files /dev/null and b/models/items/5hp_norm.tga differ
diff --git a/models/items/5hp_reflect.tga b/models/items/5hp_reflect.tga
new file mode 100644 (file)
index 0000000..e880795
Binary files /dev/null and b/models/items/5hp_reflect.tga differ
index 3b6e7e9707e09fc9ac91d920e79f30b201ffcdfd..9e6da7569bfc7cda57b456ac75d57c6c6233440d 100644 (file)
Binary files a/models/items/g_h1.md3 and b/models/items/g_h1.md3 differ
index 1893bc5387c3550f302a97406a6e985ce7e1431f..f589d08bc09a8a60a33798b80e17f281ae3f7f6b 100644 (file)
Binary files a/models/items/g_h100.md3 and b/models/items/g_h100.md3 differ
index 09ca47b04f2d5e3c9fd4143d6fded0c8efe83c4a..06419c944320e53db4b6056b738888a55cc9aa15 100644 (file)
Binary files a/models/items/g_h25.md3 and b/models/items/g_h25.md3 differ
index 9d26a567618d2b1962d622d12e7073c976c1a07a..90a91f2a59b9eec19b8d9b23c4a5871087503030 100644 (file)
Binary files a/models/items/g_h50.md3 and b/models/items/g_h50.md3 differ
diff --git a/models/items/glass_gloss.tga b/models/items/glass_gloss.tga
new file mode 100644 (file)
index 0000000..55e3793
Binary files /dev/null and b/models/items/glass_gloss.tga differ
diff --git a/models/items/h25.tga b/models/items/h25.tga
new file mode 100644 (file)
index 0000000..377c6e4
Binary files /dev/null and b/models/items/h25.tga differ
diff --git a/models/items/h25_gloss.tga b/models/items/h25_gloss.tga
new file mode 100644 (file)
index 0000000..73e16a1
Binary files /dev/null and b/models/items/h25_gloss.tga differ
diff --git a/models/items/h25_glow.tga b/models/items/h25_glow.tga
new file mode 100644 (file)
index 0000000..d76a2bc
Binary files /dev/null and b/models/items/h25_glow.tga differ
diff --git a/models/items/h25_norm.tga b/models/items/h25_norm.tga
new file mode 100644 (file)
index 0000000..769d388
Binary files /dev/null and b/models/items/h25_norm.tga differ
diff --git a/models/items/h25_reflect.tga b/models/items/h25_reflect.tga
new file mode 100644 (file)
index 0000000..73e16a1
Binary files /dev/null and b/models/items/h25_reflect.tga differ
diff --git a/models/items/h50.tga b/models/items/h50.tga
new file mode 100644 (file)
index 0000000..36cdbe0
Binary files /dev/null and b/models/items/h50.tga differ
diff --git a/models/items/h50_gloss.tga b/models/items/h50_gloss.tga
new file mode 100644 (file)
index 0000000..4a52e3f
Binary files /dev/null and b/models/items/h50_gloss.tga differ
diff --git a/models/items/h50_glow.tga b/models/items/h50_glow.tga
new file mode 100644 (file)
index 0000000..0b6efb0
Binary files /dev/null and b/models/items/h50_glow.tga differ
diff --git a/models/items/h50_norm.tga b/models/items/h50_norm.tga
new file mode 100644 (file)
index 0000000..4ef7475
Binary files /dev/null and b/models/items/h50_norm.tga differ
diff --git a/models/items/h50_reflect.tga b/models/items/h50_reflect.tga
new file mode 100644 (file)
index 0000000..272b07e
Binary files /dev/null and b/models/items/h50_reflect.tga differ
diff --git a/models/items/h_mega.tga b/models/items/h_mega.tga
new file mode 100644 (file)
index 0000000..2c56ea2
Binary files /dev/null and b/models/items/h_mega.tga differ
diff --git a/models/items/h_mega_gloss.tga b/models/items/h_mega_gloss.tga
new file mode 100644 (file)
index 0000000..26cb031
Binary files /dev/null and b/models/items/h_mega_gloss.tga differ
diff --git a/models/items/h_mega_glow.tga b/models/items/h_mega_glow.tga
new file mode 100644 (file)
index 0000000..ede6462
Binary files /dev/null and b/models/items/h_mega_glow.tga differ
diff --git a/models/items/h_mega_norm.tga b/models/items/h_mega_norm.tga
new file mode 100644 (file)
index 0000000..39a88d7
Binary files /dev/null and b/models/items/h_mega_norm.tga differ
diff --git a/models/items/h_mega_reflect.tga b/models/items/h_mega_reflect.tga
new file mode 100644 (file)
index 0000000..6fc8a8b
Binary files /dev/null and b/models/items/h_mega_reflect.tga differ
diff --git a/models/items/red.tga b/models/items/red.tga
new file mode 100644 (file)
index 0000000..07ce79a
Binary files /dev/null and b/models/items/red.tga differ
diff --git a/models/items/red_gloss.tga b/models/items/red_gloss.tga
new file mode 100644 (file)
index 0000000..55e3793
Binary files /dev/null and b/models/items/red_gloss.tga differ
diff --git a/models/items/red_reflect.tga b/models/items/red_reflect.tga
new file mode 100644 (file)
index 0000000..e8eaf4f
Binary files /dev/null and b/models/items/red_reflect.tga differ
index 783f66759b50b3881d533b083e732db2866d7d55..245ab24f78f937fffc623d9c7b7a06dad50ddf79 100644 (file)
@@ -69,9 +69,70 @@ void Ent_DamageInfo(float isNew)
        }
 
        self = oldself;
-
-       // TODO spawn particle effects and sounds based on w_deathtype
        
+       if(DEATH_ISVEHICLE(w_deathtype))
+       {
+           traceline(w_org - normalize(force) * 16, w_org + normalize(force) * 16, MOVE_NOMONSTERS, world);
+           if(trace_plane_normal != '0 0 0')       
+            w_backoff = trace_plane_normal;
+        else
+            w_backoff = -1 * normalize(w_org - (w_org + normalize(force) * 16));
+           
+           setorigin(self, w_org + w_backoff * 2); // for sound() calls
+           
+           switch(w_deathtype)
+           {            
+            case DEATH_VHCRUSH:
+                break;
+                
+            case DEATH_SBMINIGUN:
+                string _snd;
+                _snd = strcat("weapons/ric", ftos(1 + rint(random() * 2)), ".waw");
+                sound(self, CHAN_PROJECTILE, _snd, VOL_BASE, ATTN_NORM);
+                pointparticles(particleeffectnum("spiderbot_minigun_impact"), self.origin, w_backoff * 1000, 1);
+                break;
+            case DEATH_SBROCKET:
+                sound(self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
+                pointparticles(particleeffectnum("spiderbot_rocket_explode"), self.origin, w_backoff * 1000, 1);
+                break;
+            case DEATH_SBBLOWUP:
+                sound(self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_MIN);
+                pointparticles(particleeffectnum("explosion_big"), self.origin, w_backoff * 1000, 1);
+                break;
+                
+            case DEATH_WAKIGUN:
+                sound(self, CHAN_PROJECTILE, "weapons/laserimpact.wav", VOL_BASE, ATTN_NORM);
+                pointparticles(particleeffectnum("wakizashi_gun_impact"), self.origin, w_backoff * 1000, 1);
+                break;
+            case DEATH_WAKIROCKET:
+                sound(self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
+                pointparticles(particleeffectnum("wakizashi_rocket_explode"), self.origin, w_backoff * 1000, 1);
+                break;
+            case DEATH_WAKIBLOWUP:
+                sound(self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_MIN);
+                pointparticles(particleeffectnum("explosion_big"), self.origin, w_backoff * 1000, 1);
+                break;
+                
+            case DEATH_RAPTOR_CANNON:
+                sound(self, CHAN_PROJECTILE, "weapons/laserimpact.wav", VOL_BASE, ATTN_NORM);
+                pointparticles(particleeffectnum("raptor_cannon_impact"), self.origin, w_backoff * 1000, 1);
+                break;
+            case DEATH_RAPTOR_BOMB_SPLIT:
+                sound(self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
+                pointparticles(particleeffectnum("raptor_bomb_spread"), self.origin, w_backoff * 1000, 1);
+                break;
+            case DEATH_RAPTOR_BOMB:
+                sound(self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
+                pointparticles(particleeffectnum("raptor_bomb_impact"), self.origin, w_backoff * 1000, 1);
+                break;
+            case DEATH_RAPTOR_DEATH:
+                sound(self, CHAN_PROJECTILE, "weapons/laserimpact.wav", VOL_BASE, ATTN_MIN);
+                pointparticles(particleeffectnum("explosion_big"), self.origin, w_backoff * 1000, 1);
+                break;
+           }
+       }
+       
+       // TODO spawn particle effects and sounds based on w_deathtype
        if(!DEATH_ISSPECIAL(w_deathtype))
        {
                float hitwep;
index fbf6c5a95634964df69c2090a1fa4e20c99cd750..5acae2cff260d8365bae425992792f4d56f8a187 100644 (file)
@@ -4958,7 +4958,7 @@ void HUD_InfoMessages(void)
                }
                else if(warmup_stage && !intermission && !spectatee_status)
                {
-                       s = strcat("^2Press ^3%s^2 to end warmup", getcommandkey("ready", "ready"));
+                       s = sprintf(_("^2Press ^3%s^2 to end warmup"), getcommandkey("ready", "ready"));
                        drawInfoMessage(s)
                }
 
@@ -5097,9 +5097,9 @@ void HUD_ShowAcceleration(void)
        }
 
        if (acceleration > 0)
-        HUD_Panel_DrawProgressBar(pos, eX * (vid_conwidth - pos_x) + eY * sz, "statusbar", 0, 0, acceleration * scale, rgb, alpha * autocvar_hud_progressbar_alpha * panel_fg_alpha, DRAWFLAG_NORMAL);
+        HUD_Panel_DrawProgressBar(pos, eX * (vid_conwidth - pos_x) + eY * sz, "accelbar", 0, 0, acceleration * scale, rgb, alpha * autocvar_hud_progressbar_alpha * panel_fg_alpha, DRAWFLAG_NORMAL);
        else
-        HUD_Panel_DrawProgressBar(eY * pos_y, eX * pos_x + eY * sz, "statusbar", 0, 1, -acceleration * scale, rgb, alpha * autocvar_hud_progressbar_alpha * panel_fg_alpha, DRAWFLAG_NORMAL);
+        HUD_Panel_DrawProgressBar(eY * pos_y, eX * pos_x + eY * sz, "accelbar", 0, 1, -acceleration * scale, rgb, alpha * autocvar_hud_progressbar_alpha * panel_fg_alpha, DRAWFLAG_NORMAL);
 }
 
 void HUD_Reset (void)
index e94d6a68aa786786f9babdf009e71deeb5b64259..a9e7ca4a94beee110d55d8b85d3879fa03132eff 100644 (file)
@@ -26,7 +26,7 @@ string MapVote_FormatMapItem(float id, string map, float count, float maxwidth,
        {
                if(count == 1)
                        post = _(" (1 vote)");
-               else
+               else if(count >= 0)
                        post = sprintf(_(" (%d votes)"), count);
        }
        else
index d38b7c9ba0d4837de902f2b86a4d5bb6e2111d92..41ecb91efa915673aff7313c425b5c02af0c5b55 100644 (file)
@@ -501,7 +501,7 @@ void drawpic_aspect_skin_expanding(vector position, string pic, vector scale, ve
        float sz;
        sz = expandingbox_sizefactor_from_fadelerp(fadelerp);
 
-       drawpic_skin(position + expandingbox_resize_centered_box_offset(sz, scale, 1), pic, scale * sz, rgb, alpha * (1 - fadelerp), flag);
+       drawpic_aspect_skin(position + expandingbox_resize_centered_box_offset(sz, scale, 1), pic, scale * sz, rgb, alpha * (1 - fadelerp), flag);
 }
 
 void drawpic_aspect_skin_expanding_two(vector position, string pic, vector scale, vector rgb, float alpha, float flag, float fadelerp)
index 0398d84ffc4544a7916f1a944391ab069b83388e..93ace6f5f8ec836c4c180a09994349b397a98914 100644 (file)
@@ -543,9 +543,10 @@ float DEATH_HEADSHOT = 10022;
 #define DEATH_WAKIBLOWUP    10036
 #define DEATH_RAPTOR_CANNON 10037
 #define DEATH_RAPTOR_BOMB   10038
-#define DEATH_RAPTOR_DEATH  10039
-#define DEATH_VHLAST        10039
-#define DEATH_ISVEHICLE(t)            ((t) >= DEATH_VHFIRST && (t) <= DEATH_VHLAST)
+#define DEATH_RAPTOR_BOMB_SPLIT 10039
+#define DEATH_RAPTOR_DEATH  10040
+#define DEATH_VHLAST        10040
+#define DEATH_ISVEHICLE(t)  ((t) >= DEATH_VHFIRST && (t) <= DEATH_VHLAST)
 
 float DEATH_GENERIC = 10050;
 
index cf7d655b1b601a5d5110ebe6a5711c13dfc38402..e8532d516f3828f0b01ba01e7ee952e3dbaeee8d 100644 (file)
@@ -722,7 +722,7 @@ void PlayerDamage (entity inflictor, entity attacker, float damage, float deatht
 
                if(sv_gentle > 0 || autocvar_ekg) {
                        // remove corpse
-                       PlayerCorpseDamage (inflictor, attacker, 100.0, deathtype, hitloc, force);
+                       PlayerCorpseDamage (inflictor, attacker, autocvar_sv_gibhealth+1.0, deathtype, hitloc, force);
                }
 
                // reset fields the weapons may use just in case
index 091cf3e613094fde005270248ad45c04433f2ae8..b0432dbe43da3c02af4264a90bcf239cbce43e58 100644 (file)
@@ -123,7 +123,7 @@ void racer_fire_cannon(string tagname)
     entity bolt;
 
     v = gettaginfo(self, gettagindex(self, tagname));
-    bolt = vehicles_projectile("wakizashi_gun_impact", "weapons/laserimpact.wav", "wakizashi_gun_muzzleflash", "weapons/lasergun_fire.wav",
+    bolt = vehicles_projectile("wakizashi_gun_muzzleflash", "weapons/lasergun_fire.wav",
                            v, normalize(v_forward + randomvec() * autocvar_g_vehicle_racer_cannon_spread) * autocvar_g_vehicle_racer_cannon_speed,
                            autocvar_g_vehicle_racer_cannon_damage, autocvar_g_vehicle_racer_cannon_radius, autocvar_g_vehicle_racer_cannon_force,  0,
                            DEATH_WAKIGUN, PROJECTILE_WAKICANNON, 0);
@@ -233,7 +233,7 @@ void racer_fire_rocket(string tagname, entity trg)
     entity rocket;
 
     v = gettaginfo(self, gettagindex(self, tagname));
-    rocket = vehicles_projectile("wakizashi_rocket_explode", "weapons/rocket_impact.wav", "wakizashi_rocket_launch", "weapons/rocket_fire.wav",
+    rocket = vehicles_projectile("wakizashi_rocket_launch", "weapons/rocket_fire.wav",
                            v, v_forward * autocvar_g_vehicle_racer_rocket_speed,
                            autocvar_g_vehicle_racer_rocket_damage, autocvar_g_vehicle_racer_rocket_radius, autocvar_g_vehicle_racer_rocket_force, 3,
                            DEATH_WAKIROCKET, PROJECTILE_WAKIROCKET, 20);
index e86d02762bc2ed6372c646a0c0d71599ea65e709..89c811c88c21c2f3ef60d4e73f92dd8c4c1f6a43 100644 (file)
@@ -74,12 +74,10 @@ float raptor_altitude(float amax)
 
 void raptor_bomblet_boom()
 {
-    sound (self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
-    pointparticles(particleeffectnum("raptor_bomb_impact"), self.origin, trace_plane_normal * 1000, 1);
     RadiusDamage (self, self.realowner, autocvar_g_vehicle_raptor_bomblet_damage,
                                     autocvar_g_vehicle_raptor_bomblet_edgedamage,
                                     autocvar_g_vehicle_raptor_bomblet_radius, world,
-                                    autocvar_g_vehicle_raptor_bomblet_force, DEATH_SBROCKET, world);
+                                    autocvar_g_vehicle_raptor_bomblet_force, DEATH_RAPTOR_BOMB, world);
     remove(self);
 }
 
@@ -110,9 +108,11 @@ void raptor_bomb_burst()
     entity bomblet;
     float i;
 
-    sound (self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
-    pointparticles(particleeffectnum("raptor_bomb_spread"), self.origin, self.velocity, 1);
-
+    //sound (self, CHAN_PROJECTILE, "weapons/rocket_impact.wav", VOL_BASE, ATTN_NORM);
+    //pointparticles(particleeffectnum("raptor_bomb_spread"), self.origin, self.velocity, 1);
+    
+    Damage_DamageInfo(self.origin, 0, 0, 0, '0 0 0', DEATH_RAPTOR_BOMB_SPLIT, self);
+    
     for(i = 0; i < autocvar_g_vehicle_raptor_bomblets; ++i)
     {
         bomblet = spawn();
@@ -181,10 +181,10 @@ void raptor_fire_cannon(entity gun, string tagname)
     entity bolt;
     vector b_org;    
     b_org = gettaginfo(gun, gettagindex(gun, tagname));
-    bolt = vehicles_projectile("raptor_cannon_impact", "weapons/laserimpact.wav", "raptor_cannon_muzzleflash", "weapons/lasergun_fire.wav",
+    bolt = vehicles_projectile("raptor_cannon_muzzleflash", "weapons/lasergun_fire.wav",
                            b_org, normalize(v_forward + randomvec() * autocvar_g_vehicle_raptor_cannon_spread) * autocvar_g_vehicle_raptor_cannon_speed,
                            autocvar_g_vehicle_raptor_cannon_damage, autocvar_g_vehicle_raptor_cannon_radius, autocvar_g_vehicle_raptor_cannon_force,  0,
-                           DEATH_WAKIGUN, PROJECTILE_RAPTORCANNON, 0);
+                           DEATH_RAPTOR_CANNON, PROJECTILE_RAPTORCANNON, 0);
 }
 
 void raptor_think()
index 9cb629ce91bb0a9c3507bd0b5b2b1b24990f0694..d2111c45f4a4e0bcfdfa18ff32f188dc896350a7 100644 (file)
@@ -150,7 +150,7 @@ void spiderbot_rocket_do()
     crosshair_trace(self.owner);
 //normalize(v_forward + (v_up * 0.5) + randomvec() * 0.25) * autocvar_g_vehicle_spiderbot_rocket_speed,
     v = gettaginfo(self.tur_head,gettagindex(self.tur_head,"tag_fire"));
-    rocket = vehicles_projectile("spiderbot_rocket_explode", "weapons/rocket_impact.wav", "spiderbot_rocket_launch", "weapons/rocket_fire.wav",
+    rocket = vehicles_projectile("spiderbot_rocket_launch", "weapons/rocket_fire.wav",
                            v, normalize(v_forward) * autocvar_g_vehicle_spiderbot_rocket_speed,
                            autocvar_g_vehicle_spiderbot_rocket_damage, autocvar_g_vehicle_spiderbot_rocket_radius, autocvar_g_vehicle_spiderbot_rocket_force, 1,
                            DEATH_SBROCKET, PROJECTILE_SPIDERROCKET, autocvar_g_vehicle_spiderbot_rocket_health);
@@ -188,7 +188,7 @@ void spiderbot_minigun_fire(entity gun, float trail)
         sound (gun, CHAN_WEAPON, "weapons/uzi_fire.wav", VOL_BASE, ATTN_NORM);
         trailparticles(self, particleeffectnum("spiderbot_minigun_trail"), v, trace_endpos);
         pointparticles(particleeffectnum("spiderbot_minigun_muzzleflash"), v, v_forward * 2500, 1);
-        pointparticles(particleeffectnum("spiderbot_minigun_impact"), trace_endpos, trace_plane_normal * 2500,1);
+        //pointparticles(particleeffectnum("spiderbot_minigun_impact"), trace_endpos, trace_plane_normal * 2500,1);
     }
 }
 
index 72b18e5f4eea631ecea18622bd8af0be90dd4320..5ba0722c02a58cb477225bbc76c91bf18461063a 100644 (file)
@@ -135,7 +135,6 @@ void vehicles_locktarget(float incr, float decr, float _lock_time)
     }
 }
 
-
 #define VEHICLE_UPDATE_PLAYER(fld,vhname) \
 self.owner.vehicle_##fld = self.vehicle_##fld / autocvar_g_vehicle_##vhname##_##fld
 
@@ -206,14 +205,12 @@ void vehicles_projectile_explode()
        PROJECTILE_TOUCH;
 
        self.event_damage = SUB_Null;
-    sound (self, CHAN_PROJECTILE, self.target2, VOL_BASE, ATTN_NORM);
-    pointparticles(particleeffectnum(self.target3), findbetterlocation (self.origin, 16), '0 0 0', 1);
     RadiusDamage (self, self.realowner, self.shot_dmg, 0, self.shot_radius, self, self.shot_force, self.totalfrags, other);
 
     remove (self);
 }
 
-entity vehicles_projectile(string _impactfx, string _impactsnd, string _mzlfx, string _mzlsound,
+entity vehicles_projectile(string _mzlfx, string _mzlsound,
                            vector _org, vector _vel,
                            float _dmg, float _radi, float _force,  float _size,
                            float _deahtype, float _projtype, float _health)
@@ -229,8 +226,6 @@ entity vehicles_projectile(string _impactfx, string _impactsnd, string _mzlfx, s
     proj.shot_radius      = _radi;
     proj.shot_force       = _force;
     proj.totalfrags       = _deahtype;
-    proj.target2          = _impactsnd;
-    proj.target3          = _impactfx;
     proj.solid            = SOLID_BBOX;
     proj.movetype         = MOVETYPE_FLYMISSILE;
     proj.flags            = FL_PROJECTILE;
index c20b6aa4c67f438a704f8b9c2a21ae381b225025..03fddcf7862f1a275ed18bdab3720d5708997f9e 100644 (file)
@@ -517,8 +517,8 @@ void fireBullet (vector start, vector dir, float spread, float damage, float for
 
        if ((trace_fraction != 1.0) && (pointcontents (trace_endpos) != CONTENT_SKY))
        {
-               if (trace_ent.solid == SOLID_BSP && !(trace_dphitq3surfaceflags & Q3SURFACEFLAG_NOIMPACT))
-                       Damage_DamageInfo(trace_endpos, damage, 0, 0, dir * max(1, force), dtype, self);
+               if not (trace_dphitq3surfaceflags & Q3SURFACEFLAG_NOIMPACT)
+                       Damage_DamageInfo(trace_endpos, damage, 0, 0, dir * max(1, force), dtype, self);                    
 
                Damage (trace_ent, self, self, damage, dtype, trace_endpos, dir * force);
        }
diff --git a/scripts/items.shader b/scripts/items.shader
new file mode 100644 (file)
index 0000000..4d65657
--- /dev/null
@@ -0,0 +1,41 @@
+models/items/5hp
+{
+       dpreflectcube cubemaps/default/sky
+       {
+               map models/items/5hp.tga
+               rgbgen lightingDiffuse
+       }
+}
+models/items/h25
+{
+       dpreflectcube cubemaps/default/sky
+       {
+               map models/items/h25.tga
+               rgbgen lightingDiffuse
+       }
+}
+models/items/red
+{
+       dpreflectcube cubemaps/default/sky
+       {
+               map models/items/red.tga
+               blendfunc filter
+               rgbgen lightingDiffuse
+       }
+}
+models/items/h50
+{
+       dpreflectcube cubemaps/default/sky
+       {
+               map models/items/h50.tga
+               rgbgen lightingDiffuse
+       }
+}
+models/items/h_mega
+{
+       dpreflectcube cubemaps/default/sky
+       {
+               map models/items/h_mega.tga
+               rgbgen lightingDiffuse
+       }
+}
\ No newline at end of file