public static IAttributeModifier GetModifier(AttributModifierType p_modifierType, GameObject p_owner, BaseAttributeParam p_param) { IAttributeModifier modifierFactor = null; switch (p_modifierType) { case AttributModifierType.Resource: modifierFactor = new ResourceModifier(); break; case AttributModifierType.DurationRatio: modifierFactor = new DurationRatioModifier(); break; case AttributModifierType.Duration: modifierFactor = new DurationModifier(); break; case AttributModifierType.SingleValue: modifierFactor = new SingleValueModifier(); break; default: Debug.Log("The type " + p_modifierType.ToString() + " is not implemented."); return(null); } modifierFactor.SetAttributeParam(p_param); modifierFactor.OnStart(p_owner); return(modifierFactor); }
public Duration(int multipier, DurationModifier modifier, bool flatValue, int perNumberOfLevels) { Multipier = multipier; Modifier = modifier; FlatValue = flatValue; PerNumberOfLevels = perNumberOfLevels; }
/**********************************************************/ public static IntervalType createIntervalType(DateTime startUTC, int duration = -1, DurationModifier durationModifier = null) { IntervalType interval = new IntervalType(); interval.dtstart = new dtstart(); interval.dtstart.datetime = startUTC; if (duration != -1) { interval.duration = new DurationPropType(); interval.duration.duration = "PT" + duration.ToString() + durationModifier.Value; } return(interval); }
/**********************************************************/ public static IntervalType createIntervalType(DateTime startUTC, oadrReportPayloadType reportPayload, int duration = -1, DurationModifier durationModifier = null) { IntervalType interval = new IntervalType(); interval.dtstart = new dtstart(); interval.dtstart.datetime = startUTC; if (duration != -1) { interval.duration = new DurationPropType(); interval.duration.duration = "PT" + duration.ToString() + durationModifier.Value; } interval.streamPayloadBase = new StreamPayloadBaseType[1]; interval.streamPayloadBase[0] = reportPayload; return(interval); }