Пример #1
0
 public void OnIncomingEvents(BridgeEventArgs[] events)
 {
     foreach (var e in events)
     {
         try
         {
             this.SendBridgeEvent(e);
         }
         catch { }
     }
 }
Пример #2
0
 /// <summary>
 /// Sends a bridge event
 /// </summary>
 /// <param name="e"></param>
 private void SendBridgeEvent(BridgeEventArgs e)
 {
     var handlers = BridgeEvent;
     if (handlers == null) { return; }
     try
     {
         lock (handlers)
         {
             handlers(e);
         }
     }
     catch (Exception)
     {
     }
 }
Пример #3
0
        private void ProcessBridgeEvents(bEvents.BridgeEventArgs e)
        {
            Debug.WriteLine("Type: {0}", e.EventType);

            switch (e.EventType)
            {
            case BridgeEventType.CharacterPosition:
                this.ProcessCharacterPositionEvent(e as bEvents.DynelPositionEventArgs);
                break;

            case BridgeEventType.DynelName:
                this.outgoingEvents.Enqueue(new hEvents.DynelNameEventArgs(e as bEvents.DynelNameEventArgs));
                break;

            case BridgeEventType.Debug:
                this.outgoingEvents.Enqueue(new hEvents.DebugEventArgs(e as bEvents.DebugEventArgs));
                break;

            case BridgeEventType.HookStateChange:
                this.outgoingEvents.Enqueue(new hEvents.HookStateChangeEventArgs(e as bEvents.HookStateChangeEventArgs));
                break;

            case BridgeEventType.QuestLocation:
                this.outgoingEvents.Enqueue(new hEvents.QuestLocationEventArgs(e as bEvents.QuestLocationEventArgs));
                break;

            case BridgeEventType.ServerID:
                this.outgoingEvents.Enqueue(new hEvents.ServerIdEventArgs(e as bEvents.ServerIdEventArgs));
                break;

            case BridgeEventType.CharacterLogin:
                this.outgoingEvents.Enqueue(new hEvents.CharacterLoginEventArgs(e as bEvents.CharacterLoginEventArgs));
                break;

            case BridgeEventType.CharacterLogout:
                this.outgoingEvents.Enqueue(new hEvents.CharacterLogoutEventArgs(e as bEvents.CharacterLogoutEventArgs));
                break;
            }
        }
Пример #4
0
 internal void SendBridgeEvent(BridgeEventArgs e)
 {
     try
     {
         lock (this.eventsQueue)
         {
             this.eventsQueue.Enqueue(e);
         }
     }
     catch { }
 }