Exemple #1
0
 internal StaminaFilter(IServerPacketSubject serverPacketHandler, UltimaClient ultimaClient)
 {
     serverPacketHandler.RegisterOutputFilter(FilterStamina);
     this.ultimaClient = ultimaClient;
     serverPacketHandler.Subscribe(PacketDefinitions.UpdateCurrentStamina, HandleUpdateCurrentStamina);
     serverPacketHandler.Subscribe(PacketDefinitions.StatusBarInfo, HandleStatusBarInfo);
 }
        public ItemsObservers(GameObjectCollection gameObjects, IServerPacketSubject serverPacketSubject, IClientPacketSubject clientPacketSubject,
                              Legacy legacyApi, EventJournalSource eventJournalSource)
        {
            this.eventJournal = new EventJournal(eventJournalSource);
            this.waitForItemDraggedJournal = new EventJournal(eventJournalSource);

            this.gameObjects = gameObjects;
            this.gameObjects.MobileLeftView += (sender, mobile) =>
            {
                eventJournalSource.Publish(new MobileLeftViewEvent(mobile));
            };
            this.gameObjects.MobileDeleted += (sender, mobile) =>
            {
                eventJournalSource.Publish(new MobileLeftViewEvent(mobile));
            };

            this.legacyApi          = legacyApi;
            this.eventJournalSource = eventJournalSource;
            serverPacketSubject.Subscribe(PacketDefinitions.AddMultipleItemsInContainer,
                                          HandleAddMultipleItemsInContainer);
            serverPacketSubject.Subscribe(PacketDefinitions.AddItemToContainer, HandleAddItemToContainer);
            serverPacketSubject.Subscribe(PacketDefinitions.DeleteObject, HandleDeleteObjectPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.ObjectInfo, HandleObjectInfoPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.SecondAgeObjectInformation7090, HandleSecondAgeObjectInfoPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.DrawObject, HandleDrawObjectPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.UpdatePlayer, HandleUpdatePlayerPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.UpdateCurrentHealth, HandleUpdateCurrentHealthPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.WornItem, HandleWornItemPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.RejectMoveItemRequest, HandleRejectMoveItemRequestPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.DrawContainer, HandleDrawContainer);
            serverPacketSubject.Subscribe(PacketDefinitions.PauseClient, HandlePauseClient);
            serverPacketSubject.Subscribe(PacketDefinitions.SendSpeech, HandleSendSpeechPacket);
            serverPacketSubject.Subscribe(PacketDefinitions.StatusBarInfo, HandleStatusBarInfo);
            serverPacketSubject.Subscribe(PacketDefinitions.GraphicalEffect, HandleGraphicalEffect);
            clientPacketSubject.Subscribe(PacketDefinitions.DoubleClick, HandleDoubleClick);

            serverPacketSubject.RegisterOutputFilter(FilterServerPackets);
        }
Exemple #3
0
 public void RegisterOutputFilter(Func <Packet, Packet?> filter)
 {
     packetSubject.RegisterOutputFilter(filter);
 }
Exemple #4
0
 public ShapeshiftingFilter(IServerPacketSubject serverPacketHandler, UltimaClient client)
 {
     serverPacketHandler.RegisterOutputFilter(FilterItemShapes);
 }
Exemple #5
0
 public ShapeshiftingFilter(IServerPacketSubject serverPacketHandler, UltimaClient client,
                            PacketDefinitionRegistry packetRegistry)
 {
     serverPacketHandler.RegisterOutputFilter(FilterItemShapes);
     this.packetRegistry = packetRegistry;
 }