]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/weapons/w_tuba.qc
Merge branch 'master' into Mario/overkill
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / weapons / w_tuba.qc
index 238c561ac3f8f0d15b6a7a77c22964215ed29152..5b17893682904aa317533b2c8dccb6177fa71ddc 100644 (file)
@@ -22,17 +22,26 @@ REGISTER_WEAPON(
        w_cvar(id, sn, NONE, attenuation) \
        w_cvar(id, sn, NONE, damage) \
        w_cvar(id, sn, NONE, edgedamage) \
+       w_cvar(id, sn, NONE, fadetime) \
        w_cvar(id, sn, NONE, force) \
+       w_cvar(id, sn, NONE, pitchstep) \
        w_cvar(id, sn, NONE, radius) \
        w_cvar(id, sn, NONE, refire) \
+       w_cvar(id, sn, NONE, volume) \
        w_prop(id, sn, float,  switchdelay_raise, switchdelay_raise) \
        w_prop(id, sn, float,  switchdelay_drop, switchdelay_drop) \
        w_prop(id, sn, string, weaponreplace, weaponreplace) \
        w_prop(id, sn, float,  weaponstart, weaponstart) \
-       w_prop(id, sn, float,  weaponstartoverride, weaponstartoverride)
+       w_prop(id, sn, float,  weaponstartoverride, weaponstartoverride) \
+       w_prop(id, sn, float,  weaponthrowable, weaponthrowable)
 
 #ifdef SVQC
 TUBA_SETTINGS(WEP_ADD_CVAR, WEP_ADD_PROP)
+float W_Tuba_MarkClientOnlyFieldsAsUsed() {
+       // These variables are only used by client/tuba.qc. TODO: move client/tuba.qc code here.
+       return WEP_CVAR(tuba, fadetime) + WEP_CVAR(tuba, pitchstep) + WEP_CVAR(tuba, volume);
+}
+
 .entity tuba_note;
 .float tuba_smoketime;
 .float tuba_instrument;
@@ -44,7 +53,7 @@ TUBA_SETTINGS(WEP_ADD_CVAR, WEP_ADD_PROP)
 #endif
 #else
 #ifdef SVQC
-void spawnfunc_weapon_tuba (void) { weapon_defaultspawnfunc(WEP_TUBA); }
+void spawnfunc_weapon_tuba(void) { weapon_defaultspawnfunc(WEP_TUBA); }
 
 float W_Tuba_HasPlayed(entity pl, string melody, float instrument, float ignorepitch, float mintempo, float maxtempo)
 {
@@ -137,7 +146,7 @@ float W_Tuba_HasPlayed(entity pl, string melody, float instrument, float ignorep
        return TRUE;
 }
 
-void W_Tuba_NoteOff()
+void W_Tuba_NoteOff(void)
 {
        // we have a note:
        //   on: self.spawnshieldtime
@@ -272,7 +281,7 @@ float W_Tuba_NoteSendEntity(entity to, float sf)
        return TRUE;
 }
 
-void W_Tuba_NoteThink()
+void W_Tuba_NoteThink(void)
 {
        float dist_mult;
        float vol0, vol1;
@@ -336,7 +345,7 @@ void W_Tuba_NoteOn(float hittype)
                }
        }
 
-       if (!self.tuba_note)
+       if(!self.tuba_note)
        {
                self.tuba_note = spawn();
                self.tuba_note.owner = self.tuba_note.realowner = self;
@@ -381,15 +390,15 @@ float W_Tuba(float req)
                }
                case WR_THINK:
                {
-                       if (self.BUTTON_ATCK)
-                       if (weapon_prepareattack(0, WEP_CVAR(tuba, refire)))
+                       if(self.BUTTON_ATCK)
+                       if(weapon_prepareattack(0, WEP_CVAR(tuba, refire)))
                        {
                                W_Tuba_NoteOn(0);
                                //weapon_thinkf(WFRAME_FIRE1, autocvar_g_balance_tuba_animtime, w_ready);
                                weapon_thinkf(WFRAME_IDLE, WEP_CVAR(tuba, animtime), w_ready);
                        }
-                       if (self.BUTTON_ATCK2)
-                       if (weapon_prepareattack(1, WEP_CVAR(tuba, refire)))
+                       if(self.BUTTON_ATCK2)
+                       if(weapon_prepareattack(1, WEP_CVAR(tuba, refire)))
                        {
                                W_Tuba_NoteOn(HITTYPE_SECONDARY);
                                //weapon_thinkf(WFRAME_FIRE2, autocvar_g_balance_tuba_animtime, w_ready);
@@ -410,13 +419,13 @@ float W_Tuba(float req)
                }
                case WR_INIT:
                {
-                       precache_model ("models/weapons/g_tuba.md3");
-                       precache_model ("models/weapons/v_tuba.md3");
-                       precache_model ("models/weapons/h_tuba.iqm");
-                       precache_model ("models/weapons/v_akordeon.md3");
-                       precache_model ("models/weapons/h_akordeon.iqm");
-                       precache_model ("models/weapons/v_kleinbottle.md3");
-                       precache_model ("models/weapons/h_kleinbottle.iqm");
+                       precache_model("models/weapons/g_tuba.md3");
+                       precache_model("models/weapons/v_tuba.md3");
+                       precache_model("models/weapons/h_tuba.iqm");
+                       precache_model("models/weapons/v_akordeon.md3");
+                       precache_model("models/weapons/h_akordeon.iqm");
+                       precache_model("models/weapons/v_kleinbottle.md3");
+                       precache_model("models/weapons/h_kleinbottle.iqm");
                        TUBA_SETTINGS(WEP_SKIP_CVAR, WEP_SET_PROP)
                        return TRUE;
                }
@@ -483,7 +492,7 @@ float W_Tuba(float req)
                                return WEAPON_TUBA_MURDER;
                }
        }
-       return TRUE;
+       return FALSE;
 }
 #endif
 #ifdef CSQC
@@ -501,7 +510,7 @@ float W_Tuba(float req)
                }
        }
 
-       return TRUE;
+       return FALSE;
 }
 #endif
 #endif