private void OnPacketRelayRequest(INetworkConnection con, Packet gmsg) { PacketRelay relay = (PacketRelay)gmsg; INetworkConnection userCon = ConnectionManager.GetUserConnection(relay.To); if (userCon == null) { // target user not attached. sorry it didn't work out. return; } userCon.Send(relay.Message, relay.Flags); }
public PacketRelay MakeRelayPacket(string targetServer, Guid targetUser, ServerUser from, Packet message) { PacketRelay relay = new PacketRelay(); relay.PacketID = (int)ServerPacketType.Relay; relay.PacketSubTypeID = message.PacketID; relay.Flags = message.Flags; relay.From = from.CurrentCharacter.CharacterInfo; relay.Message = message.Serialize(new Pointer()); relay.OriginServer = this.ServerUserID; relay.TargetServer = targetServer; relay.To = targetUser; return relay; }