Exemplo n.º 1
0
    public TaggedLine InstantiateTaggedLine(Line line, int index = -1, bool withAnim = true)
    {
        TaggedLine taggedLine = heapManager_.Instantiate(LineParent.transform);

        AnimManager.RemoveOtherAnim(taggedLine);

        if (line.IsDone == false)
        {
            if (index < 0)
            {
                index = lines_.Count;
                lines_.Add(taggedLine);
            }
            else
            {
                lines_.Insert(index, taggedLine);
            }
            AnimLinesToTargetPosition(index, lines_.Count - 1);
            AnimDoneLinesToTargetPosition(0, doneLines_.Count - 1);
        }
        else
        {
            if (index < 0)
            {
                index = doneLines_.Count;
                doneLines_.Add(taggedLine);
            }
            else
            {
                doneLines_.Insert(index, taggedLine);
            }
            AnimDoneLinesToTargetPosition(index, doneLines_.Count - 1);
        }

        taggedLine.Bind(line);

        if (withAnim && IsFolded == false)
        {
            AnimOnInstantiate(taggedLine);
        }

        GameContext.TagList.UpdateLayoutElement();

        return(taggedLine);
    }
Exemplo n.º 2
0
        /// <summary>
        /// Attempts to un-mount the player.
        /// </summary>
        /// <returns>Whether or not unmounting was successful</returns>
        public bool TryUnmount()
        {
            if (MountedOn?.SuggestedAnimation != null)
            {
                string anim = MountedOn.SuggestedAnimation.ToLowerInvariant();
                AnimManager?.StopAnimation(anim);
            }

            MountedOn?.DidUnmount(this);
            this.MountedOn = null;

            if (WatchedAttributes.HasAttribute("mountedOn"))
            {
                WatchedAttributes.RemoveAttribute("mountedOn");
            }

            return(true);
        }
Exemplo n.º 3
0
    public void StartSaving()
    {
        if (isSaving_ == false)
        {
            isSaving_ = true;
            this.gameObject.SetActive(true);
            Text = "saving...";
            AnimManager.RemoveOtherAnim(textComponent_);
            AnimManager.AddAnim(textComponent_, 1.0f, ParamType.TextAlphaColor, AnimType.Time, 0.0f);

            circle_.gameObject.SetActive(true);
            AnimManager.RemoveOtherAnim(circle_);
            AnimManager.AddAnim(circle_, 360.0f, ParamType.RotationZ, AnimType.Time, 1.0f, endOption: AnimEndOption.Loop, initValue: 0.0f);

            check_.gameObject.SetActive(false);
            AnimManager.RemoveOtherAnim(check_);
        }
    }
Exemplo n.º 4
0
        private void UnFlip()
        {
            Flipped = false;
            AnimManager.PlayAnimation(GetIdleAnim(), true);

            int immobile = EntityProperties.GetAdditionalProperty <int>(Enumerations.AdditionalProperty.Immobile) - 1;

            EntityProperties.RemoveAdditionalProperty(Enumerations.AdditionalProperty.Immobile);
            if (immobile > 0)
            {
                EntityProperties.AddAdditionalProperty(Enumerations.AdditionalProperty.Immobile, immobile);
            }

            //Raise defense again after unflipping
            RaiseDefense(DefenseLoss);

            ElapsedFlippedTurns = 0;
        }
Exemplo n.º 5
0
 void AnimDoneLinesToTargetPosition(int startIndex, int endIndex)
 {
     if (startIndex > endIndex)
     {
         int start = endIndex;
         endIndex   = startIndex;
         startIndex = start;
     }
     if (startIndex < 0 || doneLines_.Count <= endIndex)
     {
         return;
     }
     for (int i = startIndex; i <= endIndex; ++i)
     {
         AnimManager.RemoveOtherAnim(doneLines_[i], ParamType.Position);
         AnimManager.AddAnim(doneLines_[i], GetTargetPosition(doneLines_[i]), ParamType.Position, AnimType.Time, GameContext.Config.AnimTime);
     }
 }
Exemplo n.º 6
0
        public Bow() : base(new PartnerStats(PartnerGlobals.PartnerRanks.Normal, 50, 0, 0))
        {
            Name = "Bow";
            PartnerDescription = "She can become transparent,\nand her specialty is slapping.";
            PartnerType        = Enumerations.PartnerTypes.Bow;

            ChangeHeightState(Enumerations.HeightStates.Airborne);

            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Characters/Bow.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                     new Animation.Frame(new Rectangle(150, 123, 41, 34), 100d, new Vector2(0, -1)),
                                                                                     new Animation.Frame(new Rectangle(54, 163, 41, 34), 100d),
                                                                                     new Animation.Frame(new Rectangle(54, 43, 41, 34), 100d, new Vector2(0, 1))));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.DangerName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                                              new Animation.Frame(new Rectangle(150, 123, 41, 34), 100d, new Vector2(0, -1)),
                                                                                                              new Animation.Frame(new Rectangle(54, 163, 41, 34), 100d),
                                                                                                              new Animation.Frame(new Rectangle(54, 43, 41, 34), 100d, new Vector2(0, 1))));

            AnimManager.AddAnimation(AnimationGlobals.RunningName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                        new Animation.Frame(new Rectangle(150, 123, 41, 34), 60d, new Vector2(0, -1)),
                                                                                        new Animation.Frame(new Rectangle(54, 163, 41, 34), 60d),
                                                                                        new Animation.Frame(new Rectangle(54, 43, 41, 34), 60d, new Vector2(0, 1))));

            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(null,
                                                                              new Animation.Frame(new Rectangle(151, 44, 39, 33), 100d),
                                                                              new Animation.Frame(new Rectangle(199, 44, 39, 33), 100d),
                                                                              new Animation.Frame(new Rectangle(247, 44, 39, 33), 100d)));
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.DizzyName, new LoopAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                                          new Animation.Frame(new Rectangle(151, 44, 39, 33), 100d),
                                                                                                          new Animation.Frame(new Rectangle(199, 44, 39, 33), 100d),
                                                                                                          new Animation.Frame(new Rectangle(247, 44, 39, 33), 100d)));
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.ConfusedName, new LoopAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                                             new Animation.Frame(new Rectangle(151, 44, 39, 33), 100d),
                                                                                                             new Animation.Frame(new Rectangle(199, 44, 39, 33), 100d),
                                                                                                             new Animation.Frame(new Rectangle(247, 44, 39, 33), 100d)));

            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(null, new Animation.Frame(new Rectangle(199, 44, 39, 33), 1000d)));

            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.ChoosingActionName, new Animation(null, new Animation.Frame(new Rectangle(151, 4, 39, 33), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.DangerChoosingActionName, new Animation(null, new Animation.Frame(new Rectangle(151, 4, 39, 33), 1000d)));
        }
Exemplo n.º 7
0
        public override void LoadAnimations()
        {
            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Enemies/Duplighost.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new LoopAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                  new Animation.Frame(new Rectangle(4, 4, 51, 43), 110d),
                                                                                  new Animation.Frame(new Rectangle(196, 101, 51, 42), 110d, new Vector2(0, 1)),
                                                                                  new Animation.Frame(new Rectangle(260, 98, 50, 45), 110d, new Vector2(0, -1)),
                                                                                  new Animation.Frame(new Rectangle(324, 97, 50, 46), 110d, new Vector2(0, -1))));
            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(null,
                                                                              new Animation.Frame(new Rectangle(1, 151, 50, 40), 110d, new Vector2(0, 2)),
                                                                              new Animation.Frame(new Rectangle(65, 151, 51, 39), 110d, new Vector2(0, 2))));
            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(null,
                                                                               new Animation.Frame(new Rectangle(1, 151, 50, 40), 300d, new Vector2(0, 2))));
            AnimManager.AddAnimation(AnimationGlobals.RunningName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                        new Animation.Frame(new Rectangle(4, 98, 52, 45), 60d, new Vector2(0, -1)),
                                                                                        new Animation.Frame(new Rectangle(68, 98, 51, 45), 60d, new Vector2(0, -1)),
                                                                                        new Animation.Frame(new Rectangle(132, 100, 50, 43), 60d)));

            AnimManager.AddAnimation(AnimationGlobals.DuplighostBattleAnimations.HeadbuttStartName, new Animation(null,
                                                                                                                  new Animation.Frame(new Rectangle(195, 149, 51, 42), 1000d, new Vector2(0, 1))));
            AnimManager.AddAnimation(AnimationGlobals.DuplighostBattleAnimations.HeadbuttName, new LoopAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                                                 new Animation.Frame(new Rectangle(5, 198, 47, 37), 110d, new Vector2(0, 3)),
                                                                                                                 new Animation.Frame(new Rectangle(69, 197, 47, 39), 110d, new Vector2(0, 2))));

            AnimManager.AddAnimation(AnimationGlobals.DuplighostBattleAnimations.DisguiseStartName, new Animation(null,
                                                                                                                  new Animation.Frame(new Rectangle(67, 251, 52, 44), 110d),
                                                                                                                  new Animation.Frame(new Rectangle(193, 244, 51, 51), 110d, new Vector2(0, -4))));
            AnimManager.AddAnimation(AnimationGlobals.DuplighostBattleAnimations.DisguiseName, new LoopAnimation(null, 5,
                                                                                                                 new Animation.Frame(new Rectangle(129, 247, 51, 48), 110d, new Vector2(0, -2)),
                                                                                                                 new Animation.Frame(new Rectangle(257, 248, 51, 47), 110d, new Vector2(0, -2))));

            //Use the same animation for Confused since Confused isn't in PM
            LoopAnimation dizzyAnim = new LoopAnimation(null, AnimationGlobals.InfiniteLoop,
                                                        new Animation.Frame(new Rectangle(132, 198, 52, 41), 110d, new Vector2(0, 1)),
                                                        new Animation.Frame(new Rectangle(196, 198, 52, 41), 110d, new Vector2(0, 1)),
                                                        new Animation.Frame(new Rectangle(260, 198, 52, 41), 110d, new Vector2(0, 1)),
                                                        new Animation.Frame(new Rectangle(324, 198, 52, 41), 110d, new Vector2(0, 1)));

            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.DizzyName, dizzyAnim);
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.ConfusedName, dizzyAnim);
        }
        public override void Initialize(EntityProperties properties, ICoreAPI api, long InChunkIndex3d)
        {
            base.Initialize(properties, api, InChunkIndex3d);

            launchMs = World.ElapsedMilliseconds;

            if (ProjectileStack?.Collectible != null)
            {
                ProjectileStack.ResolveBlockOrItem(World);
            }

            Core = api.ModLoader.GetModSystem <Core>();

            AnimManager.StartAnimation("idle");
            AnimManager.StartAnimation("rotating");
            AnimManager.StartAnimation("circle-small");
            AnimManager.StartAnimation("circle-middle");
            AnimManager.StartAnimation("circle-large");
        }
Exemplo n.º 9
0
        public override void LoadAnimations()
        {
            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Neutral/ShellShieldShell.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.ShellBattleAnimations.FullHealthStateName, new Animation(spriteSheet,
                                                                                                               new Animation.Frame(new Rectangle(7, 3, 186, 130), 1000d)));

            Animation mildlyDamaged = new Animation(spriteSheet, new Animation.Frame(new Rectangle(7, 153, 186, 130), 1000d));

            AnimManager.AddAnimation(AnimationGlobals.ShellBattleAnimations.MildlyDamagedStateName, mildlyDamaged);
            mildlyDamaged.SetChildFrames(new Animation.Frame(new Rectangle(217, 4, 13, 47), 1000d, new Vector2(0, -19)));

            Animation severelyDamaged = new Animation(spriteSheet, new Animation.Frame(new Rectangle(7, 153, 186, 130), 1000d));

            AnimManager.AddAnimation(AnimationGlobals.ShellBattleAnimations.SeverelyDamagedStateName, severelyDamaged);
            severelyDamaged.SetChildFrames(new Animation.Frame(new Rectangle(242, 4, 42, 98), 1000d, new Vector2(0, -5)));
        }
Exemplo n.º 10
0
        public override void LoadAnimations()
        {
            base.LoadAnimations();

            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Enemies/Paragoomba.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            LoopAnimation wingedIdle = new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                         new Animation.Frame(new Rectangle(129, 45, 27, 28), 200d),
                                                         new Animation.Frame(new Rectangle(1, 7, 27, 30), 200d, new Vector2(0, 1)));
            LoopAnimation flyingName = new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                         new Animation.Frame(new Rectangle(129, 45, 27, 28), 100d),
                                                         new Animation.Frame(new Rectangle(1, 7, 27, 30), 100d));
            Animation hurtName = new Animation(spriteSheet,
                                               new Animation.Frame(new Rectangle(97, 48, 29, 27), 80d),
                                               new Animation.Frame(new Rectangle(98, 89, 27, 26), 80d));
            Animation deathName    = new Animation(spriteSheet, new Animation.Frame(new Rectangle(98, 89, 27, 26), 300d));
            Animation diveKickName = new Animation(spriteSheet, new Animation.Frame(new Rectangle(33, 89, 27, 30), 1000d));

            AnimManager.AddAnimation(AnimationGlobals.WingedBattleAnimations.WingedIdleName, wingedIdle);
            AnimManager.AddAnimation(AnimationGlobals.WingedBattleAnimations.FlyingName, flyingName);
            AnimManager.AddAnimation(AnimationGlobals.HurtName, hurtName);
            AnimManager.AddAnimation(AnimationGlobals.DeathName, deathName);
            AnimManager.AddAnimation(AnimationGlobals.ParagoombaBattleAnimations.DiveKickName, diveKickName);

            //Wings are offset from the Paragoomba's body
            //Both Wings for each frame are in a single cropped texture
            //The wings are rendered underneath the Paragoomba's body

            wingedIdle.SetChildFrames(
                new Animation.Frame(new Rectangle(3, 166, 41, 18), 200d, new Vector2(0, -6), -.01f),
                new Animation.Frame(new Rectangle(50, 161, 41, 14), 200d, new Vector2(0, 6), -.01f));
            flyingName.SetChildFrames(
                new Animation.Frame(new Rectangle(3, 166, 41, 18), 100d, new Vector2(0, -6), -.01f),
                new Animation.Frame(new Rectangle(50, 161, 41, 14), 100d, new Vector2(0, 6), -.01f));
            hurtName.SetChildFrames(
                new Animation.Frame(new Rectangle(3, 166, 41, 18), 80d, new Vector2(3, -5), -.01f),
                new Animation.Frame(new Rectangle(3, 166, 41, 18), 80d, new Vector2(3, -5), -.01f));
            deathName.SetChildFrames(new Animation.Frame(new Rectangle(3, 166, 41, 18), 100d, new Vector2(3, -5), -.01f));

            diveKickName.SetChildFrames(new Animation.Frame(new Rectangle(120, 121, 31, 21), 1000d, new Vector2(1, -13), -.01f));
        }
Exemplo n.º 11
0
        public void RemoveWings()
        {
            Animation[] animations = AnimManager.GetAnimations(AnimationGlobals.HurtName);

            for (int i = 0; i < animations.Length; i++)
            {
                animations[i].SetChildFrames(null);
            }

            //Add VFX for the wings disappearing
            Texture2D        spriteSheet = AssetManager.Instance.LoadAsset <Texture2D>($"{ContentGlobals.SpriteRoot}/Enemies/Paratroopa");
            CroppedTexture2D wingSprite  = new CroppedTexture2D(spriteSheet, new Rectangle(66, 190, 45, 26));

            //Put the wings in the same spot as they were in the Paratroopa's last animation
            WingsDisappearVFX wingsDisappear = new WingsDisappearVFX(wingSprite, BattlePosition + new Vector2(-1, 2),
                                                                     EntityType != Enumerations.EntityTypes.Enemy, .1f - .01f, 500d, 500d, (1d / 30d) * Time.MsPerS);

            BattleVFXManager.Instance.AddVFXElement(wingsDisappear);
        }
Exemplo n.º 12
0
        public override void LoadAnimations()
        {
            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Characters/Kooper.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(97, 117, 30, 50), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.DangerName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(97, 117, 30, 50), 1000d)));

            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(spriteSheet,
                                                                              new Animation.Frame(new Rectangle(4, 170, 42, 45), 500d),
                                                                              new Animation.Frame(new Rectangle(52, 173, 41, 42), 500d)));
            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(52, 173, 41, 42), 1000d)));

            AnimManager.AddAnimation(AnimationGlobals.RunningName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                     new Animation.Frame(new Rectangle(97, 117, 30, 50), 100d, new Vector2(-2, 0)),
                                                                                     new Animation.Frame(new Rectangle(89, 3, 34, 48), 100d)));

            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.ChoosingActionName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(225, 117, 30, 50), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.DangerChoosingActionName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(225, 117, 30, 50), 1000d)));

            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.StarSpecialName, new Animation(spriteSheet,
                                                                                                            new Animation.Frame(new Rectangle(233, 60, 34, 51), 700d)));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.StarWishName, new Animation(spriteSheet,
                                                                                                         new Animation.Frame(new Rectangle(193, 62, 30, 49), 700d)));

            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.DizzyName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(97, 117, 30, 50), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.ConfusedName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(97, 117, 30, 50), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.SleepName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(97, 117, 30, 50), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.InjuredName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                                            new Animation.Frame(new Rectangle(4, 170, 42, 45), 500d),
                                                                                                            new Animation.Frame(new Rectangle(52, 173, 41, 42), 500d)));

            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.ShellSpinName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                                               new Animation.Frame(new Rectangle(162, 222, 28, 25), 250d),
                                                                                                               new Animation.Frame(new Rectangle(194, 222, 28, 25), 250d),
                                                                                                               new Animation.Frame(new Rectangle(225, 222, 30, 25), 250d),
                                                                                                               new Animation.Frame(new Rectangle(258, 222, 28, 25), 250d)));
            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.FlippedName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                                             new Animation.Frame(new Rectangle(69, 221, 53, 26), 350d),
                                                                                                             new Animation.Frame(new Rectangle(5, 218, 54, 28), 350d)));
        }
Exemplo n.º 13
0
        public Bow() : base(new PartnerStats(PartnerGlobals.PartnerRanks.Normal, 50, 0, 0))
        {
            Name = "Bow";
            PartnerDescription = "She can become transparent,\nand her specialty is slapping.";
            PartnerType        = Enumerations.PartnerTypes.Bow;

            ChangeHeightState(Enumerations.HeightStates.Airborne);

            Texture2D spriteSheet = AssetManager.Instance.LoadAsset <Texture2D>($"{ContentGlobals.SpriteRoot}/Characters/Bow");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new Animation(null, new Animation.Frame(new Rectangle(151, 4, 39, 33), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(null,
                                                                              new Animation.Frame(new Rectangle(151, 44, 39, 33), 100d),
                                                                              new Animation.Frame(new Rectangle(199, 44, 39, 33), 100d),
                                                                              new Animation.Frame(new Rectangle(247, 44, 39, 33), 100d)));

            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(null, new Animation.Frame(new Rectangle(199, 44, 39, 33), 1000d)));
        }
Exemplo n.º 14
0
        public override void Initialize(EntityProperties properties, ICoreAPI api, long InChunkIndex3d)
        {
            base.Initialize(properties, api, InChunkIndex3d);

            if (buzzSound == null && World.Side == EnumAppSide.Client)
            {
                buzzSound = ((IClientWorldAccessor)World).LoadSound(new SoundParams()
                {
                    Location        = new AssetLocation("sounds/creature/beemob.ogg"),
                    ShouldLoop      = true,
                    Position        = soundpos = Pos.XYZ.ToVec3f().Add(0.5f, 0.25f, 0.5f),
                    DisposeOnFinish = false,
                    Volume          = 0.25f
                });

                buzzSound.Start();
            }

            AnimManager.StartAnimation("enraged");
        }
Exemplo n.º 15
0
 public void OnEndDragLine(TaggedLine taggedLine)
 {
     if (lines_.Contains(taggedLine))
     {
         float currentY = -(taggedLine.transform.localPosition.y - this.transform.localPosition.y);
         bool  overed   = currentY < -GameContext.TagList.Margin || Height + GameContext.TagList.Margin < currentY;
         if (overed)
         {
             selectedLine_  = null;
             selectedIndex_ = -1;
         }
         else
         {
             taggedLine.transform.parent = LineParent.transform;
             selectedIndex_ = lines_.IndexOf(taggedLine);
             AnimManager.AddAnim(taggedLine, GetTargetPosition(taggedLine), ParamType.Position, AnimType.Time, GameContext.Config.AnimTime);
         }
         GameContext.TagList.OnEndOverDragLine(taggedLine, overed);
     }
 }
Exemplo n.º 16
0
        public GulpitsRock(bool bigRock) : base(new Stats(1, 1, 0, 0, 0))
        {
            Name = "Gulpits' Rock";

            EntityType = Enumerations.EntityTypes.Neutral;

            SetStatusProperties();

            //Gulpits' Rocks do not move at all, so their base turns are less than 0
            BaseTurns = -99;

            BigRock = bigRock;

            //If the rock is big, make it deal more damage than the small one
            UsableValue = (BigRock == true) ? BigRockAdditionalDamage : SmallRockAdditionalDamage;

            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Enemies/Gulpit.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            //The animations differ between the different sizes of rocks
            //They have only idle and death animations
            if (BigRock == false)
            {
                AnimManager.AddAnimation(AnimationGlobals.IdleName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(59, 378, 26, 21), 1500d)));
                AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(spriteSheet,
                                                                                   new Animation.Frame(new Rectangle(1, 370, 45, 37), 80d),
                                                                                   new Animation.Frame(new Rectangle(340, 299, 42, 32), 80d),
                                                                                   new Animation.Frame(new Rectangle(392, 299, 32, 30), 80d)));
            }
            else
            {
                AnimManager.AddAnimation(AnimationGlobals.IdleName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(534, 301, 34, 29), 1500d)));
                AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(spriteSheet,
                                                                                   new Animation.Frame(new Rectangle(483, 298, 44, 37), 80d),
                                                                                   new Animation.Frame(new Rectangle(437, 300, 40, 35), 80d),
                                                                                   new Animation.Frame(new Rectangle(1, 370, 45, 37), 80d),
                                                                                   new Animation.Frame(new Rectangle(340, 299, 42, 32), 80d),
                                                                                   new Animation.Frame(new Rectangle(392, 299, 32, 30), 80d)));
            }
        }
Exemplo n.º 17
0
        /// <summary>
        /// Once the WorkDuration is completed add one log to the <see cref="GoapAgent"/>'s <see cref="BackpackComponent"/>.
        /// </summary>
        /// <param name="agent"></param>
        /// <returns></returns>
        public override bool Perform(GameObject agent)
        {
            // The tree got destroyed before we finished
            if (_targetTree == null)
            {
                return(false);
            }

            if (StartTime == 0)
            {
                //start working

                AnimManager.Work();
                StartTime = Time.time;

                if (_targetTree.IsOverloaded)
                {
                    _targetTree.StoptWorking(agent.GetComponent <Labourer>());
                    return(false); // we need to plan again to find a new tree
                }
            }

            if (StillWorking())
            {
                // still working
                return(true);
            }

            // finished working
            var backpack = agent.GetComponent <BackpackComponent>();

            backpack.NumLogs++;
            _chopped = true; // update state -> effect
            var tool = backpack.Tool.GetComponent <ToolComponent>();

            tool.Use(0.34f);
            _targetTree.Durability--;

            AnimManager.GoIdle();
            return(true);
        }
Exemplo n.º 18
0
    public void InitUnit(EnumInfo.TeamType _tType)
    {
        _tr       = transform;
        _unitData = DataManager.Instance.GetUnitDataWithUnitIdx(_unitIdx);
        _teamType = _tType;

        _stateMgr     = GetComponentInChildren <StateManager>();
        _animMgr      = GetComponentInChildren <AnimManager>();
        _behaviourMgr = GetComponentInChildren <BehaviourManager>();
        _moveMgr      = GetComponentInChildren <MoveManager>();
        _seeker       = GetComponentInChildren <Seeker>();

        _stateMgr.InitStateMgr(this);
        _animMgr.InitAnimMgr(this);
        _behaviourMgr.InitBehaviourMgr(this);
        _moveMgr.InitMoveMgr(this);


        if (_unitData.DamageType.Equals("Physic"))
        {
            _normalDamage.Type = EnumInfo.DamageType.Physic;
        }
        else
        {
            _normalDamage.Type = EnumInfo.DamageType.Magic;
        }
        _normalDamage.DamagePower  = _unitData.Damage;
        _normalDamage.ResourceUnit = this;

        if (_unitData.SkillDamageType.Equals("Physic"))
        {
            _skillDamage.Type = EnumInfo.DamageType.Physic;
        }
        else
        {
            _skillDamage.Type = EnumInfo.DamageType.Magic;
        }

        _skillDamage.DamagePower  = _unitData.SkillDamage;
        _skillDamage.ResourceUnit = this;
    }
Exemplo n.º 19
0
    public void UpdateLayoutElement()
    {
        float sum = TopMargin;

        for (int i = 0; i < tagParents_.Count; ++i)
        {
            AnimManager.AddAnim(tagParents_[i], new Vector3(WidthMargin, -sum), ParamType.Position, AnimType.Time, GameContext.Config.AnimTime);
            sum += tagParents_[i].Height;

            if (i == tagOvelayDesiredIndex_)
            {
                TagMoveOverlay.transform.localPosition = new Vector3(0, -sum - GameContext.Config.TagLineHeight / 2);
                sum += GameContext.Config.TagLineHeight;
            }

            sum += Margin;
        }
        TagMoveOverlay.SetActive(tagOvelayDesiredIndex_ >= 0);
        layout_.preferredHeight = sum;
        contentSizeFitter_.SetLayoutVertical();
    }
Exemplo n.º 20
0
        public Goomba() : base(new Stats(1, 2, 0, 0, 0))
        {
            Name = "Goomba";

            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Sleep, new StatusPropertyHolder(100, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Immobilized, new StatusPropertyHolder(110, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Dizzy, new StatusPropertyHolder(100, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Soft, new StatusPropertyHolder(100, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Poison, new StatusPropertyHolder(100, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Confused, new StatusPropertyHolder(100, 0));

            Texture2D spriteSheet = AssetManager.Instance.LoadAsset <Texture2D>($"{ContentGlobals.SpriteRoot}/Enemies/Goomba");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(67, 107, 26, 28), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(spriteSheet,
                                                                              new Animation.Frame(new Rectangle(65, 76, 29, 27), 80d),
                                                                              new Animation.Frame(new Rectangle(2, 109, 27, 26), 80d)));
            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(2, 109, 27, 26), 1000d)));
        }
Exemplo n.º 21
0
    public void OnDraggingTag(TagParent tagParent, PointerEventData eventData)
    {
        if (tagParents_.Contains(tagParent))
        {
            int index = tagParents_.IndexOf(tagParent);
            tagParent.transform.localPosition += new Vector3(0, eventData.delta.y, 0);

            int desiredIndex = GetDesiredTagIndex(tagParent.transform.localPosition.y);

            if (index != desiredIndex)
            {
                tagParents_.Remove(tagParent);
                tagParents_.Insert(desiredIndex, tagParent);
                int sign = (int)Mathf.Sign(desiredIndex - index);
                for (int i = index; i != desiredIndex; i += sign)
                {
                    AnimManager.AddAnim(tagParents_[i], GetTargetPosition(tagParents_[i]), ParamType.Position, AnimType.Time, GameContext.Config.AnimTime);
                }
            }
        }
    }
Exemplo n.º 22
0
        public void RemoveWings()
        {
            //Remove the wings from the hurt and death animations
            Animation[] animations = AnimManager.GetAnimations(AnimationGlobals.HurtName, AnimationGlobals.DeathName);

            //Clear all child frames with wings
            for (int i = 0; i < animations.Length; i++)
            {
                animations[i].SetChildFrames(null);
            }

            //Add VFX for the wings disappearing
            Texture2D        spriteSheet = AssetManager.Instance.LoadAsset <Texture2D>($"{ContentGlobals.SpriteRoot}/Enemies/Paragoomba");
            CroppedTexture2D wingSprite  = new CroppedTexture2D(spriteSheet, new Rectangle(3, 166, 41, 18));

            //Put the wings in the same spot as they were in the Paragoomba's last animation
            WingsDisappearVFX wingsDisappear = new WingsDisappearVFX(wingSprite, BattlePosition + new Vector2(-4, -1),
                                                                     EntityType != Enumerations.EntityTypes.Enemy, .1f - .01f, 500d, 500d, (1d / 30d) * Time.MsPerS);

            BattleVFXManager.Instance.AddVFXElement(wingsDisappear);
        }
Exemplo n.º 23
0
        public override void LoadAnimations()
        {
            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Enemies/Goomba.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new ReverseAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                     new Animation.Frame(new Rectangle(67, 107, 26, 28), 1000d),
                                                                                     new Animation.Frame(new Rectangle(35, 104, 26, 31), 150d, new Vector2(0, -2)),
                                                                                     new Animation.Frame(new Rectangle(3, 5, 26, 34), 1000d, new Vector2(0, -3))));
            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(spriteSheet,
                                                                              new Animation.Frame(new Rectangle(65, 76, 29, 27), 80d),
                                                                              new Animation.Frame(new Rectangle(2, 109, 27, 26), 80d)));
            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(2, 109, 27, 26), 300d)));

            AnimManager.AddAnimation(AnimationGlobals.RunningName, new ReverseAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                        new Animation.Frame(new Rectangle(129, 73, 28, 30), 150d, new Vector2(0, -2)),
                                                                                        new Animation.Frame(new Rectangle(67, 107, 26, 28), 100d),
                                                                                        new Animation.Frame(new Rectangle(99, 75, 28, 28), 150d)));
            AnimManager.AddAnimation(AnimationGlobals.JumpStartName, new Animation(spriteSheet,
                                                                                   new Animation.Frame(new Rectangle(99, 107, 26, 28), 400d)));
        }
Exemplo n.º 24
0
        public override void LoadAnimations()
        {
            base.LoadAnimations();

            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Enemies/Koopatrol.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                  new Animation.Frame(new Rectangle(1, 388, 42, 59), 500d)));
            AnimManager.AddAnimation(AnimationGlobals.RunningName, new ReverseAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                        new Animation.Frame(new Rectangle(1, 388, 42, 59), 100d),
                                                                                        new Animation.Frame(new Rectangle(49, 387, 43, 60), 100d, new Vector2(-1, -1)),
                                                                                        new Animation.Frame(new Rectangle(98, 386, 45, 60), 100d, new Vector2(-2, -2))));
            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(spriteSheet,
                                                                              new Animation.Frame(new Rectangle(5, 325, 40, 50), 250d),
                                                                              new Animation.Frame(new Rectangle(56, 325, 38, 49), 250d)));
            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(spriteSheet,
                                                                               new Animation.Frame(new Rectangle(99, 327, 43, 48), 300d)));

            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.EnterShellName, new Animation(spriteSheet,
                                                                                                            new Animation.Frame(new Rectangle(99, 262, 39, 49), 70d),
                                                                                                            new Animation.Frame(new Rectangle(152, 260, 35, 27), 70d),
                                                                                                            new Animation.Frame(new Rectangle(202, 261, 33, 25), 70d)));
            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.ShellSpinName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                                               new Animation.Frame(new Rectangle(34, 449, 28, 30), 100d),
                                                                                                               new Animation.Frame(new Rectangle(66, 449, 28, 30), 100d),
                                                                                                               new Animation.Frame(new Rectangle(97, 449, 30, 30), 100d),
                                                                                                               new Animation.Frame(new Rectangle(130, 449, 28, 30), 100d),
                                                                                                               new Animation.Frame(new Rectangle(162, 449, 28, 30), 100d),
                                                                                                               new Animation.Frame(new Rectangle(1, 449, 30, 30), 100d)));
            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.ExitShellName, new Animation(spriteSheet,
                                                                                                           new Animation.Frame(new Rectangle(202, 261, 33, 25), 70d),
                                                                                                           new Animation.Frame(new Rectangle(152, 260, 35, 27), 70d),
                                                                                                           new Animation.Frame(new Rectangle(99, 262, 39, 49), 70d)));
            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.FlippedName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                                             new Animation.Frame(new Rectangle(337, 57, 58, 35), 300d),
                                                                                                             new Animation.Frame(new Rectangle(337, 97, 58, 36), 300d)));
        }
Exemplo n.º 25
0
        public Pokey() : base(new Stats(11, 4, 0, 2, 0))
        {
            Name = "Pokey";

            AIBehavior = new GoombaAI(this);

            #region Entity Property Setup

            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Sleep, new StatusPropertyHolder(95, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Dizzy, new StatusPropertyHolder(80, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Confused, new StatusPropertyHolder(90, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Tiny, new StatusPropertyHolder(90, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Stop, new StatusPropertyHolder(80, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.DEFDown, new StatusPropertyHolder(95, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Burn, new StatusPropertyHolder(100, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Frozen, new StatusPropertyHolder(60, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Fright, new StatusPropertyHolder(100, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.Blown, new StatusPropertyHolder(90, 0));
            EntityProperties.AddStatusProperty(Enumerations.StatusTypes.KO, new StatusPropertyHolder(100, 0));

            EntityProperties.AddPhysAttribute(Enumerations.PhysicalAttributes.Spiked);
            EntityProperties.AddPayback(new StatusGlobals.PaybackHolder(StatusGlobals.PaybackTypes.Constant, Enumerations.PhysicalAttributes.Spiked,
                                                                        Enumerations.Elements.Sharp, new Enumerations.ContactTypes[] { Enumerations.ContactTypes.Latch, Enumerations.ContactTypes.TopDirect, Enumerations.ContactTypes.SideDirect },
                                                                        new Enumerations.ContactProperties[] { Enumerations.ContactProperties.None },
                                                                        Enumerations.ContactResult.Failure, Enumerations.ContactResult.Failure, 1, null));

            EntityProperties.SetVulnerableDamageEffects(Enumerations.DamageEffects.RemovesSegment);

            #endregion

            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Enemies/Pokey.png");
            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                     new Animation.Frame(new Rectangle(33, 65, 30, 30), 200d),
                                                                                     new Animation.Frame(new Rectangle(97, 65, 30, 30), 200d),
                                                                                     new Animation.Frame(new Rectangle(65, 66, 30, 29), 200d, new Vector2(0, 1))));
            //AnimManager.AddAnimationChildFrame(AnimationGlobals.IdleName)
        }
Exemplo n.º 26
0
        public Kooper() : base(new PartnerStats(PartnerGlobals.PartnerRanks.Normal, 50, 0, 1))
        {
            Name = "Kooper";
            PartnerDescription = "He can throw his shell at enemies!";
            PartnerType        = Enumerations.PartnerTypes.Kooper;

            //As Kooper is a Koopa, he can be flipped
            EntityProperties.SetVulnerableDamageEffects(Enumerations.DamageEffects.FlipsShelled | Enumerations.DamageEffects.FlipsClefts);

            Texture2D spriteSheet = AssetManager.Instance.LoadAsset <Texture2D>($"{ContentGlobals.SpriteRoot}/Characters/Kooper");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(97, 117, 30, 50), 1000d)));

            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(spriteSheet,
                                                                              new Animation.Frame(new Rectangle(4, 170, 42, 45), 500d),
                                                                              new Animation.Frame(new Rectangle(52, 173, 41, 42), 500d)));
            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(spriteSheet, new Animation.Frame(new Rectangle(52, 173, 41, 42), 1000d)));

            AnimManager.AddAnimation(AnimationGlobals.RunningName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                     new Animation.Frame(new Rectangle(97, 117, 30, 50), 100d),
                                                                                     new Animation.Frame(new Rectangle(89, 3, 34, 48), 100d)));

            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.StarSpecialName, new Animation(spriteSheet,
                                                                                                            new Animation.Frame(new Rectangle(233, 60, 34, 51), 700d)));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.StarWishName, new Animation(spriteSheet,
                                                                                                         new Animation.Frame(new Rectangle(193, 62, 30, 49), 700d)));

            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.ShellSpinName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                                               new Animation.Frame(new Rectangle(162, 222, 28, 25), 250d),
                                                                                                               new Animation.Frame(new Rectangle(194, 222, 28, 25), 250d),
                                                                                                               new Animation.Frame(new Rectangle(225, 222, 30, 25), 250d),
                                                                                                               new Animation.Frame(new Rectangle(258, 222, 28, 25), 250d)));
            AnimManager.AddAnimation(AnimationGlobals.ShelledBattleAnimations.FlippedName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                                             new Animation.Frame(new Rectangle(69, 221, 53, 26), 350d),
                                                                                                             new Animation.Frame(new Rectangle(5, 218, 54, 28), 350d)));
        }
Exemplo n.º 27
0
        public override void OnGameTick(float dt)
        {
            base.OnGameTick(dt);


            if (Alive && AnimManager.ActiveAnimationsByAnimCode.Count == 0)
            {
                AnimManager.StartAnimation(new AnimationMetaData()
                {
                    Code = "idle", Animation = "idle", EaseOutSpeed = 10000, EaseInSpeed = 10000
                });
            }

            if (World.Side == EnumAppSide.Client)
            {
                talkUtil.OnGameTick(dt);
            }
            else
            {
                if (tickCount++ % 1000 == 0)
                {
                    double lastRefreshTotalDays = WatchedAttributes.GetDouble("lastRefreshTotalDays", 0);

                    if (World.Calendar.TotalDays - lastRefreshTotalDays > 14 && tradingWith == null)
                    {
                        RefreshBuyingSellingInventory(0.5f);
                        WatchedAttributes.SetDouble("lastRefreshTotalDays", World.Calendar.TotalDays);
                        tickCount = 1;
                    }
                }
            }

            if (tradingWith != null && (tradingWith.Pos.SquareDistanceTo(this.Pos) > 5 || Inventory.openedByPlayerGUIds.Count == 0))
            {
                dlg?.TryClose();
                tradingWith = null;
            }
        }
Exemplo n.º 28
0
        public override void LoadAnimations()
        {
            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Characters/Bow.png");

            AnimManager.SetSpriteSheet(spriteSheet);

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                     new Animation.Frame(new Rectangle(150, 123, 41, 34), 100d, new Vector2(0, -1)),
                                                                                     new Animation.Frame(new Rectangle(54, 163, 41, 34), 100d),
                                                                                     new Animation.Frame(new Rectangle(54, 43, 41, 34), 100d, new Vector2(0, 1))));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.DangerName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                                              new Animation.Frame(new Rectangle(150, 123, 41, 34), 100d, new Vector2(0, -1)),
                                                                                                              new Animation.Frame(new Rectangle(54, 163, 41, 34), 100d),
                                                                                                              new Animation.Frame(new Rectangle(54, 43, 41, 34), 100d, new Vector2(0, 1))));

            AnimManager.AddAnimation(AnimationGlobals.RunningName, new ReverseAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                        new Animation.Frame(new Rectangle(150, 123, 41, 34), 60d, new Vector2(0, -1)),
                                                                                        new Animation.Frame(new Rectangle(54, 163, 41, 34), 60d),
                                                                                        new Animation.Frame(new Rectangle(54, 43, 41, 34), 60d, new Vector2(0, 1))));

            AnimManager.AddAnimation(AnimationGlobals.HurtName, new Animation(null,
                                                                              new Animation.Frame(new Rectangle(151, 44, 39, 33), 100d),
                                                                              new Animation.Frame(new Rectangle(199, 44, 39, 33), 100d),
                                                                              new Animation.Frame(new Rectangle(247, 44, 39, 33), 100d)));
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.DizzyName, new LoopAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                                          new Animation.Frame(new Rectangle(151, 44, 39, 33), 100d),
                                                                                                          new Animation.Frame(new Rectangle(199, 44, 39, 33), 100d),
                                                                                                          new Animation.Frame(new Rectangle(247, 44, 39, 33), 100d)));
            AnimManager.AddAnimation(AnimationGlobals.StatusBattleAnimations.ConfusedName, new LoopAnimation(null, AnimationGlobals.InfiniteLoop,
                                                                                                             new Animation.Frame(new Rectangle(151, 44, 39, 33), 100d),
                                                                                                             new Animation.Frame(new Rectangle(199, 44, 39, 33), 100d),
                                                                                                             new Animation.Frame(new Rectangle(247, 44, 39, 33), 100d)));

            AnimManager.AddAnimation(AnimationGlobals.DeathName, new Animation(null, new Animation.Frame(new Rectangle(199, 44, 39, 33), 1000d)));

            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.ChoosingActionName, new Animation(null, new Animation.Frame(new Rectangle(151, 4, 39, 33), 1000d)));
            AnimManager.AddAnimation(AnimationGlobals.PlayerBattleAnimations.DangerChoosingActionName, new Animation(null, new Animation.Frame(new Rectangle(151, 4, 39, 33), 1000d)));
        }
Exemplo n.º 29
0
        public override void LoadAnimations()
        {
            //15 frame color change normal, 6 frame color change faster
            //2 frame spark change for normal and faster
            //Bomb starts brown, turns red 1 frame after fully stopping, then starts the spark
            //Spark order is red, orange, grey. It cycles back to red after grey
            Texture2D spriteSheet = AssetManager.Instance.LoadRawTexture2D($"{ContentGlobals.SpriteRoot}/Neutral/BobberyBomb.png");

            double bombFrameRate  = (1d / 15d) * 1000d;
            double sparkFrameRate = (1d / 30d) * 1000d;

            AnimManager.AddAnimation(AnimationGlobals.IdleName, new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                                                                  new Animation.Frame(new Rectangle(62, 1, 65, 68), bombFrameRate),
                                                                                  new Animation.Frame(new Rectangle(62, 72, 65, 68), bombFrameRate)));

            SparkAnimation = new LoopAnimation(spriteSheet, AnimationGlobals.InfiniteLoop,
                                               new Animation.Frame(new Rectangle(0, 0, 32, 24), sparkFrameRate),
                                               new Animation.Frame(new Rectangle(0, 24, 32, 24), sparkFrameRate),
                                               new Animation.Frame(new Rectangle(0, 48, 32, 24), sparkFrameRate));

            //Pause the spark animation until we're ready to play it
            SparkAnimation.Pause();
        }
Exemplo n.º 30
0
    IEnumerator AnimToTargetVisualCoroutine()
    {
        yield return(new WaitForEndOfFrame());

        if (textField_ != null && textField_.BindedLine != null)
        {
            this.interactable = textField_ != null && textField_.BindedLine.Count > 0;
            (targetGraphic as UIMidairPrimitive).SetColor(TargetColor);
            targetGraphic.CrossFadeColor(Color.white, 0, true, true);
            AnimManager.AddAnim(targetGraphic, interactable && isOn ? 0 : 90, ParamType.RotationZ, AnimType.Time, GameContext.Config.AnimTime);
            if (verticalLine_ != null)
            {
                float lineHeight = 0;
                if (textField_ != null)
                {
                    lineHeight = textField_.BindedLine.VisibleChildCount * GameContext.Config.HeightPerLine;
                }
                AnimManager.AddAnim(verticalLine_, lineHeight, ParamType.GaugeLength, AnimType.Time, GameContext.Config.AnimTime);
                verticalLine_.rectTransform.sizeDelta = new Vector2(1, lineHeight);
            }
        }
        wasAnimRequested_ = false;
    }
Exemplo n.º 31
0
 void Start()
 {
     //CreateScene();
     TM = new TextManager(this);
     AM = new AnimManager(this);
 }