private void showShips() { SquadBuilderUtil.resetScrollView(shipsScroll); int shipIndex = 0; foreach (Ship ship in ships.Ship) { if (ship.Size.Equals(LocalDataWrapper.getPlayer().getChosenSize())) { Transform shipPanelPrefab = Resources.Load <Transform>(SquadBuilderConstants.PREFABS_FOLDER_NAME + "/" + SquadBuilderConstants.SHIP_NAME_PANEL); RectTransform rt = (RectTransform)shipPanelPrefab; float shipPanelHeight = rt.rect.height; Transform shipPanel = (Transform)GameObject.Instantiate( shipPanelPrefab, new Vector3(SquadBuilderConstants.SHIP_PANEL_X_OFFSET, (shipIndex * shipPanelHeight * -1) + SquadBuilderConstants.SHIP_PANEL_Y_OFFSET, SquadBuilderConstants.SHIP_PANEL_Z_OFFSET), Quaternion.identity ); shipPanel.transform.SetParent(shipsScroll.transform, false); shipPanel.transform.Find("ShipName").gameObject.GetComponent <UnityEngine.UI.Text>().text = ship.ShipName.ToLower(); SquadBuilderShipPanelEvents shipPanelUIEvent = shipPanel.transform.GetComponent <SquadBuilderShipPanelEvents>(); shipPanelUIEvent.setShip(ship); shipIndex++; } } }
void Update() { showCurrentSquadPoints(); togglePlayButton(); if (!prevChosenSize.Equals(LocalDataWrapper.getPlayer().getChosenSize())) { updateWholeView(); prevChosenSize = LocalDataWrapper.getPlayer().getChosenSize(); } if (!prevChosenShip.Equals(LocalDataWrapper.getPlayer().getSelectedEmptyShip().ShipId)) { updateViewOnShipSelection(); } if (!prevChosenPilot.Equals(LocalDataWrapper.getPlayer().getSelectedPilot().Name)) { updateViewOnPilotSelection(); } if (LocalDataWrapper.getPlayer().getSquadron() != null && (prevSquadronSize != LocalDataWrapper.getPlayer().getSquadron().Count || prevSquadronCost != LocalDataWrapper.getPlayer().getCumulatedSquadPoints())) { updateViewOnSquadronChange(); SaveButton.SetActive(true); } if ((LocalDataWrapper.getPlayer().getSquadron().Count == 0 || LocalDataWrapper.getPlayer().getSquadron() == null) && SaveButton.activeSelf) { SaveButton.SetActive(false); } if (!LocalDataWrapper.getPlayer().getChosenUpgradeType().Equals("") && LocalDataWrapper.getPlayer().getChosenSlotId() != 0 && LocalDataWrapper.getPlayer().getChosenLoadedShip() != null) { if (!UpgradesPopup.activeSelf) { showUpgradesPopup(); } } else { if (UpgradesPopup.activeSelf) { closeUpgradesPopup(); } } if (LocalDataWrapper.getPlayer().isLoadingSquadrons() && !fileExplorer.activeSelf) { showFileExplorer(); } else if (!LocalDataWrapper.getPlayer().isLoadingSquadrons() && fileExplorer.activeSelf) { SquadBuilderUtil.hideFileExplorer(fileExplorer); } }
private void showPilotDataPreview() { SquadBuilderUtil.resetImagesInGameObject(pilotDataPreview, "PilotDataUpgradeSlots"); Pilot pilotToShow = LocalDataWrapper.getPlayer().getSelectedPilot(); if (pilotToShow != null) { string pilotName = pilotToShow.Unique ? "*" + pilotToShow.Name.ToLower() : pilotToShow.Name.ToLower(); pilotDataPreview.transform.Find("PilotLevel/Text").gameObject.GetComponent <UnityEngine.UI.Text>().text = pilotToShow.Level.ToString(); pilotDataPreview.transform.Find("PilotCost/Text").gameObject.GetComponent <UnityEngine.UI.Text>().text = pilotToShow.Cost.ToString(); pilotDataPreview.transform.Find("PilotDataPilotName/Text").gameObject.GetComponent <UnityEngine.UI.Text>().text = pilotName; pilotDataPreview.transform.Find("PilotDataPilotDescription/Text").gameObject.GetComponent <UnityEngine.UI.Text>().text = pilotToShow.Text; int upgradeIndex = 0; foreach (UpgradeSlot upgrade in pilotToShow.UpgradeSlots.UpgradeSlot) { Sprite sprite = Resources.Load <Sprite>(SquadBuilderConstants.IMAGE_FOLDER_NAME + "/" + upgrade.Type); Transform upgradeImageHolderPrefab = Resources.Load <Transform>(SquadBuilderConstants.PREFABS_FOLDER_NAME + "/" + SquadBuilderConstants.UPGRADE_IMAGE_HOLDER); RectTransform rt = (RectTransform)upgradeImageHolderPrefab; float upgradeImageHolderWidth = rt.rect.width; Transform upgradeImageHolder = (Transform)GameObject.Instantiate( upgradeImageHolderPrefab, new Vector3((upgradeIndex * upgradeImageHolderWidth) + SquadBuilderConstants.UPGRADE_IMAGE_X_OFFSET, SquadBuilderConstants.UPGRADE_IMAGE_Y_OFFSET, SquadBuilderConstants.UPGRADE_IMAGE_Z_OFFSET), Quaternion.identity ); Transform upgradesBar = pilotDataPreview.transform.Find("PilotDataUpgradeSlots"); Image upgradeImage = upgradeImageHolder.gameObject.GetComponent <Image>(); upgradeImageHolder.transform.SetParent(upgradesBar, false); upgradeImage.sprite = sprite; upgradeImage.color = new Color(upgradeImage.color.r, upgradeImage.color.g, upgradeImage.color.b, 1.0f); upgradeIndex++; } } }
void Start() { /*********************************TODO remove when testing is done!!*/ LocalDataWrapper.setPlayer(new Player()); if (LocalDataWrapper.getPlayer().getChosenSide() == null || LocalDataWrapper.getPlayer().getChosenSide().Equals("")) { LocalDataWrapper.getPlayer().setChosenSide(SquadBuilderConstants.FACTION_REBELS); } if (LocalDataWrapper.getPlayer().getChosenSize() == null || LocalDataWrapper.getPlayer().getChosenSize().Equals("")) { LocalDataWrapper.getPlayer().setChosenSize("small"); } /*********************************TODO remove when testing is done!!*/ this.ships = SquadBuilderUtil.loadShipsForChosenSide(); this.pilots = SquadBuilderUtil.loadPilotsForEachShip(this.ships); this.upgrades = SquadBuilderUtil.loadUpgrades(LocalDataWrapper.getPlayer().getChosenSide(), LocalDataWrapper.getPlayer().getChosenSize()); showChosenSideIcon(); showCurrentSquadPoints(); }
private void showPilots() { SquadBuilderUtil.resetScrollView(pilotsScroll); int pilotIndex = 0; foreach (PilotsXMLCSharp.Pilot pilot in pilots.Pilot) { if (pilot.ShipId.Equals(LocalDataWrapper.getPlayer().getSelectedEmptyShip().ShipId)) { //By default, load the first pilot as it would be selected... if (pilotIndex == 0) { LocalDataWrapper.getPlayer().setSelectedPilot(pilot); } Transform pilotPanelPrefab = Resources.Load <Transform>(SquadBuilderConstants.PREFABS_FOLDER_NAME + "/" + SquadBuilderConstants.PILOT_NAME_PANEL); RectTransform rt = (RectTransform)pilotPanelPrefab; float pilotPanelHeight = rt.rect.height; Transform pilotPanel = (Transform)GameObject.Instantiate( pilotPanelPrefab, new Vector3(SquadBuilderConstants.PILOT_PANEL_X_OFFSET, (pilotIndex * pilotPanelHeight * -1) + SquadBuilderConstants.PILOT_PANEL_Y_OFFSET, SquadBuilderConstants.PILOT_PANEL_Z_OFFSET), Quaternion.identity ); pilotPanel.transform.SetParent(pilotsScroll.transform, false); pilotPanel.transform.Find("PilotName").gameObject.GetComponent <UnityEngine.UI.Text>().text = pilot.Name.ToLower(); SquadBuilderPilotPanelEvents pilotPanelUIEvent = pilotPanel.transform.GetComponent <SquadBuilderPilotPanelEvents>(); pilotPanelUIEvent.setShip(pilot); pilotIndex++; } } }
public static void hideFileExplorer(GameObject fileExplorer) { SquadBuilderUtil.resetScrollView(fileExplorer.transform.Find("Scroll View/Viewport/Content").gameObject); fileExplorer.SetActive(false); }
private void closeUpgradesPopup() { UpgradesPopup.SetActive(false); SquadBuilderUtil.resetScrollView(UpgradesPopup.transform.Find("Scroll View/Viewport/Content").gameObject); }
private void showSquadron() { SquadBuilderUtil.resetScrollView(SquadronHolderContent); int shipPanelIndex = 0; foreach (LoadedShip loadedShip in LocalDataWrapper.getPlayer().getSquadron()) { Transform shipPanelPrefab = Resources.Load <Transform>(SquadBuilderConstants.PREFABS_FOLDER_NAME + "/" + SquadBuilderConstants.SQUADRON_SHIP_HOLDER); RectTransform rt = (RectTransform)shipPanelPrefab; float shipPanelHeight = rt.rect.height; Transform shipPanel = (Transform)GameObject.Instantiate( shipPanelPrefab, new Vector3(SquadBuilderConstants.SQUADRON_SHIP_PANEL_X_OFFSET, (shipPanelIndex * shipPanelHeight * -1) + SquadBuilderConstants.SQUADRON_SHIP_PANEL_Y_OFFSET, SquadBuilderConstants.SQUADRON_SHIP_PANEL_Z_OFFSET), Quaternion.identity ); shipPanel.transform.SetParent(SquadronHolderContent.transform, false); PilotRemoveEvents pilotRemoveEvent = shipPanel.transform.Find("DeleteButton").gameObject.GetComponent <PilotRemoveEvents>(); pilotRemoveEvent.setPilot(loadedShip.getPilot()); pilotRemoveEvent.setPilotId(loadedShip.getPilotId()); Sprite sprite = Resources.Load <Sprite>(SquadBuilderConstants.IMAGE_FOLDER_NAME + "/" + loadedShip.getShip().ShipId); shipPanel.transform.Find("ShipImage").gameObject.GetComponent <Image>().sprite = sprite; Image image = shipPanel.transform.Find("ShipImage").gameObject.GetComponent <Image>(); image.color = new Color(image.color.r, image.color.g, image.color.b, 1.0f); shipPanel.transform.Find("ShipImage/PilotLevel").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getPilot().Level.ToString(); shipPanel.transform.Find("ShipImage/PilotCost").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getPilot().Cost.ToString(); shipPanel.transform.Find("AttackPower").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getShip().Weapon.ToString(); shipPanel.transform.Find("Agility").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getShip().Agility.ToString(); shipPanel.transform.Find("Shield").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getShip().Shield.ToString(); shipPanel.transform.Find("Hull").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getShip().Hull.ToString(); shipPanel.transform.Find("PilotName").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getPilot().Name.ToLower(); shipPanel.transform.Find("PilotDescription").gameObject.GetComponent <UnityEngine.UI.Text>().text = loadedShip.getPilot().Text; int upgradeSlotIndex = 0; foreach (UpgradeSlot upgrade in loadedShip.getPilot().UpgradeSlots.UpgradeSlot) { upgrade.upgradeSlotId = upgradeSlotIndex + 1; Transform upgradeSlotPrefab = Resources.Load <Transform>(SquadBuilderConstants.PREFABS_FOLDER_NAME + "/" + SquadBuilderConstants.UPGRADE_SLOT); rt = (RectTransform)upgradeSlotPrefab; float upgradeSlotWidth = rt.rect.width; Transform upgradeSlot = (Transform)GameObject.Instantiate( upgradeSlotPrefab, new Vector3((upgradeSlotIndex * upgradeSlotWidth) + SquadBuilderConstants.UPGRADE_SLOT_X_OFFSET, SquadBuilderConstants.UPGRADE_SLOT_Y_OFFSET, SquadBuilderConstants.UPGRADE_SLOT_Z_OFFSET), Quaternion.identity ); upgradeSlot.transform.SetParent(shipPanel.transform, false); sprite = Resources.Load <Sprite>(SquadBuilderConstants.IMAGE_FOLDER_NAME + "/" + upgrade.Type); upgradeSlot.transform.Find("Image").gameObject.GetComponent <Image>().sprite = sprite; image = upgradeSlot.transform.Find("Image").gameObject.GetComponent <Image>(); image.color = new Color(image.color.r, image.color.g, image.color.b, 1.0f); UpgradeSlotEvents upgradeSlotEvents = upgradeSlot.transform.GetComponent <UpgradeSlotEvents>(); upgradeSlotEvents.setUpgradeType(upgrade.Type); upgradeSlotEvents.setShip(loadedShip); upgradeSlotEvents.setSlotId(upgrade.upgradeSlotId); if (upgrade.upgrade == null) { upgradeSlot.transform.Find("Cost").gameObject.GetComponent <UnityEngine.UI.Text>().text = ""; upgradeSlot.transform.Find("UpgradeDescription/Text").gameObject.GetComponent <UnityEngine.UI.Text>().text = "EMPTY"; } else { upgradeSlot.transform.Find("Cost").gameObject.GetComponent <UnityEngine.UI.Text>().text = upgrade.upgrade.Cost.ToString(); upgradeSlot.transform.Find("UpgradeDescription/Text").gameObject.GetComponent <UnityEngine.UI.Text>().text = upgrade.upgrade.Description; // TODO If upgrade has attack power (and range), show them as well... } upgradeSlotIndex++; } shipPanelIndex++; } }
private void showShipDataPreview() { SquadBuilderUtil.resetImagesInGameObject(shipDataPreview, "ShipDataManeuvers/ShipManeuvers"); Ship shipToShow = LocalDataWrapper.getPlayer().getSelectedEmptyShip(); if (shipToShow != null) { shipDataPreview.transform.Find("ShipDataShipName/ShipName").gameObject.GetComponent <UnityEngine.UI.Text>().text = shipToShow.ShipName.ToLower(); shipDataPreview.transform.Find("ShipDataShipDescription/ShipDescription").gameObject.GetComponent <UnityEngine.UI.Text>().text = shipToShow.ShipDescription; shipDataPreview.transform.Find("ShipDataShipAttributes/ShipDataAttackPower/Value").gameObject.GetComponent <UnityEngine.UI.Text>().text = shipToShow.Weapon.ToString(); shipDataPreview.transform.Find("ShipDataShipAttributes/ShipDataAgility/Value").gameObject.GetComponent <UnityEngine.UI.Text>().text = shipToShow.Agility.ToString(); shipDataPreview.transform.Find("ShipDataShipAttributes/ShipDataShield/Value").gameObject.GetComponent <UnityEngine.UI.Text>().text = shipToShow.Shield.ToString(); shipDataPreview.transform.Find("ShipDataShipAttributes/ShipDataHull/Value").gameObject.GetComponent <UnityEngine.UI.Text>().text = shipToShow.Hull.ToString(); string actions = "Actions: \n"; foreach (string action in shipToShow.Actions.Action) { actions += "* " + action + "\n"; } shipDataPreview.transform.Find("ShipDataActions/ShipActions").gameObject.GetComponent <UnityEngine.UI.Text>().text = actions; foreach (Maneuver maneuver in shipToShow.Maneuvers.Maneuver) { Image image = null; Sprite sprite = Resources.Load <Sprite>(SquadBuilderConstants.IMAGE_FOLDER_NAME + "/" + maneuver.Bearing + "_" + maneuver.Difficulty); string maneuverHolderName = maneuver.Speed + "_" + maneuver.Bearing; if (maneuverHolderName.Contains("koiogran") || maneuverHolderName.Contains("segnor") || maneuverHolderName.Contains("tallon")) { if (maneuverHolderName.Contains("left")) { shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuver.Speed + "_special_left/Image").gameObject.GetComponent <Image>().sprite = sprite; image = shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuver.Speed + "_special_left/Image").gameObject.GetComponent <Image>(); } else if (maneuverHolderName.Contains("right")) { shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuver.Speed + "_special_right/Image").gameObject.GetComponent <Image>().sprite = sprite; image = shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuver.Speed + "_special_right/Image").gameObject.GetComponent <Image>(); } else { shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuver.Speed + "_special_left/Image").gameObject.GetComponent <Image>().sprite = sprite; image = shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuver.Speed + "_special_left/Image").gameObject.GetComponent <Image>(); } } else { shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuverHolderName + "/Image").gameObject.GetComponent <Image>().sprite = sprite; image = shipDataPreview.transform.Find("ShipDataManeuvers/ShipManeuvers/Speed" + maneuverHolderName + "/Image").gameObject.GetComponent <Image>(); } if (image != null) { image.color = new Color(image.color.r, image.color.g, image.color.b, 1.0f); } } } }