Should i have a script for every button?

Hey guys, this is my first submission in this forum and I’m trying to do a full menu schema for my first game. Performance and code correction wise, should I use the same script for every button (different canvas and different functions), through a singleton class like the GameManager or creating a script for every button separately?

Thanks in advance!

well you could have one script and add individual functions to them and then assign the same script for the OnClick() function of the button.
Like here is an example for one script that can be used twice.

public void LoadLevel(int level)
{
Application.LoadLevel(level);
}

public void EnableSound(AudioSource _Audio)
{
_Audio.volume = 0
}

these can both be put in the same script. :slight_smile:

I don’t think any of your suggested approaches would cause some significant impact on performance, the thing is, having too many scripts can become a chaos to debug and stuff like this.

What i usually do (not claiming to be the best way, is just what i do) is to create a GUI Handler with a single method that start listening to all buttons and delegate each button action to the game manager that will delegate to the appropriate handler, like if you click attack button the GUI Handler will tell this to the Game Manager and it will call something on the Combat Manager.