Because you declared your field static. Static members do not belong to an instance of that class. They are seperate, static fields which are independent from instances of the class and are shared between all of them. Static fields are never serialized when an instance of a class is serialized since, as i said, it doesn’t even belong to the instance.
If you want a field to be serialized (and therefore be displayed and editable in the inspector) it need to be a non static instance field.
It’s difficult to give you a clear advice what you should change in your class since we don’t know where and how it’s used. At the moment your class has no instance fields or methods. So attaching it to a gameobject is completely pointless at the moment. However for managers that should be represented by an instance you usually want to use a “singleton”. A singletun is just a single instance of an object and you provide a static field which holds a reference to that single instance.
public class GameManager : MonoBehaviour
{
public static GameManager instance;
void Awake()
{
instance = this;
}
public Text playerList;
// [ ... ]
}
When the game starts the instance of the GameManager in the scene will “store itself” in the static instance variable. Now everybody, anywhere in your project can use GameManager.instance to get access to the instance of the class and therefore has access to all instance fields and methods,