Ejemplo n.º 1
0
        public GenericBuilding Unbuild()
        {
            GenericBuilding b = this.Building;

            this.Building = null;
            return(b);
        }
Ejemplo n.º 2
0
    void Awake()
    {
        genericBuilding = GetComponent <GenericBuilding>();

        genericBuilding.ProductionRate = genericBuilding.BuildingType.MineralProduction;

        genericBuilding.MaxWorkers = MaxWorkers;
    }
Ejemplo n.º 3
0
    float TempBeliefDistance(GenericBuilding workplace, GameObject source)
    {
        float score = 0;

        score = Mathf.Abs(Vector3.Distance(source.transform.position, workplace.transform.position));

        return(score);
    }
Ejemplo n.º 4
0
    void Awake()
    {
        genericBuilding = GetComponent <GenericBuilding>();

        food = GetComponent <Food>();

        genericBuilding.ProductionRate = genericBuilding.BuildingType.FoodProduction;

        genericBuilding.MaxWorkers = MaxWorkers;
    }
Ejemplo n.º 5
0
    void Work(GenericBuilding currentWorkplace)
    {
        //create Production
        float workPlaceEfficiency = currentWorkplace.ProductionRate;

        currentWorkplace.Production += workPlaceEfficiency * Owner.WorkingSpeed * Time.deltaTime;

        //reduce Energy & Food
        float consunmptionScale = Owner.AgentsSharedParameters.ConsumptionScale;

        Owner.Food   -= (Owner.FoodConsumption * Time.deltaTime * consunmptionScale);
        Owner.Energy -= (Owner.EnergyConsumption * Time.deltaTime * consunmptionScale);
    }
Ejemplo n.º 6
0
    public void GetSelectedObjectType(RaycastHit2D hit)
    {
        // if Raycast hit somthing
        if (hit)
        {
            SelectedObject = hit.transform.gameObject;

            string tag = SelectedObject.tag;

            switch (tag)
            {
            case "Agent":
                SelectedObjectType = SELECTED_AGENT;
                Agent = SelectedObject.GetComponent <Agent>();
                LevelManagerRef.StateMachineRef.ChangeState(LevelManagerRef.States[LevelManager.StatesEnum.ObjectSelected]);
                break;

            case "Work":
                SelectedObjectType = SELECTED_BUILDING;
                Building           = SelectedObject.GetComponent <GenericBuilding>();
                LevelManagerRef.StateMachineRef.ChangeState(LevelManagerRef.States[LevelManager.StatesEnum.ObjectSelected]);
                break;

            case "Food":
                SelectedObjectType = SELECTED_FOOD;
                Building           = SelectedObject.GetComponent <GenericBuilding>();
                LevelManagerRef.StateMachineRef.ChangeState(LevelManagerRef.States[LevelManager.StatesEnum.ObjectSelected]);
                break;

            case "Energy":
            case "Stone":
            case "Wood":
            case "Mineral":
                SelectedObjectType = SELECTED_RESOURCE;
                Resource           = SelectedObject.GetComponent <Resource>();
                LevelManagerRef.StateMachineRef.ChangeState(LevelManagerRef.States[LevelManager.StatesEnum.ObjectSelected]);
                break;
            }
        }

        // No Hit
        else
        {
            LevelManagerRef.StateMachineRef.ChangeState(LevelManagerRef.States[LevelManager.StatesEnum.BaseState]);
        }
    }
Ejemplo n.º 7
0
 public static void CallOnSelectBuilding(GenericBuilding b)
 {
     GameSession.OnSelectBuilding(b);
 }
Ejemplo n.º 8
0
 public void AddItemToDictionary(GenericBuilding item, Dictionary <GenericBuilding, float> dic)
 {
     dic.Add(item, 0f);
 }