public void doEventWithTriggerTest()
        {
            SyncTriggerSystem system = createSystem();
            int a = 0, b = 0;

            system.regTrigBfr("TestEvent", new SyncTrigger(game =>
            {
                return(game.trigger.currentTask.context.hasVar("b"));
            }, game =>
            {
                b = game.trigger.currentTask.context.getVar <int>("b");
            }));
            system.regTrigAft("TestEvent", new SyncTrigger(game =>
            {
                return(game.trigger.currentTask.context.hasVar("a"));
            }, game =>
            {
                a = game.trigger.currentTask.context.getVar <int>("a");
            }));
            system.doEvent(new EventContext("TestEvent")
            {
                { "a", 1 },
                { "b", 2 }
            });

            Assert.AreEqual(2, b);
            Assert.AreEqual(1, a);
        }
        public void doEventWithPriorTrigTest()
        {
            SyncTriggerSystem system = createSystem();
            int i = 0;

            system.regTrigBfr("TestEvent", new SyncTrigger(game =>
            {
                return(1);
            }, game =>
            {
                if (i == 1)
                {
                    i = 2;
                }
            }));
            system.regTrigBfr("TestEvent", new SyncTrigger(game =>
            {
                return(2);
            }, game =>
            {
                if (i == 0)
                {
                    i = 1;
                }
            }));
            system.doEvent(new EventContext("TestEvent"), game =>
            {
                if (i == 2)
                {
                    i = 3;
                }
            });
            Assert.AreEqual(3, i);
        }
        public void doEventTest()
        {
            SyncTriggerSystem system = createSystem();
            int i = 0;

            system.doEvent(new EventContext("Test")
            {
                { "i", 1 }
            }, game =>
            {
                i = game.trigger.currentTask.context.getVar <int>("i");
            });
            Assert.AreEqual(1, i);
        }