Пример #1
0
        public void Initialize(GameHandler gameHandler, GameDrawing gameDrawing)
        {
            this.gameHandler = gameHandler;
            this.gameDrawing = gameDrawing;

            nudTilesetNo.Maximum = (GameHandler.NumTilesets - 1);
            nudPaletteNo.Maximum = (GameHandler.NumPalettes - 1);

            GetAndDrawTileset();
            GetAndDrawBlocks();
        }
Пример #2
0
        private void LoadROM(string path)
        {
            using (System.IO.BinaryReader reader = new System.IO.BinaryReader(System.IO.File.Open(path, System.IO.FileMode.Open, System.IO.FileAccess.Read, System.IO.FileShare.ReadWrite)))
            {
                gameHandler = new GameHandler(reader);
            }

            gameDrawing = new GameDrawing(gameHandler);

            CreateMapTree();

            pbMap.Invalidate();
            pbBlocks.Invalidate();

            tilesetViewerToolStripMenuItem.Enabled = true;

            Text            = $"{Application.ProductName} - [{path}]";
            tsslStatus.Text = "ROM loaded";
        }
Пример #3
0
        public MainForm()
        {
            InitializeComponent();

            foreach (var control in Controls)
            {
                (control as Control).Font = SystemFonts.MessageBoxFont;
            }

            Text            = Application.ProductName;
            tsslStatus.Text = "Ready";

            gameHandler = null;
            gameDrawing = null;

            selectedMap   = null;
            selectedEvent = null;

            blocksWidth = 4;

            gridPen = new Pen(Color.FromArgb(128, Color.Gray));

            UIHelpers.AddFontFromResource("G15Map.Data.PixelFont.smallest_pixel-7.ttf");

            spnlMap.Resize    += (s, e) => { spnlMap.Refresh(); };
            spnlBlocks.Resize += (s, e) => { spnlBlocks.Refresh(); };

            pbBlocks.MouseDown += (s, e) => { pbBlocks.Parent?.Focus(); };

            showEventOverlayToolStripMenuItem.CheckedChanged     += (s, e) => { pbMap.Invalidate(); pbBlocks.Invalidate(); };
            showGridOverlayToolStripMenuItem.CheckedChanged      += (s, e) => { pbMap.Invalidate(); pbBlocks.Invalidate(); };
            showDebugWarpsToolStripMenuItem.CheckedChanged       += (s, e) => { pbMap.Invalidate(); pbBlocks.Invalidate(); };
            useNighttimePalettesToolStripMenuItem.CheckedChanged += (s, e) => { pbMap.Invalidate(); pbBlocks.Invalidate(); };
            enableZoomToolStripMenuItem.CheckedChanged           += (s, e) => { LoadMap(selectedMap); pbMap.Invalidate(); pbBlocks.Invalidate(); };
#if DEBUG
            if (Environment.MachineName == "RIN-CORE")
            {
                LoadROM(@"D:\Games\Game Boy & Advance\Pokemon GS Spaceworld 1997 Demos\Pokémon Gold - Spaceworld 1997 Demo (Debug) (Header Fixed).sgb");
                //tilesetViewerToolStripMenuItem_Click(tilesetViewerToolStripMenuItem, EventArgs.Empty);
                //tvMaps.SelectedNode = tvMaps.Nodes[0].Nodes[3];
            }
#endif
        }