Small Cleanup
Make itemodds compile as C, remove .vscode
This commit is contained in:
parent
7b58b8b488
commit
1c52947194
14 changed files with 59 additions and 77 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -19,6 +19,7 @@ Win32_LIB_ASM_Release
|
|||
*.opendb
|
||||
*.kate-swp
|
||||
/.vs
|
||||
/.vscode
|
||||
/debian
|
||||
/assets/debian
|
||||
/make
|
||||
|
|
|
|||
16
.vscode/settings.json
vendored
16
.vscode/settings.json
vendored
|
|
@ -1,16 +0,0 @@
|
|||
{
|
||||
"files.associations": {
|
||||
"charconv": "c",
|
||||
"chrono": "c",
|
||||
"optional": "c",
|
||||
"format": "c",
|
||||
"ranges": "c",
|
||||
"ratio": "c",
|
||||
"system_error": "c",
|
||||
"array": "c",
|
||||
"functional": "c",
|
||||
"tuple": "c",
|
||||
"type_traits": "c",
|
||||
"utility": "c"
|
||||
}
|
||||
}
|
||||
|
|
@ -128,7 +128,7 @@ k_bot.cpp
|
|||
k_botitem.cpp
|
||||
k_botsearch.cpp
|
||||
k_cluster.cpp
|
||||
k_odds.cpp
|
||||
k_odds.c
|
||||
k_grandprix.c
|
||||
k_boss.c
|
||||
k_hud.c
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
#include "m_random.h"
|
||||
#include "r_things.h" // numskins
|
||||
#include "m_easing.h"
|
||||
#include "k_odds.hpp"
|
||||
#include "k_odds.h"
|
||||
|
||||
// Looks for players around the bot, and presses the item button
|
||||
// if there is one in range.
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
#include "doomtype.h"
|
||||
#include "p_mobj.h"
|
||||
#include "k_kart.h"
|
||||
#include "k_odds.hpp"
|
||||
#include "k_odds.h"
|
||||
#include "p_local.h"
|
||||
#include "s_sound.h"
|
||||
#include "r_main.h" // R_PointToAngle2, R_PointToDist2
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
#include "k_boss.h"
|
||||
#include "k_color.h"
|
||||
#include "k_director.h"
|
||||
#include "k_odds.hpp"
|
||||
#include "k_odds.h"
|
||||
#include "p_mobj.h"
|
||||
#include "screen.h"
|
||||
#include "doomtype.h"
|
||||
|
|
|
|||
30
src/k_kart.c
30
src/k_kart.c
|
|
@ -64,7 +64,7 @@
|
|||
#include "k_follower.h"
|
||||
#include "k_grandprix.h"
|
||||
#include "k_cluster.hpp"
|
||||
#include "k_odds.hpp"
|
||||
#include "k_odds.h"
|
||||
|
||||
#include "h_timers.h"
|
||||
#include "blan/b_soc.h"
|
||||
|
|
@ -9547,6 +9547,34 @@ boolean K_SlopeResistance(const player_t *player)
|
|||
return false;
|
||||
}
|
||||
|
||||
INT32 K_GetShieldFromPlayer(player_t *player)
|
||||
{
|
||||
|
||||
if (player->flametimer > 0)
|
||||
{
|
||||
return KSHIELD_FLAME;
|
||||
}
|
||||
|
||||
switch (player->itemtype)
|
||||
{
|
||||
case KITEM_THUNDERSHIELD: return KSHIELD_THUNDER;
|
||||
case KITEM_BUBBLESHIELD: return KSHIELD_BUBBLE;
|
||||
//case KITEM_FLAMESHIELD: return KSHIELD_FLAME; not active until flametimer is active.
|
||||
default: return KSHIELD_NONE;
|
||||
}
|
||||
}
|
||||
|
||||
INT32 K_GetShieldFromItem(INT32 item)
|
||||
{
|
||||
switch (item)
|
||||
{
|
||||
case KITEM_THUNDERSHIELD: return KSHIELD_THUNDER;
|
||||
case KITEM_BUBBLESHIELD: return KSHIELD_BUBBLE;
|
||||
case KITEM_FLAMESHIELD: return KSHIELD_FLAME;
|
||||
default: return KSHIELD_NONE;
|
||||
}
|
||||
}
|
||||
|
||||
void K_SetItemOut(player_t *player)
|
||||
{
|
||||
player->itemflags |= IF_ITEMOUT;
|
||||
|
|
|
|||
|
|
@ -308,6 +308,9 @@ void K_PlayHitEmSound(mobj_t *source, mobj_t *other);
|
|||
void K_TryHurtSoundExchange(mobj_t *victim, mobj_t *attacker);
|
||||
void K_PlayPowerGloatSound(mobj_t *source);
|
||||
|
||||
INT32 K_GetShieldFromPlayer(player_t *player);
|
||||
INT32 K_GetShieldFromItem(INT32 item);
|
||||
|
||||
void K_SetItemOut(player_t *player);
|
||||
void K_UnsetItemOut(player_t *player);
|
||||
|
||||
|
|
|
|||
|
|
@ -35,9 +35,7 @@
|
|||
#include "k_waypoint.h"
|
||||
|
||||
#include "k_cluster.hpp"
|
||||
#include "k_odds.hpp"
|
||||
|
||||
extern "C" {
|
||||
#include "k_odds.h"
|
||||
|
||||
consvar_t *KartItemCVars[NUMKARTRESULTS-1] =
|
||||
{
|
||||
|
|
@ -159,34 +157,6 @@ static UINT8 K_KartItemOddsBattle[NUMKARTRESULTS][2] =
|
|||
#define SPBFORCEDIST (15*DISTVAR) // Distance when SPB is forced onto 2nd place
|
||||
#define ENDDIST (12*DISTVAR) // Distance when the game stops giving you bananas
|
||||
|
||||
INT32 K_GetShieldFromPlayer(player_t *player)
|
||||
{
|
||||
|
||||
if (player->flametimer > 0)
|
||||
{
|
||||
return KSHIELD_FLAME;
|
||||
}
|
||||
|
||||
switch (player->itemtype)
|
||||
{
|
||||
case KITEM_THUNDERSHIELD: return KSHIELD_THUNDER;
|
||||
case KITEM_BUBBLESHIELD: return KSHIELD_BUBBLE;
|
||||
//case KITEM_FLAMESHIELD: return KSHIELD_FLAME; not active until flametimer is active.
|
||||
default: return KSHIELD_NONE;
|
||||
}
|
||||
}
|
||||
|
||||
INT32 K_GetShieldFromItem(INT32 item)
|
||||
{
|
||||
switch (item)
|
||||
{
|
||||
case KITEM_THUNDERSHIELD: return KSHIELD_THUNDER;
|
||||
case KITEM_BUBBLESHIELD: return KSHIELD_BUBBLE;
|
||||
case KITEM_FLAMESHIELD: return KSHIELD_FLAME;
|
||||
default: return KSHIELD_NONE;
|
||||
}
|
||||
}
|
||||
|
||||
SINT8 K_ItemResultToType(SINT8 getitem)
|
||||
{
|
||||
if (getitem <= 0 || getitem >= NUMKARTRESULTS) // Sad (Fallback)
|
||||
|
|
@ -313,7 +283,7 @@ fixed_t K_ItemOddsScale(UINT8 numPlayers, boolean spbrush)
|
|||
// More than vanillaMax: Increase odds to fit with the increased playercount
|
||||
// 24P: x0.6
|
||||
// 30P: x0.45
|
||||
playerScaling = (basePlayer - std::min(extPlayer, static_cast<UINT8>(playerCount))) * (FRACUNIT / 40); // adding a cap here to be sure
|
||||
playerScaling = (basePlayer - min(extPlayer, playerCount)) * (FRACUNIT / 40); // adding a cap here to be sure
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -360,12 +330,12 @@ static INT32 K_KartGetInvincibilityOdds(UINT32 dist)
|
|||
return 0;
|
||||
|
||||
INT32 finodds = 0;
|
||||
fixed_t fac = (std::min(32000, (fixed_t)dist) * FRACUNIT) / (INVINDIST);
|
||||
fixed_t fac = (min(32000, (fixed_t)dist) * FRACUNIT) / (INVINDIST);
|
||||
|
||||
if (fac > FRACUNIT)
|
||||
{
|
||||
// Desperation! Climb exponentially until Invincibility is practically guaranteed.
|
||||
fac = (((std::min(32000, (fixed_t)dist) * FRACUNIT) / (INVINDIST)) - FRACUNIT) >> 1;
|
||||
fac = (((min(32000, (fixed_t)dist) * FRACUNIT) / (INVINDIST)) - FRACUNIT) >> 1;
|
||||
finodds = Easing_InCubic(fac, INVODDS, MAXINVODDS);
|
||||
}
|
||||
else
|
||||
|
|
@ -380,7 +350,7 @@ static INT32 K_KartGetInvincibilityOdds(UINT32 dist)
|
|||
finodds = FixedMul(INVODDS, fac);
|
||||
}
|
||||
|
||||
return std::min(MAXINVODDS, finodds);
|
||||
return min(MAXINVODDS, finodds);
|
||||
}
|
||||
|
||||
/** \brief Item Roulette for Kart
|
||||
|
|
@ -565,7 +535,7 @@ INT32 K_KartGetItemOdds(
|
|||
}
|
||||
else
|
||||
{
|
||||
const INT32 distFromStart = std::max(0, static_cast<INT32>(secondToFirst) - SPBSTARTDIST);
|
||||
const INT32 distFromStart = max(0, secondToFirst - SPBSTARTDIST);
|
||||
const INT32 distRange = SPBFORCEDIST - SPBSTARTDIST;
|
||||
const INT32 mulMax = 3;
|
||||
|
||||
|
|
@ -774,7 +744,7 @@ INT32 K_KartGetLegacyItemOdds(UINT8 pos, SINT8 item, fixed_t clusterDist, fixed_
|
|||
}
|
||||
else if (pos != 9) // Force SPB
|
||||
{
|
||||
const INT32 distFromStart = std::max(0, static_cast<INT32>(secondToFirst) - SPBSTARTDIST);
|
||||
const INT32 distFromStart = max(0, secondToFirst - SPBSTARTDIST);
|
||||
const INT32 distRange = SPBFORCEDIST - SPBSTARTDIST;
|
||||
const fixed_t mulMax = 3*FRACUNIT;
|
||||
|
||||
|
|
@ -857,7 +827,7 @@ INT32 K_KartGetLegacyItemOdds(UINT8 pos, SINT8 item, fixed_t clusterDist, fixed_
|
|||
|
||||
UINT8 K_FindUseodds(const player_t *player, fixed_t mashed, UINT32 pdis, UINT8 bestbumper, boolean spbrush)
|
||||
{
|
||||
fixed_t oddsfac = std::max(FRACUNIT, (MAXODDS * FRACUNIT) / 8);
|
||||
fixed_t oddsfac = max(FRACUNIT, (MAXODDS * FRACUNIT) / 8);
|
||||
INT32 oddsdiv = ((MAXODDS - 1) * 2);
|
||||
|
||||
UINT8 i;
|
||||
|
|
@ -904,7 +874,7 @@ UINT8 K_FindUseodds(const player_t *player, fixed_t mashed, UINT32 pdis, UINT8 b
|
|||
for (i = num; i; --i) \
|
||||
{ \
|
||||
disttable[distlen++] = odds; \
|
||||
distlen = std::min(static_cast<UINT8>(oddsdiv - 1), distlen); \
|
||||
distlen = min(oddsdiv - 1, distlen); \
|
||||
}
|
||||
|
||||
if (gametyperules & GTR_BATTLEODDS) // Battle Mode
|
||||
|
|
@ -942,7 +912,7 @@ UINT8 K_FindUseodds(const player_t *player, fixed_t mashed, UINT32 pdis, UINT8 b
|
|||
}
|
||||
else
|
||||
{
|
||||
jj = std::max(1, ((j - 3) / tablediv) + 1);
|
||||
jj = max(1, ((j - 3) / tablediv) + 1);
|
||||
|
||||
if (jj < 1)
|
||||
{
|
||||
|
|
@ -974,7 +944,7 @@ UINT8 K_FindUseodds(const player_t *player, fixed_t mashed, UINT32 pdis, UINT8 b
|
|||
{
|
||||
for (i = 1; i < (oddsdiv - 1); i++)
|
||||
{
|
||||
INT32 distcalc = std::min(static_cast<INT32>(distlen-1), (i * distlen) / oddsdiv);
|
||||
INT32 distcalc = min(distlen-1, (i * distlen) / oddsdiv);
|
||||
|
||||
if (pdis <= usedistvar * distcalc)
|
||||
{
|
||||
|
|
@ -992,7 +962,7 @@ UINT8 K_FindUseodds(const player_t *player, fixed_t mashed, UINT32 pdis, UINT8 b
|
|||
|
||||
INT32 K_FindLegacyUseodds(player_t *player, fixed_t mashed, INT32 pingame, INT32 bestbumper, boolean spbrush, boolean dontforcespb)
|
||||
{
|
||||
fixed_t oddsfac = std::max(FRACUNIT, (MAXODDS * FRACUNIT) / 8);
|
||||
fixed_t oddsfac = max(FRACUNIT, (MAXODDS * FRACUNIT) / 8);
|
||||
INT32 oddsdiv = (MAXODDS - 1) * 2;
|
||||
|
||||
SINT8 sortedPlayers[MAXPLAYERS];
|
||||
|
|
@ -1151,7 +1121,7 @@ INT32 K_FindLegacyUseodds(player_t *player, fixed_t mashed, INT32 pingame, INT32
|
|||
for (i = num; i; --i) \
|
||||
{ \
|
||||
disttable[distlen++] = odds; \
|
||||
distlen = std::min(static_cast<UINT8>(oddsdiv - 1), distlen); \
|
||||
distlen = min(oddsdiv - 1, distlen); \
|
||||
}
|
||||
|
||||
if (gametyperules & GTR_BATTLEODDS) // Battle Mode
|
||||
|
|
@ -1188,7 +1158,7 @@ INT32 K_FindLegacyUseodds(player_t *player, fixed_t mashed, INT32 pingame, INT32
|
|||
}
|
||||
else
|
||||
{
|
||||
jj = std::max(1, ((j - 3) / tablediv) + 1);
|
||||
jj = max(1, ((j - 3) / tablediv) + 1);
|
||||
|
||||
if (jj < 1)
|
||||
{
|
||||
|
|
@ -1246,7 +1216,7 @@ INT32 K_FindLegacyUseodds(player_t *player, fixed_t mashed, INT32 pingame, INT32
|
|||
{
|
||||
for (i = 1; i < (oddsdiv - 1); i++)
|
||||
{
|
||||
INT32 distcalc = std::min(static_cast<INT32>(distlen-1), (i * distlen) / oddsdiv);
|
||||
INT32 distcalc = min(distlen-1, (i * distlen) / oddsdiv);
|
||||
if (pdis <= (unsigned)(usedistvar * distcalc))
|
||||
{
|
||||
useodds = disttable[distcalc];
|
||||
|
|
@ -1349,7 +1319,7 @@ void K_KartItemRoulette(player_t *player, ticcmd_t *cmd)
|
|||
// This makes the roulette produce the random noises.
|
||||
if ((player->itemroulette % 3) == 1 && P_IsDisplayPlayer(player))
|
||||
{
|
||||
#define PLAYROULETTESND S_StartSound(NULL, static_cast<sfxenum_t>(sfx_itrol1 + ((player->itemroulette / 3) % 8)))
|
||||
#define PLAYROULETTESND S_StartSound(NULL, sfx_itrol1 + ((player->itemroulette / 3) % 8))
|
||||
for (i = 0; i <= r_splitscreen; i++)
|
||||
{
|
||||
if (player == &players[displayplayers[i]] && players[displayplayers[i]].itemroulette)
|
||||
|
|
@ -1520,7 +1490,7 @@ void K_KartItemRoulette(player_t *player, ticcmd_t *cmd)
|
|||
// Being in ring debt occasionally forces Super Ring on you if you mashed
|
||||
if ((K_RingsActive() == true) && mashed && player->rings < 0 && cv_superring.value)
|
||||
{
|
||||
INT32 debtamount = std::min(abs(player->ringmin), abs(player->rings));
|
||||
INT32 debtamount = min(abs(player->ringmin), abs(player->rings));
|
||||
if (P_RandomChance((debtamount*FRACUNIT)/abs(player->ringmin)))
|
||||
{
|
||||
K_KartGetItemResult(player, KITEM_SUPERRING);
|
||||
|
|
@ -1619,5 +1589,3 @@ void K_KartItemRoulette(player_t *player, ticcmd_t *cmd)
|
|||
player->itemroulette = KROULETTE_DISABLED; // Since we're done, clear the roulette number
|
||||
player->roulettetype = KROULETTETYPE_NORMAL; // This too
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -37,8 +37,6 @@ UINT32 K_ScaleItemDistance(UINT32 distance, UINT8 numPlayers, boolean spbrush);
|
|||
INT32 K_KartGetItemOdds(UINT8 pos, SINT8 item, UINT32 ourDist, UINT32 clusterDist, fixed_t mashed, boolean spbrush, boolean bot, boolean rival);
|
||||
INT32 K_KartGetLegacyItemOdds(UINT8 pos, SINT8 item, fixed_t clusterDist, fixed_t mashed, boolean spbrush);
|
||||
INT32 K_GetRollingRouletteItem(player_t *player);
|
||||
INT32 K_GetShieldFromPlayer(player_t *player);
|
||||
INT32 K_GetShieldFromItem(INT32 item);
|
||||
SINT8 K_ItemResultToType(SINT8 getitem);
|
||||
UINT8 K_ItemResultToAmount(SINT8 getitem);
|
||||
void K_KartItemRoulette(player_t *player, ticcmd_t *cmd);
|
||||
|
|
@ -47,4 +45,4 @@ void K_KartItemRoulette(player_t *player, ticcmd_t *cmd);
|
|||
} // extern "C"
|
||||
#endif
|
||||
|
||||
#endif // __K_ODDS__
|
||||
#endif // __K_ODDS__
|
||||
|
|
@ -67,7 +67,7 @@
|
|||
#include "i_sound.h"
|
||||
#include "k_hud.h" // SRB2kart
|
||||
#include "k_kart.h"
|
||||
#include "k_odds.hpp" // KartItemCVars
|
||||
#include "k_odds.h" // KartItemCVars
|
||||
#include "k_pwrlv.h"
|
||||
#include "k_stats.h" // SRB2kart
|
||||
#include "d_player.h" // KITEM_ constants
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@
|
|||
#include "k_boss.h"
|
||||
#include "p_spec.h"
|
||||
#include "k_objects.h"
|
||||
#include "k_odds.hpp"
|
||||
#include "k_odds.h"
|
||||
#include "acs/interface.h"
|
||||
|
||||
// CTF player names
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@
|
|||
#include "k_terrain.h"
|
||||
#include "k_collide.h"
|
||||
#include "k_objects.h"
|
||||
#include "k_odds.hpp"
|
||||
#include "k_odds.h"
|
||||
|
||||
// BlanKart
|
||||
#include "blan/b_soc.h"
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@
|
|||
#include "k_terrain.h" // K_SpawnSplashForMobj
|
||||
#include "k_color.h"
|
||||
#include "k_follower.h"
|
||||
#include "k_odds.hpp"
|
||||
#include "k_odds.h"
|
||||
#include "g_party.h"
|
||||
|
||||
#include "acs/interface.h"
|
||||
|
|
|
|||
Loading…
Reference in a new issue