private void button1_Click(object sender, EventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.DefaultExt = ".gif"; dlg.Filter = "gif images|*.gif|Retro-Sonic Graphics Images (Sage 2007)|*.gfx|Retro-Sonic Graphics Images (Dreamcast Demo)|*.gfx"; if (dlg.ShowDialog(this) == System.Windows.Forms.DialogResult.OK) { if (dlg.FilterIndex - 1 == 0) { Tileset = new Bitmap(dlg.FileName); LoadTileSet(Tileset); } if (dlg.FilterIndex - 1 == 1) { RSDKvRS.gfx g = new RSDKvRS.gfx(dlg.FileName, false); Tileset = g.gfxImage; LoadTileSet(Tileset); } if (dlg.FilterIndex - 1 == 2) { RSDKvRS.gfx g = new RSDKvRS.gfx(dlg.FileName, true); Tileset = g.gfxImage; LoadTileSet(Tileset); } } }
private void button1_Click(object sender, EventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.DefaultExt = ".gfx"; dlg.Filter = "Sage 2007 (PC Demo) Retro-Sonic Graphics Files|*.gfx|Dreamcast Demo Retro-Sonic Graphics Files|*.gfx"; if (dlg.ShowDialog(this) == System.Windows.Forms.DialogResult.OK) { filename = dlg.FileName; SourceGFXLocation.Text = dlg.FileName; if (dlg.FilterIndex - 1 == 1) //Did the user want to load a Dreamcast .gfx file? { dcGFX = true; } GFX = new RSDKvRS.gfx(filename, dcGFX); //Load the GFX file into a bitmap } }
public MapObject(string name, int id, int sID, string sheet, int Sheetxpos, int Sheetypos, int width, int height, int pivotX, int pivotY, int flip) { Name = name; ID = id; SubType = sID; SpriteSheet = sheet; X = Sheetxpos; Y = Sheetypos; Width = width; Height = height; PivotX = pivotX; PivotY = pivotY; Flip = flip; if (System.IO.Path.GetExtension(sheet) == ".gfx") { RSDKvRS.gfx g = new RSDKvRS.gfx(SpriteSheet, false); GFXHolder = g.gfxImage; } }
void LoadLevel(string level) { background.ImportFrom(engineType, level); Chunks.ImportFrom(engineType, mappings); if (engineType != Retro_Formats.EngineType.RSDKvRS) { using (var fs = new FileStream(tiles, FileMode.Open)) { var bmp = new Bitmap(fs); _loadedTiles = (Bitmap)bmp.Clone(); } } else { RSDKvRS.gfx gfx = new RSDKvRS.gfx(tiles); _loadedTiles = gfx.gfxImage; } _blocksViewer._tiles = _loadedTiles; _blocksViewer.SetChunks(); _mapViewer._tiles = _loadedTiles; _mapViewer.SetLevel(); _mapViewer.DrawLevel(); }
public MainForm() { InitializeComponent(); GFX = new RSDKvRS.gfx(); IMG = new Bitmap(1, 1); }
private void openToolStripMenuItem_Click(object sender, EventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.DefaultExt = ".bin"; dlg.Filter = "RSDKvB Chunk Mappings|128x128Tiles.bin|RSDKv2 Chunk Mappings|128x128Tiles.bin|RSDKv1 Chunk Mappings|128x128Tiles.bin|Retro-Sonic Chunk Mappings|Zone.til"; string RSDK = "RSDKvB"; if (dlg.ShowDialog(this) == System.Windows.Forms.DialogResult.OK) { curChunk = 0; filename = dlg.FileName; switch (dlg.FilterIndex - 1) //What RSDK version was loaded? { case 0: Tiles = new Bitmap(dlg.FileName.Replace("128x128Tiles.bin", "16x16Tiles.gif")); //A Zone's Tileset should be in the same folder as its chunk mappings engineType = Retro_Formats.EngineType.RSDKvB; Chunks.ImportFrom(engineType, dlg.FileName); RSDK = "RSDKvB"; break; case 1: Tiles = new Bitmap(dlg.FileName.Replace("128x128Tiles.bin", "16x16Tiles.gif")); //A Zone's Tileset should be in the same folder as its chunk mappings engineType = Retro_Formats.EngineType.RSDKv2; Chunks.ImportFrom(engineType, dlg.FileName); RSDK = "RSDKv2"; break; case 2: Tiles = new Bitmap(dlg.FileName.Replace("128x128Tiles.bin", "16x16Tiles.gif")); //A Zone's Tileset should be in the same folder as its chunk mappings engineType = Retro_Formats.EngineType.RSDKv1; Chunks.ImportFrom(engineType, dlg.FileName); RSDK = "RSDKv1"; break; case 3: engineType = Retro_Formats.EngineType.RSDKvRS; Chunks.ImportFrom(engineType, dlg.FileName); RSDKvRS.gfx gfx = new RSDKvRS.gfx(dlg.FileName.Replace("Zone.til", "Zone.gfx"), false); //A Zone's Tileset should be in the same folder as its chunk mappings Tiles = new Bitmap(gfx.gfxImage); RSDK = "RSDKvRS"; break; } LoadTileSet(Tiles); LoadChunks(Tiles); GotoNUD.Maximum = Chunks.MaxChunks; RedrawChunk(); string dispname = ""; string folder = Path.GetDirectoryName(filename); DirectoryInfo di = new DirectoryInfo(folder); folder = di.Name; string file = Path.GetFileName(filename); if (filename != null) { RetroED.MainForm.Instance.CurrentTabText = folder + "/" + file; dispname = folder + "/" + file; } else { RetroED.MainForm.Instance.CurrentTabText = "New Scene - RSDK Map Editor"; dispname = "New Scene - RSDK Map Editor"; } RetroED.MainForm.Instance.rp.state = "RetroED - " + this.Text; RetroED.MainForm.Instance.rp.details = "Editing: " + dispname + " (" + RSDK + ")"; SharpPresence.Discord.RunCallbacks(); SharpPresence.Discord.UpdatePresence(RetroED.MainForm.Instance.rp); } }