Example #1
0
        /// <summary>
        /// Sends SpecialLogin to creature's client.
        /// </summary>
        /// <remarks>
        /// One of those packets with a success parameter,
        /// that don't actually support failing.
        /// Sends character to a special, client-side-instanced region,
        /// where he is to meet the given NPC. EnterRegion isn't needed
        /// for this.
        /// </remarks>
        /// <param name="creature"></param>
        /// <param name="regionId"></param>
        /// <param name="x"></param>
        /// <param name="y"></param>
        /// <param name="npcEntityId"></param>
        public static void SpecialLogin(Creature creature, int regionId, int x, int y, long npcEntityId)
        {
            var packet = new Packet(Op.SpecialLogin, MabiId.Channel);
            packet.PutByte(true);
            packet.PutInt(regionId);
            packet.PutInt(x);
            packet.PutInt(y);
            packet.PutLong(npcEntityId);
            packet.AddCreatureInfo(creature, CreaturePacketType.Private);

            creature.Client.Send(packet);
        }
Example #2
0
		/// <summary>
		/// Sends ChannelCharacterInfoRequestR for creature to client.
		/// </summary>
		/// <param name="client"></param>
		/// <param name="creature">Negative response if null</param>
		public static void ChannelCharacterInfoRequestR(ChannelClient client, Creature creature)
		{
			var packet = new Packet(Op.ChannelCharacterInfoRequestR, MabiId.Channel);
			packet.PutByte(creature != null);

			if (creature != null)
			{
				packet.AddCreatureInfo(creature, CreaturePacketType.Private);
			}

			client.Send(packet);
		}