/// <summary>
 /// Computes the average uptime of specific effects being active/inactive.
 /// </summary>
 /// <param name="triggerInterval">Average time interval between triggers in seconds for each effect.</param>
 /// <param name="triggerChance">Chance that trigger of correct type is produced for each effect.</param>
 /// <param name="active">Determines if specific effects are being active/inactive for the uptime calculation.</param>
 /// <param name="offset">Initial cooldown for each effect.</param>
 /// <param name="attackSpeed">Average unhasted attack speed, used in PPM calculations.</param>
 /// <param name="fightDuration">Duration of fight in seconds.</param>
 /// <param name="scale">Chance that the effect will give the desired proc.</param>
 /// <param name="effects">The effects for which the combined uptime is to be computed.</param>
 /// <param name="stat">The stat for which we're computing the combinations.</param>
 public static WeightedStat[] GetAverageCombinedUptimeCombinationsMultiplicative(SpecialEffect[] effects, float[] triggerInterval, float[] triggerChance, float[] offset, float[] scale, float attackSpeed, float fightDuration, MultiplicativeStat stat)
 {
     float[] value = new float[effects.Length];
     for (int j = 0; j < effects.Length; j++)
     {
         value[j] = effects[j].Stats._rawMultiplicativeData[(int)stat];
     }
     return GetAverageCombinedUptimeCombinationsMultiplicative(effects, triggerInterval, triggerChance, offset, scale, attackSpeed, fightDuration, value);
 }
Beispiel #2
0
 /// <summary>
 /// Computes the average uptime of specific effects being active/inactive.
 /// </summary>
 /// <param name="triggerInterval">Average time interval between triggers in seconds for each effect.</param>
 /// <param name="triggerChance">Chance that trigger of correct type is produced for each effect.</param>
 /// <param name="active">Determines if specific effects are being active/inactive for the uptime calculation.</param>
 /// <param name="offset">Initial cooldown for each effect.</param>
 /// <param name="attackSpeed">Average unhasted attack speed, used in PPM calculations.</param>
 /// <param name="fightDuration">Duration of fight in seconds.</param>
 /// <param name="scale">Chance that the effect will give the desired proc.</param>
 /// <param name="effects">The effects for which the combined uptime is to be computed.</param>
 /// <param name="stat">The stat for which we're computing the combinations.</param>
 public static WeightedStat[] GetAverageCombinedUptimeCombinationsMultiplicative(SpecialEffect[] effects, float[] triggerInterval, float[] triggerChance, float[] offset, float[] scale, float attackSpeed, float fightDuration, MultiplicativeStat stat)
 {
     float[] value = new float[effects.Length];
     for (int j = 0; j < effects.Length; j++)
     {
         value[j] = effects[j].Stats._rawMultiplicativeData[(int)stat];
     }
     return(GetAverageCombinedUptimeCombinationsMultiplicative(effects, triggerInterval, triggerChance, offset, scale, attackSpeed, fightDuration, value));
 }
 /// <summary>
 /// Computes the average uptime of specific effects being active/inactive.
 /// </summary>
 /// <param name="triggerInterval">Average time interval between triggers in seconds for each effect.</param>
 /// <param name="triggerChance">Chance that trigger of correct type is produced for each effect.</param>
 /// <param name="active">Determines if specific effects are being active/inactive for the uptime calculation.</param>
 /// <param name="offset">Initial cooldown for each effect.</param>
 /// <param name="attackSpeed">Average unhasted attack speed, used in PPM calculations.</param>
 /// <param name="fightDuration">Duration of fight in seconds.</param>
 public static WeightedStat[] GetAverageCombinedUptimeCombinationsMultiplicative(SpecialEffect[] effects, float[] triggerInterval, float[] triggerChance, float[] offset, float attackSpeed, float fightDuration, MultiplicativeStat stat)
 {
     return GetAverageCombinedUptimeCombinationsMultiplicative(effects, triggerInterval, triggerChance, offset, null, attackSpeed, fightDuration, stat);
 }
Beispiel #4
0
 /// <summary>
 /// Computes the average uptime of specific effects being active/inactive.
 /// </summary>
 /// <param name="triggerInterval">Average time interval between triggers in seconds for each effect.</param>
 /// <param name="triggerChance">Chance that trigger of correct type is produced for each effect.</param>
 /// <param name="active">Determines if specific effects are being active/inactive for the uptime calculation.</param>
 /// <param name="offset">Initial cooldown for each effect.</param>
 /// <param name="attackSpeed">Average unhasted attack speed, used in PPM calculations.</param>
 /// <param name="fightDuration">Duration of fight in seconds.</param>
 public static WeightedStat[] GetAverageCombinedUptimeCombinationsMultiplicative(SpecialEffect[] effects, float[] triggerInterval, float[] triggerChance, float[] offset, float attackSpeed, float fightDuration, MultiplicativeStat stat)
 {
     return(GetAverageCombinedUptimeCombinationsMultiplicative(effects, triggerInterval, triggerChance, offset, null, attackSpeed, fightDuration, stat));
 }