Failing to make array of gameobjects

Ideally make that array field private.

Otherwise, if your code is always jamming those X number of specific objects into that array, AND you want external (public) access, make it a property, then allocate it in Start().

public GameObject[] mylist { get; private set; }

// and then in Start() just initialize it:

mylist = new GameObject[] { a,b,c,d};

If you had actually posted the code properly I could have copy/pasted and modified it so it just dropped in as if it was your code above, but I’m not retyping your code. :slight_smile:

NOTE: you might want to look into ScriptableObjects… they are perfect for making these sorts of pre-authored data sets, such as the list of attacks.

Here’s some ScriptableObject scribblings:

ScriptableObject usage in RPGs:

Usage as a shared common data container: