Example #1
0
        void OnResourceNodeLoaded(ResourceTarget resource)
        {
            cachedGather    = 1;
            cachedAmount    = 1;
            cachedMinAmount = 1;
            switch (resource.type)
            {
            case ResourceTarget.ResourceTargetType.Animal:
                cachedGather = GatheranimalMultiplier;
                break;

            case ResourceTarget.ResourceTargetType.Rock2:
                cachedGather = GathermetalOreMultiplier;
                break;

            case ResourceTarget.ResourceTargetType.Rock3:
                cachedGather = GatherstonesMultiplier;
                break;

            case ResourceTarget.ResourceTargetType.Rock1:
                cachedGather = GathersulfurOreMultiplier;
                break;

            case ResourceTarget.ResourceTargetType.WoodPile:
                cachedGather = GatherwoodpileMultiplier;
                break;

            default:
                break;
            }
            foreach (ResourceGivePair resourceavaible in resource.resourcesAvailable)
            {
                if (resourceMultiplier.ContainsKey(resourceavaible.ResourceItemName))
                {
                    resourceavaible.amountMin *= (int)resourceMultiplier[resourceavaible.ResourceItemName];
                    resourceavaible.amountMax *= (int)resourceMultiplier[resourceavaible.ResourceItemName];
                    resourceavaible.CalcAmount();
                }
            }
            resource.gatherEfficiencyMultiplier = cachedGather;
            startingtotal.SetValue(resource, resource.GetTotalResLeft());
        }