From e2659d79a66c39c7c080b6813e2d7bf03cc9e950 Mon Sep 17 00:00:00 2001 From: jenz Date: Fri, 19 Jun 2026 16:12:01 +0200 Subject: [PATCH] fixed check so admin nominate still works --- .../scripting/mapchooser_extended_unloze.sp | 31 ++++++++++--------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/mapchooser_extended/scripting/mapchooser_extended_unloze.sp b/mapchooser_extended/scripting/mapchooser_extended_unloze.sp index c7e4af7..a8c7687 100755 --- a/mapchooser_extended/scripting/mapchooser_extended_unloze.sp +++ b/mapchooser_extended/scripting/mapchooser_extended_unloze.sp @@ -2211,22 +2211,25 @@ NominateResult InternalNominateMap(char[] map, int owner) /* Look to replace an existing nomination by this client - Nominations made with owner = 0 arent replaced */ //2023 edit: change clients first nomination out of the clients multiple nominations, make a check if client filled all his nomination slots //2026 edit: using tier to determine if 3 nominations or just 1 - int tier_required = GetConVarInt(g_Cvar_MultipleNominationsTier); - int client_tier = GetPlayerTier_native(owner); - int nom_capacity = tier_required > client_tier ? 0 : 2; //1 nomination or 3 nominations. - - if(owner && GetArraySize(g_NominateList[owner]) > nom_capacity) + if (owner) { - char oldmap[PLATFORM_MAX_PATH]; - GetArrayString(g_NominateList[owner], 0, oldmap, PLATFORM_MAX_PATH); - Call_StartForward(g_NominationsResetForward); - Call_PushString(oldmap); - Call_PushCell(owner); - Call_Finish(); + int tier_required = GetConVarInt(g_Cvar_MultipleNominationsTier); + int client_tier = GetPlayerTier_native(owner); + int nom_capacity = tier_required > client_tier ? 0 : 2; //1 nomination or 3 nominations. - RemoveFromArray(g_NominateList[owner], 0); - PushArrayString(g_NominateList[owner], map); - return Nominate_Replaced; + if(GetArraySize(g_NominateList[owner]) > nom_capacity) + { + char oldmap[PLATFORM_MAX_PATH]; + GetArrayString(g_NominateList[owner], 0, oldmap, PLATFORM_MAX_PATH); + Call_StartForward(g_NominationsResetForward); + Call_PushString(oldmap); + Call_PushCell(owner); + Call_Finish(); + + RemoveFromArray(g_NominateList[owner], 0); + PushArrayString(g_NominateList[owner], map); + return Nominate_Replaced; + } } if (owner != 0 && g_NominateList[owner] != INVALID_HANDLE)