If two attackers spawns or dies at exactly the same instant, is there not a risk of two thread trying to access the numberOfAttackers variable in the LevelController simultaneously?
Would it be appropriate to implement a lock around the code that increments / decrements the value?