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]); } }
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); }
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)); } }
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)); } }
public static void AddEmitter(BaseEmitter emitter) { system.AddEmitter(emitter, Time.FromSeconds(emitter.EmitterDuration)); }