mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
P_AddPlayerScore: negative values remove points
This commit is contained in:
parent
0c7eb20e3d
commit
235d107f50
3 changed files with 7 additions and 4 deletions
|
|
@ -1097,7 +1097,7 @@ static int lib_pPlayerZMovement(lua_State *L)
|
||||||
static int lib_pAddPlayerScore(lua_State *L)
|
static int lib_pAddPlayerScore(lua_State *L)
|
||||||
{
|
{
|
||||||
player_t *player = *((player_t **)luaL_checkudata(L, 1, META_PLAYER));
|
player_t *player = *((player_t **)luaL_checkudata(L, 1, META_PLAYER));
|
||||||
UINT32 amount = (UINT32)luaL_checkinteger(L, 2);
|
INT32 amount = (UINT32)luaL_checkinteger(L, 2);
|
||||||
NOHUD
|
NOHUD
|
||||||
INLEVEL
|
INLEVEL
|
||||||
if (!player)
|
if (!player)
|
||||||
|
|
|
||||||
|
|
@ -146,7 +146,7 @@ extern consvar_t cv_tilting;
|
||||||
|
|
||||||
extern fixed_t t_cam_dist[MAXSPLITSCREENPLAYERS], t_cam_height[MAXSPLITSCREENPLAYERS], t_cam_rotate[MAXSPLITSCREENPLAYERS];
|
extern fixed_t t_cam_dist[MAXSPLITSCREENPLAYERS], t_cam_height[MAXSPLITSCREENPLAYERS], t_cam_rotate[MAXSPLITSCREENPLAYERS];
|
||||||
|
|
||||||
void P_AddPlayerScore(player_t *player, UINT32 amount);
|
void P_AddPlayerScore(player_t *player, INT32 amount);
|
||||||
void P_ResetCamera(player_t *player, camera_t *thiscam);
|
void P_ResetCamera(player_t *player, camera_t *thiscam);
|
||||||
boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam);
|
boolean P_TryCameraMove(fixed_t x, fixed_t y, camera_t *thiscam);
|
||||||
void P_SlideCameraMove(camera_t *thiscam);
|
void P_SlideCameraMove(camera_t *thiscam);
|
||||||
|
|
|
||||||
|
|
@ -570,7 +570,7 @@ void P_GivePlayerLives(player_t *player, INT32 numlives)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Adds to the player's score
|
// Adds to the player's score
|
||||||
void P_AddPlayerScore(player_t *player, UINT32 amount)
|
void P_AddPlayerScore(player_t *player, INT32 amount)
|
||||||
{
|
{
|
||||||
if (!((gametyperules & GTR_POINTLIMIT)))
|
if (!((gametyperules & GTR_POINTLIMIT)))
|
||||||
return;
|
return;
|
||||||
|
|
@ -578,8 +578,11 @@ void P_AddPlayerScore(player_t *player, UINT32 amount)
|
||||||
if (player->exiting) // srb2kart
|
if (player->exiting) // srb2kart
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
// Don't underflow.
|
||||||
// Don't go above MAXSCORE.
|
// Don't go above MAXSCORE.
|
||||||
if (player->roundscore + amount < MAXSCORE)
|
if (amount < 0 && (UINT32)-amount > player->roundscore)
|
||||||
|
player->roundscore = 0;
|
||||||
|
else if (player->roundscore + amount < MAXSCORE)
|
||||||
player->roundscore += amount;
|
player->roundscore += amount;
|
||||||
else
|
else
|
||||||
player->roundscore = MAXSCORE;
|
player->roundscore = MAXSCORE;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue