From ada06910dc8115973d3d23b98c4d90a3e722b625 Mon Sep 17 00:00:00 2001
From: GoldenTails <milestailsprower101n2@gmail.com>
Date: Sat, 23 May 2020 09:50:35 -0500
Subject: [PATCH] Expose P_MovePlayer to Lua.

---
 src/lua_baselib.c | 12 ++++++++++++
 src/p_local.h     |  1 +
 src/p_user.c      |  2 +-
 3 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/src/lua_baselib.c b/src/lua_baselib.c
index ba90912cf..23aa060fe 100644
--- a/src/lua_baselib.c
+++ b/src/lua_baselib.c
@@ -1360,6 +1360,17 @@ static int lib_pSpawnSkidDust(lua_State *L)
 	return 0;
 }
 
+static int lib_pMovePlayer(lua_State *L)
+{
+	player_t *player = *((player_t **)luaL_checkudata(L, 1, META_PLAYER));
+	NOHUD
+	INLEVEL
+	if (!player)
+		return LUA_ErrInvalid(L, "player_t");
+	P_MovePlayer(player);
+	return 0;
+}
+
 static int lib_pDoPlayerFinish(lua_State *L)
 {
 	player_t *player = *((player_t **)luaL_checkudata(L, 1, META_PLAYER));
@@ -3386,6 +3397,7 @@ static luaL_Reg lib[] = {
 	{"P_BlackOw",lib_pBlackOw},
 	{"P_ElementalFire",lib_pElementalFire},
 	{"P_SpawnSkidDust", lib_pSpawnSkidDust},
+	{"P_MovePlayer",lib_pMovePlayer},
 	{"P_DoPlayerFinish",lib_pDoPlayerFinish},
 	{"P_DoPlayerExit",lib_pDoPlayerExit},
 	{"P_InstaThrust",lib_pInstaThrust},
diff --git a/src/p_local.h b/src/p_local.h
index 9873a20af..b6c34f357 100644
--- a/src/p_local.h
+++ b/src/p_local.h
@@ -177,6 +177,7 @@ void P_BlackOw(player_t *player);
 void P_ElementalFire(player_t *player, boolean cropcircle);
 void P_SpawnSkidDust(player_t *player, fixed_t radius, boolean sound);
 
+void P_MovePlayer(player_t *player);
 void P_DoPityCheck(player_t *player);
 void P_PlayerThink(player_t *player);
 void P_PlayerAfterThink(player_t *player);
diff --git a/src/p_user.c b/src/p_user.c
index d426277ff..7dd888117 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -7889,7 +7889,7 @@ static void P_SkidStuff(player_t *player)
 
 //
 // P_MovePlayer
-static void P_MovePlayer(player_t *player)
+void P_MovePlayer(player_t *player)
 {
 	ticcmd_t *cmd;
 	INT32 i;
-- 
GitLab