diff --git a/r5dev/core/resource.h b/r5dev/core/resource.h index 7636f872..4b904e59 100644 --- a/r5dev/core/resource.h +++ b/r5dev/core/resource.h @@ -31,6 +31,8 @@ #define IDB_PNG27 127 #define IDB_PNG28 128 #define IDB_PNG29 129 +#define IDB_PNG30 130 +#define IDB_PNG31 131 #define DEV 256 #define PNG 256 diff --git a/r5dev/gameui/IConsole.cpp b/r5dev/gameui/IConsole.cpp index d41da269..535c80d2 100644 --- a/r5dev/gameui/IConsole.cpp +++ b/r5dev/gameui/IConsole.cpp @@ -668,8 +668,8 @@ bool CConsole::LoadFlagIcons(void) { bool ret = false; - // Get all image resources for displaying flags. - for (int i = IDB_PNG3, k = NULL; i <= IDB_PNG29; i++, k++) + // Get all flag image resources for displaying flags. + for (int i = IDB_PNG3, k = NULL; i <= IDB_PNG31; i++, k++) { m_vFlagIcons.push_back(MODULERESOURCE(GetModuleResource(i))); MODULERESOURCE& rFlagIcon = m_vFlagIcons[k]; @@ -692,47 +692,47 @@ int CConsole::GetFlagTextureIndex(int nFlags) const switch (nFlags) // All indices for single/dual flag textures. { case FCVAR_DEVELOPMENTONLY: - return 7; - case FCVAR_GAMEDLL: - return 8; - case FCVAR_CLIENTDLL: return 9; - case FCVAR_REPLICATED: + case FCVAR_GAMEDLL: return 10; - case FCVAR_CHEAT: + case FCVAR_CLIENTDLL: return 11; - case FCVAR_RELEASE: + case FCVAR_REPLICATED: return 12; - case FCVAR_MATERIAL_SYSTEM_THREAD: + case FCVAR_CHEAT: return 13; - case FCVAR_DEVELOPMENTONLY | FCVAR_GAMEDLL: + case FCVAR_RELEASE: return 14; - case FCVAR_DEVELOPMENTONLY | FCVAR_CLIENTDLL: + case FCVAR_MATERIAL_SYSTEM_THREAD: return 15; - case FCVAR_DEVELOPMENTONLY | FCVAR_REPLICATED: + case FCVAR_DEVELOPMENTONLY | FCVAR_GAMEDLL: return 16; - case FCVAR_DEVELOPMENTONLY | FCVAR_CHEAT: + case FCVAR_DEVELOPMENTONLY | FCVAR_CLIENTDLL: return 17; - case FCVAR_DEVELOPMENTONLY | FCVAR_MATERIAL_SYSTEM_THREAD: + case FCVAR_DEVELOPMENTONLY | FCVAR_REPLICATED: return 18; - case FCVAR_REPLICATED | FCVAR_CHEAT: + case FCVAR_DEVELOPMENTONLY | FCVAR_CHEAT: return 19; - case FCVAR_REPLICATED | FCVAR_RELEASE: + case FCVAR_DEVELOPMENTONLY | FCVAR_MATERIAL_SYSTEM_THREAD: return 20; - case FCVAR_GAMEDLL | FCVAR_CHEAT: + case FCVAR_REPLICATED | FCVAR_CHEAT: return 21; - case FCVAR_GAMEDLL | FCVAR_RELEASE: + case FCVAR_REPLICATED | FCVAR_RELEASE: return 22; - case FCVAR_CLIENTDLL | FCVAR_CHEAT: + case FCVAR_GAMEDLL | FCVAR_CHEAT: return 23; - case FCVAR_CLIENTDLL | FCVAR_RELEASE: + case FCVAR_GAMEDLL | FCVAR_RELEASE: return 24; - case FCVAR_MATERIAL_SYSTEM_THREAD | FCVAR_CHEAT: + case FCVAR_CLIENTDLL | FCVAR_CHEAT: return 25; - case FCVAR_MATERIAL_SYSTEM_THREAD | FCVAR_RELEASE: + case FCVAR_CLIENTDLL | FCVAR_RELEASE: return 26; + case FCVAR_MATERIAL_SYSTEM_THREAD | FCVAR_CHEAT: + return 27; + case FCVAR_MATERIAL_SYSTEM_THREAD | FCVAR_RELEASE: + return 28; - default: // Hit when flag is non-indexed or 3+ bits are set. + default: // Hit when flag is zero/non-indexed or 3+ bits are set. int v = __popcnt(nFlags); switch (v) @@ -746,15 +746,20 @@ int CConsole::GetFlagTextureIndex(int nFlags) const // If 3 or more bits are set, we test the flags // and display the appropriate checker texture. bool mul = v > 2; - int ret = NULL; if (nFlags & FCVAR_DEVELOPMENTONLY) { - return ret = mul ? 4 : 3; + return mul ? 4 : 3; } else if (nFlags & FCVAR_CHEAT) { - return ret = mul ? 6 : 5; + return mul ? 6 : 5; + } + else if (nFlags & FCVAR_RELEASE && // RELEASE command but no context restriction. + !(nFlags & FCVAR_SERVER_CAN_EXECUTE) && + !(nFlags & FCVAR_CLIENTCMD_CAN_EXECUTE)) + { + return mul ? 8 : 7; } // Rainbow checker texture (user needs to manually check flags). diff --git a/r5dev/resource/png/vf_release_unknown.png b/r5dev/resource/png/vf_release_unknown.png new file mode 100644 index 00000000..ea9bc5a9 Binary files /dev/null and b/r5dev/resource/png/vf_release_unknown.png differ diff --git a/r5dev/resource/png/vf_release_unknown_e.png b/r5dev/resource/png/vf_release_unknown_e.png new file mode 100644 index 00000000..4414dbcc Binary files /dev/null and b/r5dev/resource/png/vf_release_unknown_e.png differ diff --git a/r5dev/resource/r5dev.rc b/r5dev/resource/r5dev.rc index be5eaad0..50759fcc 100644 --- a/r5dev/resource/r5dev.rc +++ b/r5dev/resource/r5dev.rc @@ -62,26 +62,28 @@ IDB_PNG6 PNG "png\\vf_developmentonly_unknown IDB_PNG7 PNG "png\\vf_developmentonly_unknown_e.png" IDB_PNG8 PNG "png\\vf_cheat_unknown.png" IDB_PNG9 PNG "png\\vf_cheat_unknown_e.png" -IDB_PNG10 PNG "png\\vf_developmentonly.png" -IDB_PNG11 PNG "png\\vf_gamedll.png" -IDB_PNG12 PNG "png\\vf_clientdll.png" -IDB_PNG13 PNG "png\\vf_replicated.png" -IDB_PNG14 PNG "png\\vf_cheat.png" -IDB_PNG15 PNG "png\\vf_release.png" -IDB_PNG16 PNG "png\\vf_msthread.png" -IDB_PNG17 PNG "png\\vf_developmentonly_gamedll.png" -IDB_PNG18 PNG "png\\vf_developmentonly_clientdll.png" -IDB_PNG19 PNG "png\\vf_developmentonly_replicated.png" -IDB_PNG20 PNG "png\\vf_developmentonly_cheat.png" -IDB_PNG21 PNG "png\\vf_developmentonly_msthread.png" -IDB_PNG22 PNG "png\\vf_replicated_cheat.png" -IDB_PNG23 PNG "png\\vf_replicated_release.png" -IDB_PNG24 PNG "png\\vf_gamedll_cheat.png" -IDB_PNG25 PNG "png\\vf_gamedll_release.png" -IDB_PNG26 PNG "png\\vf_clientdll_cheat.png" -IDB_PNG27 PNG "png\\vf_clientdll_release.png" -IDB_PNG28 PNG "png\\vf_msthread_cheat.png" -IDB_PNG29 PNG "png\\vf_msthread_release.png" +IDB_PNG10 PNG "png\\vf_release_unknown.png" +IDB_PNG11 PNG "png\\vf_release_unknown_e.png" +IDB_PNG12 PNG "png\\vf_developmentonly.png" +IDB_PNG13 PNG "png\\vf_gamedll.png" +IDB_PNG14 PNG "png\\vf_clientdll.png" +IDB_PNG15 PNG "png\\vf_replicated.png" +IDB_PNG16 PNG "png\\vf_cheat.png" +IDB_PNG17 PNG "png\\vf_release.png" +IDB_PNG18 PNG "png\\vf_msthread.png" +IDB_PNG19 PNG "png\\vf_developmentonly_gamedll.png" +IDB_PNG20 PNG "png\\vf_developmentonly_clientdll.png" +IDB_PNG21 PNG "png\\vf_developmentonly_replicated.png" +IDB_PNG22 PNG "png\\vf_developmentonly_cheat.png" +IDB_PNG23 PNG "png\\vf_developmentonly_msthread.png" +IDB_PNG24 PNG "png\\vf_replicated_cheat.png" +IDB_PNG25 PNG "png\\vf_replicated_release.png" +IDB_PNG26 PNG "png\\vf_gamedll_cheat.png" +IDB_PNG27 PNG "png\\vf_gamedll_release.png" +IDB_PNG28 PNG "png\\vf_clientdll_cheat.png" +IDB_PNG29 PNG "png\\vf_clientdll_release.png" +IDB_PNG30 PNG "png\\vf_msthread_cheat.png" +IDB_PNG31 PNG "png\\vf_msthread_release.png" #endif // English (United States) resources /////////////////////////////////////////////////////////////////////////////