public bool isTargetConditionValid(EffectCondition condition, Entity target) { if (condition is EffectConditionHealthAbove) { isTargetHealthAbove((EffectConditionHealthAbove)condition, target); } else if (condition is EffectConditionHealthBelow) { isTargetHealthBelow((EffectConditionHealthBelow)condition, target); } else if (condition is EffectConditionAPAbove) { isTargetAPAbove((EffectConditionAPAbove)condition, target); } else if (condition is EffectConditionAPBelow) { isTargetAPBelow((EffectConditionAPBelow)condition, target); } else if (condition is EffectConditionMPAbove) { isTargetMPAbove((EffectConditionMPAbove)condition, target); } else if (condition is EffectConditionMPBelow) { isTargetMPBelow((EffectConditionMPBelow)condition, target); } return(true); }
public override void SerializeEffect <T>(EffectCondition component, T template) { var holder = template as DM_AngleFwdToTargetFwdCondition; var angles = (component as AngleFwdToTargetFwdCondition).AnglesToCompare; holder.AnglesToCompare = angles.ToList(); }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as CorruptionLevelCondition; Value = comp.Value; CompareType = comp.CompareType; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as HasStatusEffectEffectCondition; var holder = template as DM_HasStatusEffectEffectCondition; holder.Invert = comp.Inverse; holder.DiseaseAge = comp.DiseaseAge; holder.CheckOwner = comp.CheckOwner; var selector = comp.StatusEffect; holder.StatusSelectorType = (SelectorTypes)selector.Type; switch (selector.Type) { case StatusEffectSelector.Types.StatusFamily: holder.SelectorValue = StatusEffectFamilyLibrary.Instance.GetStatusEffect(selector.StatusFamily.SelectorValue).UID; break; case StatusEffectSelector.Types.StatusSpecific: holder.SelectorValue = selector.StatusEffect?.IdentifierName; break; case StatusEffectSelector.Types.StatusType: holder.SelectorValue = selector.StatusType.Tag.TagName; break; } }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as PrePackDeployableCondition; ProximityAngle = comp.ProximityAngle; ProximityDist = comp.ProximityDist; PackableItemIDs = comp.PackableItems?.Select(it => it?.ItemID ?? -1).ToArray(); }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as InstrumentClose; MainInstrumentID = comp.Instrument?.ItemID ?? -1; OtherInstrumentIDs = comp.OtherInstruments?.Select(it => it?.ItemID ?? -1).ToArray(); Range = comp.Range; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var holder = template as DM_MostRecentCondition; var comp = component as MostRecentCondition; holder.StatusIdentifierToCheck = comp.StatusEffectPrefab?.IdentifierName; holder.StatusIdentifierToCompareTo = comp.StatusEffectToCompare?.IdentifierName; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var holder = template as DM_StatusEffectCondition; var comp = component as StatusEffectCondition; holder.StatusIdentifier = comp.StatusEffectPrefab.IdentifierName; holder.Invert = comp.Inverse; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as PackedInstrumentCharges; Min = comp.Min; Max = comp.Max; PrePackDeployableID = comp.PackDeployable?.ID ?? -1; InstrumentID = comp.Instrument?.ItemID ?? -1; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as ImbueEffectCondition; var holder = template as DM_ImbueEffectCondition; holder.AnyImbue = comp.AnyImbue; holder.WeaponToCheck = comp.WeaponToCheck; holder.ImbuePresetID = comp.ImbueEffectPreset?.PresetID ?? -1; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as HeightCondition; var holder = template as DM_HeightCondition; holder.CompareType = comp.CompareType; holder.AllowEqual = comp.AllowEqual; holder.HeightThreshold = comp.HeightThreshold; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var holder = template as DM_TimeDelayCondition; var comp = component as TimeDelayCondition; holder.DelayRange = comp.DelayRange; holder.TimeFormat = comp.TimeFormat; holder.IgnoreFirstCheck = comp.IgnoreFirstCheck; }
public override void SerializeEffect <T>(EffectCondition component, T template) { var holder = template as DM_QuestEventAreaCondition; var comp = component as QuestEventAreaCondition; foreach (var _event in comp.EventToCheck) { holder.EventUIDs.Add(_event.EventUID); } }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as HasStatusLevelCondition; var holder = template as DM_HasStatusLevelCondition; holder.StatusIdentifier = comp.StatusEffect?.IdentifierName; holder.CheckOwner = comp.CheckOwner; holder.CompareLevel = comp.CompareLevel; holder.ComparisonType = comp.ComparaisonType; }
public bool isGlobalConditionValid(EffectCondition condition) { if (condition is EffectConditionTurnNumberAbove) { return(isTurnAbove((EffectConditionTurnNumberAbove)condition)); } else if (condition is EffectConditionTurnNumberBelow) { return(isTurnBelow((EffectConditionTurnNumberBelow)condition)); } return(true); }
public static EffectCondition[] buildEffectConditions(ArrayJSON conditions) { if (conditions != null) { EffectCondition[] output = new EffectCondition[conditions.Length]; for (int i = 0; i < conditions.Length; i++) { output[i] = buildEffectCondition(conditions.getObjectJSONAt(i)); } return(output); } return(new EffectCondition[0]); }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as ImbueEffectORCondition; var holder = template as DM_ImbueEffectORCondition; holder.AnyImbue = comp.AnyImbue; holder.WeaponToCheck = comp.WeaponToCheck; if (comp.ImbueEffectPresets != null) { holder.ImbuePresetIDs = new List <int>(); foreach (var imbue in comp.ImbueEffectPresets) { holder.ImbuePresetIDs.Add(imbue.PresetID); } } }
public static DM_EffectCondition ParseCondition(EffectCondition component) { if (component == null) { return(null); } var type = component.GetType(); if (Serializer.GetDMType(type) is Type DM_type && typeof(DM_EffectCondition).IsAssignableFrom(DM_type)) { var holder = Activator.CreateInstance(DM_type) as DM_EffectCondition; holder.Invert = component.Invert; holder.SerializeEffect(component, holder); return(holder); }
public override void SerializeEffect <T>(EffectCondition component, T template) { var comp = component as ProximityCondition; MaxDistance = comp.ProximityDist; Offset = comp.Offset; ProximityAngle = comp.ProximityAngle; OrMode = comp.OrMode; foreach (var req in comp.ProximityItemReq) { RequiredItems.Add(new DM_Skill.SkillItemReq() { Consume = req.Consume, Quantity = req.Quantity, ItemID = req.Item.ItemID }); } }
public static SL_EffectCondition ParseCondition(EffectCondition component) { Type slType = Serializer.GetBestSLType(component.GetType()); if (slType != null && !slType.IsAbstract) { var holder = Activator.CreateInstance(slType) as SL_EffectCondition; holder.Invert = component.Invert; holder.SerializeEffect(component); return(holder); } else { SL.Log(component.ToString() + " is not supported yet, sorry!"); return(null); } }
public override void SerializeEffect <T>(EffectCondition component, T template) { Bounds = (component as InBoundsCondition).Bounds; }
public override void SerializeEffect <T>(EffectCondition component, T template) { (template as DM_IsEquipSlotFilledCondition).EquipmentSlot = (component as IsEquipSlotFilledCondition).EquipmentSlot; }
public override void SerializeEffect <T>(EffectCondition component, T template) { this.RequiredDamages = Damages.ParseDamageArray((component as DealtDamageCondition).DealtDamages); }
public override void SerializeEffect <T>(EffectCondition component, T template) { Proximity = (component as NoSameShooterBlastInProximity).Proximity; }
public override void SerializeEffect <T>(EffectCondition component, T template) { (template as DM_EquipDurabilityCondition).MinimumDurability = (component as EquipDurabilityCondition).DurabilityRequired; (template as DM_EquipDurabilityCondition).EquipmentSlot = (component as EquipDurabilityCondition).EquipmentSlot; }
public override void SerializeEffect <T>(EffectCondition component, T template) { (template as DM_InZoneCondition).Radius = (component as InZoneCondition).Radius; }
public override void SerializeEffect <T>(EffectCondition component, T template) { (template as DM_OwnsItemCondition).ReqItemID = (component as OwnsItemCondition).ReqItem.ItemID; (template as DM_OwnsItemCondition).ReqAmount = (component as OwnsItemCondition).MinAmount; }
public override void SerializeEffect <T>(EffectCondition component, T template) { }
public override void SerializeEffect <T>(EffectCondition component, T template) { (template as DM_ShooterPosStatusEffect).StatusIdentifier = (component as ShooterPosStatusEffect).StatusEffect.IdentifierName; }
public override void SerializeEffect <T>(EffectCondition component, T template) { (template as DM_AttackTypeCondition).AffectOnAttackIDs = (component as AttackTypeCondition).AffectOnAttacks.ToList(); }