Cómo solucionar el error: «Can’t Add Script» en Unity

Introducción

En este artículo vemos cuáles son las causas del error «Can’t Add Script» en Unity con el fin de entender por qué se produce y así identificar qué acciones tomar para resolverlo.

En el siguiente vídeo vemos cómo solucionar error «CAN’T ADD SCRIPT» en Unity


Por qué se produce el error «Can’t Add Script» en Unity

Este error en el que no se nos permite añadir un Script o componente a un GameObject puede surgir por dos motivos.

Caso 1: El nombre del Script y de la clase que define no coincide

El primero es que el nombre del Script, es decir el nombre del archivo con extensión «.cs» no coincide con el nombre de la clase de programación que está definida en su interior. Esto suele pasar cuando creamos un Script y luego le cambiamos el nombre al archivo sin hacer un proceso de Refactorización.

Para solucionar este problema primero hay que identificar el Script que tiene conflictos, esto lo podemos hacer con la información que nos proporciona la ventana del error «Can’t Add Script» que aparece cuando intentamos añadir el Script con conflictos a un GameObject. Si no se recuerda cuál fue el Script que produjo el error, se puede crear un Empty GameObject y comenzar a añadir cada uno de los Scripts hasta que aparezca el error.

Una vez que se sabe cuál es el Script que genera el error «Can’t Add Script» lo abrimos y ubicamos la parte de la definición de la clase, la cual empieza de la siguiente manera:

public class NombreDeLaClase …

El nombre de la clase es el nombre que tiene que coincidir con el del archivo, así que lo que se puede hacer es modificar el nombre de la clase para que sea igual al del archivo, o modificar el nombre del archivo para que sea igual al de la clase.

Una vez que este problema se resuelve será posible añadir el Script a un GameObject. Si se necesita cambiarle el nombre al Script la mejor manera es hacer clic derecho en el «NombreDeLaClase» y poner «Rename», esto hará que Unity modifique ese nombre en todos los lugares en donde se utilice ese Script.

Caso 2: El Script fue creado en presencia de errores en consola

La segunda razón por la que ocurre el error «Can’t Add Script» en Unity es cuando se crean nuevos Scripts mientras hay errores en consola, en general se trata de errores de sintaxis (errores en la escritura del código). El motivo en este caso es que si hay errores en consola, Unity no puede compilar, por lo tanto si creamos un nuevo Script en este punto, por más que el archivo se haya creado, no se puede añadir la clase de programación al motor, en otras palabras Unity no sabrá que este Script existe hasta que no pueda compilar.

La solución en este caso es resolver todos los errores que haya en consola, esto hará que Unity compile y pueda registrar el nuevo Script. A partir de ese punto se podrá asignar el Script a un GameObject.

Scroll al inicio
Secured By miniOrange