Как после столкновением с коллайдером перестать двигаться и остановить счёт?

Кое-как я смог реализовать подсчёт счёта и движение по бокам. Но возникла проблема: после "смерти" персонажа счёт продолжает идти, пока не перезапустится уровень, и, хоть я и прекратил движение прямо, по бокам я не смог от него избавиться. Выходит так, что после того как я врезался, счёт продолжает начисляться и ещё я имею возможность просто перемещать игрока вправо/влево.
Как сделать после столкновение с коллайдером остановку счёта и убрать возможность передвигать персонажа влево/вправо?

Необходимый код для понимания:
spoiler
// Начисление счёта
    private float timerScore = 0.1f;
    private float timerScore_;
    void Start()
    {
        timerScore_ = timerScore;
    }
    void Update()
    {
        score.text = "" + scoreCounter; // выводит счёт
    }
    void FixedUpdate() {
        if (timerScore > 0) {
            timerScore -= Time.deltaTime;
        }
        else {
            timerScore = timerScore_;
            instance.AddScore(); //прибавляем счёт
        }
    }
    public void AddScore() {
        scoreCounter++;
    }

//Движение персонажа вбок
    Ray ray = cam.ScreenPointToRay(Input.mousePosition);
    if (Input.GetKey(KeyCode.Mouse0))
        {
            transform.position = Vector3.MoveTowards(transform.position, new Vector3(transform.position.x, 
            transform.position.y, ray.origin.z), mouseSpeed * Time.deltaTime);
        }

//Реализация столкновение игрока с коллайдером
    void OnCollisionEnter(Collision wall) {
        if (wall.gameObject.tag == "Respawn") { // check whether you hit the wall
        animator.SetTrigger("death");
        ResetSpeed();
        ResetMove();
        Invoke("ReloadLevel", 2.5f); // reload level in 2.5s
        }
    }
    void ResetSpeed() {
        zSpeed = 0;
    }
    void ResetMove() {
       //Здесь хотел реализовать прекращение движение вправо/влево, возможно, не правильно
    }

  • Вопрос задан
  • 143 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы