Хочу сделать анимацию для игры. Возникла ошибка: NullReferenceException: Object reference not set to an instance of an object Upravlenie.set_State (CharState value) (at Assets/Upravlenie.cs:20). Вот код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Upravlenie : MonoBehaviour {
public float horizontalSpeed;
float speedX;
public float verticalImpulse;
Rigidbody2D rb;
bool isGrounded;
bool Running = false;
private Animator animator;
private CharState State
{
get { return (CharState)animator.GetInteger("State"); }
set { animator.SetInteger("State", (int)value); }
}
void Start () {
rb = GetComponent<Rigidbody2D>();
}
private void Flip()
{
isFacingRight = !isFacingRight;
Vector3 theScale = transform.localScale;
theScale.x *= -1;
transform.localScale = theScale;
}
public void LeftButtonDown()
{
speedX = -horizontalSpeed;
if (isGrounded) State = CharState.Run;
}
public void RightButtonDown()
{ speedX = horizontalSpeed;
if (isGrounded) State = CharState.Run;
}
public void Stop()
{
speedX = 0;
}
public void OnClickJump()
{
if (isGrounded)
rb.AddForce(new Vector2(0, verticalImpulse), ForceMode2D.Impulse);
if (!isGrounded) State = CharState.Jump;
}
void FixedUpdate()
{
transform.Translate(speedX, 0, 0);
if (isGrounded) State = CharState.Idle;
}
private void OnCollisionEnter2D(Collision2D collision)
{
if (collision.gameObject.tag == "Ground")
isGrounded = true;
}
private void OnCollisionExit2D(Collision2D collision)
{
if (collision.gameObject.tag == "Ground")
isGrounded = false;
}
}
public enum CharState
{
Idle,
Run,
Jump
}
Сому анимацию ТОЧНО сделал правильно
Мне нужна помощь взаимодействия анимации с кодом. Прошу помочь. P.S. Управление сделал через кнопки Button и добавил компонент event triger


animator = GetComponent<Animator>();– Алексей Шиманский Aug 13 '17 at 12:07FixedUpdateпрописаноif (isGrounded) State = CharState.Idle;и возможно когда персонаж на земле, то это действие отрабатывается много раз в секунду, в итоге оно постоянно стремится вIdle; – Алексей Шиманский Aug 13 '17 at 13:12