private TilesetConverterBase GetTilesetConverter(SpriteMode mode) { TilesetConverterBase con; string name = tileset.TilesetName(); if (name == Tileset.Alpha.Name) { con = new TilesetConverterVerticalApha(tileset, mode, false); } else if (name == Tileset.R95.Name || name == Tileset.S97.Name || name == Tileset.XP_Tile.Name) { con = new TilesetConverterVertical(tileset, mode, false); } else if (name == Tileset.XP_Auto.Name) { con = new TilesetConverterAutotileXP(tileset, mode, false); } else if (Tileset.IsR2k_2k3((Tileset)tileset) && name != Tileset.R2k_2k3_AnimObj.Name) { // all 2000/2003 tilesets but not an animated object con = new TilesetConverterVerticalRM2K3(tileset, mode, false); } else if (name == Tileset.Custom(0).Name) { con = new TilesetConverterCustom(tileset, mode, false); } else { con = new TilesetConverterVX(tileset, mode, false); } return(con); }
public void Convert_RM2K3BToMVTest() { converter = new TilesetConverterVerticalRM2K3(new Maker.R2k_2k3_B(), SpriteMode.ALIGN_TOP_LEFT, false); Bitmap converted = converter.ConvertToMV(BitmapFromResourceStream("Tests.Images.R2k.R2k3_in.png"))[0]; Bitmap R2kOut = BitmapFromResourceStream("Tests.Images.R2k.Converter.R2k3_out_b_success.png"); Assert.IsTrue(ImageEditor.IsEqual(converted, R2kOut)); }
public void Convert_RM2K3ABToMVTest() { converter = new TilesetConverterVerticalRM2K3(new Maker.R2k_2k3_AB(), SpriteMode.ALIGN_TOP_LEFT, false); Bitmap[] converted = converter.ConvertToMV(BitmapFromResourceStream("Tests.Images.R2k.R2k3_in.png")); Bitmap R2kOut1 = BitmapFromResourceStream("Tests.Images.R2k.Converter.R2k3_out_ab_success_0.png"); Bitmap R2kOut2 = BitmapFromResourceStream("Tests.Images.R2k.Converter.R2k3_out_ab_success_1.png"); bool isTrue = ImageEditor.IsEqual(converted[0], R2kOut1) && ImageEditor.IsEqual(converted[1], R2kOut2); Assert.IsTrue(isTrue); }
private TilesetConverterBase GetTilesetConverter(SpriteMode mode) { TilesetConverterBase con; switch (tileset.TilesetName()) { case Maker.Alpha.NAME: con = new TilesetConverterVerticalApha(tileset, mode, false); break; case Maker.R95.NAME: case Maker.S97.NAME: case Maker.XP_Tile.NAME: con = new TilesetConverterVertical(tileset, mode, false); break; case Maker.XP_Auto.NAME: con = new TilesetConverterAutotileXP(tileset, mode, false); break; case Maker.R2k_2k3_A.NAME: case Maker.R2k_2k3_B.NAME: case Maker.R2k_2k3_AB.NAME: case Maker.R2k_2k3_Auto.NAME: con = new TilesetConverterVerticalRM2K3(tileset, mode, false); break; case Maker.Custom.NAME: con = new TilesetConverterCustom(mode, false); break; default: con = new TilesetConverterVX(tileset, mode, false); break; } return(con); }
private void Convert(object sender, EventArgs e) { TilesetConverterBase con; ITileset tileset = GetTileset(); btnConvert.Text = Vocab.GetText("wait"); try { switch (tileset.TilesetName()) { case Maker.Alpha.NAME: con = new TilesetConverterVerticalApha(tileset, (SpriteMode)cbMode.SelectedIndex, checkIgnore.Checked); break; case Maker.R95.NAME: case Maker.S97.NAME: case Maker.XP_Tile.NAME: con = new TilesetConverterVertical(tileset, (SpriteMode)cbMode.SelectedIndex, checkIgnore.Checked); break; case Maker.XP_Auto.NAME: con = new TilesetConverterAutotileXP(tileset, (SpriteMode)cbMode.SelectedIndex, checkIgnore.Checked); break; case Maker.R2k_2k3_A.NAME: case Maker.R2k_2k3_B.NAME: case Maker.R2k_2k3_AB.NAME: case Maker.R2k_2k3_Auto.NAME: case Maker.R2k_2k3_AnimObj.NAME: con = new TilesetConverterVerticalRM2K3(tileset, (SpriteMode)cbMode.SelectedIndex, checkIgnore.Checked); break; case Maker.Custom.NAME: con = new TilesetConverterCustom((SpriteMode)cbMode.SelectedIndex, checkIgnore.Checked, Int32.Parse(textCustomSize.Text)); break; default: con = new TilesetConverterVX(tileset, (SpriteMode)cbMode.SelectedIndex, checkIgnore.Checked); break; } bitmaps = con.ConvertToMV(Image.FromFile(filepath)); } catch (ConvertException ex) { MessageBox.Show(ex.Message); return; } if (bitmaps == null) { btnConvert.Text = Vocab.GetText("converter"); return; } pictureBoxOutput.Image = bitmaps[0]; btnNextImg.Enabled = btnPreviusImg.Enabled = false; btnTransparency.Enabled = true; setTransparentItem.Enabled = true; if (bitmaps.Length > 1) { btnNextImg.Enabled = btnPreviusImg.Enabled = true; } else { btnNextImg.Enabled = btnPreviusImg.Enabled = false; } bmpCurrentIndex = 0; labelMVPagesNumber.Text = bmpCurrentIndex + 1 + "/" + bitmaps.Length; btnConvert.Text = Vocab.GetText("converter"); }