Inheritance: MonoBehaviour
示例#1
0
        //Currently used to do manual SQL commands from program.
        private void SearchText_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.Key == Key.Enter)
            {
                if (SearchText.Text.Equals("send"))
                {
                    Messenger m = new Messenger();
                    m.sendSelect("SELECT * FROM `keys`;", "keys");
                }
                else
                {
                    Messenger m = new Messenger();

                    string[] parsed = SearchText.Text.Split(';');
                    string username = parsed[0];
                    string password = parsed[1];

                    if (m.login(username, password))
                        SearchText.Text = "Logged in.";
                    else
                        SearchText.Text = "Invalid.";
                    //m.test();
                }

               // SearchText.Text = "";
            }

        }
示例#2
0
        public void FlyoutStaysOpenIfWanted()
        {
            // Arrange
            var currentProject = new ProjectViewModel( new Project { Id = 123 } );
            var messenger = new Messenger();
            var todoRepoMock = new Mock<ITodoRepository>();

            bool messageReceived = false;
            messenger.Register<FlyoutMessage>( this, msg => { if( msg.FlyoutName == FlyoutMessage.AddEntryFlyoutName ) messageReceived = true; } );

            var vm = new AddEntryViewModel( Enumerable.Empty<TagViewModel>(), currentProject, todoRepoMock.Object, messenger )
            {
                Summary = "summary"
            };

            // Act
            vm.StayOpen = true;
            vm.AddCommand.Execute( null );
            bool stay = messageReceived;

            vm.Summary = "summary";
            vm.StayOpen = false;
            vm.AddCommand.Execute( null );
            bool dontStay = messageReceived;

            // Assert
            Assert.IsFalse( stay );
            Assert.IsTrue( dontStay );
        }
        public void Setup()
        {
            _messenger = new Messenger();

            _productsServiceMock = new Mock<IProductsService>();
            _viewModel = new ProductListViewModel(_messenger, _productsServiceMock.Object);
        }
        static void Main()
        {
            Directory.CreateDirectory(LogDir);

            var messenger = new Messenger();

            foreach (var contact in EmailAddresses
                                    .Select(emailAddress => messenger.GetContact(emailAddress, messenger.MyServiceId)))
            {
                Contacts.Add(contact);

                Log(contact);

                // Don't release the COM object of contact here
                // or OnContactStatusChange will not be raised.
            }

            messenger.OnContactStatusChange += (contact, _) => Log((IMessengerContactAdvanced)contact);

            Console.ReadLine();

            foreach (var contact in Contacts)
            {
                Marshal.FinalReleaseComObject(contact);
            }

            Marshal.FinalReleaseComObject(messenger);
        }
示例#5
0
        public void AddUsesCorrectValues()
        {
            // Arrange
            var tags = new[]
            {
                new TagViewModel( new Tag {Id = 1, Name = "Tag1"} ),
                new TagViewModel( new Tag {Id = 2, Name = "Tag2"} )
            };

            var currentProject = new ProjectViewModel( new Project { Id = 123 } );

            var messenger = new Messenger();
            bool addMessageReceived = false;
            messenger.Register<EntryAddedMessage>( this, msg => addMessageReceived = true );

            var todoRepoMock = new Mock<ITodoRepository>();
            todoRepoMock.Setup( x => x.Add( It.Is<Todo>( t => t.Summary.Equals( "summary" ) && t.Details.Equals( "details" ) && t.Project.Id == 123 ) ) ).Verifiable();
            todoRepoMock.Setup( x => x.Update( It.Is<Todo>( t => t.Tags.First().Id == 2 ) ) ).Verifiable();

            var vm = new AddEntryViewModel( tags, currentProject, todoRepoMock.Object, messenger )
            {
                Summary = "summary",
                Details = "details"
            };

            // Act
            vm.Tags[1].IsSelected = true;
            vm.AddCommand.Execute( null );

            // Assert
            todoRepoMock.VerifyAll();
            Assert.IsTrue( addMessageReceived );
        }
示例#6
0
        public CommunicatorIntegration()
        {
            try
            {
                m_Messenger = new Messenger();
            }
            catch (Exception)
            {
                throw new CommunicatorNotOpenException();
            }

            m_ServiceID = m_Messenger.MyServiceId;

            try
            {
                m_Messenger.GetContact("*****@*****.**", m_ServiceID);
            }
            catch (Exception)
            {
                throw new CommunicatorNotLoggedInToRedgateException();
            }

            m_SubscribedContacts = new Dictionary<string, IMessengerContact>();

            m_Messenger.OnContactStatusChange += communicator_OnContactStatusChange;
        }
示例#7
0
        public void TestMultipleRecipients()
        {
            var messenger = new Messenger();
            var recipient1 = new OldTestRecipient();
            var recipient2 = new OldTestRecipient();
            var recipient3 = new OldTestRecipient();

            messenger.Register(recipient1, typeof(OldTestMessage));
            messenger.Register(recipient2, typeof(OldTestMessage));
            messenger.Register(recipient3, typeof(OldTestMessage));

            Assert.IsNull(recipient1.Sender);
            Assert.IsNull(recipient1.Content);
            Assert.IsNull(recipient2.Content);
            Assert.IsNull(recipient2.Sender);
            Assert.IsNull(recipient3.Content);
            Assert.IsNull(recipient3.Sender);

            const string TestString = "Hello world";
            var message = new OldTestMessage(this, TestString);
            messenger.Broadcast(message);

            Assert.AreEqual(TestString, recipient1.Content);
            Assert.AreEqual(this, recipient1.Sender);
            Assert.AreEqual(TestString, recipient2.Content);
            Assert.AreEqual(this, recipient2.Sender);
            Assert.AreEqual(TestString, recipient3.Content);
            Assert.AreEqual(this, recipient3.Sender);
        }
示例#8
0
		public void Messager_Unsubscription_Test(int countSend)
		{
			var subscriber1 = new FakeSubscriber();
			var subscriber2 = new FakeSubscriber();
			var message = new FakeOneMessage { Text = "Test message" };
			var messenger = new Messenger();
			byte firstSubscriberNumber = 0;
			byte secondSubscriberNumber = 0;

			messenger.Subscribe<FakeOneMessage>(subscriber1, (s, m) =>
				{
					firstSubscriberNumber++;
					messenger.Unsubscribe<FakeOneMessage>(subscriber1);
				});
			messenger.Subscribe<FakeOneMessage>(subscriber2, (s, m) =>
				{
					secondSubscriberNumber++;
				});
			
			for (int i = 0; i < countSend; i++)
			{
				messenger.Send(message);
			}

			Assert.AreEqual(1, firstSubscriberNumber);
			Assert.AreEqual(countSend, secondSubscriberNumber);
		}
示例#9
0
        protected override void OnStartup(StartupEventArgs e)
        {
            XmlConfigurator.Configure();

            _logger.Info("[START]");
            _logger.Info("setup dependency injection container");
            Container = new UnityContainer();

            _logger.Info("setup database");
            string directory = Environment.GetFolderPath(
                Environment.SpecialFolder.LocalApplicationData);
            _logger.Info("database directory: " + directory);
            _dbContext = new NDatabaseConnector(directory);

            //database registration
            Container.RegisterInstance(typeof (IDataAccessLayer), _dbContext);

            //service registrations
            Container.RegisterType<ICryptographyService, CryptographyService>();
            Container.RegisterType<IDropboxService, DropboxService>();

            //registraions utils
            //only one instance from messenger can exists! (recipient problems..)
            _logger.Info("register messenger instance");
            var messenger = new Messenger();
            Container.RegisterInstance(typeof (IMessenger), messenger);

            _logger.Info("show login view");
            var loginView = Container.Resolve<LoginView>();
            loginView.Show();
        }
示例#10
0
        public NaviMessengerService()
        {
            naviMessenger = new Messenger(new NaviHandler(this));
            InitEnvParameters();
            ConnectPIC32();

            //Create navigation algorithms thread 
            ThreadAlgorithm = new Thread(new ThreadStart(algorithms));
            ThreadAlgorithm.IsBackground = true;
            ThreadAlgorithm.Priority = System.Threading.ThreadPriority.AboveNormal;

            //Init timer1
            timer1 = new System.Timers.Timer();
            timer1.Interval = 200;
            timer1.Elapsed += new System.Timers.ElapsedEventHandler(timer1_Tick);
            timer1.Stop();
            //Init manual mode timer
            ManModeTimer = new System.Timers.Timer();
            ManModeTimer.Interval = 100;
            ManModeTimer.Elapsed += new System.Timers.ElapsedEventHandler(ManModeTimerHandler);
            ManModeTimer.Stop();
            //Read config from default.set and process map
            ProcessConfigMap();
            //Connect beacon and start sendcoordinatetimer and TagDataRecvTimer
            ConnectBeacon();
        }
 public MainWindowViewModel(Messenger messenger)
 {
     Workspaces = new ObservableCollection<IWorkspace>();
     Workspaces.CollectionChanged += Workspaces_CollectionChanged;
     SearchCustomerCommand = new RelayCommand(SearchCustomer);
     CreateCustomerCommand = new RelayCommand(() => messenger.Send(new OpenDialogWindowMessage(new CustomerViewModel(new Customer()), r => MessageBox.Show(r.ToString()))));
 }
示例#12
0
        private void Control_Loaded(object sender, System.Windows.RoutedEventArgs e)
        {
            var messenger = new Messenger();

            messenger.Register<UpdateHeaderMessage>(this, m => UpdateHeader(m));

            DataContext = new ControlViewModel(messenger);
        }
示例#13
0
        public override IBinder OnBind(Intent intent)
        {
            if (intent.GetParcelableExtra("MESSENGER") != null) {
             this.outMessenger = (Messenger) intent.GetParcelableExtra("MESSENGER");
            }

            return inMessenger.Binder;
        }
示例#14
0
        public ControlViewModel(Messenger messenger)
        {
            _messenger = messenger;

            Connect();

            ConnectCommand = new RelayCommand(() => Connect());
        }
示例#15
0
 /// <summary>
 /// Create a new host for this module
 /// </summary>
 /// <param name="mod">The module to host</param>
 public ModuleHost(AbstractModule mod, ServerContext context, Messenger messenger, BaseConfiguration config)
 {
     this.HostedModule = mod;
     this.ExitHandle = new EventWaitHandle(false, EventResetMode.ManualReset);
     mod.Messenger = messenger;
     mod.SetConfiguration(config);
     mod.SetContext(context);
     mod.OnFinishedStopping += env_OnFinishedStopping;
 }
示例#16
0
    public void Initialise(UserInterface userInterface)
    {
        UserInterface = userInterface;
        Connection = gameObject.AddComponent<Connection>();
        MessageHandler = new MessageHandler(Connection);
        Messenger = new Messenger(Connection);

        MessageHandler.OnAny += MessageHandler_OnMessage;
    }
示例#17
0
 public MessagingTests()
 {
     var iocContainer = MockRepository.GenerateMock<IIocContainer>();
     var sendMessageHandlerType = typeof(TestActions.SendMessageHandler);
     iocContainer.Expect(x => x.Resolve(sendMessageHandlerType))
         .Return(new TestActions.SendMessageHandler());
     var messageHandlerTypes = new SimpleList<Type> { sendMessageHandlerType };
     var executionManager = new SimpleExecutionManager();
     var smartOperator = new SmartOperator(iocContainer, executionManager, messageHandlerTypes);
     _messenger = new Messenger<object>(smartOperator);
 }
        public Communicator(int recordHistoryInterval)
        {
            _activeConversations = new List<Conversation>();

            _timer = new Timer(recordHistoryInterval * 1000);
            _timer.Elapsed += TimerElapsed;
            _timer.Start();

            _messenger = new Messenger();
            _messenger.OnIMWindowCreated += MessengerOnIMWindowCreated;
            _messenger.OnIMWindowDestroyed += MessengerOnIMWindowDestroyed;
        }
        public void Initialize()
        {
            _target = new Messenger();
            _receivedMessage = false;

            _listenerStrongRef = new Listener
            {
                _testObject = this
            };
            _listenerWeakReference = new WeakReference(_listenerStrongRef);
            _listenerStrongRef.Subscribe(_target);
        }
 public static void AddMessage(this TempDataDictionary tempData, Message message)
 {
     dynamic messenger;
     if (tempData.TryGetValue(Messenger.Name, out messenger))
         messenger.Add(message);
     else
     {
         messenger = new Messenger();
         messenger.Add(message);
         tempData[Messenger.Name] = messenger;
     }
 }
示例#21
0
        public void AMessageIsRecievedJustOnceWithOneSubscriber()
        {
            var callbackCount = 0;

            var messenger = new Messenger();
            var mockMessage = new Mock<Message>(this);

            messenger.Subscribe<Message>(message => callbackCount++);
            messenger.Publish(mockMessage.Object);

            Assert.IsTrue(callbackCount == 1);
        }
示例#22
0
            public override void HandleMessage(Message msg)
            {
                Message msg1 = Message.Obtain();
                Bundle bundle = new Bundle();
                bundle.PutString("arg1", "index.html");
                bundle.PutString("arg2", "http://www.vogella.com/index.html");
                msg1.Data = bundle;
                Messenger replyto = new Messenger(msg.ReplyTo.Binder);
                replyto.Send(msg1);

                 	         // Log.Error(this.Class.DeclaringClass.Class.Name, "Handlign message, ComputeService");
            }
        public void Dispose()
        {
            _timer.Dispose();

            foreach (var conversation in _activeConversations)
                conversation.Dispose();
            _activeConversations.Clear();

            _messenger.OnIMWindowCreated -= MessengerOnIMWindowCreated;
            _messenger.OnIMWindowDestroyed -= MessengerOnIMWindowDestroyed;
            Marshal.ReleaseComObject(_messenger);
            _messenger = null;
        }
        public void Default_error_handling()
        {
            var messenger = new Messenger();
            messenger.Handle<int, int>(c =>
            {
                throw new InvalidOperationException();
            });

            Assert.Throws<AggregateException>(() =>
            {
                messenger.Post(123);
            });
        }
        public void MessengerTest()
        {
            var hub = new Messenger();
            for (int i = 0; i < count; i++) {
                hub.Subscribe<TestMessage>(_ => {
                    //do nothing
                });
            }

            for (int i = 0; i < count; i++) {
                hub.Publish (new TestMessage(this));
            }
        }
        public static void AddMessage(this TempDataDictionary tempData, MessageType type, string title, string body)
        {
            var message = new Message(type, title, body);

            dynamic messenger;
            if (tempData.TryGetValue(Messenger.Name, out messenger))
                messenger.Add(message);
            else
            {
                messenger = new Messenger();
                messenger.Add(message);
                tempData[Messenger.Name] = messenger;
            }
        }
        public static void AddMessages(this TempDataDictionary tempData, MessageType type, IEnumerable<string> bodies)
        {
            var messages = bodies.Select(b => new Message(type, b));

            dynamic messenger;
            if (tempData.TryGetValue(Messenger.Name, out messenger))
                foreach (var message in messages)
                    messenger.Add(message);
            else
            {
                messenger = new Messenger(messages);
                tempData[Messenger.Name] = messenger;
            }
        }
示例#28
0
        public void DeleteCommandRaisesAddNewCmdApplicationConfigurationEvent(IFixture fixture)
        {
            var messenger = new Messenger();
            var isInvoked = false;
            messenger.Register(this, (DeleteCmdApplicationConfigurationEvent message) =>
            {
                isInvoked = true;
                Assert.Equal(new DeleteCmdApplicationConfigurationEvent(), message);
            });

            var sut = CreateMainViewModel(fixture, messenger);
            sut.DeleteCommand.Execute(new object());
            Assert.True(isInvoked);
        }
示例#29
0
        public void MessageWithParameterIsReceived()
        {
            Messenger target = new Messenger();

            bool received = false;

            string paramValue = "whatever";

            target.Register("MESSAGE", (Action<string>)(param => received = (param == paramValue)));

            target.NotifyColleagues("MESSAGE", paramValue);

            Assert.IsTrue(received);
        }
示例#30
0
        private static void RunAcceptor(string uri, string acceptorName)
        {
            var messenger = new Messenger(uri);
            var promisedToAcceptNoEarlierThan = 0;
            var lastAccepted = -1;
            var lastAcceptedValue = "";

            while (true)
            {
                var currMessage = messenger.GetMessage<AcceptorReceived>();

                if (currMessage.TimePeriod <= lastAccepted) continue;

                switch (currMessage.Type)
                {
                    case "prepare":
                        if (currMessage.TimePeriod > promisedToAcceptNoEarlierThan)
                            promisedToAcceptNoEarlierThan = currMessage.TimePeriod;

                        messenger.PostMessage(new Promised
                        {
                            By = acceptorName,
                            TimePeriod = currMessage.TimePeriod,
                            HaveAccepted = lastAccepted > 0,
                            LastAcceptedTimePeriod = lastAccepted,
                            LastAcceptedValue = lastAcceptedValue
                        });

                        break;

                    case "proposed":

                        if (currMessage.TimePeriod < promisedToAcceptNoEarlierThan)
                            continue;

                        lastAccepted = currMessage.TimePeriod;
                        lastAcceptedValue = currMessage.Value;

                        messenger.PostMessage(new Accepted
                        {
                            By = acceptorName,
                            TimePeriod = currMessage.TimePeriod,
                            Value = currMessage.Value,
                        });

                        break;
                }
            }
        }
示例#31
0
 protected void OnEntityException(EntityException e)
 {
     Messenger?.Send(CommandName.ShowEntityException, e);
 }
示例#32
0
 protected void OnDbUpdateException(DbUpdateException e)
 {
     Messenger?.Send(CommandName.ShowDbUpdateException, e);
 }
示例#33
0
 private void OnDestroy()
 {
     Messenger.RemoveListener(GameEvent.PLAYER_STOP, OnPlayerStop);
     Messenger.RemoveListener(GameEvent.PLAYER_GO, OnPlayerGo);
 }
示例#34
0
 void OnDisable()
 {
     Messenger <bool> .RemoveListener("OnGameDone", OnGameDone);
 }
示例#35
0
 void OnDisable()
 {
     Messenger.RemoveListener(UIColorsMessages.uiColorsUpdate, OnColorsUpdateHandler);
 }
示例#36
0
        public static bool SendGoods(OrderInfo order)
        {
            ManagerHelper.CheckPrivilege(Privilege.OrderSendGoods);
            bool flag = false;

            if (order.CheckAction(OrderActions.SELLER_SEND_GOODS))
            {
                OrderDao dao = new OrderDao();
                order.OrderStatus  = OrderStatus.SellerAlreadySent;
                order.ShippingDate = new DateTime?(DateTime.Now);
                //线下支付,发货时更新付款时间
                if (order.Gateway == "hishop.plugins.payment.offlinerequest")
                {
                    order.PayDate = new DateTime?(DateTime.Now);
                }
                flag = dao.UpdateOrder(order, null);
                string str = "";
                if (!flag)
                {
                    return(flag);
                }
                bool flag2 = false;
                foreach (LineItemInfo info in order.LineItems.Values)
                {
                    OrderStatus orderItemsStatus = info.OrderItemsStatus;
                    switch (orderItemsStatus)
                    {
                    case OrderStatus.WaitBuyerPay:
                    case OrderStatus.BuyerAlreadyPaid:
                        break;

                    default:
                    {
                        if (orderItemsStatus == OrderStatus.ApplyForRefund)
                        {
                            flag2 = true;
                            str   = str + "'" + info.SkuId + "',";
                        }
                        continue;
                    }
                    }
                    str = str + "'" + info.SkuId + "',";
                }
                if (flag2)
                {
                    dao.DeleteReturnRecordForSendGoods(order.OrderId);
                }
                if (!string.IsNullOrEmpty(str))
                {
                    dao.UpdateItemsStatus(order.OrderId, 3, str.Substring(0, str.Length - 1));
                }
                //货到付款 更新库存
                if (order.Gateway.ToLower() == "hishop.plugins.payment.podrequest")
                {
                    dao.UpdatePayOrderStock(order.OrderId);
                    foreach (LineItemInfo info2 in order.LineItems.Values)
                    {
                        str = str + info2.SkuId + ",";
                        ProductDao  dao2           = new ProductDao();
                        ProductInfo productDetails = dao2.GetProductDetails(info2.ProductId);
                        productDetails.SaleCounts     += info2.Quantity;
                        productDetails.ShowSaleCounts += info2.Quantity;
                        dao2.UpdateProduct(productDetails, null);
                    }
                }
                MemberInfo member = MemberHelper.GetMember(order.UserId);
                Messenger.OrderShipping(order, member, order.wid);
                EventLogs.WriteOperationLog(Privilege.OrderSendGoods, string.Format(CultureInfo.InvariantCulture, "发货编号为\"{0}\"的订单", new object[] { order.OrderId }));
            }
            return(flag);
        }
示例#37
0
        /// <summary>
        /// Scenes the notify init.
        /// </summary>
        public static void SceneNotifyInit()
        {
            Messenger.AddListener <string>(NotifyTypes.GoToScene, (sceneName) => {
                SceneManagerController.GetInstance().ChangeScene(sceneName);
            });

            Messenger.AddListener <string>(NotifyTypes.DealSceneEvent, (eventId) => {
//				EventData eventData = JsonManager.GetInstance().GetMapping<EventData>("AreaEventDatas", eventId);
                EventData eventData = null;
                if (AreaMain.StaticAreaEventsMapping.ContainsKey(eventId))
                {
                    //判断静态事件是否禁用
                    if (!AreaMain.DisableEventIdMapping.ContainsKey(eventId))
                    {
                        eventData = AreaMain.StaticAreaEventsMapping[eventId];
                    }
                }
                else if (AreaMain.ActiveAreaEventsMapping.ContainsKey(eventId))
                {
                    eventData = AreaMain.ActiveAreaEventsMapping[eventId];
                }
                if (eventData != null)
                {
                    string[] fen;
                    switch (eventData.Type)
                    {
                    case SceneEventType.EnterArea:
                        fen = eventData.EventId.Split(new char[] { '_' });
                        if (fen.Length >= 3)
                        {
                            string areaName = fen[0];
                            int x           = int.Parse(fen[1]);
                            int y           = int.Parse(fen[2]);
                            Messenger.Broadcast <string, Vector2, System.Action <UserData> >(NotifyTypes.UpdateUserDataAreaInfo, areaName, new Vector2(x, y), (userData) => {
                                Messenger.Broadcast <string>(NotifyTypes.GoToScene, userData.CurrentAreaSceneName);
                                //清空临时事件
                                Messenger.Broadcast <List <SceneEventType> >(NotifyTypes.ClearDisableEventIdMapping, new List <SceneEventType>()
                                {
                                    SceneEventType.DisablePagoda
                                });
                            });
                        }
                        break;

                    case SceneEventType.Battle:
                    case SceneEventType.Pagoda:
                        Messenger.Broadcast <string>(NotifyTypes.CreateBattle, eventData.EventId);
                        break;

                    case SceneEventType.EnterCity:
                        Messenger.Broadcast <string>(NotifyTypes.UpdateUserDataCityInfo, eventData.EventId);
                        Messenger.Broadcast <System.Action <UserData> >(NotifyTypes.UpdateUserData, (userData) => {
//							Messenger.Broadcast<string>(NotifyTypes.EnterCityScene, userData.CurrentCitySceneId);
                            Messenger.Broadcast <string>(NotifyTypes.EnterCityScene, eventData.EventId);
                        });
                        break;

                    case SceneEventType.Task:
                        Messenger.Broadcast <string>(NotifyTypes.GetTaslDetailInfoData, eventData.EventId);
                        break;

                    case SceneEventType.EatFood:
                        Messenger.Broadcast <int>(NotifyTypes.EatFood, eventData.IntValue);
                        fen = eventData.Id.Split(new char[] { '_' });
                        if (fen.Length >= 3)
                        {
                            string areaName = fen[0];
                            int x           = int.Parse(fen[1]);
                            int y           = int.Parse(fen[2]);
                            //处理静态事件的预禁用操作
                            EventData disableEvent = new EventData();
                            disableEvent.Id        = eventData.Id;
                            disableEvent.Type      = SceneEventType.DisableEvent;
                            disableEvent.X         = x;
                            disableEvent.Y         = y;
                            Messenger.Broadcast <string, EventData>(NotifyTypes.PushDisableEvent, disableEvent.Id, disableEvent);
                        }
                        break;

                    case SceneEventType.Dialog:
                        switch (eventData.EventId)
                        {
                        case "dialog0001":
                            Messenger.Broadcast(NotifyTypes.OpenTowerGuiderPanel);
                            break;

                        default:
                            break;
                        }
                        break;

                    case SceneEventType.Store:
                        DbManager.Instance.GetStoreData(eventData.EventId);
                        break;

                    default:
                        break;
                    }
                }
            });

            Messenger.AddListener(NotifyTypes.FromCitySceneBackToArea, () => {
                if (UserModel.CurrentUserData != null)
                {
                    Messenger.Broadcast <string, Vector2, System.Action <UserData> >(NotifyTypes.UpdateUserDataAreaInfo,
                                                                                     UserModel.CurrentUserData.CurrentAreaSceneName,
                                                                                     new Vector2(UserModel.CurrentUserData.CurrentAreaX, UserModel.CurrentUserData.CurrentAreaY),
                                                                                     (userData) => {
                        UserModel.CurrentFoodNums    = userData.AreaFood.MaxNum;
                        UserModel.CurrentRebornTimes = 0;
                        //播放大地图背景音乐
                        Messenger.Broadcast(NotifyTypes.PlayBgm);
                    }
                                                                                     );
                }
                //清空临时事件
                Messenger.Broadcast <List <SceneEventType> >(NotifyTypes.ClearDisableEventIdMapping, new List <SceneEventType>()
                {
                    SceneEventType.DisablePagoda
                });
            });

            Messenger.AddListener <string>(NotifyTypes.EnterCityScene, (cityId) => {
                DbManager.Instance.CheckEnterCity(cityId);
                DbManager.Instance.GetCitySceneMenuData(cityId);
                Messenger.Broadcast(NotifyTypes.GetTasksInCityScene);
                Messenger.Broadcast(NotifyTypes.MakeTaskListHide);
            });

            Messenger.AddListener(NotifyTypes.GetTasksInCityScene, () => {
                CityScenePanelCtrl.GetTasksInCityScene();
            });

            Messenger.AddListener(NotifyTypes.HideCityScenePanel, () => {
                CityScenePanelCtrl.MakeFadeOut();
            });

            Messenger.AddListener <string>(NotifyTypes.GetStorePanelData, (cityId) => {
                DbManager.Instance.GetStorePanelData(cityId);
            });

            Messenger.AddListener <List <ItemData>, double>(NotifyTypes.GetStorePanelDataEcho, (items, silver) => {
                StorePanelCtrl.Show(items, silver);
            });

            Messenger.AddListener <string>(NotifyTypes.BuyItem, (itemId) => {
                DbManager.Instance.BuyItem(itemId);
            });

            Messenger.AddListener <string, double>(NotifyTypes.BuyItemEcho, (msg, silver) => {
                StorePanelCtrl.MakeBuyItemEcho(msg, silver);
                SoundManager.GetInstance().PushSound("ui0006");
            });

            Messenger.AddListener(NotifyTypes.MakeCheckNewFlags, () => {
                CityScenePanelCtrl.MakeCheckNewFlags();
            });
        }
示例#38
0
 //private void Update()
 //{
 //    if (Input.GetMouseButtonDown(0))
 //    {
 //        Messenger.Broadcast("PawnUpgradeRequest");
 //    }
 //}
 private void OnDestroy()
 {
     Messenger.RemoveListener("PawnUpgradeRequest", OnPawnUpgradeRequest);
 }
 /// <summary>
 /// Create the remote service and marshaler.
 /// </summary>
 /// <remarks>
 /// This is how we pass the client information back to the service so
 /// the client can be properly notified of changes.
 /// Do this every time we reconnect to the service.
 /// </remarks>
 /// <param name="m">
 /// The messenger to use.
 /// </param>
 public void OnServiceConnected(Messenger m)
 {
     _downloaderService = DownloaderServiceMarshaller.CreateProxy(m);
     _downloaderService.OnClientUpdated(_downloaderServiceConnection.GetMessenger());
 }
示例#40
0
 public void Awake()
 {
     _figuresInitializeManager = GetComponent <FiguresInitializeManager>();
     Messenger.AddListener("PawnUpgradeRequest", OnPawnUpgradeRequest);
 }
示例#41
0
        public void Execute(XmlNode node)
        {
            DateTime now;

            if (JobParams.IsExcutePreSaleJob)
            {
                now = DateTime.Now;
                Globals.AppendLog("正在执行!" + now.ToString(), null, "PreSaleJob", "");
            }
            else
            {
                JobParams.IsExcutePreSaleJob = true;
                int num = 100;
                try
                {
                    string str = "SELECT ho.Deposit,ho.OrderId,ho.FinalPayment,ho.DepositDate,ho.UserId,ho.Username,ho.CellPhone,hp.* FROM dbo.Hishop_Orders AS ho\r\n                                LEFT JOIN dbo.Hishop_ProductPreSale AS hp\r\n                                ON ho.PreSaleId = hp.PreSaleId";
                    now = DateTime.Now;
                    DateTime  dateTime         = now.AddHours(12.0);
                    DateTime  now2             = DateTime.Now;
                    string    str2             = " where ho.PreSaleId > 0 and IsSend = 0  and DepositDate is not null and hp.PaymentStartDate <='" + dateTime.ToString() + "'";
                    string    query            = str + str2;
                    Database  database         = DatabaseFactory.CreateDatabase();
                    DbCommand sqlStringCommand = database.GetSqlStringCommand(query);
                    DataSet   dataSet          = null;
                    dataSet = database.ExecuteDataSet(sqlStringCommand);
                    if (dataSet != null && dataSet.Tables.Count > 0 && dataSet.Tables[0].Rows.Count > 0)
                    {
                        SiteSettings  masterSettings = SettingsManager.GetMasterSettings();
                        List <string> list           = new List <string>();
                        foreach (DataRow row in dataSet.Tables[0].Rows)
                        {
                            list.Add(row["OrderId"].ToNullString());
                            string   orderId   = row["OrderId"].ToNullString();
                            decimal  deposit   = Convert.ToDecimal(row["Deposit"]);
                            decimal  num2      = Convert.ToDecimal(row["FinalPayment"]);
                            int      userId    = Convert.ToInt32(row["UserId"]);
                            DateTime dateTime2 = Convert.ToDateTime(row["PaymentStartDate"]);
                            DateTime dateTime3 = Convert.ToDateTime(row["PaymentEndDate"]);
                            Messenger.OrderPaymentRetainage(orderId, deposit, num2, userId, masterSettings, dateTime2, dateTime3, row["CellPhone"].ToNullString());
                            string username = row["Username"].ToNullString();
                            VShopHelper.AppPushRecordForPreSaleOrder(orderId, userId, username, num2, dateTime2, dateTime3);
                            if (list.Count == num)
                            {
                                this.UpdateOrdersSendStaut(list);
                                list.Clear();
                            }
                        }
                        if (list.Count > 0)
                        {
                            this.UpdateOrdersSendStaut(list);
                        }
                    }
                }
                catch (Exception ex)
                {
                    Globals.AppendLog(ex.Message, null, "PreSaleJob", "");
                }
                finally
                {
                    JobParams.IsExcutePreSaleJob = false;
                }
            }
        }
示例#42
0
 public static void Broadcast(string eventType, object args)
 {
     Messenger.Broadcast <object>(eventType, args);
 }
示例#43
0
 //移除一事件侦听
 public static void RemoveListener(string eventType, Callback handler)
 {
     Messenger.RemoveListener(eventType, handler);
 }
    /*
     * public virtual void loadItem(GameItemDirectorData itemData) {
     *  StartCoroutine(LoadItemCo(itemData));
     * }
     *
     * public IEnumerator LoadItemCo(GameItemDirectorData itemData) {
     *  string modelPath = ContentPaths.appCacheVersionSharedPrefabLevelItems;
     *  string characterType = "coin";
     *
     *  if(type == GamePlayerItemType.Coin) {
     *      modelPath = Path.Combine(modelPath, "GamePlayerItemCoin");
     *      characterType = "coin";
     *  }
     *  else if(type == GamePlayerItemType.Health) {
     *      modelPath = Path.Combine(modelPath, "GamePlayerItemHealth");
     *      characterType = "health";
     *  }
     *
     *  // TODO data and pooling and network
     *
     *  UnityEngine.Object prefabObject = Resources.Load(modelPath);
     *  Vector3 spawnLocation = Vector3.zero;
     *  Vector3 currentPlayerPosition = Vector3.zero;
     *
     *  if(GameController.CurrentGamePlayerController != null) {
     *      if(GameController.CurrentGamePlayerController.gameObject != null) {
     *          currentPlayerPosition = GameController.CurrentGamePlayerController.gameObject.transform.position;
     *      }
     *  }
     *  spawnLocation.z = UnityEngine.Random.Range(currentPlayerPosition.z - 5f, currentPlayerPosition.z + 5f);
     *  spawnLocation.x = UnityEngine.Random.Range(currentPlayerPosition.x - 20f, currentPlayerPosition.x + 20f);
     *  spawnLocation.y = currentPlayerPosition.y + 100f;
     *
     *  spawnLocation = GameController.FilterBounds(spawnLocation);
     *
     *  LogUtil.Log("characterType:" + characterType);
     *
     *  if(prefabObject == null) {
     *      yield break;
     *  }
     *
     *  GameObject itemObject = Instantiate(prefabObject, spawnLocation, Quaternion.identity) as GameObject;
     *  itemObject.transform.parent = GameController.Instance.itemContainerObject.transform;
     *
     *  //GamePlayerController characterGamePlayerController = itemObject.GetComponentInChildren<GamePlayerController>();
     *  //characterGamePlayerController.transform.localScale = characterGamePlayerController.transform.localScale * character.scale;
     *
     *  // Wire up ai controller to setup player health, speed, attack etc.
     *
     *  //
     *  //characterGamePlayerController.runtimeData.
     *
     *
     *
     *  //if(characterGamePlayerController != null) {
     *  //  characterObject.Hide();
     *  //  yield return new WaitForEndOfFrame();
     *  // wire up properties
     *
     *
     *  // TODO network and player target
     *  //characterGamePlayerController.currentTarget = GameController.CurrentGamePlayerController.gameObject.transform;
     *  //characterGamePlayerController.ChangeContextState(GamePlayerContextState.ContextFollowAgent);
     *  //characterGamePlayerController.ChangePlayerState(GamePlayerControllerState.ControllerAgent);
     *  //  characterObject.Show();
     *
     *  // Add indicator to HUD
     *
     *  //  GameHUD.Instance.AddIndicator(characterObject, characterType);
     *
     *  //characterGamePlayerController.Init(GamePlayerControllerState.ControllerAgent);
     *  //}
     *
     *  //GameEnemyGoblin
     *  //GameEnemyRobotDinosaur
     *  //GameEnemyZombie
     * }
     */

    //public virtual void spawnItem(GamePlayerItemType type) {

    // Position

    // Get boundaries

    //Vector3
    //

    //}

    // MESSAGING

    public virtual void broadcastItemMessage(GameItemData item)
    {
        Messenger <GameItemData> .Broadcast(GameItemDirectorMessages.gameItemDirectorSpawnItem, item);
    }
示例#45
0
 public override void ActionPerformed()
 {
     Messenger.Broadcast("ActionCreateMatch");
 }
示例#46
0
    void Update()
    {
        timeSinceLastAttack += Time.deltaTime;

        float curHealth = GetComponent <Health>().CurrentHealth;

        if (curHealth <= 0)
        {
            MonsterHealth = 0;
            isDead        = true;
        }

        if (isDead)
        {
            player.AddExp(expValue);
            string nameOfMobToSend = monsterType == MonsterType.Normal ? NameOfMob : "BOSS" + NameOfMob;
            Messenger <string> .Broadcast("MonsterKilled", nameOfMobToSend);

            //Destroy all floating text attached to this
            FloatingTextGUI[] floatingTexts = GetComponentsInChildren <FloatingTextGUI>();
            for (int i = 0; i < floatingTexts.Length; i++)
            {
                Destroy(floatingTexts[i].gameObject, 0.5f);
            }

            DropLoot();
            Destroy(gameObject);
        }
        else
        {
            if (inCombat)
            {
                EnableCombat = true;
            }
            else
            {
                EnableCombat = false;
            }

            if (isStunned)
            {
                EnableCombat = false;
            }

            if (isUseless)
            {
                return;
            }

            if (EnableCombat)
            {
                float angleToTarget = Mathf.Atan2((player.transform.position.x - transform.position.x), (player.transform.position.z - transform.position.z)) * Mathf.Rad2Deg;
                transform.eulerAngles = new Vector3(0, angleToTarget, 0);

                if (Vector3.Distance(transform.position, player.transform.position) > 2)
                {
                    transform.position = Vector3.MoveTowards(transform.position, player.transform.position, RunSpeed * Time.deltaTime);
                }

                bool canDealDamage = timeSinceLastAttack > 1 / AttacksPerSecond ? true : false;

                if (canDealDamage)
                {
                    timeSinceLastAttack = 0;
                    PlayerHealth php = player.GetComponent <PlayerHealth>();
                    if (php == null)
                    {
                        Debug.Log("No player health");
                    }
                    DealDamage(php);
                    canDealDamage = false;
                }
            }
        }
    }
示例#47
0
 //On disable to stop events
 private void OnDisable()
 {
     Messenger.RemoveListener(GameEvents.PAUSE_EVENT, Pause);
     Messenger.RemoveListener(GameEvents.RESUME_EVENT, Resume);
 }
示例#48
0
 public void OnDestroy() => Messenger <float> .RemoveListener(GameEvent.SPEED_CHANGED, OnSpeedChanged);
示例#49
0
 //On enable to listen to events
 private void OnEnable()
 {
     Messenger.AddListener(GameEvents.PAUSE_EVENT, Pause);
     Messenger.AddListener(GameEvents.RESUME_EVENT, Resume);
 }
示例#50
0
 void Awake()
 {
     Messenger <float> .AddListener(GameEvent.SPEED_CHANGED, OnSpeedChaged);
 }
示例#51
0
 void OnEnable()
 {
     Messenger.AddListener(UIColorsMessages.uiColorsUpdate, OnColorsUpdateHandler);
 }
示例#52
0
 void onDestroy()
 {
     Messenger <float> .RemoveListener(GameEvent.SPEED_CHANGED, OnSpeedChaged);
 }
示例#53
0
 void OnEnable()
 {
     Messenger <bool> .AddListener("OnGameDone", OnGameDone);
 }
示例#54
0
    // EVENTS

    public override void OnEnable()
    {
        base.OnEnable();

        Messenger <string> .AddListener(ButtonEvents.EVENT_BUTTON_CLICK, OnButtonClickEventHandler);
    }
示例#55
0
 private void Awake()
 {
     Messenger.AddListener(GameEvent.PLAYER_STOP, OnPlayerStop);
     Messenger.AddListener(GameEvent.PLAYER_GO, OnPlayerGo);
     agent = GetComponent <NavMeshAgent>();
 }
示例#56
0
 void SendErrorSound()
 {
     Messenger.Broadcast <string>(EventCode.AUDIO_EFFECT_PLAY, AudioCode.SYSTEM_ERROR);
 }
示例#57
0
 protected void OnDbEntityValidationException(DbEntityValidationException e)
 {
     Messenger?.Send(CommandName.ShowDbEntityValidationException, e);
 }
示例#58
0
 private void OnDestroy()
 {
     Messenger.RemoveListener(GameEvent.JUMP, Jump);
 }
示例#59
0
 //触发消息广播
 public static void Broadcast(string eventType)
 {
     Messenger.Broadcast(eventType);
 }
示例#60
0
 public static void RemoveListener2(string eventType, Callback <object> handler)
 {
     Messenger.RemoveListener <object>(eventType, handler);
 }