- Home /
The question is answered, right answer was accepted
Cannot see serialized object's fields in Inspector
Hi!
I am using Serialized Objects in my script and Custom Editor for them. Sadly, I cannot access the SO's fields when accessing the script via Inspector. It is only allowing me to pass the Serialized Object which is not ideal and as far as I'm concerned not even possible.
Can you help me?
My code:
public class Card : ScriptableObject
{
[Header("Properties")]
public new string Name;
[Multiline] public string Description;
public bool ShowStats = false;
[Header("Stats")]
public int Health;
public int Damage;
[Header("Visuals")]
public Image Graphic;
}
[CustomEditor(typeof(Card))]
public class CardEditor : Editor
{
Card card;
public void OnEnable()
{
card = (Card)target;
}
public override void OnInspectorGUI()
{
card.Name = EditorGUILayout.TextField(card.Name, GUIStyle.none, null);
card.Description = EditorGUILayout.TextArea(card.Description, GUIStyle.none, null);
card.ShowStats = EditorGUILayout.Toggle(card.ShowStats, "Uses Stats");
if(card.ShowStats)
{
card.Health = EditorGUILayout.IntField(card.Health, GUIStyle.none, null);
card.Damage = EditorGUILayout.IntField(card.Damage, GUIStyle.none, null);
}
EditorUtility.SetDirty(card);
}
}
public class CardsCollection : MonoBehaviour
{
[SerializeField] private List<Card> allCards;
}
Thank you in advance!
Answer by lord_stett · Mar 22, 2019 at 11:09 AM
OK, I know what is happening. It's my misunderstanding of Scriptable Objects. I didn't really thought about the Scriptable Objects as well... Objects... My bad. Closing the thread.
Follow this Question
Related Questions
Can Scriptable Object be use for this? 2 Answers
Editor changes lost when entering Playmode 0 Answers
Item database with custom editor 0 Answers
Modifying object data from OnSceneGUI 0 Answers
Custom Editor serializing data in prefab instance. 0 Answers