From 1ef6ddadfd30be5f3671127c53c685a9ae4112d3 Mon Sep 17 00:00:00 2001 From: David Leal Date: Mon, 15 Mar 2021 21:08:01 -0600 Subject: [PATCH] Fix changing to the same class being treated as a change to a different class (#829) * Fix running cooldown when changing... ...to the same class. * Implement savilli's suggestion Co-authored-by: savilli * Move return and remove unneeded check * Completely remove an if check as now unneeded * Remove whitespace from empty line Co-authored-by: savilli Co-authored-by: LoneWolfHT --- mods/ctf/ctf_classes/api.lua | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/mods/ctf/ctf_classes/api.lua b/mods/ctf/ctf_classes/api.lua index e474ddf..e8fe5f3 100644 --- a/mods/ctf/ctf_classes/api.lua +++ b/mods/ctf/ctf_classes/api.lua @@ -73,16 +73,18 @@ function ctf_classes.set(player, new_name) local meta = player:get_meta() local old_name = meta:get("ctf_classes:class") + if old_name == new_name then + return + end + meta:set_string("ctf_classes:class", new_name) ctf_classes.update(player) ctf_classes.set_cooldown(player:get_player_name()) - if old_name == nil or old_name ~= new_name then - local old = old_name and ctf_classes.__classes[old_name] - for i=1, #registered_on_changed do - registered_on_changed[i](player, old, new) - end + local old = old_name and ctf_classes.__classes[old_name] + for i=1, #registered_on_changed do + registered_on_changed[i](player, old, new) end end