├── .gitignore
├── _config.yml
├── .gitattributes
├── Custom PlayMaker Actions
├── AnimatedVariables Customs
│ └── README.md
├── Color Customs
│ └── README.MD
├── Sprite customs
│ ├── README.MD
│ └── SpriteGetName.cs
├── Application Customs
│ └── README.MD
├── Audio Customs
│ ├── Editor
│ │ ├── README.MD
│ │ └── GetAudioClipName.cs
│ ├── README.MD
│ ├── GetAudioClipLength.cs
│ ├── IntSwitchAudioClip.cs
│ └── GetAudioProgress.cs
├── System & Time Customs
│ ├── Editor
│ │ └── README.MD
│ ├── README.MD
│ ├── GetFileExtension.cs
│ ├── GetTimeScale.cs
│ └── CountupTimer.cs
├── uGUI Customs
│ ├── README.MD
│ ├── DebugVariableOnScreen.cs
│ └── DrawFullscreenColorAdvanced.cs
├── Camera Customs
│ └── README.MD
├── Animator Customs
│ ├── README.MD
│ └── GetRuntimeAnimatorController.cs
├── _Templates
│ ├── README.MD
│ ├── Template.cs
│ ├── TemplateAdvanced.cs
│ └── Editor
│ │ └── TemplateInspector.cs
├── Enum Customs
│ ├── README.MD
│ ├── EnumGetRandom.cs
│ └── RandomWeightedEnum.cs
├── Vector Customs
│ └── README.MD
├── Device Customs
│ └── README.MD
├── Navigation Customs
│ ├── README.MD
│ └── NavMeshAgentGetAreaMask.cs
├── Array Lists & Hash Table Customs
│ ├── README.MD
│ ├── ArrayListAddAll.cs
│ └── ArrayListGetLength.cs
├── Logic Customs
│ ├── README.MD
│ ├── IntSignTest.cs
│ ├── IntSwitchAdvanced.cs
│ └── ConvertIntToLetter.cs
├── Array Customs
│ ├── README.MD
│ ├── ArrayIsEmpty.cs
│ ├── ArrayAddIfEmpty.cs
│ └── ArrayGetRandomAdvanced.cs
├── Math Customs
│ ├── README.MD
│ ├── IntFlip.cs
│ ├── FloatFlip.cs
│ ├── GetPercentageInt.cs
│ ├── GetUnsignedInt.cs
│ ├── GetUnsignedFloat.cs
│ └── IntRoundToNearest.cs
├── StateMachine Customs
│ ├── DisableThisFSM.cs
│ ├── README.MD
│ ├── RestartThisFSM.cs
│ └── Editor
│ │ └── SendEventsInspector.cs
├── String Customs
│ ├── README.MD
│ ├── StringSwitchCustom.cs
│ ├── StringContainsSwitch.cs
│ ├── StringAppend2.cs
│ └── StringCompareSetMulti.cs
├── _ThirdParty
│ ├── GDE Customs
│ │ ├── GDEGetSchemaByItem.cs
│ │ ├── GDEDebugData.cs
│ │ ├── GDEResetItem.cs
│ │ ├── GDECountOccurrences.cs
│ │ ├── GDEBoolFlip.cs
│ │ ├── GDESwapItems.cs
│ │ ├── GDERemoveItem.cs
│ │ ├── GDESwapFieldValues.cs
│ │ ├── GDEAddString.cs
│ │ ├── GDEListMultipleFieldValues.cs
│ │ ├── GDEVector3Operator.cs
│ │ ├── GDEVector2Operator.cs
│ │ ├── GDEVector4Operator.cs
│ │ ├── GDERemoveString.cs
│ │ ├── GDEIntOperator.cs
│ │ ├── GDEFloatOperator.cs
│ │ ├── GDEFind.cs
│ │ ├── GDEBoolTest.cs
│ │ ├── GDEGetItemWithMatchingValues.cs
│ │ ├── GDEHasFieldValueChanged.cs
│ │ └── GDECreateItem.cs
│ └── NGUI Customs
│ │ ├── README.MD
│ │ ├── NguiSpriteIsVisible.cs
│ │ ├── NguiSetSpriteSize.cs
│ │ └── NguiSetWidgetAlphaMulti.cs
├── Physics & Transform Customs
│ ├── README.MD
│ ├── GetGravity2dScale.cs
│ └── EnableCollider.cs
├── Random Customs
│ ├── README.MD
│ ├── SelectRandomObject.cs
│ ├── SelectRandomAudioClip.cs
│ ├── RandomPointOnSlope.cs
│ ├── RandomWeightedVector3.cs
│ └── RandomPointBetweenGameObjects.cs
└── GameObject & UnityObject Customs
│ ├── EnableChildren.cs
│ ├── DestroyChildren.cs
│ ├── GetObjectName.cs
│ ├── ToggleComponent.cs
│ ├── GetLastChild.cs
│ ├── SetGameObjectIfNotNull.cs
│ ├── README.MD
│ ├── EnableChildrenInRange.cs
│ ├── GetChildren.cs
│ └── ToggleGameObject.cs
├── Screenshots
├── Actions
│ ├── EaseInt.png
│ ├── FloatFlip.png
│ ├── GDEFind.png
│ ├── IntFlip.png
│ ├── Template.png
│ ├── EnableFsms.png
│ ├── GDEBoolFlip.png
│ ├── GDEBoolTest.png
│ ├── GDEHasItem.png
│ ├── GetChildren.png
│ ├── HasSibling.png
│ ├── IntSignTest.png
│ ├── SendEvents.png
│ ├── ArrayIsEmpty.png
│ ├── ArrayOperator.png
│ ├── CompareColors.png
│ ├── CountupTimer.png
│ ├── DisableThisFSM.png
│ ├── EnableChildren.png
│ ├── EnableCollider.png
│ ├── EnumGetRandom.png
│ ├── FindChildren.png
│ ├── FollowMouse2D.png
│ ├── GDEAddString.png
│ ├── GDECreateItem.png
│ ├── GDEIntOperator.png
│ ├── GDERemoveItem.png
│ ├── GDESwapItems.png
│ ├── GOCompareMulti.png
│ ├── GetEnumAsArray.png
│ ├── GetLastChild.png
│ ├── GetObjectName.png
│ ├── GetTimeScale.png
│ ├── GetUnsignedInt.png
│ ├── RestartThisFSM.png
│ ├── SendEventMulti.png
│ ├── SetPositions.png
│ ├── SpriteGetName.png
│ ├── StringAppend.png
│ ├── StringRemove.png
│ ├── Vector3Compare.png
│ ├── ArrayAddIfEmpty.png
│ ├── ArrayListAddAll.png
│ ├── DestroyChildren.png
│ ├── ExampleOverview.png
│ ├── FindAssetByName.png
│ ├── FindClosestAgent.png
│ ├── GDEFloatOperator.png
│ ├── GDEGetRandomItem.png
│ ├── GDERemoveString.png
│ ├── GetAudioClipName.png
│ ├── GetAudioProgress.png
│ ├── GetFileExtension.png
│ ├── GetFsmComponent.png
│ ├── GetPercentageInt.png
│ ├── GetStringNumbers.png
│ ├── GetUnsignedFloat.png
│ ├── IntCompareRange.png
│ ├── NavMeshAgentWarp.png
│ ├── RandomCharacters.png
│ ├── RandomWaitCustom.png
│ ├── ResetTransforms.png
│ ├── SendRandomEvent.png
│ ├── TemplateAdvanced.png
│ ├── ToggleComponent.png
│ ├── ToggleGameObject.png
│ ├── ActivateComponents.png
│ ├── ActivateGameObjects.png
│ ├── ArrayListGetLength.png
│ ├── ConvertIntToLetter.png
│ ├── EnableColliderMulti.png
│ ├── FloatCompareRange.png
│ ├── GDECountOccurrences.png
│ ├── GDEFindItemByValue.png
│ ├── GDEFindItemsByValue.png
│ ├── GDEGetSchemaByItem.png
│ ├── GDELoadSchemaList.png
│ ├── GDESwapFieldValues.png
│ ├── GDEVector2Operator.png
│ ├── GDEVector3Operator.png
│ ├── GDEVector4Operator.png
│ ├── GetAudioClipLength.png
│ ├── GetDeviceRollCustom.png
│ ├── GetGravity2dScale.png
│ ├── GetScaleAddOffset.png
│ ├── IntRoundToNearest.png
│ ├── IntSwitchAdvanced.png
│ ├── IntSwitchAudioClip.png
│ ├── IsOnPlatformEvent.png
│ ├── NavMeshAgentHasPath.png
│ ├── NavMeshAgentMoveTo.png
│ ├── NavMeshAgentPause.png
│ ├── NavMeshAgentResume.png
│ ├── NguiSetSpriteSize.png
│ ├── NguiSetWidgetColor.png
│ ├── NguiSpriteIsVisible.png
│ ├── RandomFloatOnSlope.png
│ ├── RandomPointOnSlope.png
│ ├── RandomWeightedEnum.png
│ ├── SelectRandomObject.png
│ ├── SendEventSetMulti.png
│ ├── SendEventSetValue.png
│ ├── SetPropertyAdvanced.png
│ ├── StringRemoveChars.png
│ ├── StringSwitchCustom.png
│ ├── ArrayListContainsName.png
│ ├── DebugVariableOnScreen.png
│ ├── EnableChildrenInRange.png
│ ├── GDEFindItemsByValue2.png
│ ├── GameObjectKeepActive.png
│ ├── GetChildCountAdvanced.png
│ ├── GetGameObjectSibling.png
│ ├── GetPositionAddOffset.png
│ ├── GetRotationAddOffset.png
│ ├── NavMeshAgentGetHeight.png
│ ├── NavMeshAgentGetSpeed.png
│ ├── NavMeshAgentResetPath.png
│ ├── NavMeshAgentSetHeight.png
│ ├── NavMeshAgentSetSpeed.png
│ ├── NguiGetWidgetDetails.png
│ ├── NguiSetSpriteMultiple.png
│ ├── NguiSetWidgetDetails.png
│ ├── NguiToolsDestroyMulti.png
│ ├── RandomIntAroundRange.png
│ ├── RandomWeightedVector3.png
│ ├── SelectRandomAudioClip.png
│ ├── SendEventRandomDelay.png
│ ├── StringCompareSetMulti.png
│ ├── StringContainsSwitch.png
│ ├── StringReplaceEachChar.png
│ ├── ArrayGetRandomAdvanced.png
│ ├── BuildStringAutoConvert.png
│ ├── GDEHasFieldValueChanged.png
│ ├── GDELoadAllItemsBySchema.png
│ ├── GDELoadAllKeysBySchema.png
│ ├── GDELoadStringListCustom.png
│ ├── GameObjectCompareMulti.png
│ ├── GetMultilevelGameObject.png
│ ├── NavMeshAgentGetAreaMask.png
│ ├── NavMeshAgentGetVelocity.png
│ ├── NavMeshAgentIsOnNavMesh.png
│ ├── NavMeshAgentSetVelocity.png
│ ├── NavMeshFindClosestPoint.png
│ ├── NguiLabelSetTextAdvanced.png
│ ├── NguiSetWidgetAlphaMulti.png
│ ├── RandomFloatAroundRange.png
│ ├── RandomWaitAroundOffset.png
│ ├── SetGameObjectIfNotNull.png
│ ├── Vector2OperatorAdvanced.png
│ ├── Vector3OperatorAdvanced.png
│ ├── ActivateMultipleComponents.png
│ ├── NavMeshAgentGetAutoBraking.png
│ ├── NavMeshAgentGetAutoRepath.png
│ ├── NavMeshAgentGetBaseOffset.png
│ ├── NavMeshAgentGetPathStatus.png
│ ├── NavMeshAgentIsPathPending.png
│ ├── NavMeshAgentSetAutoBraking.png
│ ├── NavMeshAgentSetAutoRepath.png
│ ├── NavMeshAgentSetBaseOffset.png
│ ├── NguiToolsAddChildAdvanced.png
│ ├── SwipeGestureEventAdvanced.png
│ ├── ActivateGameObjectsAdvanced.png
│ ├── ArrayAddGameObjectIfEnabled.png
│ ├── DrawFullscreenColorAdvanced.png
│ ├── GetDeviceLinearAcceleration.png
│ ├── GetGameObjectScreenPosition.png
│ ├── GetRuntimeAnimatorController.png
│ ├── ListGameObjectsInsideCollider.png
│ ├── NavMeshAgentGetAcceleration.png
│ ├── NavMeshAgentGetAngularSpeed.png
│ ├── NavMeshAgentGetNextPosition.png
│ ├── NavMeshAgentIsOnOffMeshLink.png
│ ├── NavMeshAgentSetAcceleration.png
│ ├── NavMeshAgentSetAngularSpeed.png
│ ├── RandomPointBetweenGameObjects.png
│ ├── SetRuntimeAnimatorController.png
│ ├── GameObjectIsVisibleAlternative.png
│ ├── GetGameObjectByFsmVariableValue.png
│ ├── ListGameObjectsInsideCollider2D.png
│ ├── NavMeshAgentGetPathEndPosition.png
│ ├── NavMeshAgentGetStoppingDistance.png
│ ├── AndroidNativeAudioNonRedundantFile.png
│ ├── GameObjectIsVisibleAlternative2D.png
│ ├── NavMeshAgentGetAvoidancePriority.png
│ ├── NavMeshAgentGetRemainingDistance.png
│ ├── NavMeshAgentSetAvoidancePriority.png
│ ├── NavMeshAgentGetAutoTraverseOffMeshLink.png
│ └── NavMeshAgentSetAutoTraverseOffMeshLink.png
├── Components
│ ├── Comment.png
│ ├── DebugFSM.png
│ ├── GDEInit.png
│ ├── DebugSpeed.png
│ ├── FPSCounter.png
│ ├── NGUIEffects1.png
│ ├── SetNGUILabel.png
│ ├── DisableOnAwake.png
│ ├── RemoveAtRuntime.png
│ ├── SendEventToFSM.png
│ ├── SendEventToFSM2.png
│ ├── TextureScrolling.png
│ ├── SetGravityClamped.png
│ ├── FollowMouseMovement.png
│ ├── SendEventToFSMAdvanced.png
│ ├── SendEventToFSMAdvanced_OLD.png
│ └── DontDestroyDeleteDuplicates.png
└── Editor
│ ├── ToolsScenesMenu.png
│ └── CurrentSelectionMenu.png
├── Components
├── _Third Party
│ └── GDE
│ │ ├── README.MD
│ │ └── GDEInit.cs
├── Physics related
│ ├── README.MD
│ └── SetGravityClamped.cs
├── DisableOnAwake.cs
├── PlayMaker Extension
│ └── DebugFSM
│ │ ├── README.MD
│ │ └── Editor
│ │ └── DebugFSMInspector.cs
├── DontDestroyDeleteDuplicates.cs
├── Comment.cs
├── RemoveAtRuntime.cs
├── FPSCounter.cs
├── FollowMouseMovement.cs
├── TextureScrolling.cs
└── DebugLogOnScreen.cs
├── README.MD
└── Editor Extensions
└── Editor
├── ToolsMenu
└── README.MD
└── README.MD
/.gitignore:
--------------------------------------------------------------------------------
1 | **.meta
2 | **.cs~
3 | .idea
--------------------------------------------------------------------------------
/_config.yml:
--------------------------------------------------------------------------------
1 | theme: jekyll-theme-midnight
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/AnimatedVariables Customs/README.md:
--------------------------------------------------------------------------------
1 | ## EaseInt.cs
2 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Color Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## CompareColors.cs
2 | 
3 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Sprite customs/README.MD:
--------------------------------------------------------------------------------
1 | ## SpriteGetName.cs
2 | 
3 |
--------------------------------------------------------------------------------
/Screenshots/Actions/EaseInt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/EaseInt.png
--------------------------------------------------------------------------------
/Screenshots/Actions/FloatFlip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/FloatFlip.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEFind.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEFind.png
--------------------------------------------------------------------------------
/Screenshots/Actions/IntFlip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/IntFlip.png
--------------------------------------------------------------------------------
/Screenshots/Actions/Template.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/Template.png
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Application Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## IsOnPlatformEvent.cs
2 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Audio Customs/Editor/README.MD:
--------------------------------------------------------------------------------
1 | ## GetAudioClipName.cs
2 | 
3 |
--------------------------------------------------------------------------------
/Screenshots/Actions/EnableFsms.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/EnableFsms.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEBoolFlip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEBoolFlip.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEBoolTest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEBoolTest.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEHasItem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEHasItem.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetChildren.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetChildren.png
--------------------------------------------------------------------------------
/Screenshots/Actions/HasSibling.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/HasSibling.png
--------------------------------------------------------------------------------
/Screenshots/Actions/IntSignTest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/IntSignTest.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SendEvents.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SendEvents.png
--------------------------------------------------------------------------------
/Screenshots/Components/Comment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/Comment.png
--------------------------------------------------------------------------------
/Screenshots/Components/DebugFSM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/DebugFSM.png
--------------------------------------------------------------------------------
/Screenshots/Components/GDEInit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/GDEInit.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayIsEmpty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayIsEmpty.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayOperator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayOperator.png
--------------------------------------------------------------------------------
/Screenshots/Actions/CompareColors.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/CompareColors.png
--------------------------------------------------------------------------------
/Screenshots/Actions/CountupTimer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/CountupTimer.png
--------------------------------------------------------------------------------
/Screenshots/Actions/DisableThisFSM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/DisableThisFSM.png
--------------------------------------------------------------------------------
/Screenshots/Actions/EnableChildren.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/EnableChildren.png
--------------------------------------------------------------------------------
/Screenshots/Actions/EnableCollider.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/EnableCollider.png
--------------------------------------------------------------------------------
/Screenshots/Actions/EnumGetRandom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/EnumGetRandom.png
--------------------------------------------------------------------------------
/Screenshots/Actions/FindChildren.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/FindChildren.png
--------------------------------------------------------------------------------
/Screenshots/Actions/FollowMouse2D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/FollowMouse2D.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEAddString.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEAddString.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDECreateItem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDECreateItem.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEIntOperator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEIntOperator.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDERemoveItem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDERemoveItem.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDESwapItems.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDESwapItems.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GOCompareMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GOCompareMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetEnumAsArray.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetEnumAsArray.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetLastChild.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetLastChild.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetObjectName.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetObjectName.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetTimeScale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetTimeScale.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetUnsignedInt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetUnsignedInt.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RestartThisFSM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RestartThisFSM.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SendEventMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SendEventMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SetPositions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SetPositions.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SpriteGetName.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SpriteGetName.png
--------------------------------------------------------------------------------
/Screenshots/Actions/StringAppend.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/StringAppend.png
--------------------------------------------------------------------------------
/Screenshots/Actions/StringRemove.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/StringRemove.png
--------------------------------------------------------------------------------
/Screenshots/Actions/Vector3Compare.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/Vector3Compare.png
--------------------------------------------------------------------------------
/Screenshots/Components/DebugSpeed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/DebugSpeed.png
--------------------------------------------------------------------------------
/Screenshots/Components/FPSCounter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/FPSCounter.png
--------------------------------------------------------------------------------
/Screenshots/Editor/ToolsScenesMenu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Editor/ToolsScenesMenu.png
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/System & Time Customs/Editor/README.MD:
--------------------------------------------------------------------------------
1 | ## FindAssetByName.cs
2 | 
3 |
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayAddIfEmpty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayAddIfEmpty.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayListAddAll.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayListAddAll.png
--------------------------------------------------------------------------------
/Screenshots/Actions/DestroyChildren.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/DestroyChildren.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ExampleOverview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ExampleOverview.png
--------------------------------------------------------------------------------
/Screenshots/Actions/FindAssetByName.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/FindAssetByName.png
--------------------------------------------------------------------------------
/Screenshots/Actions/FindClosestAgent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/FindClosestAgent.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEFloatOperator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEFloatOperator.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEGetRandomItem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEGetRandomItem.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDERemoveString.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDERemoveString.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetAudioClipName.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetAudioClipName.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetAudioProgress.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetAudioProgress.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetFileExtension.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetFileExtension.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetFsmComponent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetFsmComponent.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetPercentageInt.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetPercentageInt.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetStringNumbers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetStringNumbers.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetUnsignedFloat.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetUnsignedFloat.png
--------------------------------------------------------------------------------
/Screenshots/Actions/IntCompareRange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/IntCompareRange.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentWarp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentWarp.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomCharacters.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomCharacters.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomWaitCustom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomWaitCustom.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ResetTransforms.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ResetTransforms.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SendRandomEvent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SendRandomEvent.png
--------------------------------------------------------------------------------
/Screenshots/Actions/TemplateAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/TemplateAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ToggleComponent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ToggleComponent.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ToggleGameObject.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ToggleGameObject.png
--------------------------------------------------------------------------------
/Screenshots/Components/NGUIEffects1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/NGUIEffects1.png
--------------------------------------------------------------------------------
/Screenshots/Components/SetNGUILabel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/SetNGUILabel.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ActivateComponents.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ActivateComponents.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ActivateGameObjects.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ActivateGameObjects.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayListGetLength.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayListGetLength.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ConvertIntToLetter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ConvertIntToLetter.png
--------------------------------------------------------------------------------
/Screenshots/Actions/EnableColliderMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/EnableColliderMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/FloatCompareRange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/FloatCompareRange.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDECountOccurrences.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDECountOccurrences.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEFindItemByValue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEFindItemByValue.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEFindItemsByValue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEFindItemsByValue.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEGetSchemaByItem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEGetSchemaByItem.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDELoadSchemaList.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDELoadSchemaList.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDESwapFieldValues.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDESwapFieldValues.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEVector2Operator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEVector2Operator.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEVector3Operator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEVector3Operator.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEVector4Operator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEVector4Operator.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetAudioClipLength.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetAudioClipLength.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetDeviceRollCustom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetDeviceRollCustom.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetGravity2dScale.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetGravity2dScale.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetScaleAddOffset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetScaleAddOffset.png
--------------------------------------------------------------------------------
/Screenshots/Actions/IntRoundToNearest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/IntRoundToNearest.png
--------------------------------------------------------------------------------
/Screenshots/Actions/IntSwitchAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/IntSwitchAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/IntSwitchAudioClip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/IntSwitchAudioClip.png
--------------------------------------------------------------------------------
/Screenshots/Actions/IsOnPlatformEvent.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/IsOnPlatformEvent.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentHasPath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentHasPath.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentMoveTo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentMoveTo.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentPause.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentPause.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentResume.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentResume.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiSetSpriteSize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiSetSpriteSize.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiSetWidgetColor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiSetWidgetColor.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiSpriteIsVisible.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiSpriteIsVisible.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomFloatOnSlope.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomFloatOnSlope.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomPointOnSlope.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomPointOnSlope.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomWeightedEnum.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomWeightedEnum.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SelectRandomObject.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SelectRandomObject.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SendEventSetMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SendEventSetMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SendEventSetValue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SendEventSetValue.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SetPropertyAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SetPropertyAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/StringRemoveChars.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/StringRemoveChars.png
--------------------------------------------------------------------------------
/Screenshots/Actions/StringSwitchCustom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/StringSwitchCustom.png
--------------------------------------------------------------------------------
/Screenshots/Components/DisableOnAwake.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/DisableOnAwake.png
--------------------------------------------------------------------------------
/Screenshots/Components/RemoveAtRuntime.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/RemoveAtRuntime.png
--------------------------------------------------------------------------------
/Screenshots/Components/SendEventToFSM.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/SendEventToFSM.png
--------------------------------------------------------------------------------
/Screenshots/Components/SendEventToFSM2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/SendEventToFSM2.png
--------------------------------------------------------------------------------
/Screenshots/Components/TextureScrolling.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/TextureScrolling.png
--------------------------------------------------------------------------------
/Screenshots/Editor/CurrentSelectionMenu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Editor/CurrentSelectionMenu.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayListContainsName.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayListContainsName.png
--------------------------------------------------------------------------------
/Screenshots/Actions/DebugVariableOnScreen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/DebugVariableOnScreen.png
--------------------------------------------------------------------------------
/Screenshots/Actions/EnableChildrenInRange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/EnableChildrenInRange.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEFindItemsByValue2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEFindItemsByValue2.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GameObjectKeepActive.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GameObjectKeepActive.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetChildCountAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetChildCountAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetGameObjectSibling.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetGameObjectSibling.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetPositionAddOffset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetPositionAddOffset.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetRotationAddOffset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetRotationAddOffset.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetHeight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetHeight.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetSpeed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetSpeed.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentResetPath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentResetPath.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetHeight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetHeight.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetSpeed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetSpeed.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiGetWidgetDetails.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiGetWidgetDetails.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiSetSpriteMultiple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiSetSpriteMultiple.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiSetWidgetDetails.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiSetWidgetDetails.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiToolsDestroyMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiToolsDestroyMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomIntAroundRange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomIntAroundRange.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomWeightedVector3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomWeightedVector3.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SelectRandomAudioClip.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SelectRandomAudioClip.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SendEventRandomDelay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SendEventRandomDelay.png
--------------------------------------------------------------------------------
/Screenshots/Actions/StringCompareSetMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/StringCompareSetMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/StringContainsSwitch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/StringContainsSwitch.png
--------------------------------------------------------------------------------
/Screenshots/Actions/StringReplaceEachChar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/StringReplaceEachChar.png
--------------------------------------------------------------------------------
/Screenshots/Components/SetGravityClamped.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/SetGravityClamped.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayGetRandomAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayGetRandomAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/BuildStringAutoConvert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/BuildStringAutoConvert.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDEHasFieldValueChanged.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDEHasFieldValueChanged.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDELoadAllItemsBySchema.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDELoadAllItemsBySchema.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDELoadAllKeysBySchema.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDELoadAllKeysBySchema.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GDELoadStringListCustom.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GDELoadStringListCustom.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GameObjectCompareMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GameObjectCompareMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetMultilevelGameObject.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetMultilevelGameObject.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetAreaMask.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetAreaMask.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetVelocity.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetVelocity.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentIsOnNavMesh.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentIsOnNavMesh.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetVelocity.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetVelocity.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshFindClosestPoint.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshFindClosestPoint.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiLabelSetTextAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiLabelSetTextAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiSetWidgetAlphaMulti.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiSetWidgetAlphaMulti.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomFloatAroundRange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomFloatAroundRange.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomWaitAroundOffset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomWaitAroundOffset.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SetGameObjectIfNotNull.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SetGameObjectIfNotNull.png
--------------------------------------------------------------------------------
/Screenshots/Actions/Vector2OperatorAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/Vector2OperatorAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/Vector3OperatorAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/Vector3OperatorAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Components/FollowMouseMovement.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/FollowMouseMovement.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ActivateMultipleComponents.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ActivateMultipleComponents.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetAutoBraking.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetAutoBraking.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetAutoRepath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetAutoRepath.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetBaseOffset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetBaseOffset.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetPathStatus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetPathStatus.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentIsPathPending.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentIsPathPending.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetAutoBraking.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetAutoBraking.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetAutoRepath.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetAutoRepath.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetBaseOffset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetBaseOffset.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NguiToolsAddChildAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NguiToolsAddChildAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SwipeGestureEventAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SwipeGestureEventAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Components/SendEventToFSMAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/SendEventToFSMAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ActivateGameObjectsAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ActivateGameObjectsAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ArrayAddGameObjectIfEnabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ArrayAddGameObjectIfEnabled.png
--------------------------------------------------------------------------------
/Screenshots/Actions/DrawFullscreenColorAdvanced.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/DrawFullscreenColorAdvanced.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetDeviceLinearAcceleration.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetDeviceLinearAcceleration.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetGameObjectScreenPosition.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetGameObjectScreenPosition.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetRuntimeAnimatorController.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetRuntimeAnimatorController.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ListGameObjectsInsideCollider.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ListGameObjectsInsideCollider.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetAcceleration.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetAcceleration.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetAngularSpeed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetAngularSpeed.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetNextPosition.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetNextPosition.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentIsOnOffMeshLink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentIsOnOffMeshLink.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetAcceleration.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetAcceleration.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetAngularSpeed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetAngularSpeed.png
--------------------------------------------------------------------------------
/Screenshots/Actions/RandomPointBetweenGameObjects.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/RandomPointBetweenGameObjects.png
--------------------------------------------------------------------------------
/Screenshots/Actions/SetRuntimeAnimatorController.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/SetRuntimeAnimatorController.png
--------------------------------------------------------------------------------
/Screenshots/Components/SendEventToFSMAdvanced_OLD.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/SendEventToFSMAdvanced_OLD.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GameObjectIsVisibleAlternative.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GameObjectIsVisibleAlternative.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GetGameObjectByFsmVariableValue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GetGameObjectByFsmVariableValue.png
--------------------------------------------------------------------------------
/Screenshots/Actions/ListGameObjectsInsideCollider2D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/ListGameObjectsInsideCollider2D.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetPathEndPosition.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetPathEndPosition.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetStoppingDistance.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetStoppingDistance.png
--------------------------------------------------------------------------------
/Screenshots/Components/DontDestroyDeleteDuplicates.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Components/DontDestroyDeleteDuplicates.png
--------------------------------------------------------------------------------
/Screenshots/Actions/AndroidNativeAudioNonRedundantFile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/AndroidNativeAudioNonRedundantFile.png
--------------------------------------------------------------------------------
/Screenshots/Actions/GameObjectIsVisibleAlternative2D.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/GameObjectIsVisibleAlternative2D.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetAvoidancePriority.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetAvoidancePriority.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetRemainingDistance.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetRemainingDistance.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetAvoidancePriority.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetAvoidancePriority.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentGetAutoTraverseOffMeshLink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentGetAutoTraverseOffMeshLink.png
--------------------------------------------------------------------------------
/Screenshots/Actions/NavMeshAgentSetAutoTraverseOffMeshLink.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/justDeek/Useful-Unity-Utilities/HEAD/Screenshots/Actions/NavMeshAgentSetAutoTraverseOffMeshLink.png
--------------------------------------------------------------------------------
/Components/_Third Party/GDE/README.MD:
--------------------------------------------------------------------------------
1 | ## GDEInit.cs
2 | 
3 |
4 | Initializes the GDEItemManager on Awake(). Best kept on a persistent GameObject in your first scene.
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/uGUI Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## DebugVariableOnScreen.cs
2 | 
3 |
4 | ## DrawFullscreenColorAdvanced.cs
5 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Camera Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## ColliderIsVisible.cs
2 | 
3 |
4 | ## Collider2DIsVisible.cs
5 | 
6 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Animator Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## GetRuntimeAnimatorController.cs
2 | 
3 |
4 | ## SetRuntimeAnimatorController.cs
5 | 
6 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_Templates/README.MD:
--------------------------------------------------------------------------------
1 | ## ExampleOverview.cs
2 | 
3 |
4 | ## Template.cs
5 | 
6 |
7 | ## TemplateAdvanced.cs
8 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Enum Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## EnumGetRandom.cs
2 | 
3 |
4 | ## GetEnumAsArray.cs
5 | 
6 |
7 | ## RandomWeightedEnum.cs
8 | 
9 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Audio Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## GetAudioClipLength.cs
2 | 
3 |
4 | ## GetAudioProgress.cs
5 | 
6 |
7 | ## IntSwitchAudioClip.cs
8 | 
9 |
10 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Vector Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## Vector2OperatorAdvanced.cs
2 | 
3 |
4 | ## Vector3Compare.cs
5 | 
6 |
7 | ## Vector3OperatorAdvanced.cs
8 | 
9 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Device Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## GetDeviceLinearAcceleration.cs
2 | 
3 |
4 | ## GetDeviceRollCustom.cs
5 | 
6 |
7 | ## SwipeGestureEventAdvanced.cs
8 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Navigation Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## FindClosestAgent.cs
2 | 
3 |
4 | ## NavMeshAgentGetAreaMask.cs
5 | 
6 |
7 | ## NavMeshAgentMoveTo.cs
8 | 
9 |
10 | ## NavMeshFindClosestPoint.cs
11 | 
--------------------------------------------------------------------------------
/Components/Physics related/README.MD:
--------------------------------------------------------------------------------
1 | ## DebugSpeed.cs
2 | 
3 |
4 | - Shows valuable information of the current GameObject on screen like Acceleration, Velocity, and modifications of them (the square Magnitude and them normalized)
5 |
6 | ## SetGravityClamped.cs
7 | 
8 |
9 | - Adds a downward force to the GameObject, optionally change the Force Mode and clamp the max velocity
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Array Lists & Hash Table Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## ArrayListContainsName.cs
2 | 
3 |
4 | ## ArrayListGetLength.cs
5 | 
6 |
7 | ## ListGameObjectsInsideCollider.cs
8 | 
9 |
10 | ## ListGameObjectsInsideCollider2D.cs
11 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Logic Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## ConvertIntToLetter.cs
2 | 
3 |
4 | ## FloatCompareRange.cs
5 | 
6 |
7 | ## IntCompareRange.cs
8 | 
9 |
10 | ## IntSignTest.cs
11 | 
12 |
13 | ## IntSwitchAdvanced.cs
14 | 
15 |
16 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/System & Time Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## CountupTimer.cs
2 | 
3 |
4 | ## GetFileExtension.cs
5 | 
6 |
7 | ## GetTimeScale.cs
8 | 
9 |
10 | ## RandomWaitAroundOffset.cs
11 | 
12 |
13 | ## SetPropertyAdvanced.cs
14 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Array Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## ArrayAddGameObjectIfEnabled.cs
2 | 
3 |
4 | ## ArrayAddIfEmpty.cs
5 | 
6 |
7 | ## ArrayGetRandomAdvanced.cs
8 | 
9 |
10 | ## ArrayIsEmpty.cs
11 | 
12 |
13 | ## ArrayOperator.cs
14 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Math Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## FloatFlip.cs
2 | 
3 |
4 | ## GetPercentageInt.cs
5 | 
6 |
7 | ## GetUnsignedFloat.cs
8 | 
9 |
10 | ## GetUnsignedInt.cs
11 | 
12 |
13 | ## IntFlip.cs
14 | 
15 |
16 | ## IntRoundToNearest.cs
17 | 
18 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/StateMachine Customs/DisableThisFSM.cs:
--------------------------------------------------------------------------------
1 | //License: Attribution 4.0 International (CC BY 4.0)
2 | //Author: Deek
3 |
4 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(ActionCategory.StateMachine)]
9 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
10 | [Tooltip("Deactivate the current FSM.")]
11 | public class DisableThisFSM : FsmStateAction
12 | {
13 | public override void OnEnter()
14 | {
15 | Fsm.FsmComponent.enabled = false;
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Components/DisableOnAwake.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | ///
4 | /// Disables every GameObject tagged as "RemoveAtRuntime" (tag has to be created if it doesn't exist)
5 | ///
6 | public class DisableOnAwake : MonoBehaviour
7 | {
8 | void Awake()
9 | {
10 | GameObject[] allTaggedGOs = GameObject.FindGameObjectsWithTag("RemoveAtRuntime");
11 |
12 | if(allTaggedGOs.Length == 0)
13 | {
14 | return;
15 | }
16 |
17 | foreach(GameObject go in allTaggedGOs)
18 | {
19 | if(go != null)
20 | {
21 | go.SetActive(false);
22 | }
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/Components/PlayMaker Extension/DebugFSM/README.MD:
--------------------------------------------------------------------------------
1 | ## DebugFSM.cs
2 | 
3 |
4 | Useful for debugging FSM related information at runtime.
5 |
6 | Divided into two separate modes:
7 | States - Shows the active state and as many of the previous states as selected. Also show, how long it was in the previous state.
8 | Variables - Displays all available variables and their live-action values
9 |
10 | Most options change how and where the information is displayed.
11 | It's also possible to debug both modes on the same GameObject by using this component twice.
--------------------------------------------------------------------------------
/Components/DontDestroyDeleteDuplicates.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | ///
4 | /// Sets the GameObject this component is attached to to not be destroyed
5 | /// on scene load and removes duplicates when re-visiting scenes.
6 | ///
7 | public class DontDestroyDeleteDuplicates : MonoBehaviour
8 | {
9 | private void Awake()
10 | {
11 | if (GameObject.Find(gameObject.name)
12 | && GameObject.Find(gameObject.name) != this.gameObject)
13 | {
14 | Destroy(GameObject.Find(gameObject.name));
15 | }
16 | }
17 |
18 | private void Start()
19 | {
20 | DontDestroyOnLoad(gameObject);
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/Components/Physics related/SetGravityClamped.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | [RequireComponent(typeof(Rigidbody))]
4 | public class SetGravityClamped : MonoBehaviour
5 | {
6 |
7 | public float maxVelocity = 10;
8 | public ForceMode forceMode = ForceMode.Acceleration;
9 |
10 | private Rigidbody ownRigidbody;
11 |
12 | void Start()
13 | {
14 | ownRigidbody = this.gameObject.GetComponent();
15 | }
16 |
17 | // Update is called once per frame
18 | void FixedUpdate()
19 | {
20 | if (ownRigidbody.velocity.sqrMagnitude < maxVelocity)
21 | {
22 | ownRigidbody.AddForce(Physics.gravity, forceMode);
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/README.MD:
--------------------------------------------------------------------------------
1 | _(More Info on any specific script in its respective folder)_
2 |
3 | # TOC:
4 | ## 1. Components:
5 |
6 | Any Script that can be attached to GameObjects or Prefabs to extend their functionality.
7 |
8 | ## 2. Custom PlayMaker Actions
9 |
10 | A broad variety of custom Actions for the [PlayMaker Unity-Asset](https://www.assetstore.unity3d.com/en/#!/content/368), sorted in matching categories.
11 |
12 | ## 3. Editor Extensions
13 |
14 | Contains scripts that add to the functionality of the Unity Editor (like Windows or Options) or run in the background. Those that are in the `Editor`-Folder need to be in any `Editor`-Folder under `Assets` to function properly (preferably `Assets\Editor`).
--------------------------------------------------------------------------------
/Components/_Third Party/GDE/GDEInit.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using GameDataEditor;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | public class GDEInit : MonoBehaviour
7 | {
8 | public string GDEDataFileName;
9 |
10 | public bool Encrypted;
11 |
12 | void Reset()
13 | {
14 | GDEDataFileName = null;
15 | }
16 |
17 | void Awake()
18 | {
19 | try
20 | {
21 | if (!GDEDataManager.Init(GDEDataFileName, Encrypted))
22 | UnityEngine.Debug.LogError(GDMConstants.ErrorNotInitialized + " " + GDEDataFileName);
23 | }
24 | catch(UnityException ex)
25 | {
26 | UnityEngine.Debug.LogError(ex.ToString());
27 | }
28 | }
29 | }
30 |
31 | #endif
32 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/StateMachine Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## DisableThisFSM.cs
2 | 
3 |
4 | ## EnableFms.cs
5 | 
6 |
7 | ## GetFsmComponent.cs
8 | 
9 |
10 | ## GetGameObjectByFsmVariableValue.cs
11 | 
12 |
13 | ## RestartThisFSM.cs
14 | 
15 |
16 | ## SendEventRandomDelay.cs
17 | 
18 |
19 | ## SendEvents.cs
20 | 
21 |
22 | ## SendEventSetMulti.cs
23 | 
24 |
25 | ## SendEventSetValue.cs
26 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/String Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## BuildStringAutoConvert.cs
2 | 
3 |
4 | ## GetStringNumbers.cs
5 | 
6 |
7 | ## StringAppend.cs
8 | 
9 |
10 | ## StringCompareSetMulti.cs
11 | 
12 |
13 | ## StringContainsSwitch.cs
14 | 
15 |
16 | ## StringRemove.cs
17 | 
18 |
19 | ## StringRemoveChars.cs
20 | 
21 |
22 | ## StringReplaceEachChar.cs
23 | 
24 |
25 | ## StringSwitchCustom.cs
26 | 
27 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEGetSchemaByItem.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Store the Schema of the given Item Name.")]
10 | public class GDEGetSchemaByItem : FsmStateAction
11 | {
12 | [Tooltip("The Name of the Item in the Schema.")]
13 | public FsmString itemName;
14 |
15 | [UIHint(UIHint.Variable)]
16 | [Tooltip("The Name of the Schema to store.")]
17 | public FsmString storeSchema;
18 |
19 | public override void Reset()
20 | {
21 | itemName = null;
22 | storeSchema = null;
23 | }
24 |
25 | public override void OnEnter()
26 | {
27 | storeSchema.Value = GDEHelpers.GetSchemaByItem(itemName.Value);
28 | }
29 | }
30 | }
31 |
32 | #endif
33 |
--------------------------------------------------------------------------------
/Components/Comment.cs:
--------------------------------------------------------------------------------
1 | using System.Collections;
2 | using UnityEngine;
3 |
4 | public class Comment : MonoBehaviour {
5 |
6 | //the main comment
7 | public string text;
8 |
9 | public bool displayOnScreen = false;
10 | public Color textColor = Color.cyan;
11 | public Vector2 offset;
12 |
13 | public bool debug = false;
14 | public bool removeAtRuntime = false;
15 |
16 | void OnGUI() {
17 | if (displayOnScreen)
18 | {
19 | GUI.color = textColor;
20 | Vector2 ownerPos = Camera.main.WorldToScreenPoint(transform.position);
21 | ownerPos.y = Screen.height - ownerPos.y;
22 | var textSize = GUI.skin.label.CalcSize(new GUIContent(text));
23 | GUI.Label(new Rect(ownerPos.x + offset.x, ownerPos.y - offset.y, textSize.x, textSize.y), text);
24 | }
25 | }
26 |
27 | void Start ()
28 | {
29 | if (debug) Debug.Log(text);
30 | if (removeAtRuntime) Destroy(this);
31 | }
32 |
33 | }
34 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Array Customs/ArrayIsEmpty.cs:
--------------------------------------------------------------------------------
1 | //License: Attribution 4.0 International (CC BY 4.0)
2 | //Author: Deek
3 |
4 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(ActionCategory.Array)]
9 | [Tooltip("Send an event based on the length of an array.")]
10 | public class ArrayIsEmpty : FsmStateAction
11 | {
12 | [UIHint(UIHint.Variable)]
13 | [Tooltip("The Array Variable.")]
14 | public FsmArray array;
15 |
16 | [Tooltip("Event to send if the array is empty.")]
17 | public FsmEvent isEmpty;
18 |
19 | [Tooltip("Event to send if the array not is empty.")]
20 | public FsmEvent isNotEmpty;
21 |
22 | public override void Reset()
23 | {
24 | array = null;
25 | }
26 |
27 | public override void OnEnter()
28 | {
29 | Fsm.Event(array.Length == 0 ? isEmpty : isNotEmpty);
30 | Finish();
31 | }
32 | }
33 | }
--------------------------------------------------------------------------------
/Components/RemoveAtRuntime.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 |
3 | ///
4 | /// Removes the GameObject this is attached to immediately
5 | /// on scene load without letting it execute anything.
6 | /// Useful to remove GOs that are used for debugging at
7 | /// runtime or in build.
8 | /// Optionally remove all GOs which name contains "OBSOLETE"
9 | /// (best to only use one of this component per scene or on
10 | /// a GameObject that's persistent throughout all scenes).
11 | ///
12 | public class RemoveAtRuntime : MonoBehaviour
13 | {
14 | public bool removeOBSOLETE = false;
15 |
16 | void Awake()
17 | {
18 | if(!removeOBSOLETE)
19 | {
20 | Destroy(this.gameObject);
21 | } else
22 | {
23 | foreach(var currentGO in GameObject.FindObjectsOfType(typeof(GameObject)))
24 | {
25 | if(currentGO.name.Contains("OBSOLETE"))
26 | {
27 | Destroy(currentGO);
28 | }
29 | }
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEDebugData.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Debug all GDE Data either from the DataDictionary, the ModifiedData or both. The more data you have, " +
10 | "the longer this action will take, since it throws logs for every element in the dictionaries.")]
11 | public class GDEDebugData : FsmStateAction
12 | {
13 | [Tooltip("Which type of data to debug: DataDictionary contains all pre-defined data and ModifiedData ")]
14 | public GDEDictionary dataType;
15 |
16 | public override void Reset()
17 | {
18 | dataType = GDEDictionary.DataDictionary;
19 | }
20 |
21 | public override void OnEnter()
22 | {
23 | GDEHelpers.DebugDictionary(dataType);
24 | Finish();
25 | }
26 | }
27 | }
28 |
29 | #endif
30 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Physics & Transform Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## EnableCollider.cs
2 | 
3 |
4 | ## EnableColliderMulti.cs
5 | 
6 |
7 | ## FollowMouse2D.cs
8 | 
9 |
10 | ## GetGameObjectScreenPosition.cs
11 | 
12 |
13 | ## GetGravity2dScale.cs
14 | 
15 |
16 | ## GetPositionAddOffset.cs
17 | 
18 |
19 | ## GetRotationAddOffset.cs
20 | 
21 |
22 | ## GetScaleAddOffset.cs
23 | 
24 |
25 | ## ResetTransforms.cs
26 | 
27 |
28 | ## SetPositions.cs
29 | 
30 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEResetItem.cs:
--------------------------------------------------------------------------------
1 | using UnityEngine;
2 | using GameDataEditor;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Resets the Fields of a GDE Item to their original value.")]
10 | public class GDEResetItem : FsmStateAction
11 | {
12 | [RequiredField]
13 | [UIHint(UIHint.FsmString)]
14 | [Tooltip(GDMConstants.ItemNameTooltip)]
15 | public FsmString ItemName;
16 |
17 | public override void Reset()
18 | {
19 | ItemName = null;
20 | }
21 |
22 | public override void OnEnter()
23 | {
24 | try
25 | {
26 | GDEDataManager.ResetToDefault(ItemName.Value);
27 | } catch(UnityException ex)
28 | {
29 | LogError(string.Format(GDMConstants.ErrorResettingValue, ItemName.Value));
30 | LogError(ex.ToString());
31 | } finally
32 | {
33 | Finish();
34 | }
35 | }
36 | }
37 | }
38 |
39 | #endif
40 |
41 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Random Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## RandomCharacters.cs
2 | 
3 |
4 | ## RandomFloatAroundRange.cs
5 | 
6 |
7 | ## RandomFloatOnSlope.cs
8 | 
9 |
10 | ## RandomIntAroundRange.cs
11 | 
12 |
13 | ## RandomPointBetweenGameObjects.cs
14 | 
15 |
16 | ## RandomPointOnSlope.cs
17 | 
18 |
19 | ## RandomWaitCustom.cs
20 | 
21 |
22 | ## RandomWeightedVector3.cs
23 | 
24 |
25 | ## SelectRandomAudioClip.cs
26 | 
27 |
28 | ## SelectRandomObject.cs
29 | 
30 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/NGUI Customs/README.MD:
--------------------------------------------------------------------------------
1 | ## NguiGetWidgetDetails.cs
2 | 
3 |
4 | ## NguiLabelSetTextAdvanced.cs
5 | 
6 |
7 | ## NguiSetSpriteMultiple.cs
8 | 
9 |
10 | ## NguiSetSpriteSize.cs
11 | 
12 |
13 | ## NguiSetWidgetAlphaMulti.cs
14 | 
15 |
16 | ## NguiSetWidgetColor.cs
17 | 
18 |
19 | ## NguiSetWidgetDetails.cs
20 | 
21 |
22 | ## NguiSpriteIsVisible.cs
23 | 
24 |
25 | ## NguiToolsAddChildAdvanced.cs
26 | 
27 |
28 | ## NguiToolsDestroyMulti.cs
29 | 
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/GameObject & UnityObject Customs/EnableChildren.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | using UnityEngine;
6 |
7 | namespace HutongGames.PlayMaker.Actions
8 | {
9 | [ActionCategory(ActionCategory.GameObject)]
10 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
11 | [Tooltip("Enables/Disables all children from the specified parent.")]
12 | public class EnableChildren : FsmStateAction
13 | {
14 | [RequiredField]
15 | [Tooltip("GameObject to change the children off of.")]
16 | public FsmOwnerDefault parent;
17 |
18 | public bool enable;
19 |
20 | public override void Reset()
21 | {
22 | parent = null;
23 | enable = true;
24 | }
25 |
26 | public override void OnEnter()
27 | {
28 | var go = Fsm.GetOwnerDefaultTarget(parent);
29 |
30 | if(go != null)
31 | {
32 | foreach(Transform child in go.transform)
33 | {
34 | child.gameObject.SetActive(enable);
35 | }
36 | }
37 | Finish();
38 | }
39 |
40 | }
41 | }
42 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDECountOccurrences.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Returns the amount of all data found by the given search-parameters.")]
10 | public class GDECountOccurrences : FsmStateAction
11 | {
12 | [Tooltip("What type of data to search for.")]
13 | public GDEDataType dataType;
14 |
15 | [RequiredField]
16 | [Tooltip("Search for elements containing this String.")]
17 | public FsmString contains;
18 |
19 | [Tooltip("Only search within this Schema.")]
20 | public FsmString schema;
21 |
22 | [UIHint(UIHint.Variable)]
23 | public FsmInt result;
24 |
25 | public override void Reset()
26 | {
27 | dataType = GDEDataType.Item;
28 | contains = null;
29 | result = null;
30 | }
31 |
32 | public override void OnEnter()
33 | {
34 | result.Value = GDEHelpers.CountOccurrences(dataType, contains.Value, schema.Value);
35 | Finish();
36 | }
37 | }
38 | }
39 |
40 | #endif
41 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEBoolFlip.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Inverts a GDE bool value and optionally saves the result.")]
10 | public class GDEBoolFlip : FsmStateAction
11 | {
12 | [RequiredField]
13 | public FsmString itemName;
14 |
15 | [RequiredField]
16 | public FsmString fieldName;
17 |
18 | [UIHint(UIHint.Variable)]
19 | [Tooltip("Optionally store the bool variable.")]
20 | public FsmBool storeBoolResult;
21 |
22 | [Tooltip("Save the GDE data after flipping the bool value.")]
23 | public FsmBool save;
24 |
25 | public override void Reset()
26 | {
27 | itemName = null;
28 | fieldName = null;
29 | storeBoolResult = null;
30 | save = true;
31 | }
32 |
33 | public override void OnEnter()
34 | {
35 | storeBoolResult.Value = GDEHelpers.BoolFlip(itemName.Value, fieldName.Value);
36 |
37 | if(save.Value) GDEHelpers.Save();
38 | Finish();
39 | }
40 | }
41 | }
42 |
43 | #endif
44 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDESwapItems.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Swaps two items by their name in the same Schema.")]
10 | public class GDESwapItems : FsmStateAction
11 | {
12 | [RequiredField]
13 | public FsmString schema;
14 |
15 | [RequiredField]
16 | [Tooltip(GDMConstants.ItemNameTooltip)]
17 | public FsmString itemName;
18 |
19 | [RequiredField]
20 | [Tooltip("Specify the Item Name that's supposed to swap values with the other one.")]
21 | public FsmString swapWith;
22 |
23 | [Tooltip("Wheter to save the GDE data afterwards.")]
24 | public FsmBool save;
25 |
26 | public override void Reset()
27 | {
28 | schema = null;
29 | itemName = null;
30 | swapWith = null;
31 | save = true;
32 | }
33 |
34 | public override void OnEnter()
35 | {
36 | GDEHelpers.SwapItems(schema.Value, itemName.Value, swapWith.Value, save.Value);
37 | Finish();
38 | }
39 | }
40 | }
41 |
42 | #endif
43 |
44 |
--------------------------------------------------------------------------------
/Components/FPSCounter.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using UnityEngine;
3 | using UnityEngine.UI;
4 |
5 | public class FPSCounter : MonoBehaviour
6 | {
7 | public Color _color = new Color32(1, 35, 56, 255);
8 | public Vector2 _position = new Vector2(17, 11);
9 | public Vector2 _size = new Vector2(100, 20);
10 |
11 | const float fpsMeasurePeriod = 0.5f;
12 | private int m_FpsAccumulator = 0;
13 | private float m_FpsNextPeriod = 0;
14 | private int m_CurrentFps;
15 | const string display = "{0} FPS";
16 | private string fps = "";
17 |
18 | void OnGUI()
19 | {
20 | GUI.color = _color;
21 | GUI.Label(new Rect(_position.x, _position.y, _size.x, _size.y), fps);
22 | }
23 |
24 | private void Start()
25 | {
26 | m_FpsNextPeriod = Time.realtimeSinceStartup + fpsMeasurePeriod;
27 | }
28 |
29 |
30 | void Update()
31 | {
32 | // measure average frames per second
33 | m_FpsAccumulator++;
34 | if(Time.realtimeSinceStartup > m_FpsNextPeriod)
35 | {
36 | m_CurrentFps = (int)(m_FpsAccumulator / fpsMeasurePeriod);
37 | m_FpsAccumulator = 0;
38 | m_FpsNextPeriod += fpsMeasurePeriod;
39 | fps = string.Format(display, m_CurrentFps);
40 | }
41 | }
42 | }
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDERemoveItem.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Removes an item from the runtime data.")]
10 | public class GDERemoveItem : FsmStateAction
11 | {
12 | [Tooltip("The Name of the Item to remove.")]
13 | public FsmString itemName;
14 |
15 | [Tooltip("Should be saved afterwards? If not you can still save later, otherwise changes will be discarded when restarting the game/project.")]
16 | public FsmBool save;
17 |
18 | [ActionSection("Result")]
19 | [Tooltip("Wheter removing the item was successful.")]
20 | public FsmEvent success;
21 |
22 | [Tooltip("Wheter removing the item failed.")]
23 | public FsmEvent failure;
24 |
25 | public override void Reset()
26 | {
27 | itemName = null;
28 | save = true;
29 | success = null;
30 | failure = null;
31 | }
32 |
33 | public override void OnEnter()
34 | {
35 | if(GDEHelpers.RemoveItem(itemName.Value, save.Value, false))
36 | Fsm.Event(success);
37 | else
38 | Fsm.Event(failure);
39 |
40 | Finish();
41 | }
42 | }
43 | }
44 |
45 | #endif
46 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDESwapFieldValues.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Swaps the Field values of two Items by Schema.")]
10 | public class GDESwapFieldValues : FsmStateAction
11 | {
12 | [RequiredField]
13 | [Tooltip(GDMConstants.ItemNameTooltip)]
14 | public FsmString firstItemName;
15 |
16 | [RequiredField]
17 | public FsmString firstFieldName;
18 |
19 | [ActionSection("Swap With")]
20 | [RequiredField]
21 | [Tooltip(GDMConstants.ItemNameTooltip)]
22 | public FsmString secondItemName;
23 |
24 | [RequiredField]
25 | public FsmString secondFieldName;
26 |
27 | [Tooltip("Wheter to save the GDE data afterwards.")]
28 | public FsmBool save;
29 |
30 | public override void Reset()
31 | {
32 | firstItemName = null;
33 | firstFieldName = null;
34 | secondItemName = null;
35 | secondFieldName = null;
36 | save = true;
37 | }
38 |
39 | public override void OnEnter()
40 | {
41 | GDEHelpers.SwapFieldValues(firstItemName.Value, firstFieldName.Value,
42 | secondItemName.Value, secondFieldName.Value, save.Value);
43 | Finish();
44 | }
45 | }
46 | }
47 |
48 | #endif
49 |
50 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/System & Time Customs/GetFileExtension.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | using System.IO;
6 | using UnityEngine;
7 |
8 | namespace HutongGames.PlayMaker.Actions
9 | {
10 | [ActionCategory("System")]
11 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
12 | [Tooltip("Returns the file-extension of an Asset at the speficied path.")]
13 | public class GetFileExtension : FsmStateAction
14 | {
15 | [Tooltip("Set the path the file is at, starting after Assets (/Some/File/At/foo.extension).")]
16 | public FsmString path;
17 |
18 | [UIHint(UIHint.Variable)]
19 | [Tooltip("The file-extension.")]
20 | public FsmString extension;
21 |
22 | public override void Reset()
23 | {
24 | path = null;
25 | extension = null;
26 | }
27 |
28 | public override void OnEnter()
29 | {
30 |
31 | if(path.Value != null && path.Value != "")
32 | {
33 | extension.Value = Path.GetExtension(path.Value);
34 | if(extension.IsNone)
35 | {
36 | Debug.LogWarning("GetFileExtension.cs: File couldn't be found!");
37 | }
38 | } else
39 | {
40 | Debug.LogWarning("GetFileExtension.cs: File-Path is empty!");
41 | }
42 |
43 | Finish();
44 | }
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_Templates/Template.cs:
--------------------------------------------------------------------------------
1 | //License: Attribution 4.0 International (CC BY 4.0)
2 | //Author:
3 |
4 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
5 |
6 | using UnityEngine;
7 |
8 | namespace HutongGames.PlayMaker.Actions
9 | {
10 | [ActionCategory(ActionCategory.Logic)]
11 | [Tooltip("")]
12 | public class Template : FsmStateAction
13 | {
14 | [RequiredField]
15 | [Tooltip("")]
16 | public FsmOwnerDefault gameObject;
17 |
18 | //-- insert further variables --
19 |
20 | [Tooltip("Wheter to repeat this action on every frame or only once.")]
21 | public FsmBool everyFrame;
22 |
23 | private GameObject go;
24 |
25 | public override void Reset()
26 | {
27 | gameObject = null;
28 | //-- insert default values for further variables --//
29 | everyFrame = false;
30 | }
31 |
32 | public override void OnEnter()
33 | {
34 | DoTemplate();
35 |
36 | if(!everyFrame.Value) Finish();
37 | }
38 |
39 | public override void OnUpdate()
40 | {
41 | DoTemplate();
42 | }
43 |
44 | private void DoTemplate()
45 | {
46 | go = Fsm.GetOwnerDefaultTarget(gameObject);
47 |
48 | if(!go)
49 | {
50 | UnityEngine.Debug.LogError("GameObject is null!");
51 | return;
52 | }
53 |
54 | //-- insert main code --//
55 | }
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/Editor Extensions/Editor/ToolsMenu/README.MD:
--------------------------------------------------------------------------------
1 | ## ToolsScenesMenu.cs
2 | 
3 |
4 | A custom Menu for several useful Scene-based shortcuts:
5 |
6 | - Scene Summary: The Documentation Example that displays all active scenes and all information about them
7 | - Load Previous Scene: Load the previous Scene from the currently active one (based on Build Index)
8 | - Load Next Scene: Load the next Scene from the currently active one (based on Build Index)
9 | - Load First Scene: Load the first Scene (Build Index = 0)
10 | - Load Second Scene: Load the second Scene (Build Index = 1)
11 | - Load Third Scene: Load the third Scene (Build Index = 2)
12 | - Load Fourth Scene: Load the fourth Scene (Build Index = 3)
13 | - Load Fifth Scene: Load the fifth Scene (Build Index = 4)
14 | - Load Sixth Scene: Load the sixth Scene (Build Index = 5)
15 | - Load Seventh Scene: Load the seventh Scene (Build Index = 6)
16 | - Load Eigth Scene: Load the eigth Scene (Build Index = 7)
17 | - Load Ninth Scene: Load the ninth Scene (Build Index = 8)
18 | - Load Last Scene: Load the last Scene (last Build Index)
19 |
20 | ```
21 | You should keep in mind that if you load scenes with these options you don't get a prompt for saving a changed scenes,
22 | all changes will be discarded (wich can be boon or bane, depending on wheter you want it or not)
23 | ```
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Random Customs/SelectRandomObject.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | namespace HutongGames.PlayMaker.Actions
6 | {
7 | [ActionCategory("Random")]
8 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
9 | [Tooltip("Selects a Random Object from an array of Objects.")]
10 | public class SelectRandomObject : FsmStateAction
11 | {
12 | [CompoundArray("Objects", "Object", "Weight")]
13 | public FsmObject[] objects;
14 | [HasFloatSlider(0, 1)]
15 | public FsmFloat[] weights;
16 | [RequiredField]
17 | [UIHint(UIHint.Variable)]
18 | public FsmObject storeObject;
19 |
20 | public override void Reset()
21 | {
22 | objects = new FsmObject[3];
23 | weights = new FsmFloat[] { 1, 1, 1 };
24 | storeObject = null;
25 | }
26 |
27 | public override void OnEnter()
28 | {
29 | DoSelectRandomObject();
30 | Finish();
31 | }
32 |
33 | void DoSelectRandomObject()
34 | {
35 | if(objects == null) return;
36 | if(objects.Length == 0) return;
37 | if(storeObject == null) return;
38 |
39 | int randomIndex = ActionHelpers.GetRandomWeightedIndex(weights);
40 |
41 | if(randomIndex != -1)
42 | {
43 | storeObject.Value = objects[randomIndex].Value;
44 | }
45 |
46 | }
47 | }
48 | }
49 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Math Customs/IntFlip.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | namespace HutongGames.PlayMaker.Actions
6 | {
7 | [ActionCategory(ActionCategory.Math)]
8 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
9 | [Tooltip("Inverts the sign of an int variable. If the given int is positive, it gets flipped and becomes negative and vice versa.")]
10 | public class IntFlip : FsmStateAction
11 | {
12 | [RequiredField]
13 | [UIHint(UIHint.Variable)]
14 | [Tooltip("The int variable to divide.")]
15 | public FsmInt intVariable;
16 |
17 | [RequiredField]
18 | [UIHint(UIHint.Variable)]
19 | [Tooltip("The flipped result.")]
20 | public FsmInt result;
21 |
22 | [Tooltip("Repeat every Frame. Useful if the variables are changing.")]
23 | public bool everyFrame;
24 |
25 | public override void Reset()
26 | {
27 | intVariable = null;
28 | result = null;
29 | everyFrame = false;
30 | }
31 |
32 | public override void OnEnter()
33 | {
34 | DoFlip();
35 |
36 | if(!everyFrame)
37 | {
38 | Finish();
39 | }
40 | }
41 |
42 | public override void OnUpdate()
43 | {
44 | DoFlip();
45 | }
46 |
47 | void DoFlip()
48 | {
49 | result.Value = intVariable.Value * (-1);
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Math Customs/FloatFlip.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | namespace HutongGames.PlayMaker.Actions
6 | {
7 | [ActionCategory(ActionCategory.Math)]
8 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
9 | [Tooltip("Inverts the sign of a float variable. If the given float is positive, it gets flipped and becomes negative and vice versa.")]
10 | public class FloatFlip : FsmStateAction
11 | {
12 | [RequiredField]
13 | [UIHint(UIHint.Variable)]
14 | [Tooltip("The float variable to divide.")]
15 | public FsmFloat floatVariable;
16 |
17 | [RequiredField]
18 | [UIHint(UIHint.Variable)]
19 | [Tooltip("The flipped result.")]
20 | public FsmFloat result;
21 |
22 | [Tooltip("Repeat every Frame. Useful if the variables are changing.")]
23 | public bool everyFrame;
24 |
25 | public override void Reset()
26 | {
27 | floatVariable = null;
28 | result = null;
29 | everyFrame = false;
30 | }
31 |
32 | public override void OnEnter()
33 | {
34 | DoFlip();
35 |
36 | if(!everyFrame)
37 | {
38 | Finish();
39 | }
40 | }
41 |
42 | public override void OnUpdate()
43 | {
44 | DoFlip();
45 | }
46 |
47 | void DoFlip()
48 | {
49 | result.Value = floatVariable.Value * (-1);
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEAddString.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Concatenates the specified String with the prevalent one. Optionally choose to add it to the end or beginning and save afterwards.")]
10 | public class GDEAddString : FsmStateAction
11 | {
12 | [RequiredField]
13 | [Tooltip(GDMConstants.ItemNameTooltip)]
14 | public FsmString ItemName;
15 |
16 | [RequiredField]
17 | [Tooltip(GDMConstants.FieldNameTooltip)]
18 | public FsmString FieldName;
19 |
20 | [Tooltip("The String value to add to the one found at the Item- & Field-Name.")]
21 | public FsmString stringToAdd;
22 |
23 | [Tooltip("Wheter to add the string to the end (true) or beginning (false).")]
24 | public FsmBool addToEnd;
25 |
26 | [Tooltip("Wheter to save the GDE data afterwards.")]
27 | public FsmBool save;
28 |
29 | public override void Reset()
30 | {
31 | ItemName = null;
32 | FieldName = null;
33 | stringToAdd = "";
34 | addToEnd = true;
35 | save = true;
36 | }
37 |
38 | public override void OnEnter()
39 | {
40 | GDEHelpers.AddString(ItemName.Value, FieldName.Value, stringToAdd.Value, addToEnd.Value, save.Value);
41 | Finish();
42 | }
43 | }
44 | }
45 |
46 | #endif
47 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEListMultipleFieldValues.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 | using iDecay.PlayMaker;
4 | using System.Collections.Generic;
5 |
6 | #if GDE_PLAYMAKER_SUPPORT
7 |
8 | namespace HutongGames.PlayMaker.Actions
9 | {
10 | [ActionCategory(GDMConstants.ActionCategory)]
11 | [Tooltip("Returns multiple Field Values by given Item Name and certain Field Names.")]
12 | public class GDEListMultipleFieldValues : FsmStateAction
13 | {
14 | [RequiredField]
15 | [Tooltip("Name of the GDEItem.")]
16 | public FsmString itemName;
17 |
18 | [RequiredField]
19 | [Tooltip("The names of the Fields to get their value of.")]
20 | public FsmString[] fieldNames;
21 |
22 | [RequiredField]
23 | [UIHint(UIHint.Variable)]
24 | public FsmArray result;
25 |
26 | [Tooltip("Event to send if no Fields could be found.")]
27 | public FsmEvent noneFoundEvent;
28 |
29 | public override void Reset()
30 | {
31 | itemName = null;
32 | fieldNames = new FsmString[0];
33 | result = null;
34 | }
35 |
36 | public override void OnEnter()
37 | {
38 | result.Reset();
39 |
40 | foreach(var fieldName in fieldNames)
41 | {
42 | result.Add(GDEHelpers.GetFieldValue(itemName.Value, fieldName.Value));
43 | }
44 |
45 | if(result.Length == 0)
46 | Fsm.Event(noneFoundEvent);
47 |
48 | Finish();
49 | }
50 | }
51 | }
52 |
53 | #endif
54 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/GameObject & UnityObject Customs/DestroyChildren.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | using UnityEngine;
6 |
7 | namespace HutongGames.PlayMaker.Actions
8 | {
9 | [ActionCategory(ActionCategory.GameObject)]
10 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
11 | [Tooltip("Destroys all children from the specified GameObject.")]
12 | public class DestroyChildren : FsmStateAction
13 | {
14 | [RequiredField]
15 | [Tooltip("GameObject to destroy children from.")]
16 | public FsmOwnerDefault gameObject;
17 |
18 | public override void Reset()
19 | {
20 | gameObject = null;
21 | }
22 |
23 | public override void OnEnter()
24 | {
25 | DoDestroyChildren(Fsm.GetOwnerDefaultTarget(gameObject));
26 |
27 | Finish();
28 | }
29 |
30 | public void DoDestroyChildren(GameObject go)
31 | {
32 | if(go != null)
33 | {
34 | Transform t = go.transform;
35 |
36 | bool isPlaying = Application.isPlaying;
37 |
38 | while(t.childCount != 0)
39 | {
40 | Transform child = t.GetChild(0);
41 |
42 | if(isPlaying)
43 | {
44 | child.parent = null;
45 | UnityEngine.Object.Destroy(child.gameObject);
46 | } else
47 | UnityEngine.Object.DestroyImmediate(child.gameObject);
48 | }
49 | }
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Math Customs/GetPercentageInt.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | //Author: Deek
4 |
5 | using UnityEngine;
6 |
7 | namespace HutongGames.PlayMaker.Actions
8 | {
9 | [ActionCategory(ActionCategory.Math)]
10 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
11 | [Tooltip("Returns the percentage of a base Integer and the current value by dividing the value by the base and multiplying it by 100.")]
12 | public class GetPercentageInt : FsmStateAction
13 | {
14 | [RequiredField]
15 | public FsmInt _value;
16 |
17 | [RequiredField]
18 | public FsmInt _base;
19 |
20 | [RequiredField]
21 | [UIHint(UIHint.Variable)]
22 | public FsmInt storeResult;
23 |
24 | public bool everyFrame;
25 |
26 | public override void Reset()
27 | {
28 | _value = null;
29 | _base = null;
30 | storeResult = null;
31 | everyFrame = false;
32 | }
33 |
34 | public override void OnEnter()
35 | {
36 | DoGetPercentage();
37 |
38 | if (!everyFrame)
39 | Finish();
40 | }
41 |
42 | public override void OnUpdate()
43 | {
44 | DoGetPercentage();
45 | }
46 |
47 | void DoGetPercentage()
48 | {
49 | storeResult.Value = Mathf.RoundToInt(_value.Value / _base.Value * 100);
50 | }
51 | }
52 | }
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEVector3Operator.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Performs an operation on the specified Field value. Optionally save afterwards.")]
10 | public class GDEVector3Operator : FsmStateAction
11 | {
12 | [RequiredField]
13 | [Tooltip(GDMConstants.ItemNameTooltip)]
14 | public FsmString ItemName;
15 |
16 | [RequiredField]
17 | [Tooltip(GDMConstants.FieldNameTooltip)]
18 | public FsmString FieldName;
19 |
20 | [Tooltip("What operation should be performed on the field value.")]
21 | public GDEOperation operation;
22 |
23 | [Tooltip("The float value to add to the one found at the Item- & Field-Name.")]
24 | public FsmVector3 value;
25 |
26 | [Tooltip("Wheter to save the GDE data afterwards.")]
27 | public FsmBool save;
28 |
29 | public override void Reset()
30 | {
31 | ItemName = null;
32 | FieldName = null;
33 | operation = GDEOperation.Add;
34 | value = UnityEngine.Vector3.one;
35 | save = true;
36 | }
37 |
38 | public override void OnEnter()
39 | {
40 | GDEHelpers.GDEOperator(ItemName.Value, FieldName.Value, GDEFieldType.Vector3, operation, value.Value);
41 |
42 | if(save.Value) GDEHelpers.Save();
43 | Finish();
44 | }
45 | }
46 | }
47 |
48 | #endif
49 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEVector2Operator.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Performs an operation on the specified Field value. Optionally save afterwards.")]
10 | public class GDEVector2Operator : FsmStateAction
11 | {
12 | [RequiredField]
13 | [Tooltip(GDMConstants.ItemNameTooltip)]
14 | public FsmString ItemName;
15 |
16 | [RequiredField]
17 | [Tooltip(GDMConstants.FieldNameTooltip)]
18 | public FsmString FieldName;
19 |
20 | [Tooltip("What operation should be performed on the field value.")]
21 | public GDEOperation operation;
22 |
23 | [Tooltip("The Vector2 value to add to the one found at the Item- & Field-Name.")]
24 | public FsmVector2 value;
25 |
26 | [Tooltip("Wheter to save the GDE data afterwards.")]
27 | public FsmBool save;
28 |
29 | public override void Reset()
30 | {
31 | ItemName = null;
32 | FieldName = null;
33 | operation = GDEOperation.Add;
34 | value = UnityEngine.Vector2.one;
35 | save = true;
36 | }
37 |
38 | public override void OnEnter()
39 | {
40 | GDEHelpers.GDEOperator(ItemName.Value, FieldName.Value, GDEFieldType.Vector2, operation, value.Value);
41 |
42 | if(save.Value) GDEHelpers.Save();
43 | Finish();
44 | }
45 | }
46 | }
47 |
48 | #endif
49 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDEVector4Operator.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Performs an operation on the specified Field value. Optionally save afterwards.")]
10 | public class GDEVector4Operator : FsmStateAction
11 | {
12 | [RequiredField]
13 | [Tooltip(GDMConstants.ItemNameTooltip)]
14 | public FsmString ItemName;
15 |
16 | [RequiredField]
17 | [Tooltip(GDMConstants.FieldNameTooltip)]
18 | public FsmString FieldName;
19 |
20 | [Tooltip("What operation should be performed on the field value.")]
21 | public GDEOperation operation;
22 |
23 | [Tooltip("The float value to add to the one found at the Item- & Field-Name.")]
24 | public UnityEngine.Vector4 value;
25 |
26 | [Tooltip("Wheter to save the GDE data afterwards.")]
27 | public FsmBool save;
28 |
29 | public override void Reset()
30 | {
31 | ItemName = null;
32 | FieldName = null;
33 | operation = GDEOperation.Add;
34 | value = UnityEngine.Vector4.one;
35 | save = true;
36 | }
37 |
38 | public override void OnEnter()
39 | {
40 | GDEHelpers.GDEOperator(ItemName.Value, FieldName.Value, GDEFieldType.Vector4, operation, value);
41 |
42 | if(save.Value) GDEHelpers.Save();
43 | Finish();
44 | }
45 | }
46 | }
47 |
48 | #endif
49 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_ThirdParty/GDE Customs/GDERemoveString.cs:
--------------------------------------------------------------------------------
1 | using GameDataEditor;
2 | using iDecay.GDE;
3 |
4 | #if GDE_PLAYMAKER_SUPPORT
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(GDMConstants.ActionCategory)]
9 | [Tooltip("Removes the specified String from the prevalent one. Optionally choose to add it to the end or beginning and save afterwards.")]
10 | public class GDERemoveString : FsmStateAction
11 | {
12 | [RequiredField]
13 | [Tooltip(GDMConstants.ItemNameTooltip)]
14 | public FsmString ItemName;
15 |
16 | [RequiredField]
17 | [Tooltip(GDMConstants.FieldNameTooltip)]
18 | public FsmString FieldName;
19 |
20 | [Tooltip("The String value to add to the one found at the Item- & Field-Name.")]
21 | public FsmString stringToRemove;
22 | [Tooltip("Wheter to add the string to the end (true) or beginning (false).")]
23 | public FsmBool removeFromEnd;
24 |
25 | [Tooltip("Wheter to save the GDE data afterwards.")]
26 | public FsmBool save;
27 |
28 | public override void Reset()
29 | {
30 | ItemName = null;
31 | FieldName = null;
32 | stringToRemove = "";
33 | removeFromEnd = true;
34 | save = true;
35 | }
36 |
37 | public override void OnEnter()
38 | {
39 | GDEHelpers.RemoveString(ItemName.Value, FieldName.Value,
40 | stringToRemove.Value, removeFromEnd.Value, save.Value);
41 | Finish();
42 | }
43 | }
44 | }
45 |
46 | #endif
47 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/GameObject & UnityObject Customs/GetObjectName.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | namespace HutongGames.PlayMaker.Actions
6 | {
7 | [ActionCategory(ActionCategory.GameObject)]
8 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
9 | [Tooltip("Gets the name of an Object and stores it in a String Variable.")]
10 | public class GetObjectName : FsmStateAction
11 | {
12 | [RequiredField]
13 | [Tooltip("The Object to get the name of.")]
14 | public FsmObject specifyObject;
15 |
16 | [RequiredField]
17 | [UIHint(UIHint.Variable)]
18 | [Tooltip("The Name of the specified Object.")]
19 | public FsmString storeName;
20 |
21 | public bool everyFrame;
22 |
23 | public override void Reset()
24 | {
25 | specifyObject = new FsmObject { UseVariable = true };
26 | storeName = null;
27 | everyFrame = false;
28 | }
29 |
30 | public override void OnEnter()
31 | {
32 | DoGetObjectName();
33 |
34 | if(!everyFrame)
35 | {
36 | Finish();
37 | }
38 | }
39 |
40 | public override void OnUpdate()
41 | {
42 | DoGetObjectName();
43 | }
44 |
45 | void DoGetObjectName()
46 | {
47 | if(!specifyObject.Value)
48 | {
49 | LogError("Object is null!");
50 | }
51 |
52 | var obj = specifyObject.Value;
53 |
54 | storeName.Value = obj.name;
55 | }
56 | }
57 | }
58 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Physics & Transform Customs/GetGravity2dScale.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | //Author: Deek
3 |
4 | using UnityEngine;
5 |
6 | namespace HutongGames.PlayMaker.Actions
7 | {
8 | [ActionCategory(ActionCategory.Physics2D)]
9 | [Tooltip("Gets The degree to which this object is affected by gravity. NOTE: Game object must have a rigidbody 2D.")]
10 | public class GetGravity2dScale : ComponentAction
11 | {
12 | [RequiredField]
13 | [CheckForComponent(typeof(Rigidbody2D))]
14 | [Tooltip("The GameObject with a Rigidbody 2d attached")]
15 | public FsmOwnerDefault gameObject;
16 |
17 | [UIHint(UIHint.Variable)]
18 | [RequiredField]
19 | [Tooltip("The gravity scale effect")]
20 | public FsmFloat result;
21 |
22 | public FsmBool everyFrame;
23 |
24 | public override void Reset()
25 | {
26 | gameObject = null;
27 | result = null;
28 | everyFrame = false;
29 | }
30 |
31 | public override void OnEnter()
32 | {
33 | DoGetGravityScale();
34 |
35 | if(!everyFrame.Value) Finish();
36 | }
37 |
38 | public override void OnUpdate()
39 | {
40 | DoGetGravityScale();
41 | }
42 |
43 | void DoGetGravityScale()
44 | {
45 | var go = Fsm.GetOwnerDefaultTarget(gameObject);
46 | if (!UpdateCache(go)) return;
47 |
48 | result.Value = rigidbody2d.gravityScale;
49 | }
50 | }
51 | }
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Sprite customs/SpriteGetName.cs:
--------------------------------------------------------------------------------
1 | //License: Attribution 4.0 International (CC BY 4.0)
2 | //Author: Deek
3 |
4 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
5 |
6 | using UnityEngine;
7 |
8 | namespace HutongGames.PlayMaker.Actions
9 | {
10 | [ActionCategory("Sprite")]
11 | [Tooltip("Get the name of a Unity Sprite.")]
12 | public class SpriteGetName : FsmStateAction
13 | {
14 | [RequiredField]
15 | [ObjectType(typeof(Sprite))]
16 | [Tooltip("The sprite to get the name of.")]
17 | public FsmObject sprite;
18 |
19 | [UIHint(UIHint.Variable)]
20 | [Tooltip("Store the name of the sprite in a variable.")]
21 | public FsmString result;
22 |
23 | [Tooltip("Wheter to repeat this action on every frame or only once.")]
24 | public FsmBool everyFrame;
25 |
26 | public override void Reset()
27 | {
28 | sprite = new FsmObject { UseVariable = true };
29 | result = null;
30 | everyFrame = false;
31 | }
32 |
33 | public override void OnEnter()
34 | {
35 | DoGetSpriteName();
36 |
37 | if(!everyFrame.Value) Finish();
38 | }
39 |
40 | public override void OnUpdate()
41 | {
42 | DoGetSpriteName();
43 | }
44 |
45 | private void DoGetSpriteName()
46 | {
47 | if(sprite == null)
48 | {
49 | Debug.LogError("Sprite is null!");
50 | return;
51 | }
52 |
53 | result.Value = sprite.Value.name;
54 | }
55 | }
56 | }
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/System & Time Customs/GetTimeScale.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | using UnityEngine;
6 |
7 | namespace HutongGames.PlayMaker.Actions
8 | {
9 | [ActionCategory(ActionCategory.Time)]
10 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
11 | [Tooltip("Get the current TimeScale (the time at wich the game operates at).")]
12 | public class GetTimeScale : FsmStateAction
13 | {
14 | [UIHint(UIHint.Variable)]
15 | [Tooltip("Store the current GameTime (1 by default).")]
16 | public FsmFloat currentTimeScale;
17 |
18 | [UIHint(UIHint.Variable)]
19 | [Tooltip("Get the intervall (in s) at wich physics and other fixed frame rate operates.")]
20 | public FsmFloat fixedDeltaTime;
21 |
22 | [Tooltip("Repeat every frame.")]
23 | public bool everyFrame;
24 |
25 | public override void Reset()
26 | {
27 | currentTimeScale = new FsmFloat() { UseVariable = true };
28 | fixedDeltaTime = null;
29 | everyFrame = false;
30 | }
31 |
32 | public override void OnEnter()
33 | {
34 | DoTimeScale();
35 |
36 | if(!everyFrame)
37 | {
38 | Finish();
39 | }
40 | }
41 | public override void OnUpdate()
42 | {
43 | DoTimeScale();
44 | }
45 |
46 | void DoTimeScale()
47 | {
48 | currentTimeScale.Value = Time.timeScale;
49 | fixedDeltaTime.Value = Time.fixedDeltaTime;
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Random Customs/SelectRandomAudioClip.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | using UnityEngine;
6 |
7 | namespace HutongGames.PlayMaker.Actions
8 | {
9 | [ActionCategory("Random")]
10 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
11 | [Tooltip("Selects a Random AudioClip from an array of AudioClip.")]
12 | public class SelectRandomAudioClip : FsmStateAction
13 | {
14 | [CompoundArray("Objects", "Object", "Weight")]
15 | [ObjectType(typeof(AudioClip))]
16 | public FsmObject[] objects;
17 | [HasFloatSlider(0, 1)]
18 | public FsmFloat[] weights;
19 | [RequiredField]
20 | [UIHint(UIHint.Variable)]
21 | [ObjectType(typeof(AudioClip))]
22 | public FsmObject storeObject;
23 |
24 | public override void Reset()
25 | {
26 | objects = new FsmObject[3];
27 | weights = new FsmFloat[] { 1, 1, 1 };
28 | storeObject = null;
29 | }
30 |
31 | public override void OnEnter()
32 | {
33 | DoSelectRandomObject();
34 | Finish();
35 | }
36 |
37 | void DoSelectRandomObject()
38 | {
39 | if(objects == null) return;
40 | if(objects.Length == 0) return;
41 | if(storeObject == null) return;
42 |
43 | int randomIndex = ActionHelpers.GetRandomWeightedIndex(weights);
44 |
45 | if(randomIndex != -1)
46 | {
47 | storeObject.Value = objects[randomIndex].Value;
48 | }
49 |
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/GameObject & UnityObject Customs/ToggleComponent.cs:
--------------------------------------------------------------------------------
1 | //License: Attribution 4.0 International (CC BY 4.0)
2 | //Author: Deek
3 |
4 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
5 |
6 | using UnityEngine;
7 |
8 | namespace HutongGames.PlayMaker.Actions
9 | {
10 | [ActionCategory(ActionCategory.Logic)]
11 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
12 | [Tooltip("Enables a Component if it's disabled and vice versa.")]
13 | public class ToggleComponent : FsmStateAction
14 | {
15 | [RequiredField]
16 | [Tooltip("The component to toggle. Supports scripts, colliders and renderer.")]
17 | public FsmObject component;
18 |
19 | [Tooltip("Wheter to run this action every frame or only once.")]
20 | public FsmBool everyFrame;
21 |
22 | public override void Reset()
23 | {
24 | component = null;
25 | everyFrame = false;
26 | }
27 |
28 | public override void OnEnter()
29 | {
30 | DoToggleComponent();
31 |
32 | if(!everyFrame.Value) Finish();
33 | }
34 |
35 | public override void OnUpdate()
36 | {
37 | DoToggleComponent();
38 | }
39 |
40 | private void DoToggleComponent()
41 | {
42 | Behaviour be = component.Value as Behaviour;
43 | Renderer re = component.Value as Renderer;
44 | Collider col = component.Value as Collider;
45 |
46 | if(be)
47 | be.enabled = !be.enabled;
48 | else if(re)
49 | re.enabled = !re.enabled;
50 | else if(col)
51 | col.enabled = !col.enabled;
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Random Customs/RandomPointOnSlope.cs:
--------------------------------------------------------------------------------
1 |
2 | using UnityEngine;
3 |
4 | namespace HutongGames.PlayMaker.Actions
5 | {
6 | [ActionCategory("Random")]
7 | [Tooltip("Returns a random point between two Vector3 variables. Useful for 2.5D games, e.g. if you want GameObjects to spawn further down the farther away they are or vice versa.")]
8 | public class RandomPointOnSlope : FsmStateAction
9 | {
10 | [RequiredField]
11 | [Tooltip("The starting point of the slope.")]
12 | public FsmVector3 slopeStart;
13 |
14 | [RequiredField]
15 | [Tooltip("The last point on the imaginary slope.")]
16 | public FsmVector3 slopeEnd;
17 |
18 | [UIHint(UIHint.Variable)]
19 | [Tooltip("A random result between the given points.")]
20 | public FsmVector3 storePoint;
21 |
22 | [Tooltip("Wheter to run every frame.")]
23 | public FsmBool everyFrame;
24 |
25 | public override void Reset()
26 | {
27 | slopeStart = null;
28 | slopeEnd = null;
29 | storePoint = null;
30 | }
31 |
32 | public override void OnEnter()
33 | {
34 | DoGetPointOnSlope();
35 |
36 | if(!everyFrame.Value)
37 | {
38 | Finish();
39 | }
40 | }
41 |
42 | public override void OnUpdate()
43 | {
44 | DoGetPointOnSlope();
45 | }
46 |
47 | void DoGetPointOnSlope()
48 | {
49 | storePoint.Value = Random.Range(0, Vector3.Distance(slopeStart.Value, slopeEnd.Value))
50 | * Vector3.Normalize(slopeEnd.Value - slopeStart.Value)
51 | + slopeStart.Value;
52 | }
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Math Customs/GetUnsignedInt.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | //Author: Deek
4 |
5 | using UnityEngine;
6 |
7 | namespace HutongGames.PlayMaker.Actions
8 | {
9 | [ActionCategory(ActionCategory.Math)]
10 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
11 | [Tooltip("Returns the absolute value of an Int variable and optionally sets it to that.")]
12 | public class GetUnsignedInt : FsmStateAction
13 | {
14 | [RequiredField]
15 | [Tooltip("The Int variable.")]
16 | public FsmInt intVariable;
17 |
18 | [UIHint(UIHint.Variable)]
19 | [Tooltip("The unsigned Int.")]
20 | public FsmInt result;
21 |
22 | [Tooltip("Apply the unsigned value to the int.")]
23 | public FsmBool applyToOriginal;
24 |
25 | [Tooltip("Repeat every frame. Useful if the Int variable is changing.")]
26 | public bool everyFrame;
27 |
28 | public override void Reset()
29 | {
30 | intVariable = new FsmInt() { UseVariable = true };
31 | result = null;
32 | applyToOriginal = false;
33 | everyFrame = false;
34 | }
35 |
36 | public override void OnEnter()
37 | {
38 | DoIntAbs();
39 |
40 | if(!everyFrame) Finish();
41 | }
42 |
43 | public override void OnUpdate()
44 | {
45 | DoIntAbs();
46 | }
47 |
48 | void DoIntAbs()
49 | {
50 | result.Value = Mathf.Abs(intVariable.Value);
51 |
52 | if(applyToOriginal.Value)
53 | intVariable.Value = result.Value;
54 | }
55 | }
56 | }
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/_Templates/TemplateAdvanced.cs:
--------------------------------------------------------------------------------
1 | //License: Attribution 4.0 International (CC BY 4.0)
2 | //Author:
3 |
4 | /*--- __ECO__ __PLAYMAKER__ __ACTION__
5 | EcoMetaStart
6 | {
7 | "script dependancies":[
8 | "Assets/PlayMaker Custom Actions/__Internal/FsmStateActionAdvanced.cs"
9 | ]
10 | }
11 | EcoMetaEnd
12 | ---*/
13 |
14 | using UnityEngine;
15 |
16 | namespace HutongGames.PlayMaker.Actions
17 | {
18 | [ActionCategory(ActionCategory.Logic)]
19 | [Tooltip("")]
20 | public class TemplateAdvanced : FsmStateActionAdvanced
21 | {
22 | [RequiredField]
23 | [Tooltip("")]
24 | public FsmOwnerDefault gameObject;
25 |
26 | //-- insert further variables --//
27 |
28 | private GameObject go;
29 |
30 | public override void Reset()
31 | {
32 | //resets 'everyFrame' and 'updateType'
33 | base.Reset();
34 |
35 | gameObject = null;
36 | //-- insert default values for further variables --//
37 | go = null;
38 | }
39 |
40 | public override void OnEnter()
41 | {
42 | DoTemplate();
43 |
44 | if(!everyFrame) Finish();
45 | }
46 |
47 | public override void OnActionUpdate()
48 | {
49 | DoTemplate();
50 | }
51 |
52 | private void DoTemplate()
53 | {
54 | go = Fsm.GetOwnerDefaultTarget(gameObject);
55 |
56 | if(!go)
57 | {
58 | LogError("GameObject in " + Owner.name + " (" + Fsm.Name + ") is null!");
59 | return;
60 | }
61 |
62 | //-- insert main logic --//
63 |
64 | }
65 | }
66 | }
67 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Audio Customs/GetAudioClipLength.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | using UnityEngine;
6 |
7 | namespace HutongGames.PlayMaker.Actions
8 | {
9 | [ActionCategory(ActionCategory.Audio)]
10 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
11 | [Tooltip("Retrieve the length of the AudioClip inside the specified AudioSource or from the given object.")]
12 | public class GetAudioClipLength : ComponentAction
13 | {
14 |
15 | [CheckForComponent(typeof(AudioSource))]
16 | [Tooltip("The GameObject with the AudioSource component.")]
17 | public FsmOwnerDefault gameObject;
18 |
19 | [Tooltip("Supply a clip directly.")]
20 | public FsmObject audioClip;
21 |
22 | [UIHint(UIHint.Variable)]
23 | [Tooltip("The length of the clip.")]
24 | public FsmFloat length;
25 |
26 | private AudioClip _audioClip;
27 |
28 | public override void Reset()
29 | {
30 | gameObject = null;
31 | audioClip = new FsmObject() { UseVariable = true };
32 | length = 0;
33 | }
34 |
35 | public override void OnEnter()
36 | {
37 |
38 | var go = Fsm.GetOwnerDefaultTarget(gameObject);
39 | if(UpdateCache(go))
40 | {
41 | _audioClip = audio.clip as AudioClip;
42 | length.Value = _audioClip.length;
43 | } else
44 | {
45 | _audioClip = audioClip.Value as AudioClip;
46 | length.Value = _audioClip.length;
47 | }
48 |
49 | Finish();
50 | }
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/Custom PlayMaker Actions/Enum Customs/EnumGetRandom.cs:
--------------------------------------------------------------------------------
1 | // License: Attribution 4.0 International (CC BY 4.0)
2 | /*--- __ECO__ __PLAYMAKER__ __ACTION__ ---*/
3 | // Author : Deek
4 |
5 | using System;
6 | using System.Collections.Generic;
7 |
8 | namespace HutongGames.PlayMaker.Actions
9 | {
10 | [ActionCategory(ActionCategory.Enum)]
11 | [HelpUrl("http://hutonggames.com/playmakerforum/index.php?topic=15458.0")]
12 | [Tooltip("Get a Random item from an enum.")]
13 | public class EnumGetRandom : FsmStateAction
14 | {
15 | [UIHint(UIHint.Variable)]
16 | [Tooltip("The Enum Variable to get a random Item from.")]
17 | public FsmEnum enumVariable;
18 |
19 | [Tooltip("Repeat every frame while the state is active.")]
20 | public bool everyFrame;
21 |
22 | public override void Reset()
23 | {
24 | enumVariable = null;
25 | everyFrame = false;
26 | }
27 |
28 | public override void OnEnter()
29 | {
30 | DoGetRandomValue();
31 |
32 | if(!everyFrame)
33 | {
34 | Finish();
35 | }
36 | }
37 |
38 | public override void OnUpdate()
39 | {
40 | DoGetRandomValue();
41 | }
42 |
43 | private void DoGetRandomValue()
44 | {
45 | List