summaryrefslogtreecommitdiff
path: root/Runtime/Animation/ScriptBindings/AnimatorOverrideControllerBindings.txt
diff options
context:
space:
mode:
Diffstat (limited to 'Runtime/Animation/ScriptBindings/AnimatorOverrideControllerBindings.txt')
-rw-r--r--Runtime/Animation/ScriptBindings/AnimatorOverrideControllerBindings.txt138
1 files changed, 138 insertions, 0 deletions
diff --git a/Runtime/Animation/ScriptBindings/AnimatorOverrideControllerBindings.txt b/Runtime/Animation/ScriptBindings/AnimatorOverrideControllerBindings.txt
new file mode 100644
index 0000000..9f73f79
--- /dev/null
+++ b/Runtime/Animation/ScriptBindings/AnimatorOverrideControllerBindings.txt
@@ -0,0 +1,138 @@
+C++RAW
+
+#include "UnityPrefix.h"
+#include "Runtime/Mono/MonoBehaviour.h"
+#include "Runtime/Mono/MonoScript.h"
+#include "Runtime/Graphics/Transform.h"
+#include "Runtime/Animation/AnimatorOverrideController.h"
+#include "Runtime/Animation/AnimationClip.h"
+#include "Runtime/Animation/RuntimeAnimatorController.h"
+#include "Runtime/Scripting/ScriptingExportUtility.h"
+
+using namespace Unity;
+
+CSRAW
+
+using System;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using System.Collections;
+
+namespace UnityEngine
+{
+
+CSRAW [System.Serializable]
+CSRAW [StructLayout (LayoutKind.Sequential)]
+CLASS AnimationClipPair
+ public AnimationClip originalClip;
+ public AnimationClip overrideClip;
+END
+
+// AnimatorOverrideController definition
+CLASS AnimatorOverrideController : RuntimeAnimatorController
+
+ // Creates a new animation clip
+ CSRAW public AnimatorOverrideController()
+ {
+ Internal_CreateAnimationSet(this);
+ }
+
+ CUSTOM private static void Internal_CreateAnimationSet ([Writable]AnimatorOverrideController self)
+ {
+ Object* animationSet = NEW_OBJECT(AnimatorOverrideController);
+ animationSet->Reset();
+ Scripting::ConnectScriptingWrapperToObject (self.GetScriptingObject(), animationSet);
+ animationSet->AwakeFromLoad(kInstantiateOrCreateFromCodeAwakeFromLoad);
+ }
+
+ // The runtime representation of AnimatorController that controls the Animator
+ CUSTOM_PROP RuntimeAnimatorController runtimeAnimatorController {return Scripting::ScriptingWrapperFor(self->GetAnimatorController());} { self->SetAnimatorController(value);}
+
+ // Returns the animation clip named /name/.
+ CSRAW public AnimationClip this [string name]
+ {
+ get { return Internal_GetClipByName(name, true); }
+ set { Internal_SetClipByName(name, value); }
+ }
+
+ CUSTOM private AnimationClip Internal_GetClipByName(string name, bool returnEffectiveClip)
+ {
+ return Scripting::ScriptingWrapperFor(self->GetClip( name, returnEffectiveClip ));
+ }
+
+ CUSTOM private void Internal_SetClipByName(string name, AnimationClip clip)
+ {
+ return self->SetClip( name, clip );
+ }
+
+ // Returns the animation clip named /name/.
+ CSRAW public AnimationClip this [AnimationClip clip]
+ {
+ get { return Internal_GetClip(clip, true); }
+ set { Internal_SetClip(clip, value); }
+ }
+
+ CUSTOM private AnimationClip Internal_GetClip(AnimationClip originalClip, bool returnEffectiveClip)
+ {
+ return Scripting::ScriptingWrapperFor(self->GetClip( originalClip, returnEffectiveClip));
+ }
+
+ CUSTOM private void Internal_SetClip(AnimationClip originalClip, AnimationClip overrideClip)
+ {
+ return self->SetClip( originalClip, overrideClip );
+ }
+
+ CONDITIONAL UNITY_EDITOR
+ CSRAW internal delegate void OnOverrideControllerDirtyCallback();
+
+ CONDITIONAL UNITY_EDITOR
+ CSRAW internal OnOverrideControllerDirtyCallback OnOverrideControllerDirty;
+
+ CONDITIONAL UNITY_EDITOR
+ CSRAW internal static void OnInvalidateOverrideController(AnimatorOverrideController controller)
+ {
+ if(controller.OnOverrideControllerDirty != null)
+ controller.OnOverrideControllerDirty();
+ }
+
+ CSRAW public AnimationClipPair[] clips
+ {
+ get
+ {
+ AnimationClip[] originalAnimationClips = GetOriginalClips();
+
+ AnimationClipPair[] clipPair = new AnimationClipPair[originalAnimationClips.Length];
+ for(int i=0;i<originalAnimationClips.Length;i++)
+ {
+ clipPair[i] = new AnimationClipPair();
+ clipPair[i].originalClip = originalAnimationClips[i];
+ clipPair[i].overrideClip = Internal_GetClip(originalAnimationClips[i], false);
+ }
+
+ return clipPair;
+ }
+ set
+ {
+ for(int i=0;i<value.Length;i++)
+ Internal_SetClip(value[i].originalClip, value[i].overrideClip);
+ }
+ }
+
+ CUSTOM private AnimationClip[] GetOriginalClips()
+ {
+ return CreateScriptingArrayFromUnityObjects(self->GetOriginalClips(), ClassID(AnimationClip));
+ }
+
+ CUSTOM private AnimationClip[] GetOverrideClips()
+ {
+ return CreateScriptingArrayFromUnityObjects(self->GetOverrideClips(), ClassID(AnimationClip));
+ }
+
+ CONDITIONAL UNITY_EDITOR
+ CUSTOM public void PerformOverrideClipListCleanup()
+ {
+ return self->PerformOverrideClipListCleanup();
+ }
+END
+
+CSRAW }