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); }
public void Join(Authentication authentication, DomainAccessType accessType) { var action = new JoinAction() { UserID = authentication.ID, AccessType = accessType, AcceptTime = authentication.SignatureDate.DateTime }; this.Post(action); }
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); }
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); }
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); }
public void SendAction(JoinAction action) { this._connection.WriteLine(action.ToString()); }