I'm wondering if it's good practice to use "static" in this way:
I have some classes that need to be called in a lot of scripts. For example, I have a DialogueManager that makes appear dialogues on the screen. So I just have to write DialogueManager.instance.MyFunction();, where instance is a static variable, whereas MyFunction is a non-static function of DialogueManager. I used the same approach for MouseCursor and in general for every one-instance gameobjects in my scene. Is that correct?
I have some classes that need to be called in a lot of scripts. For example, I have a DialogueManager that makes appear dialogues on the screen. So I just have to write DialogueManager.instance.MyFunction();, where instance is a static variable, whereas MyFunction is a non-static function of DialogueManager. I used the same approach for MouseCursor and in general for every one-instance gameobjects in my scene. Is that correct?