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); }
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); }