Ejemplo n.º 1
0
 public void addResourceToCrate(List <RTSCargo> cargo, RTSCargoType type, float amount)
 {
     for (int i = 0; i < amount; i++)
     {
         cargo.Add(new RTSCargo(RTSCargoType.ironOre));
         controller.RemoveResource(RTSCargoType.ironOre);
     }
 }
Ejemplo n.º 2
0
    /// <summary>
    /// Finds resource in target list
    /// Possible duplicate of RTSResourceContainer.FindResourceContainer
    /// </summary>
    /// <param name="cargo"></param>
    /// <returns>Resource structure of given type, default if not found</returns>
    public RTSResourceContainer FindResourceContainer(RTSCargoType cargoType)
    {
        foreach (var v in target)
        {
            if (v.cargo.CargoType == cargoType)
            {
                return(v);
            }
        }

        return(default);
Ejemplo n.º 3
0
    /// <summary>
    /// Adds resource to the inventory
    /// </summary>
    /// <param name="type">Resource type</param>
    public void AddResource(RTSCargoType type)
    {
        for (int i = 0; i < resources.Length; i++)
        {
            if (resources[i].cargo.CargoType == type)
            {
                resources[i].amount++;
            }
        }

        OnResourcesAdded.Invoke();
    }
Ejemplo n.º 4
0
    /// <summary>
    /// Removes resource from the inventory
    /// </summary>
    /// <param name="type">Resource type</param>
    public bool RemoveResource(RTSCargoType type)
    {
        for (int i = 0; i < resources.Length; i++)
        {
            if (resources[i].cargo.CargoType == type)
            {
                if (resources[i].amount > 0)
                {
                    resources[i].amount--;
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }

        return(false);
    }
Ejemplo n.º 5
0
 public RTSCargo(RTSCargoType type)
 {
     CargoType = type;
 }