Exemple #1
0
    public void Button_CraftResource()
    {
        //Convert Item to get name
        RARC_Resource convertedResouce = RARC_DatabaseController.Instance.resources_DB.GetResource(craftingSO.resourceType);

        if (craftingSO.resourceType == RARC_Resource.ResourceType.NULL)
        {
            if (craftingSO.crewPerCraft != 0)
            {
                RARC_GameStateController.Instance.ChangeCrew(1);
            }
            else if (craftingSO.botsPerCraft != 0)
            {
                RARC_GameStateController.Instance.ChangeBots(1);
            }
        }
        else
        {
            //Add item
            RARC_GameStateController.Instance.ChangeResources(convertedResouce.resourceName, convertedResouce.resourceType, craftingSO.resourcePerCraft);
        }

        //Setup Tab / Remove items
        List <RARC_Resource> resourcesRequired_List = GetResourcesList();

        requirementsTab.RemoveRequirementsFromPlayer(resourcesRequired_List);

        //Lower Amount allowed per turn
        switch (convertedResouce.resourceType)
        {
        case RARC_Resource.ResourceType.Food:
            RARC_GameStateController.Instance.currentCraftingPerTurn_Food--;
            break;

        case RARC_Resource.ResourceType.Fuel:
            RARC_GameStateController.Instance.currentCraftingPerTurn_Fuel--;
            break;

        case RARC_Resource.ResourceType.Organics:
            RARC_GameStateController.Instance.currentCraftingPerTurn_Organics--;
            break;

        default:
            if (craftingSO.crewPerCraft != 0)
            {
                RARC_GameStateController.Instance.currentCraftingPerTurn_Crew--;
            }
            else if (craftingSO.botsPerCraft != 0)
            {
                RARC_GameStateController.Instance.currentCraftingPerTurn_Bots--;
            }
            break;
        }

        //Update Crafting Nodes
        RARC_ButtonController_Game.Instance.Button_Fabrication();
    }
    /////////////////////////////////////////////////////////////////

    public void SetResource_Storage(RARC_Resource resource, string color, bool emergency)
    {
        if (emergency)
        {
            name_Text.text = resource.resourceName + "<" + color + ">" + " x" + resource.resourceCount + " !!!</color>";
        }
        else
        {
            name_Text.text = resource.resourceName + "<" + color + ">" + " x" + resource.resourceCount + "</color>";
        }
        icon_Image.sprite = RARC_DatabaseController.Instance.resources_DB.GetIcon(resource.resourceType);
    }
    public RARC_Resource GetResource(RARC_Resource.ResourceType type)
    {
        RARC_Resource resource = null;

        switch (type)
        {
        case RARC_Resource.ResourceType.Scrap:
            resource = scrap_Resource;
            break;

        case RARC_Resource.ResourceType.Fuel:
            resource = fuel_Resource;
            break;

        case RARC_Resource.ResourceType.Food:
            resource = food_Resource;
            break;

        case RARC_Resource.ResourceType.Titanium:
            resource = titanium_Resource;
            break;

        case RARC_Resource.ResourceType.Silicon:
            resource = silicon_Resource;
            break;

        case RARC_Resource.ResourceType.Carbon:
            resource = carbon_Resource;
            break;

        case RARC_Resource.ResourceType.Organics:
            resource = organics_Resource;
            break;

        case RARC_Resource.ResourceType.Hydrogen:
            resource = hydrogen_Resource;
            break;

        case RARC_Resource.ResourceType.Nitrogen:
            resource = nitrogen_Resource;
            break;

        case RARC_Resource.ResourceType.NULL:
            resource = scrap_Resource;
            break;

        default:
            resource = scrap_Resource;
            break;
        }

        return(resource);
    }
 public void SetResource_OutcomeChanges(RARC_Resource resource)
 {
     if (resource.resourceCount >= 0)
     {
         name_Text.text    = resource.resourceName + "<" + RARC_ButtonController_Game.Instance.colorValues_Yellow + ">" + " +" + resource.resourceCount + "</color>";
         icon_Image.sprite = RARC_DatabaseController.Instance.resources_DB.GetIcon(resource.resourceType);
     }
     else if (resource.resourceCount < 0)
     {
         name_Text.text    = resource.resourceName + "<" + RARC_ButtonController_Game.Instance.colorValues_Red + ">" + " " + resource.resourceCount + "</color>";
         icon_Image.sprite = RARC_DatabaseController.Instance.resources_DB.GetIcon(resource.resourceType);
     }
 }
Exemple #5
0
    private List <RARC_Resource> GetResourcesList()
    {
        //Setup List
        List <RARC_Resource> newResource_List = new List <RARC_Resource>();

        //Gather Resources
        RARC_Resource newResource1 = new RARC_Resource(roomSO.resourceRequiredAmount_1, roomSO.resourceRequired_1);

        newResource_List.Add(newResource1);
        RARC_Resource newResource2 = new RARC_Resource(roomSO.resourceRequiredAmount_2, roomSO.resourceRequired_2);

        newResource_List.Add(newResource2);
        RARC_Resource newResource3 = new RARC_Resource(roomSO.resourceRequiredAmount_3, roomSO.resourceRequired_3);

        newResource_List.Add(newResource3);
        RARC_Resource newResource4 = new RARC_Resource(roomSO.resourceRequiredAmount_4, roomSO.resourceRequired_4);

        newResource_List.Add(newResource4);
        RARC_Resource newResource5 = new RARC_Resource(roomSO.resourceRequiredAmount_5, roomSO.resourceRequired_5);

        newResource_List.Add(newResource5);

        return(newResource_List);
    }
Exemple #6
0
    private List <RARC_Resource> GetResourcesList()
    {
        //Setup List
        List <RARC_Resource> resourcesRequired_List = new List <RARC_Resource>();

        //Gather Resources
        RARC_Resource newResource1 = new RARC_Resource(craftingSO.resourceRequiredAmount_1, craftingSO.resourceRequired_1);

        resourcesRequired_List.Add(newResource1);
        RARC_Resource newResource2 = new RARC_Resource(craftingSO.resourceRequiredAmount_2, craftingSO.resourceRequired_2);

        resourcesRequired_List.Add(newResource2);
        RARC_Resource newResource3 = new RARC_Resource(craftingSO.resourceRequiredAmount_3, craftingSO.resourceRequired_3);

        resourcesRequired_List.Add(newResource3);
        RARC_Resource newResource4 = new RARC_Resource(craftingSO.resourceRequiredAmount_4, craftingSO.resourceRequired_4);

        resourcesRequired_List.Add(newResource4);
        RARC_Resource newResource5 = new RARC_Resource(craftingSO.resourceRequiredAmount_5, craftingSO.resourceRequired_5);

        resourcesRequired_List.Add(newResource5);

        return(resourcesRequired_List);
    }
    public void ChangeResources(string resourceName, RARC_Resource.ResourceType resourceType, int resourceCount)
    {
        switch (resourceType)
        {
        case RARC_Resource.ResourceType.Scrap:
            RARC_DatabaseController.Instance.ship_SaveData.shipResource_Scrap.resourceCount += resourceCount;

            //Refresh Then Update Resource Tab Visuals
            RARC_ButtonController_Game.Instance.RefreshUI_ResourcesAndStorage();
            RARC_ButtonController_Game.Instance.storageResourceTabs_List[2].SpawnChangesText(resourceCount);
            break;

        case RARC_Resource.ResourceType.Fuel:
            RARC_DatabaseController.Instance.ship_SaveData.shipResource_Fuel.resourceCount += resourceCount;

            //Refresh Then Update Resource Tab Visuals
            RARC_ButtonController_Game.Instance.RefreshUI_ResourcesAndStorage();
            RARC_ButtonController_Game.Instance.storageResourceTabs_List[0].SpawnChangesText(resourceCount);
            break;

        case RARC_Resource.ResourceType.Food:
            RARC_DatabaseController.Instance.ship_SaveData.shipResource_Food.resourceCount += resourceCount;

            //Refresh Then Update Resource Tab Visuals
            RARC_ButtonController_Game.Instance.RefreshUI_ResourcesAndStorage();
            RARC_ButtonController_Game.Instance.storageResourceTabs_List[1].SpawnChangesText(resourceCount);
            break;

        default:
            int resourceSlot = 99;
            int i            = 0;

            foreach (RARC_Resource resourceInShip in RARC_DatabaseController.Instance.ship_SaveData.shipStorage_List)
            {
                if (resourceInShip.resourceType == resourceType)
                {
                    resourceSlot = i;
                }
                i++;
            }

            if (resourceSlot != 99)
            {
                RARC_DatabaseController.Instance.ship_SaveData.shipStorage_List[resourceSlot].resourceCount += resourceCount;

                //Refresh Then Update Resource Tab Visuals
                RARC_ButtonController_Game.Instance.RefreshUI_ResourcesAndStorage();
                RARC_ButtonController_Game.Instance.storageResourceTabs_List[resourceSlot + 3].SpawnChangesText(resourceCount);
            }
            else
            {
                RARC_Resource resource = new RARC_Resource(resourceName, resourceCount, resourceType);
                RARC_DatabaseController.Instance.ship_SaveData.shipStorage_List.Add(resource);

                //Refresh Then Update Resource Tab Visuals
                RARC_ButtonController_Game.Instance.RefreshUI_ResourcesAndStorage();
                RARC_ButtonController_Game.Instance.storageResourceTabs_List[RARC_DatabaseController.Instance.ship_SaveData.shipStorage_List.Count + 3].SpawnChangesText(resourceCount);
            }


            break;
        }
    }
Exemple #8
0
    /////////////////////////////////////////////////////////////////

    public void CreateNewSave()
    {
        //Set Weeks
        shipInfo_WeeksSurvived = 0;

        //Ship Rooms
        shipData_Rooms_Arr     = new RARC_Room.RoomType[16];
        shipData_Rooms_Arr[0]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[1]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[2]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[3]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[4]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[5]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[6]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[7]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[8]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[9]  = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[10] = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[11] = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[12] = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[13] = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[14] = RARC_Room.RoomType.EMPTY;
        shipData_Rooms_Arr[15] = RARC_Room.RoomType.EMPTY;

        //SET FIRST LOCATION AS EASTH????
        shipData_currentLocation        = null;
        shipData_NavigationDestination  = null;
        shipData_NavigationTripProgress = 0;

        //Events
        shipCurrentTravelEvents_List   = new List <RARC_Event>();
        shipAvalibleTravelEvents_List  = new List <RARC_Event>();
        shipBlacklistTravelEvents_List = new List <RARC_Event>();
        shipCurrentPlanetEvents_List   = new List <RARC_Event>();
        shipAvaliblePlanetEvents_List  = new List <RARC_Event>();
        shipBlacklistPlanetEvents_List = new List <RARC_Event>();

        //Intro Event
        shipCurrentTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_ANewHope));

        //Travel Events
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_AbandonedShip));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_Aliens));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_Bedtime));

        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_BigRock));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_Freedom));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_FriendlyGreeting));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_PartyTime));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_RottenFood));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_UnknownSignalClose));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_UnknownSignalFar));
        shipAvalibleTravelEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_Zoom));


        //Planet Events
        shipAvaliblePlanetEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_AncientRuins));
        shipAvaliblePlanetEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_CrackInTheSurface));
        shipAvaliblePlanetEvents_List.Add(new RARC_Event(RARC_DatabaseController.Instance.events_DB.event_CreaturesOnTheGround));



        //Event Missfires
        travelEventsMissed = 1;
        planetEventsMissed = 1;

        //Set New Resource Bases and Storage
        shipHullHealth     = 100;
        shipResource_Scrap = new RARC_Resource("Scrap", 30, RARC_Resource.ResourceType.Scrap);
        shipResource_Fuel  = new RARC_Resource("Fuel", 100, RARC_Resource.ResourceType.Fuel);
        shipResource_Food  = new RARC_Resource("Food", 100, RARC_Resource.ResourceType.Food);

        shipStorage_List = new List <RARC_Resource>();

        //shipStorage_List.Add(new RARC_Resource("Titanium", 10, RARC_Resource.ResourceType.Titanium));
        //shipStorage_List.Add(new RARC_Resource("Carbon", 15, RARC_Resource.ResourceType.Carbon));
        //shipStorage_List.Add(new RARC_Resource("Silicon", 5, RARC_Resource.ResourceType.Silicon));
        shipStorage_List.Add(new RARC_Resource("Organics", 30, RARC_Resource.ResourceType.Organics));
        shipStorage_List.Add(new RARC_Resource("Hydrogen", 30, RARC_Resource.ResourceType.Hydrogen));
        shipStorage_List.Add(new RARC_Resource("Nitrogen", 30, RARC_Resource.ResourceType.Nitrogen));



        //Create new Lists
        shipData_Crew_List = new List <RARC_Crew>();
        shipData_Bots_List = new List <RARC_Crew>();

        //Loop Spawning New Crew
        int startingCrewCount = 12;

        for (int i = 0; i < startingCrewCount; i++)
        {
            //Add New Crew to List
            shipData_Crew_List.Add(new RARC_Crew());
        }

        //Loop Spawning New Bots
        int startingBotCount = 2;

        for (int i = 0; i < startingBotCount; i++)
        {
            //Add New Crew to List
            shipData_Bots_List.Add(new RARC_Crew());
        }



        if (false)
        {
            //Debug Items
            shipResource_Scrap = new RARC_Resource("Scrap", 999, RARC_Resource.ResourceType.Scrap);
            shipResource_Fuel  = new RARC_Resource("Fuel", 999, RARC_Resource.ResourceType.Fuel);
            shipResource_Food  = new RARC_Resource("Food", 999, RARC_Resource.ResourceType.Food);
            shipStorage_List.Add(new RARC_Resource("Titanium", 999, RARC_Resource.ResourceType.Titanium));
            shipStorage_List.Add(new RARC_Resource("Carbon", 999, RARC_Resource.ResourceType.Carbon));
            shipStorage_List.Add(new RARC_Resource("Silicon", 999, RARC_Resource.ResourceType.Silicon));
            shipStorage_List.Add(new RARC_Resource("Organics", 999, RARC_Resource.ResourceType.Organics));
            shipStorage_List.Add(new RARC_Resource("Hydrogen", 999, RARC_Resource.ResourceType.Hydrogen));
            shipStorage_List.Add(new RARC_Resource("Nitrogen", 999, RARC_Resource.ResourceType.Nitrogen));
        }
    }
    /////////////////////////////////////////////////////////////////

    public void BuildDatabase()
    {
        //Set New Resource Bases
        scrap_Resource = new RARC_Resource
                         (
            "Scrap",
            30,
            RARC_Resource.ResourceType.Scrap
                         );

        fuel_Resource = new RARC_Resource
                        (
            "Fuel",
            0,
            RARC_Resource.ResourceType.Fuel
                        );

        food_Resource = new RARC_Resource
                        (
            "Food",
            0,
            RARC_Resource.ResourceType.Food
                        );

        titanium_Resource = new RARC_Resource
                            (
            "Titanium",
            0,
            RARC_Resource.ResourceType.Titanium
                            );

        silicon_Resource = new RARC_Resource
                           (
            "Silicon",
            0,
            RARC_Resource.ResourceType.Silicon
                           );

        carbon_Resource = new RARC_Resource
                          (
            "Carbon",
            0,
            RARC_Resource.ResourceType.Carbon
                          );

        organics_Resource = new RARC_Resource
                            (
            "Organics",
            0,
            RARC_Resource.ResourceType.Organics
                            );

        hydrogen_Resource = new RARC_Resource
                            (
            "Hydrogen",
            0,
            RARC_Resource.ResourceType.Hydrogen
                            );

        nitrogen_Resource = new RARC_Resource
                            (
            "Nitrogen",
            0,
            RARC_Resource.ResourceType.Nitrogen
                            );
    }