public void TestTrackerSendEvent()
        {
            IEmitter e1 = new BaseEmitter();
            Tracker  t  = new Tracker(e1, "aNamespace", "aAppId");

            t.StartEventTracking();

            t.Track(new PageView().SetPageTitle("title").SetPageUrl("url").SetReferrer("ref").SetTimestamp(1234567890).SetEventId("event-id-custom").Build());
            t.Track(new PageView().SetPageTitle("title").SetPageUrl("url").SetReferrer("ref").SetTimestamp(1234567890).SetEventId("event-id-custom").Build());

            BaseEmitter te1 = (BaseEmitter)t.GetEmitter();

            Assert.AreEqual(2, te1.payloads.Count);

            foreach (TrackerPayload payload in te1.payloads)
            {
                Dictionary <string, object> dict = payload.GetDictionary();
                Assert.AreEqual(SnowplowTracker.Version.VERSION, dict[Constants.TRACKER_VERSION]);
                Assert.AreEqual("1234567890", dict[Constants.TIMESTAMP]);
                Assert.AreEqual("event-id-custom", dict[Constants.EID]);
                Assert.AreEqual("aNamespace", dict[Constants.NAMESPACE]);
                Assert.AreEqual("aAppId", dict[Constants.APP_ID]);
                Assert.AreEqual("mob", dict[Constants.PLATFORM]);
                Assert.AreEqual(Constants.EVENT_PAGE_VIEW, dict[Constants.EVENT]);
                Assert.AreEqual("title", dict[Constants.PAGE_TITLE]);
                Assert.AreEqual("url", dict[Constants.PAGE_URL]);
                Assert.AreEqual("ref", dict[Constants.PAGE_REFR]);
            }
        }
Exemple #2
0
        public BaseWave(uint Wave)
            : base($"Wave{Wave}")
        {
            this.Wave = Wave;

            Data     = LocalData.WaveList[Wave];
            Emitter_ = EmitterManager.AddEmitter(new NpcRectEmitter(Name)
            {
                Team             = CombatTeam.B,
                TriggerCount     = -1,                       //Data.TriggerCount,
                EmittedCountAttr = new EmitterRandInt(1, 5), //Data.EmitterCount,
                Interval         = 1f,                       //Data.Interval,
                IsAlive          = true,
                IsPause          = false,
                Position         = new Vector2(Configure.WindowLeft + 120, 0),
                SpeedAttr        = new EmitterRandFloat(Data.Speed * 0.8f, Data.Speed * 1.2f),
                HpAttr           = new EmitterRandFloat(Data.Hp),
                DamageAttr       = new EmitterRandFloat(Data.Damage),
                GemAttr          = new EmitterRandInt(Data.Gem),
                OffsetAttr       = new EmitterRandVector2(
                    new Vector2(-100, -Configure.WindowHeight / 2 + 100),
                    new Vector2(100, Configure.WindowHeight / 2 - 100)),
            });
            Emitter_.OnTrigger += (Count) => RemainingCount_ += Count;
            //Emitter_.AtOnce();

            EventManager.Register <NpcDieEvent>(OnNpcDieEvent);
        }
Exemple #3
0
 public override bool EmitFromStack(EmitContext ec)
 {
     ec.EmitComment("Pop Reference Parameter @BP " + Offset);
     if (InitialIndex != Offset)
     {
         BaseEmitter.Offset = InitialIndex;
         return(BaseEmitter.ValueOfStackAccess(ec, Offset - InitialIndex));
     }
     else
     {
         BaseEmitter.Offset = Offset;
         return(BaseEmitter.ValueOfStack(ec));
     }
 }
Exemple #4
0
        public override bool EmitToStack(EmitContext ec)
        {
            ec.EmitComment("Push Reference Parameter @ " + BaseEmitter.ToString() + " " + InitialIndex.ToString() + "  " + Offset);


            if (InitialIndex != Offset)
            {
                BaseEmitter.Offset = InitialIndex;
                return(BaseEmitter.ValueOfAccess(ec, Offset - InitialIndex));
            }
            else
            {
                BaseEmitter.Offset = Offset;
                return(BaseEmitter.ValueOf(ec));
            }
        }
Exemple #5
0
 public static void AddEmitter(BaseEmitter emitter)
 {
     system.AddEmitter(emitter, Time.FromSeconds(emitter.EmitterDuration));
 }