Exemple #1
0
        public void AddCustomKnightHandlers()
        {
            SkinManager.OnSetSkin += (_, e) => {
                var skin          = SkinManager.GetCurrentSkin();
                var currDirIsLeft = false;
                if (HeroController.instance != null && HeroController.instance.transform.localScale.x < 0)
                {
                    currDirIsLeft = true;
                }

                if (lastSkin != skin.GetId())
                {
                    Knight = new Asymmetrical(CustomKnight.Knight.NAME);
                    Sprint = new Asymmetrical(CustomKnight.Sprint.NAME);
                    Unn    = new Asymmetrical(CustomKnight.Unn.NAME);
                    Knight.GetTexture(skin, currDirIsLeft);
                    Unn.GetTexture(skin, currDirIsLeft);
                    Sprint.GetTexture(skin, currDirIsLeft);
                    lastSkin = skin.GetId();
                }
            };
        }
Exemple #2
0
        public void UpdateSkin()
        {
            var skin          = SkinManager.GetCurrentSkin();
            var currDirIsLeft = HeroController.instance.transform.localScale.x > 0;

            if (lastSkin != skin.GetId())
            {
                Knight = new Asymmetrical(CustomKnight.Knight.NAME);
                Sprint = new Asymmetrical(CustomKnight.Sprint.NAME);
                Unn    = new Asymmetrical(CustomKnight.Unn.NAME);
                Knight.GetTexture(skin, currDirIsLeft);
                Unn.GetTexture(skin, currDirIsLeft);
                Sprint.GetTexture(skin, currDirIsLeft);
                lastSkin = skin.GetId();
            }

            if (currDirIsLeft != lastDirWasLeft)
            {
                var knight = Knight.GetTexture(skin, currDirIsLeft);
                var unn    = Unn.GetTexture(skin, currDirIsLeft);
                var sprint = Sprint.GetTexture(skin, currDirIsLeft);
                if (knight != null)
                {
                    SkinManager.Skinables[CustomKnight.Knight.NAME].ApplyTexture(knight);
                }
                if (sprint != null)
                {
                    SkinManager.Skinables[CustomKnight.Sprint.NAME].ApplyTexture(sprint);
                }
                if (unn != null)
                {
                    SkinManager.Skinables[CustomKnight.Unn.NAME].ApplyTexture(unn);
                }
                lastDirWasLeft = currDirIsLeft;
            }
        }