public void drawPlayer0(MonopolyDealServiceReference.PlayFieldModel pfm) { textBoxHand1.Text = ""; textBoxBank1.Text = ""; textBoxProp1.Text = ""; foreach (MonopolyDealServiceReference.Card card in pfm.playerModels[0].hand.cardsInHand) { textBoxHand1.Text = textBoxHand1.Text + "ID:" + card.cardID + " " + card.cardName + " $" + card.cardValue + Environment.NewLine; if (thisPlayerGuid.CompareTo(pfm.playerModels[0].guid) == 0) { updateTextBoxLog(card.ToString()); popluateHandListBox(card); } } foreach (MonopolyDealServiceReference.Card card in pfm.playerModels[0].bank.cardsInBank) { textBoxBank1.Text = textBoxBank1.Text + "ID:" + card.cardID + " " + card.cardName + " $" + card.cardValue + Environment.NewLine; } foreach (MonopolyDealServiceReference.PropertyCardSet cardSet in pfm.playerModels[0].propertySets.playersPropertySets) { foreach (MonopolyDealServiceReference.Card card in cardSet.properties) { textBoxProp1.Text = textBoxProp1.Text + "ID:" + card.cardID + " " + card.cardName + " $" + card.cardValue + Environment.NewLine; } } }
public PickSetToRentOn(MonopolyDealServiceReference.PlayFieldModel pfm, Guid thisClientGuid, RequestHanderMonopolyDeal rqmd, MonopolyDealServiceReference.Card card, Guid targetedPlayerWildRent) { request = rqmd; this.RentCard = card; targetedPlayer = targetedPlayerWildRent; InitializeComponent(); displayOriginalSet(pfm, thisClientGuid); displayCardsInHand(pfm); }
public void displayLobbies(MonopolyDealServiceReference.GameLobby[] lobbies) { SendOrPostCallback callBack = delegate(Object state) { mainForm.displayLobbiesState(state as MonopolyDealServiceReference.GameLobby[]); }; _uiSyncContext.Post(callBack, lobbies); }
public void processMessage(MonopolyDealServiceReference.Message message) { //INCOMPLETE if (message is MonopolyDealServiceReference.FieldUpdateMessage) { MonopolyDealServiceReference.FieldUpdateMessage messageFM = (MonopolyDealServiceReference.FieldUpdateMessage)message; displayField(messageFM.fieldModel); savefield(messageFM.fieldModel); } }
public void displayField(MonopolyDealServiceReference.PlayFieldModel pfm) { displayHandsBanksPropertySets(pfm); //Check if you can take an action //Display anyActions taken last turn //Display the whose turn it is //prevent players whose turn is is not from doing anything but watch //Present the player whose turn it is with the actions they can take this turn }
private void displayCardsInHand(MonopolyDealServiceReference.PlayFieldModel pfm) { foreach (MonopolyDealServiceReference.PlayerModel p in this.request.CurrentPlayFieldModel.playerModels) { if (p.guid.CompareTo(request.thisClientGuid) == 0) { listBoxCardsInHand.DataSource = p.hand.cardsInHand; listBoxCardsInHand.DisplayMember = "description"; } } }
public void bindPlayer2(MonopolyDealServiceReference.PlayFieldModel pfm) { listBoxPlayer2Hand.DataSource = requestHandler.CurrentPlayFieldModel.playerModels.ElementAt(2).hand.cardsInHand; listBoxPlayer2Hand.DisplayMember = "description"; //listBoxPlayer2Hand.ValueMember = "cardID"; listBoxPlayer2Bank.DataSource = requestHandler.CurrentPlayFieldModel.playerModels.ElementAt(2).bank.cardsInBank; listBoxPlayer2Bank.DisplayMember = "description"; //listBoxPlayer2Bank.ValueMember = "cardID"; listBoxPSetsP2.DataSource = requestHandler.CurrentPlayFieldModel.playerModels.ElementAt(2).propertySets.playersPropertySets; listBoxPSetsP2.DisplayMember = "propertySetColor"; }
private void displayHandsBanksPropertySets(MonopolyDealServiceReference.PlayFieldModel pfm) { // The UI thread won't be handling the callback, but it is the only one allowed to update the controls. // So, we will dispatch the UI update back to the UI sync context. //Create a SendOrPostCallback delegate with an anon method which recieves an Object called state and runs code in the SychronisationContext it is marshalled to using Post SendOrPostCallback callback = delegate(object state) { mainForm.drawField((MonopolyDealServiceReference.PlayFieldModel)state); //state is a string object example //mainForm.updateTextBoxLog(state.ToString()); }; //Post takes a delagate and a State object and runs the delegate(State object) in the context Post is called on. uiSync.Post(callback, pfm); }
//public void displayThisClientHand(MonopolyDealServiceReference. player) // { //player //throw private new NotImplementedException(); // } public void drawField(MonopolyDealServiceReference.PlayFieldModel pfm) { textBoxHand1.Text = ""; //Player0 int numPlayers = pfm.playerModels.Count(); switch (numPlayers) { case 0: break; case 1: drawPlayer0(pfm); break; case 2: drawPlayer0(pfm); drawPlayer1(pfm); break; case 3: drawPlayer0(pfm); drawPlayer1(pfm); drawPlayer2(pfm); break; case 4: drawPlayer0(pfm); drawPlayer1(pfm); drawPlayer2(pfm); drawPlayer3(pfm); break; case 5: drawPlayer0(pfm); drawPlayer1(pfm); drawPlayer2(pfm); drawPlayer3(pfm); drawPlayer4(pfm); break; } }
/// <summary> /// Gets all of the clients property, house, hotel and banked cards and puts them in a list passed to the method. /// Returns the total value of the players played cards /// </summary> /// <param name="pfm">The current game state</param> /// <param name="playersPlayedCards">List to place cards in.</param> /// <returns>Total value of all of a players played cards</returns> public int getAllPlayersPlayedCards(MonopolyDealServiceReference.PlayFieldModel pfm, List<MonopolyDealServiceReference.Card> playersPlayedCards) { int totalValue = 0; foreach (MonopolyDealServiceReference.PlayerModel player in pfm.playerModels) { if (requestHandler.thisClientGuid.CompareTo(player.guid) == 0) { foreach (MonopolyDealServiceReference.Card c in player.bank.cardsInBank) { playersPlayedCards.Add(c); totalValue += c.cardValue; } foreach (MonopolyDealServiceReference.PropertyCardSet ps in player.propertySets.playersPropertySets) { foreach (MonopolyDealServiceReference.Card property in ps.properties) { playersPlayedCards.Add(property); totalValue += property.cardValue; } if (ps.hasHouse && ps.house != null) { playersPlayedCards.Add(ps.house); totalValue += ps.house.cardValue; if (ps.hasHotel && ps.hotel != null) { playersPlayedCards.Add(ps.hotel); totalValue += ps.hotel.cardValue; } } } } } return totalValue; }
public void drawPlayer4(MonopolyDealServiceReference.PlayFieldModel pfm) { bindPlayer4(pfm); if (requestHandler.thisClientGuid.CompareTo(pfm.playerModels[4].guid) == 0) { BindListBox(4); updateAllowAbleActions(pfm.playerModels[4]); playerIDNum = 4; } }
public void drawPlayer0(MonopolyDealServiceReference.PlayFieldModel pfm) { bindPlayer0(pfm); if (requestHandler.thisClientGuid.CompareTo(pfm.playerModels[0].guid) == 0) { //This is the player on this client BindListBox(0); updateAllowAbleActions(pfm.playerModels[0]); playerIDNum = 0; } }
public void drawField(MonopolyDealServiceReference.PlayFieldModel pfm) { //Player0 int numPlayers = pfm.playerModels.Count(); //Draw playpile listBoxDiscardPile.DataSource = pfm.playpile.playPile; listBoxDiscardPile.DisplayMember = "description"; switch (numPlayers) { case 0: break; case 1: drawPlayer0(pfm); playersPlayedCards = new List<MonopolyDealServiceReference.Card>(); playersSelectedToPayWithCards = new List<MonopolyDealServiceReference.Card>(); bindSelectPlayersPropertyCardSetsPropertyCards(pfm); bindPlayerPayDebt(pfm); break; case 2: drawPlayer0(pfm); drawPlayer1(pfm); playersPlayedCards = new List<MonopolyDealServiceReference.Card>(); playersSelectedToPayWithCards = new List<MonopolyDealServiceReference.Card>(); bindSelectPlayersPropertyCardSetsPropertyCards(pfm); bindPlayerPayDebt(pfm); break; case 3: drawPlayer0(pfm); drawPlayer1(pfm); drawPlayer2(pfm); playersPlayedCards = new List<MonopolyDealServiceReference.Card>(); playersSelectedToPayWithCards = new List<MonopolyDealServiceReference.Card>(); bindSelectPlayersPropertyCardSetsPropertyCards(pfm); bindPlayerPayDebt(pfm); break; case 4: drawPlayer0(pfm); drawPlayer1(pfm); drawPlayer2(pfm); drawPlayer3(pfm); playersPlayedCards = new List<MonopolyDealServiceReference.Card>(); playersSelectedToPayWithCards = new List<MonopolyDealServiceReference.Card>(); bindSelectPlayersPropertyCardSetsPropertyCards(pfm); bindPlayerPayDebt(pfm); break; case 5: drawPlayer0(pfm); drawPlayer1(pfm); drawPlayer2(pfm); drawPlayer3(pfm); drawPlayer4(pfm); playersPlayedCards = new List<MonopolyDealServiceReference.Card>(); playersSelectedToPayWithCards = new List<MonopolyDealServiceReference.Card>(); bindSelectPlayersPropertyCardSetsPropertyCards(pfm); bindPlayerPayDebt(pfm); break; } }
public void displayLobbiesState(MonopolyDealServiceReference.GameLobby[] gameLobbies) { if (gameLobbies.Length >= 1) { listBoxGameLobbies.DataSource = gameLobbies; listBoxGameLobbies.DisplayMember = "description"; } else { List<String> empty = new List<string>(); empty.Add("Create new game"); listBoxGameLobbies.DataSource = empty; } }
public void askWhatSetToAddHouseTo(MonopolyDealServiceReference.Player p, MonopolyDealServiceReference.Card c) { throw new NotImplementedException(); }
private void bindPlayerPayDebt(MonopolyDealServiceReference.PlayFieldModel pfm) { int playersTotalValue = getAllPlayersPlayedCards(pfm, playersPlayedCards); listBoxAllPlayersPlayedCards.DataSource = playersPlayedCards; listBoxAllPlayersPlayedCards.DisplayMember = "description"; listBoxCardsToPayWith.DataSource = playersSelectedToPayWithCards; listBoxCardsToPayWith.DisplayMember = "description"; foreach (MonopolyDealServiceReference.PlayerModel p in requestHandlerMD.CurrentPlayFieldModel.playerModels) { if (p.guid.CompareTo(requestHandlerMD.thisClientGuid) == 0) { labelAmountToPay.Text = "Total Amount of Debt: $M" + p.amountOwedToAnotherPlayer.ToString(); break; } } }
public void notifyOtherPlayerTurnStarted(MonopolyDealServiceReference.Player p) { throw new NotImplementedException(); }
public void displayPlayerHand(MonopolyDealServiceReference.Player player) { throw new NotImplementedException(); }
private void bindSelectPlayersPropertyCardSetsPropertyCards(MonopolyDealServiceReference.PlayFieldModel pfm) { if (pfm.playerModels != null) { listBoxPlayers.DataSource = pfm.playerModels; listBoxPlayers.DisplayMember = "name"; if (listBoxPlayers.SelectedValue != null) { listBoxSets.DataSource = ((MonopolyDealServiceReference.PlayerModel)listBoxPlayers.SelectedValue).propertySets.playersPropertySets; listBoxSets.DisplayMember = "propertySetColor"; if (listBoxSets.SelectedValue != null) { listBoxCardsInSet.DataSource = ((MonopolyDealServiceReference.PropertyCardSet)listBoxSets.SelectedValue).properties.ToArray<MonopolyDealServiceReference.Card>(); listBoxCardsInSet.DisplayMember = "description"; listBoxCardsInSet.ValueMember = "cardID"; } } } }
public void recieveMessage(MonopolyDealServiceReference.Message message) { addToLog("Message Recieved guid" + message.thisMessageGuid); clientMessageHandler.processMessage(message); }
public void checkIfClientTurn(MonopolyDealServiceReference.PlayFieldModel pfm) { //MonopolyDealServiceReference.TurnActionModel tam = pfm. }
public MovePropertyToNewSetForm(MonopolyDealServiceReference.PlayFieldModel pfm, Guid thisClientGuid, RequestHanderMonopolyDeal rqmd) { request = rqmd; InitializeComponent(); displayOriginalSet(pfm, thisClientGuid); }
private void displayOriginalSet(MonopolyDealServiceReference.PlayFieldModel pfm, Guid thisClientGuid) { //Get correct player MonopolyDealServiceReference.PlayerModel playerClient = null; foreach (MonopolyDealServiceReference.PlayerModel p in pfm.playerModels) { if (p.guid.CompareTo(thisClientGuid) == 0) { playerClient = p; break; } } if (playerClient != null) { this.listBoxPickOriginalSetToRemoveCardFrom.DataSource = playerClient.propertySets.playersPropertySets; this.listBoxPickOriginalSetToRemoveCardFrom.DisplayMember = "propertySetColor"; this.listBoxSetToMovePropertyTo.DataSource = playerClient.propertySets.playersPropertySets.ToArray<MonopolyDealServiceReference.PropertyCardSet>(); this.listBoxSetToMovePropertyTo.DisplayMember = "propertySetColor"; } }
public void popluateHandListBox(MonopolyDealServiceReference.Card card) { //MDWcfServiceLibrary.Card c = new MDWcfServiceLibrary.Card(card.cardName, card.cardText, card.cardValue, cardTypeConvert(card)); //listBox1.Items.Add(card.description); }
public void updateAllowAbleActions(MonopolyDealServiceReference.PlayerModel pm) { buttonDraw2.Enabled = false; buttonBankCard.Enabled = false; buttonDraw5OnTurnStart.Enabled = false; buttonPlayPropNewSetFromHand.Enabled = false; buttonDiscard1.Enabled = false; buttonEndTurn.Enabled = false; buttonAdd.Enabled = false; buttonRemove.Enabled = false; buttonPay.Enabled = false; if (!(pm.actionsCurrentlyAllowed == null || pm.actionsCurrentlyAllowed.Length == 0)) { foreach (MonopolyDealServiceReference.TurnActionTypes tAT in pm.actionsCurrentlyAllowed) { if (tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.drawTwoCardsAtStartOfTurn) == 0) { buttonDraw2.Enabled = true; timerForPollingState.Stop(); } else if (tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.BankActionCard) == 0) { buttonBankCard.Enabled = true; timerForPollingState.Stop(); } else if (tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.PlayPropertyCard_New_Set) == 0) { buttonPlayPropNewSetFromHand.Enabled = true; timerForPollingState.Stop(); } else if (tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.drawFiveCardsAtStartOfTurn) == 0) { buttonDraw5OnTurnStart.Enabled = true; timerForPollingState.Stop(); } else if (tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.Discard_1_Card) == 0 || tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.Discard_2_Cards) == 0 || tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.Discard_3_Cards) == 0 || tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.Discard_4_Cards) == 0 || tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.Discard_5_Cards) == 0) { buttonDiscard1.Enabled = true; timerForPollingState.Stop(); } else if (tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.EndTurn) == 0) { buttonEndTurn.Enabled = true; timerForPollingState.Stop(); } else if (tAT.CompareTo(MonopolyDealServiceReference.TurnActionTypes.PayDebt) == 0) { buttonAdd.Enabled = true; buttonRemove.Enabled = true; buttonPay.Enabled = true; timerForPollingState.Stop(); MessageBox.Show("You are in debt! Pay Debt or Just Say No!"); } } } }
internal void playPropertyToSelectedSet(MonopolyDealServiceReference.PropertyCard pc, MonopolyDealServiceReference.PropertyCardSet pcs) { getServiceReady(); try { if (monopolyDealService.playPropertyCardMD(null, pc, pcs, thisClientGuid.boxGuid(), gameLobbyGuid.boxGuid(), CurrentPlayFieldModel.thisPlayFieldModelInstanceGuid.boxGuid(), null)) { addToLog("Property played to new set"); } else { addToLog("Error, card not played"); } } catch (Exception ex) { addToLog(ex.ToString()); monopolyDealService.Close(); } }
/* public void processMessage(MonopolyDealServiceReference.Message message) { //INCOMPLETE if (message is MonopolyDealServiceReference.FieldUpdateMessage) { MonopolyDealServiceReference.FieldUpdateMessage messageFM = (MonopolyDealServiceReference.FieldUpdateMessage)message; displayField(messageFM.fieldModel); savefield(messageFM.fieldModel); } } */ public void savefield(MonopolyDealServiceReference.PlayFieldModel pfm) { this.playFieldModel = pfm; }
internal bool slyDeal(MonopolyDealServiceReference.ActionCard Card, Guid targetedPlayer, MonopolyDealServiceReference.PropertyCardSet targetedSet, MonopolyDealServiceReference.Card targetedCard) { getServiceReady(); try { MonopolyDealServiceReference.BoolResponseBox response; response = monopolyDealService.playActionCardSlyDealMD(Card.cardID, targetedPlayer.boxGuid(), targetedCard.cardID, targetedSet.guid.boxGuid(), thisClientGuid.boxGuid(), gameOnServiceGuid.boxGuid(), CurrentPlayFieldModel.thisPlayFieldModelInstanceGuid.boxGuid()); addToLog(response.message); return response.success; } catch (Exception ex) { addToLog(ex.ToString()); monopolyDealService.Close(); } return false; }
public UseActionCardForm(MonopolyDealServiceReference.PlayFieldModel pfm, Guid thisClientGuid, RequestHanderMonopolyDeal rqmd, MonopolyDealServiceReference.ActionCard card) { InitializeComponent(); if (card != null) { if (card.actionType.CompareTo(MonopolyDealServiceReference.ActionCardAction.DealBreaker) == 0) { this.Text = "Use DealBreaker Card"; buttonUseDealBreaker.Text = "DealBreaker"; } else if (card.actionType.CompareTo(MonopolyDealServiceReference.ActionCardAction.SlyDeal) == 0) { this.Text = "Use Sly Deal Card"; buttonUseDealBreaker.Text = "Sly Deal"; groupBox1.Text = "Pick a Card to Sly Deal"; } else if (card.actionType.CompareTo(MonopolyDealServiceReference.ActionCardAction.House) == 0) { this.Text = "Use House Card"; buttonUseDealBreaker.Text = "Add House"; groupBox1.Text = "Pick a Full Set to add a House to"; } else if (card.actionType.CompareTo(MonopolyDealServiceReference.ActionCardAction.Hotel) == 0) { this.Text = "Use Hotel Card"; buttonUseDealBreaker.Text = "Add Hotel"; groupBox1.Text = "Pick a Full Set to add a Hotel to"; } else if (card.actionType.CompareTo(MonopolyDealServiceReference.ActionCardAction.ForcedDeal) == 0) { this.Text = "Use Forced Deal Card"; this.Height = 567; buttonUseDealBreaker.Text = "Use Forced Deal"; groupBox1.Text = "Pick a Card to take in a Forced Deal"; } } request = rqmd; this.Card = card; if (pfm.playerModels != null) { listBoxPlayers.DataSource = pfm.playerModels; listBoxPlayers.DisplayMember = "name"; if (listBoxPlayers.SelectedValue != null) { listBoxSets.DataSource = ((MonopolyDealServiceReference.PlayerModel)listBoxPlayers.SelectedValue).propertySets.playersPropertySets; listBoxSets.DisplayMember = "propertySetColor"; if (listBoxSets.SelectedValue != null) { listBoxCardsInSet.DataSource = ((MonopolyDealServiceReference.PropertyCardSet)listBoxSets.SelectedValue).properties.ToArray<MonopolyDealServiceReference.Card>(); listBoxCardsInSet.DisplayMember = "description"; listBoxCardsInSet.ValueMember = "cardID"; } } } foreach (MonopolyDealServiceReference.PlayerModel player in this.request.CurrentPlayFieldModel.playerModels) { if (player.guid.CompareTo(request.thisClientGuid) == 0) { thisClientPlayer = player; break; } } if (thisClientPlayer != null) { listBoxSetCardToGiveUpIsIn.DataSource = thisClientPlayer.propertySets.playersPropertySets; listBoxSetCardToGiveUpIsIn.DisplayMember = "propertySetColor"; if (listBoxSetCardToGiveUpIsIn.SelectedValue != null) { listBoxCardToGiveUp.DataSource = ((MonopolyDealServiceReference.PropertyCardSet)listBoxSetCardToGiveUpIsIn.SelectedValue).properties.ToArray<MonopolyDealServiceReference.Card>(); listBoxCardToGiveUp.DisplayMember = "description"; listBoxCardToGiveUp.ValueMember = "cardID"; } } }
public void displayLookAtPlayedCardsOptions(MonopolyDealServiceReference.Player currentPlayer, MonopolyDealServiceReference.Player[] players) { throw new NotImplementedException(); }