
Breylimar Andreina Castillo Monsant
PreguntaAl completar la clase me sale una ventana con este error “Can`t add script component ´playerController´ because the script class cannot be found. Make sure that there are no compile errors and that the file name and class name match.” y no me deja realizar la animación del personaje, ¿alguien puede ayudarme o decirme como solucionarlo?
Este es mi codigo
using System.Collections; using System.Collections.Generic; using UnityEngine; public class PlayerController : MonoBehaviour { //Variables del movimiento del personaje public float jumpForce = 6f; public float runningSpeed = 2f; Rigidbody2D rigidBody; Animator animator; const string STATE_ALIVE = "isAlive"; const string STATE_ON_THE_GROUND = "isOnTheGround"; public LayerMask groundMask; void Awake() { rigidBody = GetComponent<Rigidbody2D>(); animator = GetComponent<Animator>(); } // Use this for initialization void Start() { animator.SetBool(STATE_ALIVE, true); animator.SetBool(STATE_ON_THE_GROUND, true); } // Update is called once per frame void Update() { if (Input.GetKeyDown(KeyCode.Space) || Input.GetMouseButtonDown(0)) { Jump(); } animator.SetBool(STATE_ON_THE_GROUND, IsTouchingTheGround()); Debug.DrawRay(this.transform.position, Vector2.down * 1.5f, Color.red); } void FixedUpdate() { if (rigidBody.velocity.x < runningSpeed) { rigidBody.velocity = new Vector2(runningSpeed, //x rigidBody.velocity.y //y ); } } void Jump() { if (IsTouchingTheGround()) { rigidBody.AddForce(Vector2.up * jumpForce, ForceMode2D.Impulse); } } //Nos indica si el personaje está o no tocando el suelo bool IsTouchingTheGround() { if (Physics2D.Raycast(this.transform.position, Vector2.down, 1.5f, groundMask)) { //TODO: programar lógica de contacto con el suelo return true; } else { //TODO: programar lógica de no contacto return false; } } }

Osmar Frausto
Suele pasar si es que tienes error de compilacion o lo mas comun, que el nombre del archivo no coincida con el de la public class, tiene que ser exactamente el mismo, si tiene espacios o algo que el programa no identifique los eliminara y asi ya no coincide, recomiendo que pongas un nombre del archivo sin espacios o numeros y que ese lo copies y peges en la public classs ejemplo: public class PlayerController : MonoBehaviour

Breylimar Andreina Castillo Monsant
He seguido el curso al pie de la letra y no se porque sale eso