示例#1
0
        public OverworldMap(byte index, Overworld ow)
        {
            this.index  = index;
            this.ow     = ow;
            this.parent = index;
            gfxBitmap   = new Bitmap(512, 512, 512, PixelFormat.Format8bppIndexed, gfxPtr);

            if (index != 0x80)
            {
                if (index <= 150)
                {
                    if (ROM.DATA[Constants.overworldMapSize + (index & 0x3F)] != 0)
                    {
                        largeMap = true;
                    }
                }
            }
            if (index < 64)
            {
                sprgfx[0]     = ROM.DATA[Constants.overworldSpriteset + parent];
                sprgfx[1]     = ROM.DATA[Constants.overworldSpriteset + parent + 64];
                sprgfx[2]     = ROM.DATA[Constants.overworldSpriteset + parent + 128];
                gfx           = ROM.DATA[Constants.mapGfx + parent];
                palette       = ROM.DATA[Constants.overworldMapPalette + parent];
                sprpalette[0] = ROM.DATA[Constants.overworldSpritePalette + parent];
                sprpalette[1] = ROM.DATA[Constants.overworldSpritePalette + parent + 64];
                sprpalette[2] = ROM.DATA[Constants.overworldSpritePalette + parent + 128];
            }
            else
            {
                sprgfx[0]     = ROM.DATA[Constants.overworldSpriteset + parent + 128];
                sprgfx[1]     = ROM.DATA[Constants.overworldSpriteset + parent + 128];
                sprgfx[2]     = ROM.DATA[Constants.overworldSpriteset + parent + 128];
                gfx           = ROM.DATA[Constants.mapGfx + parent];
                palette       = ROM.DATA[Constants.overworldMapPalette + parent];
                sprpalette[0] = ROM.DATA[Constants.overworldSpritePalette + parent + 128];
                sprpalette[1] = ROM.DATA[Constants.overworldSpritePalette + parent + 128];
                sprpalette[2] = ROM.DATA[Constants.overworldSpritePalette + parent + 128];
            }
        }