Actually quite surprised of the quality, though might I suggest simply not scheduling a new tasktimer each time you put a tag, and Instead simply make a new function called, checkTagFor(Player player) that will check if their cooldown has run out, and if yes remove them and return true, else return false. Then rely on that method?