Beispiel #1
0
        public override void OnEnter(BlackBoard blackboard)
        {
            LogEnter();
            EntityExportToTargetData data = EventDataFactory.Pop <EntityExportToTargetData>();

            _export_to_target_damage(data, blackboard as EntityBlackBoard);
            EventDataFactory.Push(data);
            Finish();
        }
Beispiel #2
0
        public string _effectName;             //特效名称
        //public GameObject bing_obj;            //绑定的GameObject
        public override void OnEnter(BlackBoard blackboard)
        {
            LogEnter();
            PlayEffectEventSkill data = EventDataFactory.Pop <PlayEffectEventSkill>();

            data.effect_name = _effectName;
            //data.bing_obj = bing_obj;
            RaiseEvent(E_EntityInTrigger.PLAY_EFFECT, data);
            Finish();
        }
Beispiel #3
0
        public float _degree;        //角度

        #endregion

        #region override

        public override void OnEnter(BlackBoard blackboard)
        {
            LogEnter();
            EntityFindTargetData data = EventDataFactory.Pop <EntityFindTargetData>();

            data.degree = _degree;
            data.radius = _radius;
            _find_target(blackboard as EntityBlackBoard, data);
            Finish();
        }
Beispiel #4
0
 public void RaiseEvent(E_EntityInTrigger key, EventSetData objInfo)
 {
     SkillLog.Assert(_context != null && _context._owner != null, "SequenceLeafNode RaiseEvent:[{0}] Fail", key);
     if (_context == null || _context._owner == null)
     {
         return;
     }
     _context._owner.RaiseEvent(key, objInfo);
     EventDataFactory.Push(objInfo);
 }
Beispiel #5
0
        public float _distance;                           // 完成的最小距离

        public override void OnEnter(BlackBoard blackboard)
        {
            LogEnter();
            MoveToTargetPositionData data = EventDataFactory.Pop <MoveToTargetPositionData>();

            data.speed    = 10f;
            data.distance = 1;
            RaiseEvent(E_EntityInTrigger.MOVE_TO_TARGET_POSITION, data);
            Finish();
        }
        public void EventDataFactory_BuildFrom()
        {
            var data = new MessageData {
                Message = "this is a test"
            };

            var factory   = new EventDataFactory();
            var eventData = factory.BuildFrom(data);

            Assert.That(eventData["Message"].Equals("this is a test"));
        }
Beispiel #7
0
        public void EventDataConverter_Dictionaries_Simple()
        {
            var input = new Dictionary <string, string>
            {
                { "first", "one" },
                { "second", "two" }
            };
            var factory = new EventDataFactory();
            var data    = factory.BuildFrom(input);

            data.ToString().MatchSnapshot();
        }
Beispiel #8
0
        public override void OnEnter(EntityBlackBoard blackboard)
        {
            LogEnter();

            PlaySoundEventData data = EventDataFactory.Pop <PlaySoundEventData>();

            data.sound_name = sound_name;
            data.position   = _position;

            RaiseEvent(E_EntityInTrigger.PLAY_SOUND, data);
            Finish();
        }
Beispiel #9
0
        public override void OnEnter(BlackBoard blackboard)
        {
            //LogEnter();
            PlayCameraRadialBlurEffectEventSkill data = EventDataFactory.Pop <PlayCameraRadialBlurEffectEventSkill>();

            data.duration = duration;
            data.fade_in  = fade_in;
            data.fade_out = fade_out;
            data.strength = strength;

            GameEventSystem.Instance.RaiseEvent(E_GLOBAL_EVT.camera_effect_radial_blur, data);
            Finish();
        }
        public void EventDataFactory_Dictionary()
        {
            var data = new Dictionary <string, object>
            {
                ["Id"]      = 1,
                ["Message"] = "this is a test"
            };
            var factory   = new EventDataFactory();
            var eventData = factory.BuildFrom(data);

            Assert.That(eventData["Id"].Equals(1));
            Assert.That(eventData["Message"].Equals("this is a test"));
        }
        public void Process()
        {
            _count += 1;
            var input = new
            {
                Date    = DateTime.Now,
                Message = $"RecurrinHandler count: {_count}"
            };

            var factory = new EventDataFactory();
            var data    = factory.BuildFrom(input);

            _server.Publish(new Event(PipelineId, data));
        }
        public void EventDataFactory_Add_Expression()
        {
            var data = new MessageData {
                Message = "this is a test"
            };
            var three = 3;

            var factory   = new EventDataFactory();
            var eventData = factory.BuildFrom(data)
                            .Add("two", "this is 2")
                            .Add(() => three);

            Assert.That(eventData["Message"].Equals("this is a test"));
            Assert.That(eventData["two"].Equals("this is 2"));
            Assert.That(eventData["three"].Equals("3"));
        }
        public void Formatter_NestedObject_Complex()
        {
            var input = new
            {
                Sub = new
                {
                    Value = "nested value",
                    Last  = new
                    {
                        Id = Guid.Empty
                    }
                },
                Message = "The message"
            };
            var factory = new EventDataFactory();
            var data    = factory.BuildFrom(input);

            data.ToString().MatchSnapshot();
        }
Beispiel #14
0
        public void EventDataInputHandler_Workflow()
        {
            var pipelineId = Guid.NewGuid().ToString();

            var logHandler = new LogQueueHandler();

            ProcessingServer.Server.SetupPipeline(pipelineId, s =>
            {
                s.Register(() =>
                {
                    var pipeline = new EventPipeline();
                    pipeline.AddHandler(new ConsoleOutputHandler());
                    pipeline.AddHandler(logHandler);

                    return(pipeline);
                });

                s.Register(new EventDataInputHandler());
            });


            var portalId = "portal";


            var factory   = new EventDataFactory();
            var eventData = factory.BuildFrom(new LogMessage {
                Message = "StaticServer_NewPipelinePerEvent2"
            })
                            .Add(() => portalId);

            var client = new EventDispatcher();

            client.Process(pipelineId, eventData);

            ProcessingServer.Server.WaitAll(pipelineId);

            Assert.AreEqual(logHandler.Log.First(), "[Title -> ] [Message -> StaticServer_NewPipelinePerEvent2] [Level -> ] [portalId -> portal] ");
        }
Beispiel #15
0
        public void Gaucho_Filter()
        {
            var handler = new FilterOutputHandler(new EventDataConverter
            {
                new PropertyFilter("Level", "dst_lvl"),
                new PropertyFilter("Message")
            });

            var input = new LogMessage
            {
                Level   = "Info",
                Message = "The message",
                Title   = "title"
            };
            var factory = new EventDataFactory();
            var data    = factory.BuildFrom(input);

            var @event = new Event(Guid.NewGuid().ToString(), data);

            handler.Handle(@event);

            Assert.That(handler.Log.First() == "[dst_lvl -> Info] [Message -> The message] ");
        }
Beispiel #16
0
        public void Gaucho_Filter_PropertyFormatter()
        {
            var converter = new EventDataConverter
            {
                new PropertyFilter("Level", "lvl"),
                new PropertyFilter("Message"),
                new FormatFilter("prop", "${lvl}_error_${Message}")
            };

            var input = new LogMessage
            {
                Level   = "Info",
                Message = "The message",
                Title   = "title"
            };
            var factory = new EventDataFactory();
            var data    = factory.BuildFrom(input);

            data = converter.Convert(data);
            var formatted = converter.Format("prop", data);

            Assert.AreEqual(formatted, "Info_error_The message");
        }
        public void EventDataFactory_Complex()
        {
            var data = new ComplexData
            {
                Index       = 1,
                MessageData = new MessageData
                {
                    Message = "test"
                },
                Inner = new ComplexData
                {
                    Index       = 2,
                    MessageData = new MessageData
                    {
                        Message = "inner"
                    }
                }
            };

            var factory   = new EventDataFactory();
            var eventData = factory.BuildFrom(data);

            eventData.MatchSnapshot();
        }
Beispiel #18
0
 public static void Raise(BaseEntity target, E_EntityInTrigger key, EventSetData objInfo)
 {
     target.RaiseEvent(key, objInfo);
     EventDataFactory.Push(objInfo);
 }