Example #1
0
void CustomColumns::Init() const
{
	lua_.reset(new Lua());

	InitializeLua(*lua_);

	DefRoundFn(*lua_);
	DefGlobalImgTable(*lua_);

	for (size_t i= 0; i < CUST_COLUMNS; ++i)
	{
		const CustomColumnDef& c= columns_[i];

		std::string expr;
		TStringToAnsiString(c.expression_, expr);
		std::ostringstream ost;
		ost << "function column_fn_" << i << "_(img) " + expr + "\r\nend";

		const char* msg= 0;
		if (lua_->LoadBuffer(ost.str().c_str(), msg))
		{
			lua_->Call(0);
			lua_->PopTop();
		}
	}
}
AssetBuilder::AssetBuilder(const std::string & i_AuthoredAssetDir, 
							const std::string & i_BuiltAssetDir, 
							const std::string & i_ScriptDir,
							const std::string & i_RelativeScriptPath) :
	mAuthoredAssetDir(i_AuthoredAssetDir), 
	mBuiltAssetDir(i_BuiltAssetDir)
{
	if (!InitializeLua(i_ScriptDir, i_RelativeScriptPath))
	{
		assert(false);
	}
}
AssetBuilder::AssetBuilder()
{
	if (!GetAssetBuilderEnvironmentVariable("AuthoredAssetDir", mAuthoredAssetDir))
	{
		assert(false);
	}
	if (!GetAssetBuilderEnvironmentVariable("BuiltAssetDir", mBuiltAssetDir))
	{
		assert(false);
	}

	std::string scriptDir;
	if (!GetAssetBuilderEnvironmentVariable("ScriptDir", scriptDir))
	{
		assert(false);
	}

	if (!InitializeLua(scriptDir, "BuildAssets.lua"))
	{
		assert(false);
	}
}