Example #1
0
 /// <summary>Used for any PeriodicAura (repeating ticks)</summary>
 /// <param name="extra">Always seems to be one</param>
 public static void SendPeriodicAuraLog(IPacketReceiver client, WorldObject caster, WorldObject target,
                                        uint spellId, uint extra, AuraTickFlags flags, int amount)
 {
     using (RealmPacketOut packet = new RealmPacketOut((PacketId)RealmServerOpCode.SMSG_PERIODICAURALOG, 32))
     {
         caster.EntityId.WritePacked((BinaryWriter)packet);
         target.EntityId.WritePacked((BinaryWriter)packet);
         packet.WriteUInt(spellId);
         packet.WriteUInt(extra);
         packet.WriteUInt((uint)flags);
         packet.WriteUInt(amount);
         target.SendPacketToArea(packet, true, false, Locale.Any, new float?());
     }
 }
Example #2
0
        /// <summary>
        /// Used for any PeriodicAura (repeating ticks)
        /// </summary>
        /// <param name="extra">Always seems to be one</param>
        public static void SendPeriodicAuraLog(IPacketReceiver client, WorldObject caster, WorldObject target,
                                               uint spellId, uint extra, AuraTickFlags flags, int amount)
        {
            // TODO: Update struct
            using (var packet = new RealmPacketOut(RealmServerOpCode.SMSG_PERIODICAURALOG, 32))
            {
                caster.EntityId.WritePacked(packet);
                target.EntityId.WritePacked(packet);
                packet.WriteUInt(spellId);
                packet.WriteUInt(extra);
                packet.WriteUInt((uint)flags);
                packet.WriteUInt(amount);

                target.SendPacketToArea(packet, true, false);
            }
        }
Example #3
0
		/// <summary>
		/// Used for Periodic leech effects, mostly Cannibalism
		/// </summary>
		/// <returns></returns>
		public static void SendPeriodicDamage(WorldObject caster, WorldObject target, uint spellId, AuraTickFlags type,
											  int amount)
		{
			using (var packet = new RealmPacketOut(RealmServerOpCode.SMSG_PERIODICAURALOG, 32))
			{
				caster.EntityId.WritePacked(packet);
				target.EntityId.WritePacked(packet);
				packet.WriteUInt(spellId);

				packet.WriteUInt(1);				// count
				packet.WriteUInt((uint)type);
				packet.WriteUInt(amount);

				target.SendPacketToArea(packet, true);
			}
		}
Example #4
0
		/// <summary>
		/// Used for any PeriodicAura (repeating ticks)
		/// </summary>
		/// <param name="extra">Always seems to be one</param>
		public static void SendPeriodicAuraLog(IPacketReceiver client, WorldObject caster, WorldObject target,
			uint spellId, uint extra, AuraTickFlags flags, int amount)
		{
			// TODO: Update struct for 3.0.2
			using (var packet = new RealmPacketOut(RealmServerOpCode.SMSG_PERIODICAURALOG, 32))
			{
				caster.EntityId.WritePacked(packet);
				target.EntityId.WritePacked(packet);
				packet.WriteUInt(spellId);
				packet.WriteUInt(extra);
				packet.WriteUInt((uint)flags);
				packet.WriteUInt(amount);

				target.SendPacketToArea(packet, true);
			}
		}
Example #5
0
        /// <summary>
        /// Used for Periodic leech effects, mostly Cannibalism
        /// </summary>
        /// <returns></returns>
        public static void SendPeriodicDamage(WorldObject caster, WorldObject target, uint spellId, AuraTickFlags type,
                                              int amount)
        {
            using (var packet = new RealmPacketOut(RealmServerOpCode.SMSG_PERIODICAURALOG, 32))
            {
                caster.EntityId.WritePacked(packet);
                target.EntityId.WritePacked(packet);
                packet.WriteUInt(spellId);

                packet.WriteUInt(1);                                            // count
                packet.WriteUInt((uint)type);
                packet.WriteUInt(amount);

                target.SendPacketToArea(packet, true, false);
            }
        }