public void AddPart(PartCabin _part) { installedPart = _part; if (_part != null) { titleText.text = _part.PartName; icon.sprite = _part.Icon; icon.color = new Color(1, 1, 1, 1); } }
public void OnCabinItemClick() { if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift)) { shopMain.PurchasePart(this); } shopMain.ClearPartAttributes(); shopMain.SelectPart(this); PartCabin _cabin = (PartCabin)partItem; shopMain.AddPartAttribute("Cabin Type:", _cabin.PartName); shopMain.AddPartAttribute("Crew Capacity:", _cabin.CrewCapacity.ToString()); shopMain.AddPartAttribute("Fuel Efficiency:", _cabin.FuelEfficiency.ToString()); shopMain.AddPartAttribute("Weight:", _cabin.Weight.ToString()); }
public void GetRandomPart(TierProbability _tierChances, out PartCabin _part) { int _tierProb = _tierChances.GetRandomTier(); switch (_tierProb) { case 1: _part = partsCabinList[0]; return; case 2: _part = partsCabinList[0]; return; case 3: _part = partsCabinList[0]; return; } _part = null; }
public void GetPart(out PartCabin _part) { _part = cabin; }
public void InstallPart(PartCabin _part) { cabin = _part; RecalculateStats(); }
public void SetUp() { switch (partType) { case PartType.Drill: if (installedPart != null && installedPart is PartDrill) { PartDrill drill = (PartDrill)installedPart; titleText.text = drill.PartName; icon.sprite = drill.Icon; icon.color = new Color(1, 1, 1, 1); } else { titleText.text = "Drill"; icon.sprite = null; icon.color = new Color(1, 1, 1, 0); } break; case PartType.Cabin: if (installedPart != null && installedPart is PartCabin) { PartCabin cabin = (PartCabin)installedPart; titleText.text = cabin.PartName; icon.sprite = cabin.Icon; icon.color = new Color(1, 1, 1, 1); } else { titleText.text = "Cabin"; icon.sprite = null; icon.color = new Color(1, 1, 1, 0); } break; case PartType.Engine: if (installedPart != null && installedPart is PartEngine) { PartEngine engine = (PartEngine)installedPart; titleText.text = engine.PartName; icon.sprite = engine.Icon; icon.color = new Color(1, 1, 1, 1); } else { titleText.text = "Engine"; icon.sprite = null; icon.color = new Color(1, 1, 1, 0); } break; case PartType.Wheels: if (installedPart != null && installedPart is PartWheel) { PartWheel wheel = (PartWheel)installedPart; titleText.text = wheel.PartName; icon.sprite = wheel.Icon; icon.color = new Color(1, 1, 1, 1); } else { titleText.text = "Wheels"; icon.sprite = null; icon.color = new Color(1, 1, 1, 0); } break; case PartType.Upgrade: if (installedPart != null && installedPart is PartUpgrade) { PartUpgrade upgrade = (PartUpgrade)installedPart; titleText.text = upgrade.PartName; icon.sprite = upgrade.Icon; icon.color = new Color(1, 1, 1, 1); } else { titleText.text = "Equipment"; icon.sprite = null; icon.color = new Color(1, 1, 1, 0); } break; } }
void NewVehicleCard(TierProbability _tierChances) { VehicleCardConnector _newVehicleCard = Instantiate(vehicleCardPrefab, vehicleCardHolder).GetComponent <VehicleCardConnector>(); _newVehicleCard.shopMain = this; _newVehicleCard.vehicle = _newVehicleCard.gameObject.AddComponent <VehicleClass>(); _newVehicleCard.vehicle.ShipName = partDataHolder.ShipNames[UnityEngine.Random.Range(0, partDataHolder.ShipNames.Count)]; _newVehicleCard.vehicle.AssignWorker(WorkStation.Cabin, vehicleStartingWorker); partDataHolder.GetRandomPart(_tierChances, out PartBody _body); _newVehicleCard.vehicle.InstallPart(_body); partDataHolder.GetRandomPart(_tierChances, out PartEngine _engine); _newVehicleCard.vehicle.InstallPart(_engine); partDataHolder.GetRandomPart(_tierChances, out PartWheel _wheels); _newVehicleCard.vehicle.InstallPart(_wheels); PartCabin _cabin = null; PartDrill _drill = null; //Cabin is nonessential so it is a random chance _newVehicleCard.vehicleVisualParts[2].sprite = null; _newVehicleCard.vehicleVisualParts[2].color = new Color(0, 0, 0, 0); if (UnityEngine.Random.Range(0, 10) > 4) { partDataHolder.GetRandomPart(_tierChances, out _cabin); _newVehicleCard.vehicle.InstallPart(_cabin); _newVehicleCard.vehicleVisualParts[2].sprite = _cabin.Image; _newVehicleCard.vehicleVisualParts[2].color = Color.white; } //Drill is nonessential so it is a random chance _newVehicleCard.vehicleVisualParts[5].sprite = null; _newVehicleCard.vehicleVisualParts[5].color = new Color(0, 0, 0, 0); if (UnityEngine.Random.Range(0, 10) > 5) { partDataHolder.GetRandomPart(_tierChances, out _drill); _newVehicleCard.vehicle.InstallPart(_drill); _newVehicleCard.vehicleVisualParts[5].sprite = _drill.Image; _newVehicleCard.vehicleVisualParts[5].color = Color.white; } _newVehicleCard.shipNameText.text = _newVehicleCard.vehicle.ShipName; _newVehicleCard.costMultiplier = UnityEngine.Random.Range(1, 3); _newVehicleCard.vehicleCostText.text = "Cost: $" + _newVehicleCard.vehicle.GetCost(_newVehicleCard.costMultiplier); _newVehicleCard.vehicle.Cost = _newVehicleCard.vehicle.GetCost(_newVehicleCard.costMultiplier); _newVehicleCard.vehicleVisualParts[0].sprite = _body.Image; _newVehicleCard.vehicleVisualParts[1].sprite = _body.WindowSprite; //_newVehicleCard.vehicleVisualParts[2].sprite = _cabin.Image; //_newVehicleCard.vehicleVisualParts[3].sprite = _engine.Image; _newVehicleCard.vehicleVisualParts[4].sprite = _wheels.Image; //Stat text Text statText = Instantiate(vehicleStatPrefab, _newVehicleCard.shipStatList.transform).GetComponentInChildren <Text>(); statText.text = "Hull: " + _body.PartName; statText = Instantiate(vehicleStatPrefab, _newVehicleCard.shipStatList.transform).GetComponentInChildren <Text>(); if (_cabin != null) { statText.text = "Observatory: " + _cabin.PartName; } else { statText.text = "Observatory: None"; } statText = Instantiate(vehicleStatPrefab, _newVehicleCard.shipStatList.transform).GetComponentInChildren <Text>(); statText.text = "Engine: " + _engine.PartName; statText = Instantiate(vehicleStatPrefab, _newVehicleCard.shipStatList.transform).GetComponentInChildren <Text>(); if (_drill != null) { statText.text = "Drilling Module: " + _drill.PartName; } else { statText.text = "Drilling Module: None"; } statText = Instantiate(vehicleStatPrefab, _newVehicleCard.shipStatList.transform).GetComponentInChildren <Text>(); statText.text = "Movement Module: " + _wheels.PartName; }