Beispiel #1
0
        public static void Main(string[] args)
        {
            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Information()
                         .WriteTo.Console()
                         .CreateLogger();
            var sidiBarraniServer = new SidiBarraniServerImplementation();

            BuildAvaloniaApp()
            .Start <GameView>(() => new SidiBarraniViewModel(sidiBarraniServer));
        }
Beispiel #2
0
        static void Main()
        {
            Log.Logger = new LoggerConfiguration()
                         .MinimumLevel.Information()
                         .WriteTo.Console()
                         .CreateLogger();
            var sidiBarraniServer = new SidiBarraniServerImplementation();

            // The following lines should be replaced by actual web service calls
            var client1 = new SidiBarraniClientImplementation(sidiBarraniServer);
            var client2 = new SidiBarraniClientImplementation(sidiBarraniServer);
            var client3 = new SidiBarraniClientImplementation(sidiBarraniServer);
            var client4 = new SidiBarraniClientImplementation(sidiBarraniServer);

            var rules = new Rules
            {
                EndScore = 100
            };

            client1.OpenGame(rules, "Game1", "TeamA", "TeamB");
            client2.OpenGame(null, "Game2", "TeamC", "TeamD");
            client3.RefreshOpenGames();
            client4.RefreshOpenGames();
            client1.ConnectToGame(client1.OpenGameList.First(), "Player1");
            client2.ConnectToGame(client2.OpenGameList.First(), "Player2");
            client3.ConnectToGame(client3.OpenGameList.First(), "Player3");
            client4.ConnectToGame(client4.OpenGameList.First(), "Player4");
            client1.StartGame();
            Thread.Sleep(500);
            var clientList = new List <SidiBarraniClientImplementation> {
                client1, client2, client3, client4
            };

            var random     = new Random();
            var gameResult = clientList.First().PlayerGameInfo?.GameStageInfo?.GameResult;

            while (gameResult == null)
            {
                foreach (var client in clientList)
                {
                    var validActions = client.GetValidActions();
                    if (validActions.Any())
                    {
                        var randomAction = validActions[random.Next(validActions.Count - 1)];
                        if (client.ProcessAction(randomAction))
                        {
                            Thread.Sleep(500);
                        }
                    }
                }
                gameResult = clientList.First().PlayerGameInfo?.GameStageInfo?.GameResult;
            }
        }