내일배움캠프 TIL

내일배움캠프 34일차 TIL "No script asset for~"

Jooglorystar 2024. 10. 31. 21:58

 

 

아이템 정보를 담은 Scriptable Object를 생성하던 중 다음과 같은 경고코드가 발생하였다.

 

No script asset for MeleeEquipItemSO. Check that the definition is in a file of the same name and that it compiles properly.

 

원인은 나는 하나의 스크립트 안에 두개의 SO를 작성해서 생긴 문제였다. 

즉 한 스크립트에 다음과 같이 작성했다.

 

[CreateAssetMenu(fileName = "ItemSO", menuName = "ItemDefaultSO", order = 0)]
public class ItemSO : ScriptableObject
{
	// 내용 생략
}

[CreateAssetMenu(fileName = "EquipItemSO", menuName = "MeleeDefaultSO", order = 1)]
public class MeleeEquipItemSO : ItemSO
{
	// 내용 생략
}

 

이 상태로도 생성이 되긴 했지만 경고코드가 발생했었다.

 

해당 Scriptable Object를 별도의 코드로 분리하는 거로 간단하게 해결 되었다.

Scriptable Object 내에서 Enum이나 별도의 클래스들을 필드로 이용하면서, 무의식 중에 Scriptable Object가 별도의 스크립트가 필요하지 않을 것이라 생각했던 것 같다.