-
-
Notifications
You must be signed in to change notification settings - Fork 252
Types
ActivateOnStart Component — Set state of specific GO on game start
AnimationStateReference — Specify AnimationClip on object with Animator
AssetPath and AssetFolderPath — Inspector button to browse for folder or asset under Assets folder
Billboard Component — Force object to always face camera
ColliderGizmo Component — Highlight colliders and triggers in SceneView
ColliderToMesh Component — Generate Mesh from PolygonCollider2D data on the fly
Commentary Component — Add text commentary to your GameObjects
CoroutineGroup — TODO
FPSCounter Component — Display FPS counter on Playmode
Guid Component — Generate unique and persistent IDs
MinMaxInt and MinMaxFloat — Asserts that Max => Min with handy inspector drawer
MyCursor — Nice way to set cursor with hotspot
MyDictionary — Serializable Dictionary
Optional and OptionalMinMax — Optionally assignable values
Reorderable Collections — Reorder your collections in inspector
SceneReference Component — Reference scene with Scene asset in inspector
Singleton — TODO
TransformData — TODO
UIFollow Component — TODO
UIImageBasedButton Component — TODO
UIImageBasedToggle Component — TODO
UIRelativePosition Component — TODO
UISizeBy Component — TODO
WaitForUnscaledSeconds — TODO
Toggles object active state on game start.
For instance, I use it with UI objects, to hide in editor and automatically show in playmode.
Use to specify some AnimationClip on assigned Animator.
Will automatically use Animator of current object, if any.
public AnimationStateReference JumpState;
private void Update()
{
if (Input.GetKeyDown(KeyCode.Space)) JumpState.Play();
}
String wrapper to display "Browse" button in inspector.
Allows to browse for folder or file path under Assets folder.
public AssetPath RequiredAsset;
public AssetPath MainScenePath = AssetPath.WithExtension("unity");
[Separator]
public AssetFolderPath GameplayTestsFolder;
Object with this component will always face camera
Visualize colliders on scene Works with Mesh, Box, Sphere, Edge, Box2d, Circle2d, Edge2d Colliders.
Also supports NavMeshObstacles!
This component allows to generate Mesh from PolygonCollider2D data
Edit PolygonCollider shape and use FillShape button, or generate mesh at runtime with FillShape() method
This type was used to create foregrounds in The Final Station game 🙂
You may add several comments with one component.
To enter edit mode just click on any existing commentary
// TODO
Add this to any object on scene to draw FPS counter in playmode.
Allows to specify ui position and target framerate. Target Framerate is used to indicate current performance with color.
Generates unique id no matter what (i.e. handles object duplication or prefab instances etc).
The most viable way to create Save Game System.
public MinMaxInt Damage;
public MyCursor Regular;
public MyCursor Interact;
...
Interact.ApplyAsConfinedCursor();
Interact.ApplyAsLockedCursor();
Interact.ApplyAsFreeCursor();
For now MyDictionary is not for inspector usage, but rather for caching.
I use it to preserve data in editor scripts on assembly reload.
[Serializable] public class AgentAgeDictionary : MyDictionary<Agent, int> {}
You may use predefined Optional types like OptionalFloat, OptionalString or OptionalComponent etc.
Or create your own with one line of code:
[Serializable] public class OptionalRigidBody : Optional<RigidBody> { }
Some predefined Optional Types have static WithValue(T value) method to set default values from code:
public OptionalKeyCode ResetGameKey = OptionalKeyCode.WithValue(KeyCode.P);
OptionalMinMax, well, is for optionally set min and max float values
Reorderable and ReorderableList base types allow you to create reorderable collections.
Create your own with one line of code:
[Serializable] public class ReorderableNavMeshAgent : Reorderable<NavMeshAgent> { }
Allows to refer to Scene asset in inspector and access scene via SceneName or SceneIndex.
//TODO
// TODO
// TODO
// TODO
// TODO
// TODO
// TODO
// TODO
//ConditionallyColoredGUIBlock
//ConditionallyEnabledGUIBlock
//DraggableHandler
//EditorWithSubEditors ?
//IndentBlock ?
//ReorderableCollection
//SceneClickHandler
//ScrollViewBlock ?