public void Read(StreamHandler Reader) { Flags = (SpellCastTargetFlags)Reader.ReadUInt32(); if ((Flags & ( SpellCastTargetFlags.Unit | SpellCastTargetFlags.Unk2 | SpellCastTargetFlags.Object | SpellCastTargetFlags.Corpse | SpellCastTargetFlags.PvPCorpse )) != 0) TargetUnit = Reader.ReadPackedGuid(); if ((Flags & (SpellCastTargetFlags.Item | SpellCastTargetFlags.TradeItem)) != 0) TargetItem = Reader.ReadPackedGuid(); if ((Flags & SpellCastTargetFlags.SourceLocation) != 0) { SourceTransportGuid = Reader.ReadPackedGuid(); SourceLocation = Reader.ReadVector3(); } if ((Flags & SpellCastTargetFlags.DestLocation) != 0) { DestTransportGuid = Reader.ReadPackedGuid(); DestLocation = Reader.ReadVector3(); } if ((Flags & SpellCastTargetFlags.String) != 0) StringTarget = Reader.ReadCString(); }
private void PopulatePassive() { explicitTargetType = SpellExplicitTargetType.Caster; damageClass = SpellDamageClass.None; spellDispel = SpellDispelType.None; mechanic = SpellMechanics.None; explicitCastTargets = SpellCastTargetFlags.UnitAlly; schoolMask = 0; preventionType = 0; attributes = SpellAttributes.Passive; attributesExtra = SpellExtraAttributes.DoesNotTriggerGcd | SpellExtraAttributes.IgnoreGcd | SpellExtraAttributes.NotStealable; attributesCustom = SpellCustomAttributes.CastWithoutAnimation; targetEntityTypeMask = EnityTypeMask.Unit; rangedFlags = SpellRangeFlags.Default; interruptFlags = 0; castIgnoringMechanics = 0; cooldownTime = 0; categoryCooldownTime = 0; globalCooldownTime = 0; castTime = 0; minCastTime = 0; minRangeHostile = 0; minRangeFriend = 0; maxRangeHostile = 0; maxRangeFriend = 0; speed = 0; }
public void Read(StreamHandler Reader) { Flags = (SpellCastTargetFlags)Reader.ReadUInt32(); if ((Flags & ( SpellCastTargetFlags.Unit | SpellCastTargetFlags.Unk2 | SpellCastTargetFlags.Object | SpellCastTargetFlags.Corpse | SpellCastTargetFlags.PvPCorpse )) != 0) { TargetUnit = Reader.ReadPackedGuid(); } if ((Flags & (SpellCastTargetFlags.Item | SpellCastTargetFlags.TradeItem)) != 0) { TargetItem = Reader.ReadPackedGuid(); } if ((Flags & SpellCastTargetFlags.SourceLocation) != 0) { SourceTransportGuid = Reader.ReadPackedGuid(); SourceLocation = Reader.ReadVector3(); } if ((Flags & SpellCastTargetFlags.DestLocation) != 0) { DestTransportGuid = Reader.ReadPackedGuid(); DestLocation = Reader.ReadVector3(); } if ((Flags & SpellCastTargetFlags.String) != 0) { StringTarget = Reader.ReadCString(); } }
public static bool HasFlag(this SpellCastTargetFlags baseFlags, SpellCastTargetFlags flag) { return((baseFlags & flag) == flag); }
public void SetTargetFlag(SpellCastTargetFlags flag) { m_targetMask |= flag; }
public void SetTargetMask(SpellCastTargetFlags newMask) { m_targetMask = newMask; }