Ejemplo n.º 1
0
        public void GameStartsWithCorrectNumberOfUsers()
        {
            BoardState   game     = DataTest.SampleGame;
            GameSettings settings = game.Settings;

            settings.NumPlayers = 3;

            game.Settings = settings;
            game.State    = GameState.GameNotStarted;

            JoinAction join = new JoinAction {
                PlayerId = 3, PlayerName = "Player 3"
            };
            BoardState last = Tick.Apply(game, new List <GameAction> {
                join
            });

            Assert.AreEqual(GameState.Started, last.State);
            Assert.AreEqual(3, last.Players.Count);

            Player added = last.Players.First(p => p.PlayerId == 3);

            Assert.AreEqual(game.Settings.Factories, added.NumFactories);
            Assert.AreEqual(0, added.NextFactory);
            Assert.AreEqual(game.Settings.StartMoney, added.Cash);
        }
Ejemplo n.º 2
0
        public void Join(Authentication authentication, DomainAccessType accessType)
        {
            var action = new JoinAction()
            {
                UserID = authentication.ID, AccessType = accessType, AcceptTime = authentication.SignatureDate.DateTime
            };

            this.Post(action);
        }
Ejemplo n.º 3
0
        private void btnJoin_Click(object sender, RoutedEventArgs e)
        {
            var        sp     = new EDRSheetProvider();
            var        sheet1 = sp.Get(this.InputPath1.Text, sheet1Pos, DC.ColumnIndex1);
            var        sheet2 = sp.Get(this.InputPath2.Text, sheet2Pos, DC.ColumnIndex2);
            JoinAction action = new JoinAction(config);

            action.Export(sheet1, sheet2, InputPath3.Text, inputSheetName.Text, DC.HeadTitle1, DC.HeadTitle2);
        }
Ejemplo n.º 4
0
        public Action Msg(Talker talker, dynamic caller, MsgEventArgs msg)
        {
            var user   = IrcUser.GetOrCreate(talker.Users, msg.Meta);
            var action = new JoinAction(msg.Data[0])
            {
                User = user
            };

            caller.join(action);

            var chats = action.ChatNames.Select(talker.Chats.GetOrCreate).ToList();

            chats.ForEach(chat => chat.SetUser(user));

            return(action);
        }
Ejemplo n.º 5
0
        public void SerializeItAll()
        {
            JoinAction join = new JoinAction {
                PlayerId = 1, PlayerName = "Test Player"
            };
            HireWorkerAction hire = new HireWorkerAction {
                PlayerId = 2
            };
            FireWorkerAction fire = new FireWorkerAction {
                PlayerId = 3
            };
            ProposeLoanAction propose = new ProposeLoanAction {
                PlayerId = 4, Period = TimeSpan.FromMinutes(1.0), PayBack = 20m, LoanAmount = 15m
            };
            WithdrawProposalAction withdraw = new WithdrawProposalAction {
                PlayerId = 5, ProposalId = 2
            };
            GiveGiftAction gift = new GiveGiftAction {
                PlayerId = 6, ToPlayerId = 2, GiftAmount = 10.2m
            };
            AssignWorkerAction research = new AssignWorkerAction {
                PlayerId = 7, Work = Job.Research, WorkerId = 1
            };
            AssignWorkerAction factory = new AssignWorkerAction {
                PlayerId = 8, Work = Job.Factory, WorkerId = 2
            };
            TakeLoanAction loan = new TakeLoanAction {
                PlayerId = 9, LoanProposalId = 1
            };

            StringBuilder sb = new StringBuilder();

            sb.Append("{\"gameJson\": ");
            sb.Append(DataTest.SampleGame.ToJson());
            sb.Append("\n, \"NoOp\": ");
            sb.Append(new NoOpAction().ToJson());
            sb.Append("\n \"JoinGame\": ");
            sb.Append(join.ToJson());
            sb.Append("\n \"HireWorker\": ");
            sb.Append(hire.ToJson());
            sb.Append("\n \"FireWorker\": ");
            sb.Append(fire.ToJson());
            sb.Append("\n \"ProposeLoan\": ");
            sb.Append(propose.ToJson());
            sb.Append("\n \"WithdrawProposal\": ");
            sb.Append(withdraw.ToJson());
            sb.Append("\n \"GiveGift\": ");
            sb.Append(gift.ToJson());
            sb.Append("\n \"AssignWorkerResearch\": ");
            sb.Append(research.ToJson());
            sb.Append("\n \"AssignWorkerFactory\": ");
            sb.Append(factory.ToJson());
            sb.Append("\n \"TakeLoan\": ");
            sb.Append(loan.ToJson());

            List <GameAction> actions = new List <GameAction> {
                hire, fire, loan
            };
            string            json     = GameAction.SerializeList(actions);
            List <GameAction> fromJson = GameAction.DeserializeList(json);

            List <GameAction> empty = new List <GameAction>();

            json     = GameAction.SerializeList(empty);
            fromJson = GameAction.DeserializeList(json);
        }
Ejemplo n.º 6
0
 public void SendAction(JoinAction action)
 {
     this._connection.WriteLine(action.ToString());
 }