But yeah the Unity folder was like 60,000 files already. Was too intense for my old HDD
Yeah, actually that's another gripe I have with Unity, it literally creates a unique-per-machine 'shadow file' of
every fucking file in a project, and
also metadata files for every asset file in a project, so you end up with literally thousands of fucking files in a near empty project.
Like, if you're using Github with unity stuff, theres a whole unity specific gitignore template you really really really should use, to stop all the fucking junk files unity generates bloating your repo.
Its almost worth not actually backing up your unity projects as you think you should (ie as entire folder structures), but by exporting your whole project out as a custom asset .unitypackage and backing that up to import into a 'clean' unity project if you ever want to go back to it.
Been looking into statics.
For my audiomanager which I want so the music keeps its spot on scene reset on death, for changing BGMs per level/area/scene, would it make the most sense to have my audiomanager gameobject basically loaded with the entire game soundtrack and all the tracks and then I could put a public method on it called "ChangeTrack(track name)"
And then in any other script I can just tell it to ChangeTrack(put track name here) and then it will switch currentBGM private variable in the static to whatever track name is and play it?
I'm not sure where I would put code to call this, maybe a script on an object called [Scene_X_Start_Object] which has a script for that one scene and calls on start to change track and set whatever else for the scene?
I'm happy to post mu singleton script if you want it, like I say, they're so fucking useful everyone uses them for something.
In usage terms, just create an empty gameobject in your initially loaded scene (and call it _audiomanager or whatever) and put it at the top of your hierarchy.
You can also have an "_Managers" empty, with children for _GameManager, _AudioManager, _LevelsManager, _ProfileManager, _AchievementsManager etc each with their own singletons controlling that stuff too.
You're right, you absolutely can use it as a 'jukebox'; you can also use it as a master mixer, so if you have any game settings for audio volume you can store them there and route all SFX through it to ensure they're obeyed everywhere (and can do seperate SFX / Music volume controls).
You can also use it to crossfade between tracks (like, if you have a 'general gameplay' track, but also a more uptempo 'times running out' or 'shits going down' track) from contextual calls (like timer less than 1 minute, or unit manager is spawning in boss or whatever).
You can also do a fairly easy ghetto custom soundtracks thing, by making a folder called uhhhhh streamable assets I think it is, and then explicitly pointing to that in your manager and creating an array of any music it finds in there, and players will be able to drag and drop their own MP3s into that folder, and it will scan them all and add them to a playlist.
The letter by letter (array of characters displayed one at a time) with goofy sounds for each letter and a background & portrait of the character talking is pretty classic and flexible, so if for some reason I can't use the dialogue system I bought I may try this:
I'd be willing to bet IRL money the system you bought has a 'typewriter' text effect built in, probably also with an audioclip for the audio effect; hell, I'd suspect it probably has a randomised variance audioclip so you can do animal crossing / banjo kazooie style nonsense sounds that match text