/* private void buildNavy() * { * App app = UnityEngine.Object.FindObjectOfType<App>(); * int playerIndex = app.GetHumanIndex(); * Nation player = State.getNations()[playerIndex]; * if (player.GetTechnologies().Contains("oil_powered_ships")) * { * PlayerPayer.PayDreadnought(player); * player.seaForces.dreadnought.addUnit(); * } * * else if (player.GetTechnologies().Contains("ironclad")) * { * PlayerPayer.PayIronClad(player); * player.seaForces.ironclad.addUnit(); * } * else * { * PlayerPayer.PayFrigate(player); * player.seaForces.frigate.addUnit(); * } * uiUpdater.updateUI(); * * } */ private void getCultureCards() { selfProvince.SetActive(false); otherProvince.SetActive(false); progressPanel.SetActive(false); coordinator.progressFlag = false; App app = UnityEngine.Object.FindObjectOfType <App>(); Nation player = State.getNations()[app.GetHumanIndex()]; PlayerPayer.payForDevelopmentAction(player, 1); MyEnum.cultCard newCard = PlayerReceiver.collectCultureCard(player); uiUpdater.updateUI(); Stack <CultureCard> remainingCultCards = State.getCultureDeck(); HashSet <CultureCard> cultDeckSet = new HashSet <CultureCard>(remainingCultCards); List <MyEnum.cultCard> playerCultHand = new List <MyEnum.cultCard>(player.getCultureCards()); HashSet <CultureCard> playerCultSet = new HashSet <CultureCard>(remainingCultCards); foreach (MyEnum.cultCard cardName in playerCultHand) { CultureCard card = State.getCultureCardByName(cardName); playerCultSet.Add(card); } updateCultureCardBook(newCard); showCultureHandPanel(); }
private void getCultureCards() { App app = UnityEngine.Object.FindObjectOfType <App>(); Nation player = State.getNations()[app.GetHumanIndex()]; PlayerPayer.payForCultureCard(player); MyEnum.cultCard newCard = PlayerReceiver.collectCultureCard(player); MyEnum.Era era = State.era; if (player.getNumberGood(MyEnum.Goods.paper) < 1 || player.getAP() < 1) { drawCultureCards.interactable = false; } if (era != MyEnum.Era.Late && player.getNumberResource(MyEnum.Resources.spice) < 1) { drawCultureCards.interactable = false; } if (era != MyEnum.Era.Early) { if (player.getNumberGood(MyEnum.Goods.clothing) < 1) { drawCultureCards.interactable = false; } } if (era == MyEnum.Era.Late && player.getNumberGood(MyEnum.Goods.telephone) < 1) { drawCultureCards.interactable = false; } Stack <CultureCard> remainingCultCards = State.getCultureDeck(); HashSet <CultureCard> cultDeckSet = new HashSet <CultureCard>(remainingCultCards); List <MyEnum.cultCard> playerCultHand = new List <MyEnum.cultCard>(player.getCultureCards()); HashSet <CultureCard> playerCultSet = new HashSet <CultureCard>(remainingCultCards); foreach (MyEnum.cultCard cardName in playerCultHand) { CultureCard card = State.getCultureCardByName(cardName); playerCultSet.Add(card); } if (cultDeckSet.IsSubsetOf(playerCultSet)) { drawCultureCards.interactable = false; } AP.text = player.getAP().ToString(); // numberCultureCards.text = player.getCultureCards().Count.ToString(); cultureLevel.text = player.getCulureLevel().ToString(); updateCultureCardBook(newCard); showCultureHandPanel(); }