Example #1
0
 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);
     }
 }
Example #2
0
    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;
    }
Example #4
0
 public void GetPart(out PartCabin _part)
 {
     _part = cabin;
 }
Example #5
0
 public void InstallPart(PartCabin _part)
 {
     cabin = _part;
     RecalculateStats();
 }
Example #6
0
    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;
        }
    }
Example #7
0
    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;
    }