private void mnuCreateTileset_Click(object sender, EventArgs e) { // TODO: ask to save Tilemap/Tileset openFileDialog1.FileName = ""; openFileDialog1.Title = "Create Tileset"; openFileDialog1.Filter = "Image Files|*.bmp;*.png;*.jpg"; if (openFileDialog1.ShowDialog() != DialogResult.OK) { return; } using (var bmp = new Bitmap(openFileDialog1.FileName)) { // Sprite dimensions must be divisible by 8 if (bmp.Width % 8 != 0 || bmp.Height % 8 != 0) { MessageBox.Show("Tileset source image dimensions are not divisible by 8!", "Invalid Image", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } // Create Tilemap/Tileset (tileset, tilemap) = Tileset.Create(bmp, true); } // fill sizes for Tileset cmbTilesetWidth.Items.Clear(); foreach (var size in tileset.GetPerfectColumns()) { cmbTilesetWidth.Items.Add(size.ToString()); } // pick middle size cmbTilesetWidth.SelectedIndex = cmbTilesetWidth.Items.Count / 2; // finish tilesetFileOptions = null; tilemapFileOptions = null; UpdateTileset(true); UpdateTilemap(); mnuOpenTilemap.Enabled = true; mnuSaveTilemap.Enabled = true; mnuSaveTilemapAs.Enabled = true; mnuSaveTileset.Enabled = true; mnuSaveTilesetAs.Enabled = true; mnuPalette.Enabled = true; }
public static void Setup() { Ruby.Initialize(); RPG.Create(); Table.Create(); Tone.Create(); Map.Create(); AudioFile.Create(); Event.Create(); Page.Create(); EventCommand.Create(); Condition.Create(); MoveRoute.Create(); MoveCommand.Create(); Graphic.Create(); MapInfo.Create(); Tileset.Create(); }