Вот опция, которая делает игрока неуязвимым после того, как его нажмут на заданное время:
A. Создайте переменную, которая заставит игрока неуязвимо потерять жизнь после удара в течение нескольких секунд.
if(self.isInvuln == FALSE){
self.player.lives-=1;
self.isInvuln = True;}
if(self.isInvuln==True){
self.invulnTime += timeSinceLast;}
if (self.invulnTime > 3) {
self.isInvuln = FALSE:}
self.invulnTime= 0;
Это сделает так, что когда враг и игрок столкнутся, игрок теряет жизнь и становится неуязвимым 3 секунды. Через 3 секунды игрок может снова получить урон. Если враг связывается с игроком в течение 3 неуязвимых секунд, метод контакта ничего не делает. Надеюсь, это поможет искусить идеи для решения вашей проблемы.