private void ChangeMapProperties()
        {
            MapPropertiesDialog mapDialog = new MapPropertiesDialog();

            mapDialog.MapName = mapName;
            mapDialog.BitmapPath = bitmapPath;
            mapDialog.TileWidth = tileWidth;
            mapDialog.TileHeight = tileHeight;
            mapDialog.MapWidth = mapWidth;
            mapDialog.MapHeight = mapHeight;

            if (mapDialog.ShowDialog() == DialogResult.OK)
            {
                tileWidth = mapDialog.TileWidth;
                tileHeight = mapDialog.TileHeight;
                mapWidth = mapDialog.MapWidth;
                mapHeight = mapDialog.MapHeight;

                twLabel.Text = tileWidth.ToString() + " px";
                thLabel.Text = tileHeight.ToString() + " px";
                mwLabel.Text = mapWidth.ToString() + " x " + tileWidth.ToString() + " px";
                mhLabel.Text = mapHeight.ToString() + " x " + tileHeight.ToString() + " px";

                tileContainer.ResetParameters();
                map.ResetParameters();

                tileContainer.SetParameters(tileBitmap, tileWidth, tileHeight);
                try
                {
                    map.SetParameters(tileWidth, tileHeight, mapWidth, mapHeight, mapDialog.BaseTiles, tileBitmap, tileContainer, mapObjects, objectContainer);
                }
                catch (Exception)
                {
                    MessageBox.Show(Utils.ERROR_CREATING_MAP, Utils.APP_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    CloseMap();
                    return;
                }
            }

            mapDialog = null;
        }
        private void NewMap()
        {
            MapPropertiesDialog mapDialog = new MapPropertiesDialog();

            if (mapDialog.ShowDialog() == DialogResult.OK)
            {
                mapName = mapDialog.MapName;
                bitmapPath = mapDialog.BitmapPath;

                tileWidth = mapDialog.TileWidth;
                tileHeight = mapDialog.TileHeight;
                mapWidth = mapDialog.MapWidth;
                mapHeight = mapDialog.MapHeight;

                twLabel.Text = tileWidth.ToString() + " px";
                thLabel.Text = tileHeight.ToString() + " px";
                mwLabel.Text = mapWidth.ToString() + " x " + tileWidth.ToString() + " px";
                mhLabel.Text = mapHeight.ToString() + " x " + tileHeight.ToString() + " px";
                mnLabel.Text = mapName;

                descrLabel.Text = Utils.MAP_DESCRIPTION_HINT;

                this.Text = mapName + " - " + Utils.APP_NAME;

                tileBitmap = Image.FromFile(bitmapPath);

                LoadMapObjects();

                tileContainer.SetParameters(tileBitmap, tileWidth, tileHeight);
                try
                {
                    map.SetParameters(tileWidth, tileHeight, mapWidth, mapHeight, mapDialog.BaseTiles, tileBitmap, tileContainer, mapObjects, objectContainer);
                }
                catch (Exception)
                {
                    MessageBox.Show(Utils.ERROR_CREATING_MAP, Utils.APP_NAME, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    CloseMap();
                    return;
                }

                EnableAndShowControls();
            }

            mapDialog = null;
        }