示例#1
0
 protected void reloadLevel(bool reloadBigBlocks = true)
 {
     curActiveBlock = 0;
     if (reloadBigBlocks)
     {
         bigBlockIndexes = ConfigScript.getBigBlocksRecursive(curHierarchyLevel, curSmallBlockNo);
     }
     setSmallBlocks();
     reloadBlocksPanel();
     mapScreen.Invalidate();
 }
示例#2
0
        protected virtual void setSmallBlocks()
        {
            smallBlocksImages = new Image[4][];

            if (curHierarchyLevel == 0)
            {
                if (hasSmallBlocksPals())
                {
                    smallBlocksImages[0] = ConfigScript.videoNes.makeObjects(curVideo, curTileset, curPallete, curViewType);
                }
                else
                {
                    fillSmallBlockImageLists();
                }
            }
            else
            {
                smallBlocksImages[0] = ConfigScript.videoNes.makeBigBlocks(curVideo, curTileset, ConfigScript.getBigBlocksRecursive(curHierarchyLevel - 1, curSmallBlockNo), curPallete, curViewType, MapViewType.Tiles, curHierarchyLevel - 1);
            }
            reloadBlocksPanel();

            //prerender big blocks
            bigBlocksImages = ConfigScript.videoNes.makeBigBlocks(curVideo, curTileset, bigBlockIndexes, curPallete, curViewType, MapViewType.Tiles, curHierarchyLevel);
            //
            int btc          = Math.Min(ConfigScript.getBigBlocksCount(curHierarchyLevel), 256);
            int bblocksInRow = 16;
            int bblocksInCol = (btc / bblocksInRow) + 1;

            //
            mapScreen.Size = new Size(bigBlocksImages[0].Width * bblocksInRow, bigBlocksImages[0].Height * bblocksInCol);
        }