Пример #1
0
 public HanoiVisual(HanoiGame hanoiGame, Panel panelA, Panel panelB, Panel panelC, Panel gameArea)
 {
     game          = hanoiGame;
     panels        = new Panel[3];
     this.gameArea = gameArea;
     panels[0]     = panelA;
     panels[1]     = panelB;
     panels[2]     = panelC;
     CalculateSize();
     CreateTowers();
     CreateBlocks();
     SetupBlocks();
     currentMove = game.originTowers;
     //game.BlockMoved += Visualize;
 }
Пример #2
0
 public void Visualize(HanoiGame.MoveInfo move)
 {
     for (int i = 0; i < 3; i++)
     {
         VisualTower visualTower = visualTowers[i];
         for (int t = 0; t < game.blockCount; t++)
         {
             Block block = move.towers[i][t];
             if (block == null)
             {
                 continue;
             }
             visualTower.PlaceBlock(blockInfos[block.size - 1], t);
         }
     }
     currentMove = move;
 }
Пример #3
0
 void UpdateLabel()
 {
     HanoiGame.MoveInfo move = game.moves[scrollIndex];
     indicator.Text = (scrollIndex).ToString() + "/" + (game.moves.Count - 1).ToString();
 }