示例#1
0
        internal WIGInternalImpl(Engine engine, LuaDataFactory dataFactory)
        {
            this._engine      = engine;
            this._dataFactory = dataFactory;
            this._mathHelper  = new GeoMathHelper(dataFactory);
            LuaDataContainer wiginternal = dataFactory.CreateContainerAt("WIGInternal");

            // WIGInternal Lua hooks: UI-related events
            AddMethodToTable(wiginternal, "LogMessage");
            AddMethodToTable(wiginternal, "MessageBox");
            AddMethodToTable(wiginternal, "GetInput");
            AddMethodToTable(wiginternal, "NotifyOS");
            AddMethodToTable(wiginternal, "ShowScreen");
            AddMethodToTable(wiginternal, "ShowStatusText");

            // WIGInternal Lua hooks: gameplay-related events
            AddMethodToTable(wiginternal, "AttributeChangedEvent");
            AddMethodToTable(wiginternal, "CartridgeEvent");
            AddMethodToTable(wiginternal, "CommandChangedEvent");
            AddMethodToTable(wiginternal, "InventoryEvent");
            AddMethodToTable(wiginternal, "MediaEvent");
            AddMethodToTable(wiginternal, "TimerEvent");
            AddMethodToTable(wiginternal, "ZoneStateChangedEvent");

            // WIGInternal Lua hooks: internal functions
            AddMethodToTable(wiginternal, "IsPointInZone", "IsPointInZoneLua");
            AddMethodToTable(wiginternal, "VectorToZone", "VectorToZoneLua");
            AddMethodToTable(wiginternal, "VectorToSegment", "VectorToSegmentLua");
            AddMethodToTable(wiginternal, "VectorToPoint", "VectorToPointLua");
            AddMethodToTable(wiginternal, "TranslatePoint", "TranslatePointLua");

            // Marks package WIGInternal as loaded
            dataFactory.SetContainerAt("package.loaded.WIGInternal", wiginternal);
            dataFactory.SetContainerAt("package.preload.WIGInternal", wiginternal);

            // Loads the Wherigo LUA engine.
            dataFactory.LoadAndRunEngine();
        }
示例#2
0
		internal WIGInternalImpl(Engine engine, LuaDataFactory dataFactory)
		{
			this._engine = engine;
			this._dataFactory = dataFactory;
			this._mathHelper = new GeoMathHelper(dataFactory);
			LuaDataContainer wiginternal = dataFactory.CreateContainerAt("WIGInternal");

			// WIGInternal Lua hooks: UI-related events
			AddMethodToTable(wiginternal, "LogMessage");
			AddMethodToTable(wiginternal, "MessageBox");
			AddMethodToTable(wiginternal, "GetInput");
			AddMethodToTable(wiginternal, "NotifyOS");
			AddMethodToTable(wiginternal, "ShowScreen");
			AddMethodToTable(wiginternal, "ShowStatusText");

			// WIGInternal Lua hooks: gameplay-related events
			AddMethodToTable(wiginternal, "AttributeChangedEvent");
			AddMethodToTable(wiginternal, "CartridgeEvent");
			AddMethodToTable(wiginternal, "CommandChangedEvent");
			AddMethodToTable(wiginternal, "InventoryEvent");
			AddMethodToTable(wiginternal, "MediaEvent");
			AddMethodToTable(wiginternal, "TimerEvent");
			AddMethodToTable(wiginternal, "ZoneStateChangedEvent");

			// WIGInternal Lua hooks: internal functions
			AddMethodToTable(wiginternal, "IsPointInZone", "IsPointInZoneLua");
			AddMethodToTable(wiginternal, "VectorToZone", "VectorToZoneLua");
			AddMethodToTable(wiginternal, "VectorToSegment", "VectorToSegmentLua");
			AddMethodToTable(wiginternal, "VectorToPoint", "VectorToPointLua");
			AddMethodToTable(wiginternal, "TranslatePoint", "TranslatePointLua");

			// Marks package WIGInternal as loaded
			dataFactory.SetContainerAt("package.loaded.WIGInternal", wiginternal);
			dataFactory.SetContainerAt("package.preload.WIGInternal", wiginternal);

			// Loads the Wherigo LUA engine.
			dataFactory.LoadAndRunEngine();
		}