Пример #1
0
        public void RegionLoaded(IScene scene)
        {
            if (!enabled)
            {
                return;
            }

            if (m_TransferModule == null)
            {
                OfflineMessagesConnector = Framework.Utilities.DataManager.RequestPlugin <IOfflineMessagesConnector>();
                m_TransferModule         = scene.RequestModuleInterface <IMessageTransferModule>();
                if (m_TransferModule == null || OfflineMessagesConnector == null)
                {
                    scene.EventManager.OnNewClient     -= OnNewClient;
                    scene.EventManager.OnClosingClient -= OnClosingClient;

                    enabled = false;
                    m_Scene = null;

                    MainConsole.Instance.Error(
                        "[OFFLINE MESSAGING] No message transfer module or OfflineMessagesConnector is enabled. Diabling offline messages");
                    return;
                }
                m_TransferModule.OnUndeliveredMessage += UndeliveredMessage;
            }
        }
        public void RegionLoaded(Scene scene)
        {
            if (!enabled)
            {
                return;
            }

            if (m_TransferModule == null)
            {
                OfflineMessagesConnector = Aurora.DataManager.DataManager.RequestPlugin <IOfflineMessagesConnector>();
                m_TransferModule         = scene.RequestModuleInterface <IMessageTransferModule>();
                if (m_TransferModule == null)
                {
                    scene.EventManager.OnNewClient     -= OnNewClient;
                    scene.EventManager.OnClosingClient -= OnClosingClient;

                    enabled = false;
                    m_SceneList.Clear();

                    m_log.Error("[OFFLINE MESSAGING] No message transfer module is enabled. Diabling offline messages");
                    return;
                }
                m_TransferModule.OnUndeliveredMessage += UndeliveredMessage;
            }
        }
Пример #3
0
        public void AuctionEnd(int localID)
        {
            IParcelManagementModule parcelManagement = m_scene.RequestModuleInterface <IParcelManagementModule>();

            if (parcelManagement != null)
            {
                ILandObject landObject = parcelManagement.GetLandObject(localID);
                if (landObject == null)
                {
                    return;
                }

                AuctionInfo info = GetAuctionInfo(localID);
                if (info == null)
                {
                    return; // cannot find this auction??
                }
                AuctionBid highestBid = new AuctionBid()
                {
                    Amount = 0
                };
                foreach (AuctionBid bid in info.AuctionBids)
                {
                    if (highestBid.Amount < bid.Amount)
                    {
                        highestBid = bid;
                    }
                }

                IOfflineMessagesConnector offlineMessages =
                    Framework.Utilities.DataManager.RequestPlugin <IOfflineMessagesConnector>();
                if (offlineMessages != null)
                {
                    offlineMessages.AddOfflineMessage(new GridInstantMessage()
                    {
                        BinaryBucket  = new byte[0],
                        Dialog        = (byte)InstantMessageDialog.MessageBox,
                        FromAgentID   = UUID.Zero,
                        FromAgentName = "System",
                        FromGroup     = false,
                        SessionID     = UUID.Random(),
                        Message       =
                            "You won the auction for the parcel " +
                            landObject.LandData.Name + ", paying " +
                            highestBid.Amount + " for it",
                        Offline        = 0,
                        ParentEstateID = 0,
                        Position       = Vector3.Zero,
                        RegionID       = m_scene.RegionInfo.RegionID,
                        Timestamp      = (uint)Util.UnixTimeSinceEpoch(),
                        ToAgentID      = highestBid.AuctionBidder
                    });
                }
                landObject.UpdateLandSold(highestBid.AuctionBidder, UUID.Zero, false, landObject.LandData.AuctionID,
                                          highestBid.Amount, landObject.LandData.Area);
            }
        }
        public void RegionLoaded (IScene scene)
        {
            if (!m_enabled)
                return;

            if (m_TransferModule == null) {
                OfflineMessagesConnector = Framework.Utilities.DataManager.RequestPlugin<IOfflineMessagesConnector> ();
                m_TransferModule = scene.RequestModuleInterface<IMessageTransferModule> ();
                if (m_TransferModule == null || OfflineMessagesConnector == null) {
                    scene.EventManager.OnNewClient -= OnNewClient;
                    scene.EventManager.OnClosingClient -= OnClosingClient;

                    m_enabled = false;
                    m_Scene = null;

                    MainConsole.Instance.Error (
                        "[OFFLINE MESSAGING] No message transfer module or OfflineMessagesConnector is enabled. Disabling offline messages");
                    return;
                }
                m_TransferModule.OnUndeliveredMessage += UndeliveredMessage;
            }
        }
        public void RegionLoaded (IScene scene)
        {
            if (!enabled)
                return;

            if (m_TransferModule == null)
            {
                OfflineMessagesConnector = Aurora.DataManager.DataManager.RequestPlugin<IOfflineMessagesConnector>();
                m_TransferModule = scene.RequestModuleInterface<IMessageTransferModule>();
                if (m_TransferModule == null || OfflineMessagesConnector == null)
                {
                    scene.EventManager.OnNewClient -= OnNewClient;
                    scene.EventManager.OnClosingClient -= OnClosingClient;

                    enabled = false;
                    m_SceneList.Clear();

                    m_log.Error("[OFFLINE MESSAGING] No message transfer module or OfflineMessagesConnector is enabled. Diabling offline messages");
                    return;
                }
                m_TransferModule.OnUndeliveredMessage += UndeliveredMessage;
            }
        }
 public OfflineMessagesInfoHandler()
 {
     OfflineMessagesConnector =
         DataManager.RequestPlugin <IOfflineMessagesConnector>("IOfflineMessagesConnectorLocal");
 }
 public OfflineMessagesInfoHandler()
 {
     OfflineMessagesConnector = DataManager.RequestPlugin<IOfflineMessagesConnector>("IOfflineMessagesConnectorLocal");
 }