Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите с ошибкой CS0103 на юнити

Рома Ахмедов Ученик (113), на голосовании 3 месяца назад
(30,10) error CS0103 the name _isMoving does not exist in the current context
(36,32) error CS0103 the name _isMoving does not exist in the current context


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

public class NewBehaviourScript : MonoBehaviour
{
[SerializeField] private float _speed;

private Vector3 _input;

private Rigidbody2D _rigidbody;
private AnimatiosScript _animations;
[SerializeField] private SpriteRenderer _characterSprite;

private void Start()
{
_rigidbody = GetComponent<Rigidbody2D>();
_animations = GetComponentInChildren<AnimatiosScript>();
}

// Update is called once per frame
private void FixedUpdate()
{
Move();
}
private void Move()
{
_input = new Vector2(Input.GetAxis("Horizontal"), 0);
transform.position += _input * _speed * Time.deltaTime;
_isMoving = _input.x != 0 ? true : false;

if (_input.x != 0)
{
_characterSprite.flipX = _input.x > 0 ? false : true;
}
_animations.IsMoving = _isMoving;
}
}
Голосование за лучший ответ
Роман Данилов Мудрец (10915) 4 месяца назад
Попробуйте объявить _isMoving явно и посмотреть, что выйдет.
Jurijus Zaksas Искусственный Интеллект (445776) 4 месяца назад
  1. Таки _isMoving нигде не описано.
  2. С подчеркивания принято в некоторых нотациях начинать формальные параметры. Ты же зачем-то начинаешь так любую переменную.
  3. Тернарный оператор, возвращающий булевское значение - это сильный заход. Это посильнее "Фауста" Гёте будет.
Максим Искусственный Интеллект (213244) 4 месяца назад
Не объявлена у тебя переменная. Я бы рекомендовал начать изучать программирование с самых основ, а не с юнити.
Похожие вопросы