public EffectInstance GuessRealEffect(EffectInstance effect) { EffectInstance result; if (!(effect is EffectInstanceDice)) { result = effect; } else { EffectInstanceDice effectInstanceDice = effect as EffectInstanceDice; if (effectInstanceDice.value == 0 && effectInstanceDice.diceNum > 0u && effectInstanceDice.diceSide > 0u) { result = new EffectInstanceMinMax { duration = effectInstanceDice.duration, effectId = effectInstanceDice.effectId, max = effectInstanceDice.diceSide, min = effectInstanceDice.diceNum, modificator = effectInstanceDice.modificator, random = effectInstanceDice.random, targetId = effectInstanceDice.targetId, trigger = effectInstanceDice.trigger, zoneShape = effectInstanceDice.zoneShape, zoneSize = effectInstanceDice.zoneSize }; } else { if (effectInstanceDice.value == 0 && effectInstanceDice.diceNum == 0u && effectInstanceDice.diceSide > 0u) { result = new EffectInstanceMinMax { duration = effectInstanceDice.duration, effectId = effectInstanceDice.effectId, max = effectInstanceDice.diceSide, min = effectInstanceDice.diceNum, modificator = effectInstanceDice.modificator, random = effectInstanceDice.random, targetId = effectInstanceDice.targetId, trigger = effectInstanceDice.trigger, zoneShape = effectInstanceDice.zoneShape, zoneSize = effectInstanceDice.zoneSize }; } else { result = effect; } } } return(result); }
public EffectMinMax(EffectInstanceMinMax effect) : base(effect) { m_maxvalue = (short)effect.max; m_minvalue = (short)effect.min; }