Ejemplo n.º 1
0
 public void InformOfEvent(EventBroadcast.Event _event)
 {
     if (_event == EventBroadcast.Event.PLAYER_COLLECTED_DIRT)
     {
         if (isStructureActive)
         {
             ActionAdjustResources actionAdjustResources = new ActionAdjustResources(new Resource(stackMultiplier.GetStackedAmount(), Resource.ResourceType.MINERAL));
             actionAdjustResources.Execute();
         }
     }
 }
Ejemplo n.º 2
0
	private void Update()
	{
		if (isStructureActive)
		{
			intervalCounter += Time.deltaTime;
			float stackedAmount = stackMultiplier.GetStackedAmount_float();		// TODO: Great place to optimize here - don't do this every update loop
			if (stackedAmount != 0.0f && intervalCounter > (1.0f / stackedAmount))
			{
				int mineralEarnMultiplier = (City.Instance.IsCityBenefitAvailable(CityBenefits.Benefit.REFINERY_DOUBLE) ? 2 : 1);
				ActionAdjustResources actionAdjustResources = new ActionAdjustResources(new Resource((mineralEarnPerInterval * mineralEarnMultiplier), Resource.ResourceType.MINERAL));
				actionAdjustResources.Execute();
				intervalCounter = 0.0f;
			}
		}
	}
Ejemplo n.º 3
0
    public bool DoesActionSetHaveCost(ref string costDescription)
    {
        bool retVal = false;

        foreach (IAction action in actions)
        {
            ActionAdjustResources aar = action as ActionAdjustResources;
            if (aar != null)
            {
                if (aar.GetResourceAdjustmentAmount() < 0)
                {
                    retVal           = true;
                    costDescription += -aar.GetResourceAdjustmentAmount() + " " + aar.GetResourceAdjustmentName().ToLower() + " ";
                }
            }
        }
        return(retVal);
    }