Skip to content

Added module-cross communication services

Pre-release
Pre-release
Compare
Choose a tag to compare
@Emik03 Emik03 released this 12 May 12:24
· 885 commits to main since this release
  • Added Equals() and GetHashCode() methods which were previously missing in both Sound and ModuleContainer.
  • Added IModule and ITuple interface for abstract class ModuleScript and the multiple Tuple types respectively.
  • Added InsertNewlines() to Helper which automates placing line breaks on evenly-spaced intervals prioritizing whitespace easier.
  • Added ModuleScript's Read<T>() and Write<T>() methods. This allows different assemblies to access the same data without resorting to reflection.
  • Added PrintHierarchy() and PrintFullHierarchy() to PathManager, allowing you to diagnose issues related to seeing the structure of the scene, such as using GetComponentsInParent or GetComponentsInChildren.
  • Changed DynamicAudio to be sealed. You can no longer derive from this class.
  • Changed Helper's Unwrap to include a try-catch for SecurityExceptions.
  • Changed ModuleScript's IsEditor to be static. If you are referencing IsEditor outside of a script file deriving from ModuleScript, you need to now declare the type name instead of an instance.
  • Changed PathManager to throw an exception if LoadVideoClips returns an empty array of videos.
  • Changed ModuleContainer's constructor exception about both KMBombModule and KMNeedyModule being null.
  • Changed TPScript's generic to be TModule for clarity, as it's present throughout the whole class. If you have a generic method, you are likely able to rename it back to T since it is no longer taken.
  • Removed UnityComponentNotFoundException since MissingComponentException already exists.