예제 #1
0
        public void Awake()
        {
            random         = new System.Random(name.GetHashCode());
            animationQueue = new AnimationQueue(animation, (animationName, length) =>
            {
                if (animationName == "SittingIdle")
                {
                    var delay = MinDelayBetweenAnimations + (float)random.NextDouble() * (MaxDelayBetweenAnimations - MinDelayBetweenAnimations);
                    Debug.Log(string.Format("Play idle for {0} in {1}", name, delay + length));
                    animationQueue.Enqueue("SittingIdle", delay + length, AnimationPlayMode.Mix, 0.5f, false);
                }
            });

            animationQueue.Enqueue("SittingIdle", 0.0f, AnimationPlayMode.Mix, 0.5f);
        }
예제 #2
0
 public void FillStarByAnimation(float waitTime)
 {
     if (!_filled)
     {
         _filled = true;
         AnimationQueue.Enqueue(Animation.Delay(waitTime));
         AnimationQueue.Enqueue(Animation.Create(SetAnimation, Easings.Functions.Linear, 0.75f));
     }
 }
예제 #3
0
    public void ChangeWorld(SOverviewWorld world)
    {
        var newWorld = world.Number;
        var oldWorld = SelectedWorld.Number;

        FindObjectOfType <Background>().FadeToLevel(newWorld, oldWorld);

        AnimationQueue.Enqueue(AnimationWithCallback.Create(Animation.Create(SetRelativeYPosition, Easings.Functions.ExponentialEaseIn, 0.5f, 0, -1000), null, () => SetLevelNumbers(world)));
        AnimationQueue.Enqueue(Animation.Create(SetRelativeXPosition, Easings.Functions.ExponentialEaseOut, 0.5f, 1000, 0));
    }
예제 #4
0
    internal void OpenWorld()
    {
        World.IsOpen = true;

        var materialAnimation = Animation.Create(UpdateMaterialAnimation, Easings.Functions.Linear, 0.6f);
        var callBack          = AnimationWithCallback.Create(materialAnimation, () =>
        {
            DisableChildren();
        });

        var fullAnimation = new CompositeAnimation(callBack);

        AnimationQueue.Enqueue(fullAnimation);
    }
예제 #5
0
    void Start()
    {
        levelConstraints = FindObjectOfType(typeof(LevelConstraints)) as LevelConstraints;
        visual           = gameObject.GetComponentInChildren <TileVisuals>();
        // ShowFront(0.1f);

        AnimationQueue.Enqueue(Animation.Delay(X * 0.1f));
        AnimationQueue.Enqueue(AnimationWithCallback.Create(
                                   Animation.Create(UpdateRotation, Easings.Functions.QuadraticEaseInOut, 1.0f, 0, 180.0f),
                                   null,
                                   () => {
            visual.backColor = colorSchema[0];
            visual.backIcon  = TileIcon.Blank;
        }
                                   ));
    }
예제 #6
0
 public void ShowGoalState()
 {
     AnimationQueue.Enqueue(Animation.Create(UpdateColor, Easings.Functions.QuadraticEaseInOut, 1.0f, 0.0f, 1.0f));
     AnimationQueue.Enqueue(Animation.Delay(2));
     AnimationQueue.Enqueue(Animation.Create(UpdateColor, Easings.Functions.QuadraticEaseOut, 1.0f, 1.0f, 0.0f));
 }
예제 #7
0
 public void StartAnimation()
 {
     UpdatePostion(1000);
     AnimationQueue.Enqueue(Animation.Create(UpdatePostion, Easings.Functions.QuadraticEaseOut, 0.5f, 1000, 0));
 }
예제 #8
0
 public void FadeOut()
 {
     AnimationQueue.Enqueue(AnimationWithCallback.Create(Animation.Create(SetRelativeXPosition, Easings.Functions.ExponentialEaseIn, 0.5f, 0, 1000), null, () => gameObject.SetActive(false)));
 }