Edit a list item as a child object

Okay, really badly named title but I don’t know how to word it properly. Basically, what i want to do is take my inventory (List) and be able to edit each of those items as if they were the child of the Item class. For example, I want to be able to change the damage property on a GunItem in the inventory (which is a child of Item) while in the editor window somehow. Is this possible?

If your list type is the item type, you can use the items right away.
If not, you should cast the items to item type before using them.

Typed list example (C#) :

List<MyItemType> Items = new List<MyItemType>();
Items.Add(new MyItemType());
Items[0].Value = 5;

Edit for info about writing an editor extension :

You need to write an editor extension to be able to edit this list in the inspector.
I’ve never wrote a editor script but as far as I know,

  1. The script must be in a folder named “Editor” so the Unity understands and compiles it as an editor extension. The folder can be nested in anywhere. Only important thing is its name.

  2. In the editor script, you have to handle a GUI event just like in the game GUI. In this event, you have to draw the windows controls (Textbox, Button, Checkbox, etc…) according to your data layout.

  3. You need to handle the input coming from these windows controls to pass the incoming data to the underlying data structure which is your Inventory list.

Well, these are the basics and developing editor extensions is completely a different area of Unity programming which requires a lot of experience.