Beispiel #1
0
    // Token: 0x06000928 RID: 2344 RVA: 0x00074148 File Offset: 0x00072548
    public string inverseDisplayColon(double target)
    {
        double num = target - this.totalseconds;

        return(NumberOutput.timeOutput(num));
    }
Beispiel #2
0
 // Token: 0x06000925 RID: 2341 RVA: 0x00073F80 File Offset: 0x00072380
 public string timeDisplayColon()
 {
     return(NumberOutput.timeOutput(this.totalseconds));
 }
Beispiel #3
0
        private void AllocatePairs()
        {
            float[] augRatio         = { 5 / 15f, 7 / 17f, 9 / 19f, 11 / 21f, 13 / 23f, 15 / 25f, 17 / 27f };
            float[] upgRatio         = { 10 / 15f, 10 / 17f, 10 / 19f, 10 / 21f, 10 / 23f, 10 / 25f, 10 / 27f };
            var     gold             = Character.realGold;
            var     bestAugment      = -1;
            var     bestAugmentValue = 0d;

            for (var i = 0; i < 7; i++)
            {
                var aug = Character.augmentsController.augments[i];
                if (aug.augLocked() || aug.hitAugmentTarget())
                {
                    continue;
                }


                if (_useUpgrades && aug.upgradeLocked() || aug.hitUpgradeTarget())
                {
                    continue;
                }

                double time;
                double timeRemaining;
                double cost;
                float  progress;
                if (_useUpgrades)
                {
                    time = Math.Max(aug.UpgradeTimeLeftEnergyMax((long)(MaxAllocation * upgRatio[i])), aug.AugTimeLeftEnergyMax((long)(MaxAllocation * augRatio[i])));
                    if (time < 0.01)
                    {
                        time = 0.01d;
                    }
                    timeRemaining = aug.UpgradeTimeLeftEnergy((long)(MaxAllocation * upgRatio[i]));
                    cost          = (double)Math.Max(1, 1d / time) * (double)aug.getUpgradeCost();
                    progress      = aug.UpgradeProgress();
                }
                else
                {
                    time = aug.AugTimeLeftEnergyMax((long)(MaxAllocation));
                    if (time < 0.01)
                    {
                        time = 0.01d;
                    }
                    timeRemaining = aug.AugTimeLeftEnergy((long)(MaxAllocation));
                    cost          = (double)Math.Max(1, 1d / time) * (double)aug.getAugCost();
                    progress      = aug.AugProgress();
                }

                if (cost > gold && (progress == 0f || timeRemaining < 10))
                {
                    continue;
                }

                if (time > 300)
                {
                    continue;
                }

                if (RebirthTime > 0 && Main.Settings.AutoRebirth)
                {
                    if (Character.rebirthTime.totalseconds - time < 0)
                    {
                        continue;
                    }
                }

                //if (Index > 0)
                //    if (Character.rebirthTime.totalseconds + time > Index)
                //        continue;

                double value = AugmentValue(i);

                if (value / time > bestAugmentValue)
                {
                    bestAugment      = i;
                    bestAugmentValue = value / time;
                }

                Main.LogAllocation($"Pair ID {i}: cost {cost} with {(_useUpgrades ? MaxAllocation * upgRatio[bestAugment] : MaxAllocation * augRatio[bestAugment])} of {MaxAllocation} energy for time {NumberOutput.timeOutput(time)} remaining {NumberOutput.timeOutput(timeRemaining)} - Value: {value} - ROI : {value / time}");
            }
            if (bestAugment != -1)
            {
                var maxAllocation        = (_useUpgrades ? MaxAllocation * augRatio[bestAugment] : MaxAllocation);
                var maxAllocationUpgrade = (_useUpgrades ? MaxAllocation * upgRatio[bestAugment] : MaxAllocation);;
                var index  = bestAugment * 2;
                var alloc  = CalculateAugCap(index, maxAllocation);
                var alloc2 = CalculateAugCap(index + 1, maxAllocationUpgrade);
                SetInput(alloc);
                Character.augmentsController.augments[bestAugment].addEnergyAug();
                if (_useUpgrades)
                {
                    Main.LogAllocation($"BestAug: ({bestAugment}) @ {maxAllocation} using {augRatio[bestAugment]} : {alloc} and {upgRatio[bestAugment]} : {alloc2}");
                    SetInput(alloc2);
                    Character.augmentsController.augments[bestAugment].addEnergyUpgrade();
                }
            }
        }