mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-04-26 03:51:50 +00:00
Fix bug that caused bots to go into ring debt a lot
This commit is contained in:
parent
ffaa4e2aa2
commit
dc1fbb2e9a
4 changed files with 6 additions and 6 deletions
|
|
@ -909,7 +909,7 @@ static void K_BotItemFlame(player_t *player, ticcmd_t *cmd)
|
||||||
--------------------------------------------------*/
|
--------------------------------------------------*/
|
||||||
static void K_BotItemRings(player_t *player, ticcmd_t *cmd)
|
static void K_BotItemRings(player_t *player, ticcmd_t *cmd)
|
||||||
{
|
{
|
||||||
INT32 saferingsval = 16 - K_GetKartRingPower(player);
|
INT32 saferingsval = 16 - K_GetKartRingPower(player, false);
|
||||||
|
|
||||||
if (player->speed < K_GetKartSpeed(player, false)/2 // Being slowed down too much
|
if (player->speed < K_GetKartSpeed(player, false)/2 // Being slowed down too much
|
||||||
|| player->kartstuff[k_speedboost] > (FRACUNIT/5)) // Have another type of boost (tethering)
|
|| player->kartstuff[k_speedboost] > (FRACUNIT/5)) // Have another type of boost (tethering)
|
||||||
|
|
|
||||||
|
|
@ -6939,11 +6939,11 @@ void K_UpdateDistanceFromFinishLine(player_t *const player)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
INT32 K_GetKartRingPower(player_t *player)
|
INT32 K_GetKartRingPower(player_t *player, boolean boosted)
|
||||||
{
|
{
|
||||||
INT32 ringPower = ((9 - player->kartspeed) + (9 - player->kartweight)) / 2;
|
INT32 ringPower = ((9 - player->kartspeed) + (9 - player->kartweight)) / 2;
|
||||||
|
|
||||||
if (K_PlayerUsesBotMovement(player))
|
if (boosted == true && K_PlayerUsesBotMovement(player))
|
||||||
{
|
{
|
||||||
// Double for Lv. 9
|
// Double for Lv. 9
|
||||||
ringPower += (player->botvars.difficulty * ringPower) / MAXBOTDIFFICULTY;
|
ringPower += (player->botvars.difficulty * ringPower) / MAXBOTDIFFICULTY;
|
||||||
|
|
|
||||||
|
|
@ -69,7 +69,7 @@ void K_UpdateHnextList(player_t *player, boolean clean);
|
||||||
void K_DropHnextList(player_t *player, boolean keepshields);
|
void K_DropHnextList(player_t *player, boolean keepshields);
|
||||||
void K_RepairOrbitChain(mobj_t *orbit);
|
void K_RepairOrbitChain(mobj_t *orbit);
|
||||||
player_t *K_FindJawzTarget(mobj_t *actor, player_t *source);
|
player_t *K_FindJawzTarget(mobj_t *actor, player_t *source);
|
||||||
INT32 K_GetKartRingPower(player_t *player);
|
INT32 K_GetKartRingPower(player_t *player, boolean boosted);
|
||||||
void K_UpdateDistanceFromFinishLine(player_t *const player);
|
void K_UpdateDistanceFromFinishLine(player_t *const player);
|
||||||
boolean K_CheckPlayersRespawnColliding(INT32 playernum, fixed_t x, fixed_t y);
|
boolean K_CheckPlayersRespawnColliding(INT32 playernum, fixed_t x, fixed_t y);
|
||||||
INT16 K_GetKartTurnValue(player_t *player, INT16 turnvalue);
|
INT16 K_GetKartTurnValue(player_t *player, INT16 turnvalue);
|
||||||
|
|
|
||||||
|
|
@ -4159,7 +4159,7 @@ void A_AttractChase(mobj_t *actor)
|
||||||
angle_t offset = FixedAngle(18<<FRACBITS);
|
angle_t offset = FixedAngle(18<<FRACBITS);
|
||||||
|
|
||||||
// Base add is 3 tics for 9,9, adds 1 tic for each point closer to the 1,1 end
|
// Base add is 3 tics for 9,9, adds 1 tic for each point closer to the 1,1 end
|
||||||
actor->target->player->kartstuff[k_ringboost] += K_GetKartRingPower(actor->target->player)+3;
|
actor->target->player->kartstuff[k_ringboost] += K_GetKartRingPower(actor->target->player, true) + 3;
|
||||||
S_StartSound(actor->target, sfx_s1b5);
|
S_StartSound(actor->target, sfx_s1b5);
|
||||||
|
|
||||||
sparkle = P_SpawnMobj(actor->target->x, actor->target->y, actor->target->z, MT_RINGSPARKS);
|
sparkle = P_SpawnMobj(actor->target->x, actor->target->y, actor->target->z, MT_RINGSPARKS);
|
||||||
|
|
@ -4187,7 +4187,7 @@ void A_AttractChase(mobj_t *actor)
|
||||||
if (actor->extravalue1 >= 16)
|
if (actor->extravalue1 >= 16)
|
||||||
{
|
{
|
||||||
if (!P_GivePlayerRings(actor->target->player, 1)) // returns 0 if addition failed
|
if (!P_GivePlayerRings(actor->target->player, 1)) // returns 0 if addition failed
|
||||||
actor->target->player->kartstuff[k_ringboost] += K_GetKartRingPower(actor->target->player)+3;
|
actor->target->player->kartstuff[k_ringboost] += K_GetKartRingPower(actor->target->player, true) + 3;
|
||||||
|
|
||||||
if (actor->cvmem) // caching
|
if (actor->cvmem) // caching
|
||||||
S_StartSound(actor->target, sfx_s1c5);
|
S_StartSound(actor->target, sfx_s1c5);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue