Beispiel #1
0
        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;
        }
Beispiel #2
0
 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();
 }