]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/mutators/mutator/new_toys/new_toys.qc
Gametype Votescreen: Remove the _icon cvar for custom gametypes as it is not needed...
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / mutators / mutator / new_toys / new_toys.qc
index 236bb136f762c21ff573d940c73928db129d10b9..27d1795062cefb8c73275a4eabbb2cceef74643c 100644 (file)
@@ -110,8 +110,7 @@ const float NT_AUTOREPLACE_RANDOM = 2;
 
 MUTATOR_HOOKFUNCTION(nt, SetModname)
 {
-       modname = "NewToys";
-       return 0;
+       M_ARGV(0, string) = "NewToys";
 }
 
 bool nt_IsNewToy(int w)
@@ -122,6 +121,7 @@ bool nt_IsNewToy(int w)
                case WEP_MINE_LAYER.m_id:
                case WEP_HLAC.m_id:
                case WEP_RIFLE.m_id:
+               case WEP_SHOCKWAVE.m_id:
                        return true;
                default:
                        return false;
@@ -191,28 +191,30 @@ MUTATOR_HOOKFUNCTION(nt, SetStartItems)
        warmup_newdefault &= warmup_start_weapons_defaultmask;
        warmup_start_weapons &= ~warmup_start_weapons_defaultmask;
        warmup_start_weapons |= warmup_newdefault;
-
-       return 0;
 }
 
 MUTATOR_HOOKFUNCTION(nt, SetWeaponreplace)
-{SELFPARAM();
+{
+       entity wep = M_ARGV(0, entity);
+       entity wepinfo = M_ARGV(1, entity);
+       string ret_string = M_ARGV(2, string);
+
        // otherwise, we do replace
-       if(self.new_toys)
+       if(wep.new_toys)
        {
                // map defined replacement:
-               ret_string = self.new_toys;
+               ret_string = wep.new_toys;
        }
        else
        {
                // auto replacement:
-               ret_string = nt_GetReplacement(other.netname, autocvar_g_new_toys_autoreplace);
+               ret_string = nt_GetReplacement(wepinfo.netname, autocvar_g_new_toys_autoreplace);
        }
 
        // apply regular weaponreplace
        ret_string = W_Apply_Weaponreplace(ret_string);
 
-       return 0;
+       M_ARGV(2, string) = ret_string;
 }
 
 MUTATOR_HOOKFUNCTION(nt, FilterItem)
@@ -223,6 +225,5 @@ MUTATOR_HOOKFUNCTION(nt, FilterItem)
                item.item_pickupsound = string_null;
                item.item_pickupsound_ent = SND_WEAPONPICKUP_NEW_TOYS;
        }
-       return false;
 }
 #endif