Initialize skeleton on start.

This commit is contained in:
NathanSweet 2013-05-29 03:24:44 +02:00
parent 56ec15c0f4
commit 5070b21341
3 changed files with 12 additions and 10 deletions

View File

@ -29,9 +29,12 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor
vertexPositions = new float[8];
}
void Start () {
Initialize();
}
void Update () {
SkeletonData skeletonData = (skeletonDataAsset != null) ? skeletonDataAsset.GetSkeletonData() : null;
SkeletonData skeletonData = skeletonDataAsset == null ? null : skeletonDataAsset.GetSkeletonData();
if (skeletonData == null) {
Clear();
return;
@ -46,6 +49,7 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor
}
private void Clear() {
Debug.Log("clear?!");
GetComponent<MeshFilter>().mesh = null;
DestroyImmediate(mesh);
mesh = null;
@ -161,14 +165,12 @@ public class tk2dSpineSkeleton : MonoBehaviour, tk2dRuntime.ISpriteCollectionFor
private void UpdateAnimation() {
// Check if we need to stop current animation
if(state.Animation != null && animationName == null) {
if (state.Animation != null && animationName == null) {
state.ClearAnimation();
}
// Check for different animation name or animation end
else if(state.Animation == null || animationName != state.Animation.Name) {
} else if (state.Animation == null || animationName != state.Animation.Name) {
// Check for different animation name or animation end
Spine.Animation animation = skeleton.Data.FindAnimation(animationName);
if(animation != null) state.SetAnimation(animation,loop);
if (animation != null) state.SetAnimation(animation,loop);
}
state.Loop = loop;

Binary file not shown.

View File

@ -18,9 +18,9 @@ public class tk2dSpineboy : MonoBehaviour {
/*
*/
void Update() {
if(skeleton.loop) return;
if (skeleton.loop) return;
if(skeleton.state.Time >= skeleton.state.Animation.Duration - 0.25) {
if (skeleton.state.Animation != null && skeleton.state.Time >= skeleton.state.Animation.Duration - 0.25) {
skeleton.animationName = "walk";
skeleton.loop = true;
}