public static void AddIoLibrary(LuaContext Context) { dynamic io = LuaObject.NewTable(); FileMetatable.__index = LuaObject.NewTable(); FileMetatable.__index.write = (LuaFunction)write; FileMetatable.__index.close = (LuaFunction)close; FileMetatable.__index.flush = (LuaFunction)flush; FileMetatable.__index.seek = (LuaFunction)seek; FileMetatable.__index.read = (LuaFunction)read; io.open = (LuaFunction)io_open; io.type = (LuaFunction)io_type; io.input = (LuaFunction)io_input; io.output = (LuaFunction)io_output; io.temp = (LuaFunction)io_temp; io.flush = (LuaFunction)io_flush; io.write = (LuaFunction)io_write; io.read = (LuaFunction)io_read; currentInput = CreateFileObject(Console.OpenStandardInput()); currentOutput = CreateFileObject(Console.OpenStandardOutput(), true); io.stdin = currentInput; io.stdout = currentOutput; io.stderr = CreateFileObject(Console.OpenStandardError(), true); Context.Set("io", io); }
public static void AddMathLibrary(LuaContext Context) { dynamic math = LuaObject.NewTable(); math.abs = (LuaFunction)math_abs; math.acos = (LuaFunction)math_acos; math.asin = (LuaFunction)math_asin; math.atan = (LuaFunction)math_atan; math.atan2 = (LuaFunction)math_atan2; math.ceil = (LuaFunction)math_ceil; math.cos = (LuaFunction)math_cos; math.cosh = (LuaFunction)math_cosh; math.exp = (LuaFunction)math_exp; math.floor = (LuaFunction)math_floor; math.log = (LuaFunction)math_log; math.max = (LuaFunction)math_max; math.min = (LuaFunction)math_min; math.pow = (LuaFunction)math_pow; math.sin = (LuaFunction)math_sin; math.sinh = (LuaFunction)math_sinh; math.sqrt = (LuaFunction)math_sqrt; math.tan = (LuaFunction)math_tan; math.tanh = (LuaFunction)math_tanh; math.pi = Math.PI; Context.Set("math", math); }