예제 #1
0
        public static Character CreateDefaultCharacter(CharacterConfig.CHARACTERS character, CharacterConfig.BUTTONS button)
        {
            var c = new Character();

            c.characterType = character;
            ByteStreamPair bsp            = CharacterConfig.GetByteStreamPair(character, button);
            PaletteConfig  spriteConfig   = PaletteConfig.GenerateSpriteConfig(character);
            PaletteConfig  portraitConfig = PaletteConfig.GeneratePortraitConfig(character);
            Palette        s = Palette.PaletteFromConfig(spriteConfig);
            Palette        p = Palette.PaletteFromConfig(portraitConfig);

            c.sprite   = s;
            c.portrait = p;

            s.LoadStream(bsp.spriteStream);
            p.LoadStream(bsp.portraitStream);
            AssignImage(s, ImageConfig.GenerateNeutralBasePalette(character), "neutral");
            AssignImage(p, ImageConfig.GenerateVictoryBasePalette(character), "victory");
            if (character != CharacterConfig.CHARACTERS.Gouki)
            {
                AssignImage(p, ImageConfig.GenerateLossBasePalette(character), "loss");
            }

            if (character == CharacterConfig.CHARACTERS.Dictator)
            {
                AssignDicatatorSpriteImages(s);
            }
            if (character == CharacterConfig.CHARACTERS.Gouki)
            {
                AssignGoukiSpriteImages(s);
            }

            return(c);
        }
예제 #2
0
        public static Palette PaletteFromConfig(PaletteConfig pc)
        {
            Palette p = new Palette();

            p.SetAllOffSets(pc.labelOffsets);
            p.defaultColorOffsets = new List <ColorOffset>(pc.defaultColorOffsets);
            p.streamLength        = pc.streamLength;
            p.unusedOffsets       = new List <int>(pc.unusedOffsets);
            return(p);
        }