-
Notifications
You must be signed in to change notification settings - Fork 13
Open
Labels
Description
Description
Find a way to dynamically find all MAGE modules in need of setup at runtime, and set them up.
Purpose
I believe this would help with:
- Not forgetting to add a module to the setup list; this is easy to forget and causes minor time wastes.
- Avoiding issues with typos in the list; you cannot make typos in code you do not have to write
Notes
var modulesNamespace = "MyGame.Mage.Modules";
var modulesList = new List<string> ();
var types = Assembly
.GetExecutingAssembly()
.GetTypes();
foreach(Type type in types) {
if(type.IsVisible && String.Equals(type.Namespace, modulesNamespace)) {
Debug.Log("MAGE: found module " + type.Name);
modulesList.Add(type.Name);
}
}Since this would depend on reflection, I am not sure if this would play well when pushing on a device; I only tested this quickly on a local project running in the editor, and it seemed to work fine. It would be even better if we could feed in the actual namespace instead of a string representation (to avoid typo there by triggering compile-time errors), but would be happy to research that.