Страница 1 из 1

Подсчет очков

СообщениеДобавлено: 09 янв 2021, 10:29
Sarmat
Добрый день. Возникла проблема. Добавляю подсчет очков в игру. Сделал так, что бы при смерти подсчет очков останавливался. Это реализовано успешно. Зато теперь, когда происходит рестарт, то подсчет очков вообще не работает - постоянно "0". Ниже код. Если убираю строчки, выделенные жирным, то при смерти счет очков продолжается, зато когда начинаю игру заново, то подсчет идет как надо, с нуля. При чем, если первый раз запускаю игру из главного меню, то все норм, а если после смерти возвращаюсь в гланое меню, а оттуда опять начинаю новую игру, то подсчет снова не работает. В чем может быть проблема?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class Score : MonoBehaviour{
public int Score_Player;
public Text txt;
private float timer;
public static bool lose = false;
// Start is called before the first frame update
void Start()
{

}

// Update is called once per frame
void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.tag == "Asteroid")
{
lose = true;
}
}

void Update()
{
txt.text = "Счет: " + Score_Player;
if (lose == false) {
timer += 1 * Time.deltaTime;
if (timer > 1) {
Score_Player += 1;
timer = 0;
}
}
}


}

Re: Подсчет очков

СообщениеДобавлено: 09 янв 2021, 12:17
samana
Sarmat писал(а):когда происходит рестарт

Вы уверены, что после рестарта, ваша переменная lose устанавливается обратно в false?