]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/server/mutators/mutator_new_toys.qc
Rename minstanex to vaporizer
[xonotic/xonotic-data.pk3dir.git] / qcsrc / server / mutators / mutator_new_toys.qc
index 6ee3e87b3c193e52354dd4e9e40301a8b6a756fc..4a891e59f76033d29de0635ee8971174dc33ba2a 100644 (file)
@@ -1,10 +1,10 @@
 /*
 
 CORE    laser   nex     lg      rl      cry     gl      elec    hagar   fireb   hook
-                                                                       minsta  porto
+                                                                       vaporizer  porto
                                                                        tuba
 
-NEW             rifle   hlac    minel                           seeker   
+NEW             rifle   hlac    minel                           seeker
 IDEAS                                   OPEN    flak    OPEN            FUN FUN FUN FUN
 
 
@@ -87,6 +87,7 @@ float nt_IsNewToy(float w)
                case WEP_MINE_LAYER:
                case WEP_HLAC:
                case WEP_RIFLE:
+               case WEP_SHOTGUN:
                        return TRUE;
                default:
                        return FALSE;
@@ -101,6 +102,7 @@ string nt_GetFullReplacement(string w)
                case "rocketlauncher": return "minelayer";
                case "uzi": return "hlac";
                case "nex": return "rifle";
+               case "shockwave": return "shotgun";
                default: return string_null;
        }
 }
@@ -110,7 +112,7 @@ string nt_GetReplacement(string w, float m)
        if(m == NT_AUTOREPLACE_NEVER)
                return w;
        string s = nt_GetFullReplacement(w);
-       if not(s)
+       if (!s)
                return w;
        if(m == NT_AUTOREPLACE_RANDOM)
                s = strcat(w, " ", s);
@@ -125,11 +127,11 @@ MUTATOR_HOOKFUNCTION(nt_SetStartItems)
 
        float i, j, k, n;
 
-       WEPSET_DECLARE_A(newdefault);
-       WEPSET_DECLARE_A(warmup_newdefault);
-       
-       WEPSET_CLEAR_A(newdefault);
-       WEPSET_CLEAR_A(warmup_newdefault);
+       WepSet newdefault;
+       WepSet warmup_newdefault;
+
+       newdefault = '0 0 0';
+       warmup_newdefault = '0 0 0';
 
        for(i = WEP_FIRST; i <= WEP_LAST; ++i)
        {
@@ -143,20 +145,20 @@ MUTATOR_HOOKFUNCTION(nt_SetStartItems)
                        for(k = WEP_FIRST; k <= WEP_LAST; ++k)
                                if(get_weaponinfo(k).netname == argv(j))
                                {
-                                       if(WEPSET_CONTAINS_AW(start_weapons, i))
-                                               WEPSET_OR_AW(newdefault, k);
-                                       if(WEPSET_CONTAINS_AW(warmup_start_weapons, i))
-                                               WEPSET_OR_AW(warmup_newdefault, k);
+                                       if(start_weapons & WepSet_FromWeapon(i))
+                                               newdefault |= WepSet_FromWeapon(k);
+                                       if(warmup_start_weapons & WepSet_FromWeapon(i))
+                                               warmup_newdefault |= WepSet_FromWeapon(k);
                                }
        }
 
-       WEPSET_AND_AA(newdefault, start_weapons_defaultmask);
-       WEPSET_ANDNOT_AA(start_weapons, start_weapons_defaultmask);
-       WEPSET_OR_AA(start_weapons, newdefault);
+       newdefault &= start_weapons_defaultmask;
+       start_weapons &= ~start_weapons_defaultmask;
+       start_weapons |= newdefault;
 
-       WEPSET_AND_AA(warmup_newdefault, warmup_start_weapons_defaultmask);
-       WEPSET_ANDNOT_AA(warmup_start_weapons, warmup_start_weapons_defaultmask);
-       WEPSET_OR_AA(warmup_start_weapons, warmup_newdefault);
+       warmup_newdefault &= warmup_start_weapons_defaultmask;
+       warmup_start_weapons &= ~warmup_start_weapons_defaultmask;
+       warmup_start_weapons |= warmup_newdefault;
 
        return 0;
 }
@@ -184,7 +186,7 @@ MUTATOR_HOOKFUNCTION(nt_SetWeaponreplace)
 MUTATOR_HOOKFUNCTION(nt_FilterItem)
 {
        if(nt_IsNewToy(self.weapon))
-               self.item_pickupsound = "weapons/weaponpickup_new_toys.ogg";
+               self.item_pickupsound = "weapons/weaponpickup_new_toys.wav";
        return 0;
 }
 
@@ -200,13 +202,13 @@ MUTATOR_DEFINITION(mutator_new_toys)
                if(time > 1) // game loads at time 1
                        error("This cannot be added at runtime\n");
 
-               precache_sound("weapons/weaponpickup_new_toys.ogg");
+               precache_sound("weapons/weaponpickup_new_toys.wav");
 
                // mark the guns as ok to use by e.g. impulse 99
                float i;
                for(i = WEP_FIRST; i <= WEP_LAST; ++i)
                        if(nt_IsNewToy(i))
-                               get_weaponinfo(i).spawnflags &~= WEP_FLAG_MUTATORBLOCKED;
+                               get_weaponinfo(i).spawnflags &= ~WEP_FLAG_MUTATORBLOCKED;
        }
 
        MUTATOR_ONROLLBACK_OR_REMOVE