ソースを参照

Implement cursor_xy() and set_cursor_xy() in lua binds

Daniele Bartolini 12 年 前
コミット
3aa78866f1
1 ファイル変更18 行追加0 行削除
  1. 18 0
      lua/MouseBinds.cpp

+ 18 - 0
lua/MouseBinds.cpp

@@ -37,11 +37,27 @@ int32_t mouse_button_released(lua_State* L)
 //-----------------------------------------------------------------------------
 int32_t mouse_cursor_xy(lua_State* L)
 {
+	LuaStack stack(L);
+
+	Vec2* xy = next_vec2();
+
+	*xy = device()->mouse()->cursor_xy();
+
+	stack.push_vec2(xy);
+
+	return 1;
 }
 
 //-----------------------------------------------------------------------------
 int32_t mouse_set_cursor_xy(lua_State* L)
 {
+	LuaStack stack(L);
+
+	Vec2* xy = stack.get_vec2(1);
+
+	device()->mouse()->set_cursor_xy(*xy);
+
+	return 0;
 }
 
 //-----------------------------------------------------------------------------
@@ -76,6 +92,8 @@ void load_mouse(LuaEnvironment& env)
 {
 	env.load_module_function("Mouse", "button_pressed",			mouse_button_pressed);
 	env.load_module_function("Mouse", "button_released",		mouse_button_released);
+	env.load_module_function("Mouse", "cursor_xy",				mouse_cursor_xy);
+	env.load_module_function("Mouse", "set_cursor_xy",			mouse_set_cursor_xy);
 	env.load_module_function("Mouse", "cursor_relative_xy",		mouse_cursor_relative_xy);
 	env.load_module_function("Mouse", "set_cursor_relative_xy",	mouse_set_cursor_relative_xy);
 }