public _2048Controller(Game2048 game, Form Form, Point Location, Size CageSize, Action <Move> Callback) { args = new Game2048Args(); Game = game; MainForm = Form; this.Location = Location; this.CageSize = CageSize; this.Callback = Callback; BackgroundCages = new List <Cage>(); //Cages = new List<Cage>(); //setFreeCages(); //OnScore += Game2048_OnScore; }
public Form1() { InitializeComponent(); GameMode = режимToolStripMenuItem.DropDownItems.OfType <ToolStripMenuItem>().Where(m => m.Tag != null && m.Tag.ToString() == "GameMode").ToList(); game = new Game2048(this, new Point(50, 290), new Point(4, 4), new Size(80, 80), Game_OnMove); game.SetBackgroundCell(); game.NewGame(); game.OnScore += Game_OnScore; game.OnGameOver += Game_OnGameOver; game.OnRecord += Game_OnRecord; game.OnMove += Game_OnMove; }
static void Main(string[] args) { IGameEngine engine = GetGameEngine(); IGameOptions options = new _2048Options(); IStatefullBoard board = new Board(); var colorizer = new TileColorizer(); Console.BackgroundColor = ConsoleColor.White; PrintBoard(board, colorizer); IGame game2048 = new Game2048(engine, options, board); game2048.RepaintRequiredEvent += (o, e) => PrintBoard(e.Board, colorizer); game2048.Play(); Console.WriteLine("Game over!"); if (engine.IsAI() && board.StepsCount > options.MaxStepCount) { Console.WriteLine("Halt! {0} step limit reached!", options.MaxStepCount); } Console.ResetColor(); }