private void updateAuctionPanel() { Debug.Log("Update Auction Panel ___________________________"); App app = UnityEngine.Object.FindObjectOfType <App>(); int playerIndex = app.GetHumanIndex(); Nation player = State.getNations()[playerIndex]; AuctionHandler auction = State.getAuctionHandler(); Nation item = State.getNations()[auction.getIndexOfCurrentItem()]; // Debug.Log(playerIndex); //TextMeshProUGUI currentPlayerBid = currentBidAmount.GetComponent<TextMeshProUGUI>(); currentBidAmount.text = auction.getPlayerBid(playerIndex).ToString(); if (auction.getPlayerBid(playerIndex) > 0 && !auction.getIfPlayerPass(playerIndex)) { decreaseBid.interactable = true; } else { decreaseBid.interactable = false; } if (player.ColonialPoints <= State.CurrentColonyAuctionBid || player.RecognizingTheseClaims.Contains(item.getIndex()) || auction.getIfPlayerPass(playerIndex) || player.landForces.Strength < 2) { increaseBid.interactable = false; } else { increaseBid.interactable = true; } biddingTable.ClearRows(); for (int i = 0; i < auction.getBiddingOrder().Count; i++) { int currNationIndex = auction.getBiddingOrder()[i]; Nation currNat = State.getNations()[currNationIndex]; TableRow newRow = Instantiate <TableRow>(biddingRow); newRow.gameObject.SetActive(true); newRow.preferredHeight = 30; newRow.name = currNat.getIndex().ToString(); biddingTable.AddRow(newRow); biddingConnector.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, (biddingTable.transform as RectTransform).rect.height); int currNatIndex = currNat.getIndex(); // Debug.Log("Current Nation: " + currNatIndex); int currentNatBid = auction.getPlayerBid(currNatIndex); newRow.Cells[0].GetComponentInChildren <Text>().text = currentNatBid.ToString(); newRow.Cells[1].GetComponentInChildren <Text>().text = currNat.getNationName().ToString(); // Transform res = newRow.Cells[2].transform.GetChild(0); UIObject3D flagImage = newRow.Cells[2].GetComponentInChildren <UIObject3D>(); // flagImage.sprite = Resources.Load("Flags/" + currNat.getNationName().ToString(), typeof(Sprite)) as Sprite; GameObject flagPrefab = Instantiate(Resources.Load <GameObject>("Flags/Prefabs/" + currNat.getNationName())); flagImage.ObjectPrefab = flagPrefab.transform; flagImage.RenderScale = 0; flagImage.LightIntensity = 1; Transform statusTransform = newRow.Cells[3].transform.GetChild(0); Image statusImage = statusTransform.GetComponent <Image>(); if (auction.getIfPlayerPass(currNatIndex) == true) { statusImage.sprite = Resources.Load("Sprites/GUI/Dark_Red_x", typeof(Sprite)) as Sprite; } else { statusImage.sprite = Resources.Load("Sprites/GUI/AuctionHammer", typeof(Sprite)) as Sprite; } } if (auction.getPlayerBid(playerIndex) > State.CurrentColonyAuctionBid) { bid.interactable = true; } else { bid.interactable = false; } TextMeshProUGUI passButtonText = pass.GetComponentInChildren <TextMeshProUGUI>(); if (auction.getIfPlayerPass(playerIndex) || auction.getHighestBidderSoFar() == playerIndex) { passButtonText.SetText("Continue"); } else { passButtonText.SetText("Pass"); } }
private void showTradeResults(Nation player) { Debug.Log("Preparing Trade Results"); Market market = State.market; TradeResults.SetActive(true); tradeResultsEnter.Play(); float imports = player.getImportValues(); float exports = player.getExportValue(); imports = (float)Math.Round(imports, 2); exports = (float)Math.Round(exports, 2); float difference = Mathf.Abs(imports - exports); difference = (float)Math.Round(difference, 2); TextMeshProUGUI _importExportDif = importExportDif.GetComponent<TextMeshProUGUI>(); if (imports > exports) { _importExportDif.SetText("Imports: " + imports + " Exports: " + exports + " Deficit: " + difference); _importExportDif.color = new Color32(255, 0, 0, 255); } else { _importExportDif.SetText("Imports: " + imports + " Exports: " + exports + " Surplus: " + difference); _importExportDif.color = new Color32(0, 204, 0, 255); } ImportsResultTable.ClearRows(); foreach(Signal imp in player.getImports()) { TableRow newRow = Instantiate<TableRow>(resSoldRow); newRow.gameObject.SetActive(true); newRow.preferredHeight = 25; ImportsResultTable.AddRow(newRow); importsConnector.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, (ImportsResultTable.transform as RectTransform).rect.height); newRow.Cells[0].GetComponentInChildren<Text>().text = "Bought"; //Image Transform res = newRow.Cells[1].transform.GetChild(0); Image resImg = res.GetComponent<Image>(); resImg.preserveAspect = true; if (imp.getRes()) { resImg.sprite = Resources.Load("Resource/" + imp.getResourceType().ToString(), typeof(Sprite)) as Sprite; } else { resImg.sprite = Resources.Load("FinishedGoods/" + imp.getGoodType().ToString(), typeof(Sprite)) as Sprite; } newRow.Cells[2].GetComponentInChildren<Text>().text = "from"; Transform flag = newRow.Cells[3].transform.GetChild(0); //Image flagImg = flag.GetComponent<Image>(); UIObject3D flagObject = flag.GetComponent<UIObject3D>(); // flagImg.preserveAspect = true; Nation owner = State.getNations()[imp.getOwnerIndex()]; GameObject flagPrefab = Instantiate(Resources.Load<GameObject>("Flags/Prefabs/" + owner.getNationName())); flagObject.ObjectPrefab = flagPrefab.transform; // flagImg.sprite = Resources.Load("Flags/" + owner.getName().ToString(), typeof(Sprite)) as Sprite; newRow.Cells[4].GetComponentInChildren<Text>().text = "for " + imp.getPriceSold().ToString("0.0"); } ExportsResultTable.ClearRows(); foreach (Signal exp in player.getExports()) { TableRow newRow = Instantiate<TableRow>(resSoldRow); newRow.gameObject.SetActive(true); newRow.preferredHeight = 25; ExportsResultTable.AddRow(newRow); exportConnector.SetSizeWithCurrentAnchors(RectTransform.Axis.Vertical, (ExportsResultTable.transform as RectTransform).rect.height); newRow.Cells[0].GetComponentInChildren<Text>().text = "Sold"; Transform res = newRow.Cells[1].transform.GetChild(0); Image resImg = res.GetComponent<Image>(); resImg.preserveAspect = true; if (exp.getRes()) { resImg.sprite = Resources.Load("Resource/" + exp.getResourceType().ToString(), typeof(Sprite)) as Sprite; } else { resImg.sprite = Resources.Load("FinishedGoods/" + exp.getGoodType().ToString(), typeof(Sprite)) as Sprite; } newRow.Cells[2].GetComponentInChildren<Text>().text = "to"; Transform flag = newRow.Cells[3].transform.GetChild(0); //Image flagImg = flag.GetComponent<Image>(); //flagImg.preserveAspect = true; Nation owner = State.getNations()[exp.getOwnerIndex()]; UIObject3D flagObject = flag.GetComponent<UIObject3D>(); Debug.Log(owner.getNationName()); GameObject flagPrefab = Instantiate(Resources.Load<GameObject>("Flags/Prefabs/" + owner.getNationName())); flagObject.ObjectPrefab = flagPrefab.transform; //flagImg.sprite = Resources.Load("Flags/" + owner.getName().ToString(), typeof(Sprite)) as Sprite; newRow.Cells[4].GetComponentInChildren<Text>().text = "for " + exp.getPriceSold().ToString("0.0"); } Debug.Log("Finished Preparing Trade Results"); // State.advanceGamePhase(); }