Skip to content

spoiledcat/UnityTools

Repository files navigation

Collection of Unity utilities

Build status

Environment

src/com.spoiledcat.environment

Logging

src/com.spoiledcat.logging

Quick Console

src/com.spoiledcat.quick-console

Need to run some code in Unity but can't because changing any editor or game code will cause everything to be recompiled? Want to check the state of an object but the only way to access it is via code, and you're tired of adding menu entries to run random code?

Quick console is a Unity window similar to Visual Studio's Immediate window, where you can type code to be compiled and executed without having to recompile anything else on your project. The code is compiled into a separate assembly and loaded into the current C# domain, so it doesn't cause anything else to be recompiled and doesn't affect the state of anything in the editor. You can use it to evaluate scene objects, run actions, do whatever you would otherwise do in a Unity editor or runtime script.

SharpZipLib

src/com.spoiledcat.sharpziplib

ICSharpCode.SharpZipLib source package, compatible with Unity 5.6 and above, with a different top level C# namespace (to avoid name conflicts), and including the Tar and Zip implementations that are missing from the binary versions included in some recent Unity versions.

Simple IO

src/com.spoiledcat.simpleio

Fork of NiceIO, a nice uncomplicated Unity-friend IO API.

Simple Json

src/com.spoiledcat.simplejson

Fork of SimpleJson.

This fork adds support for:

  • Serialization of structs
  • Serialization of private fields and properties
  • Serialization of DateTime and DateTimeOffset with multiple ISO formats
  • Custom casing and naming implementations. It provides extension methods ToJson and FromJson with casing and visibility choices, and users can implement their own strategies for custom serialization.

Threading

src/com.spoiledcat.threading

SpoiledCat.Threading is a TPL-based threading library that simplifies running asynchronous code with explicit thread and scheduler settings.

UI

src/com.spoiledcat.ui

Base Editor window class and interfaces to make it easier to implement editor windows. The BaseWindow class provides virtual methods that split up layout and repaint phases into different calls:

  • OnDataUpdate - Called during the layout phase. Use it to refresh and cache values to be used.
  • OnFirstRepaint - Called on the very first repaint event after OnEnable
  • OnUI - Called after OnDataUpdate, equivalent to OnGUI (always called whenever OnGUI would be called)

Utilities

src/com.spoiledcat.utilities

Miscellaneous utilities, string and stream extensions, argument validation helpers, and a TheVersion class that can parse and compare version strings. TheVersion.Parse("2.1.32.5")

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages