diff --git a/source/src/entities.cpp b/source/src/entities.cpp index 35edd212..fc89207b 100644 --- a/source/src/entities.cpp +++ b/source/src/entities.cpp @@ -5,30 +5,33 @@ VARP(showclips, 0, 1, 1); VARP(showmodelclipping, 0, 0, 1); VARP(showladderentities, 0, 0, 1); -VARP(showplayerstarts, 0, 0, 1); +VARP(showplayerstarts, 0, 0, 1); // render player models with spawn-type appropriate skins (CLA:red,RVSF:blue,FFA:green) void toucheditingsettings(bool forcerestart){ - if(keepshowingeditingsettingsfrom == 0 || forcerestart) + if(showeditingsettings) { - keepshowingeditingsettingsfrom = lastmillis; - keepshowingeditingsettingstill = lastmillis + editingsettingsvisibletime; - } - else - { - int deltat_a = keepshowingeditingsettingstill - lastmillis; - int deltat_b = lastmillis - keepshowingeditingsettingsfrom; - int showfrac = editingsettingsvisibletime / 5; - if( deltat_b >= showfrac )// we ignore quick-changes inside the slide-in period + if(keepshowingeditingsettingsfrom == 0 || forcerestart) { - if( deltat_a <= showfrac )// changes in the slide-out period take that slide back and stay for almost the entire visibletime longer + keepshowingeditingsettingsfrom = lastmillis; + keepshowingeditingsettingstill = lastmillis + editingsettingsvisibletime; + } + else + { + int deltat_a = keepshowingeditingsettingstill - lastmillis; + int deltat_b = lastmillis - keepshowingeditingsettingsfrom; + int showfrac = editingsettingsvisibletime / 5; + if( deltat_b >= showfrac )// we ignore quick-changes inside the slide-in period { - keepshowingeditingsettingsfrom = lastmillis - deltat_a; + if( deltat_a <= showfrac )// changes in the slide-out period take that slide back and stay for almost the entire visibletime longer + { + keepshowingeditingsettingsfrom = lastmillis - deltat_a; + } + else // a touch during the regular showing duration + { + keepshowingeditingsettingsfrom = lastmillis - showfrac; + } + keepshowingeditingsettingstill = keepshowingeditingsettingsfrom + editingsettingsvisibletime; } - else // a touch during the regular showing duration - { - keepshowingeditingsettingsfrom = lastmillis - showfrac; - } - keepshowingeditingsettingstill = keepshowingeditingsettingsfrom + editingsettingsvisibletime; } } } diff --git a/source/src/renderhud.cpp b/source/src/renderhud.cpp index 5a4f59e0..a3b49761 100644 --- a/source/src/renderhud.cpp +++ b/source/src/renderhud.cpp @@ -968,7 +968,7 @@ void gl_drawhud(int w, int h, int curfps, int nquads, int curvert, bool underwat if(menu) rendermenu(); else if(command) { - int offsetx = 40 + (editmode ? ((showeditingsettings == 3 || keepshowingeditingsettingstill) ? VIRTW/4 : (showeditingsettings == 2 ? 2*VIRTW/32 : 0)) : 0); + int offsetx = 40 + ((editmode && (showeditingsettings >= 2 || keepshowingeditingsettingstill)) ? ((showeditingsettings == 2 && keepshowingeditingsettingstill == 0) ? 2*VIRTW/32 : VIRTW/4) : 0); renderdoc(offsetx, VIRTH, max(commandh*2 - VIRTH, 0)); }