NewSkeletonAnimationGameObject() public static method

Instantiates a new UnityEngine.GameObject and adds a prepared SkeletonAnimation component to it.
public static NewSkeletonAnimationGameObject ( SkeletonDataAsset skeletonDataAsset ) : SkeletonAnimation
skeletonDataAsset SkeletonDataAsset
return SkeletonAnimation
Exemplo n.º 1
0
 public void Initialize(bool overwrite)
 {
     if ((this.skeletonAnimations.Count == 0) || overwrite)
     {
         this.Clear();
         MeshGenerator.Settings meshGeneratorSettings = this.meshGeneratorSettings;
         Transform parent = base.transform;
         foreach (SkeletonDataAsset asset in this.skeletonDataAssets)
         {
             SkeletonAnimation item = SkeletonAnimation.NewSkeletonAnimationGameObject(asset);
             item.transform.SetParent(parent, false);
             item.SetMeshSettings(meshGeneratorSettings);
             item.initialFlipX = this.initialFlipX;
             item.initialFlipY = this.initialFlipY;
             Skeleton skeleton = item.skeleton;
             skeleton.FlipX = this.initialFlipX;
             skeleton.FlipY = this.initialFlipY;
             item.Initialize(false);
             this.skeletonAnimations.Add(item);
         }
         Dictionary <string, Spine.Animation>            animationNameTable     = this.animationNameTable;
         Dictionary <Spine.Animation, SkeletonAnimation> animationSkeletonTable = this.animationSkeletonTable;
         foreach (SkeletonAnimation animation2 in this.skeletonAnimations)
         {
             foreach (Spine.Animation animation3 in animation2.Skeleton.Data.Animations)
             {
                 animationNameTable[animation3.Name] = animation3;
                 animationSkeletonTable[animation3]  = animation2;
             }
         }
         this.SetActiveSkeleton(this.skeletonAnimations[0]);
         this.SetAnimation(this.initialAnimation, this.initialLoop);
     }
 }
Exemplo n.º 2
0
        public void Initialize(bool overwrite)
        {
            if (skeletonAnimations.Count != 0 && !overwrite)
            {
                return;
            }

            Clear();

            var       settings      = this.meshGeneratorSettings;
            Transform thisTransform = this.transform;

            foreach (var sda in skeletonDataAssets)
            {
                var sa = SkeletonAnimation.NewSkeletonAnimationGameObject(sda);
                sa.transform.SetParent(thisTransform, false);

                sa.SetMeshSettings(settings);
                sa.initialFlipX = this.initialFlipX;
                sa.initialFlipY = this.initialFlipY;
                var skeleton = sa.skeleton;
                skeleton.flipX = this.initialFlipX;
                skeleton.flipY = this.initialFlipY;

                sa.Initialize(false);
                skeletonAnimations.Add(sa);
            }

            // Build cache
            var animationNameTable     = this.animationNameTable;
            var animationSkeletonTable = this.animationSkeletonTable;

            foreach (var skeletonAnimation in skeletonAnimations)
            {
                foreach (var animationObject in skeletonAnimation.skeleton.data.animations)
                {
                    animationNameTable[animationObject.name] = animationObject;
                    animationSkeletonTable[animationObject]  = skeletonAnimation;
                }
            }

            SetActiveSkeleton(skeletonAnimations[0]);
            SetAnimation(initialAnimation, initialLoop);
        }