]> git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/commitdiff
Merge remote branch 'origin/master' into samual/updatecommands
authorSamual <samual@xonotic.org>
Sun, 1 Jan 2012 20:19:01 +0000 (15:19 -0500)
committerSamual <samual@xonotic.org>
Sun, 1 Jan 2012 20:19:01 +0000 (15:19 -0500)
defaultXonotic.cfg
qcsrc/client/autocvars.qh
qcsrc/client/csqcmodel_hooks.qc
qcsrc/menu/xonotic/dialog_multiplayer_playersetup.c

index a1d2520257a36c634660de03157b39c020c30f39..1cf2a2826473cd276b749476bdb867421844e988 100644 (file)
@@ -1765,7 +1765,8 @@ set waypoint_benchmark 0 "quit after waypoint loading to benchmark bot navigatio
 set g_debug_bot_commands 0 "print scripted bot commands before executing"
 set g_debug_defaultsounds 0 "always use default sounds"
 set sv_use_csqc_players 1 "set to 0 to disable CSQC players for better Xonotic 0.5 compat"
-set cl_forceplayermodels 0 "set to 1 to make everyone look like yourself (requires server to have sv_use_csqc_players 1)"
+set cl_forceplayermodels 0 "set to 1 to make everyone look like your own model (requires server to have sv_use_csqc_players 1 and sv_defaultcharacter 0)"
+set cl_forceplayercolors 0 "set to 1 to make everyone look like your own color (requires server to have sv_use_csqc_players 1 and sv_defaultcharacter 0, and is ignored in teamplay)"
 set cl_precacheplayermodels 0 "TODO please check if this needs to be 1 or if precaching a model the server already requested is fast enough to do it at runtime"
 
 // debug cvars for keyhunt attaching
index d829904631ab0cf20e04d1fe5ffdea4b7b541ad4..489f79dd4204941d8c83954a1cc3e93807e7321f 100644 (file)
@@ -377,6 +377,7 @@ float autocvar_cl_playerdetailreduction;
 float autocvar_cl_loddistance1 = 1024;
 float autocvar_cl_loddistance2 = 4096;
 float autocvar_cl_forceplayermodels;
+float autocvar_cl_forceplayercolors;
 float autocvar__cl_playerskin;
 string autocvar__cl_playermodel;
 float autocvar_cl_precacheplayermodels;
index 145218bce75f2b3b6abe08e8ed10b5c1c992d0b0..12cae8eef8790fd305516e080d4a348530523136 100644 (file)
@@ -78,17 +78,20 @@ float forceplayermodels_attempted;
 .string forceplayermodels_savemodel;
 .float forceplayermodels_savemodelindex;
 .float forceplayermodels_saveskin;
+.float forceplayermodels_savecolormap;
 void CSQCPlayer_ForceModel_PreUpdate(void)
 {
        self.model = self.forceplayermodels_savemodel;
        self.modelindex = self.forceplayermodels_savemodelindex;
        self.skin = self.forceplayermodels_saveskin;
+       self.colormap = self.forceplayermodels_savecolormap;
 }
 void CSQCPlayer_ForceModel_PostUpdate(void)
 {
        self.forceplayermodels_savemodel = self.model;
        self.forceplayermodels_savemodelindex = self.modelindex;
        self.forceplayermodels_saveskin = self.skin;
+       self.forceplayermodels_savecolormap = self.colormap;
 }
 void CSQCPlayer_ForceModel_Apply(float islocalplayer)
 {
@@ -133,6 +136,11 @@ void CSQCPlayer_ForceModel_Apply(float islocalplayer)
                self.modelindex = self.forceplayermodels_savemodelindex;
                self.skin = self.forceplayermodels_saveskin;
        }
+
+       // forceplayercolors too
+       if(!teamplay)
+               if(autocvar_cl_forceplayercolors)
+                       self.colormap = player_localnum + 1;
 }
 
 // FEATURE: fallback frames
index d4211de0b28a94a908a4cc095b8d53ddecc5ac2f..fde65aa5e338d1664cf44b397875f0ba284ac260 100644 (file)
@@ -64,13 +64,13 @@ void XonoticPlayerSettingsTab_fill(entity me)
                me.TD(me, 1, 0.3, e = makeXonoticButton("<<", '0 0 0'));
                        e.onClick = PlayerModelSelector_Prev_Click;
                        e.onClickEntity = pms;
-               me.TD(me, me.rows - me.currentRow - 2, 1.8, pms);
+               me.TD(me, me.rows - (me.currentRow + 3), 1.8, pms);
                me.TD(me, 1, 0.3, e = makeXonoticButton(">>", '0 0 0'));
                        e.onClick = PlayerModelSelector_Next_Click;
                        e.onClickEntity = pms;
        me.TR(me);
                r = me.currentRow;
-               m = me.rows - r - 3;
+               m = me.rows - (r + 4);
                n = 16 - !cvar("developer");
                m = m / (n - 1);
                for(i = 0; i < n; ++i)
@@ -83,8 +83,10 @@ void XonoticPlayerSettingsTab_fill(entity me)
                        me.gotoRC(me, r + i * m, 0.4);
                        me.TDNoMargin(me, m, 0.2, e = makeXonoticColorButton(2, 1, i), '0 1 0');
                }
-       me.gotoRC(me, me.rows - 2, 0);
+       me.gotoRC(me, me.rows - 3, 0);
                me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_forceplayermodels", _("Force player models to mine")));
+       me.TR(me);
+               me.TD(me, 1, 3, e = makeXonoticCheckBox(0, "cl_forceplayercolors", _("Force player colors to mine")));
 
        me.gotoRC(me, 0, 3.5); me.setFirstColumn(me, me.currentColumn);
                me.TD(me, 1, 1, e = makeXonoticTextLabel(0, _("Field of view:")));