コード例 #1
0
ファイル: Figure.cs プロジェクト: X4lldux/Kretu
        private Figure()
        {
            blocks = new Block[4];

            for (int i = 0; i < blocks.Length; i++) {
                blocks[i] = new Block (this);
            }
        }
コード例 #2
0
ファイル: GameEngine.cs プロジェクト: X4lldux/Kretu
 public DrawEventArgs(List<Figure> figures, Block[,] blocks)
 {
     this.figures = figures;
     this.Blocks = blocks;
 }
コード例 #3
0
ファイル: GameBoard.cs プロジェクト: X4lldux/Kretu
        public void DrawBoard(List<Figure> figures, Block[,] board)
        {
            foreach (var f in figures) {
                if (!figColsSymbols.ContainsKey (f))
                    figColsSymbols.Add (f, new FigureColorNSymbol {
                        Color = Colors[rnd.Next (Colors.Length)].ToWebString (),
                        Symbol = symbols[rnd.Next (symbols.Length)]
                    });
            }

            var sb = new StringBuilder ("<span weight=\"bold\" size=\"xx-large\" font=\"Monospace\" bgcolor=\"");
            sb.Append (TangoColors.Aluminium3.ToWebString ());
            sb.Append ("\" fgcolor=\"");
            sb.Append (TangoColors.Aluminium3.ToWebString ());
            sb.Append ("\">");

            for (int y = 5; y < board.GetLength (1); y++) {
                for (int x = 0; x < board.GetLength (0); x++) {
                    if (board[x, y] == null) {
                        sb.Append (" ");
                    } else if (board[x, y] == Block.Kretu) {
                        sb.Append ("<span color=\"black\" weight=\"bold\">⍨</span>");
                    } else {
                        var idx = figures.IndexOf (board[x, y].Figure);
                        sb.Append ("<span color=\"");
                        sb.Append (figColsSymbols[board[x, y].Figure].Color);
                        sb.Append ("\">");
                        sb.Append (figColsSymbols[board[x, y].Figure].Symbol);
                        sb.Append ("</span>");
                    }
                }

                sb.AppendLine ();
            }
            sb.Append ("</span>");

            lbl.Markup = sb.ToString ();
        }