![TehRealSalt](/assets/img/avatar_default.png)
Anyone in the top 50% gets winning music & blue position, everyone below gets the losing music & red position. For odd numbers, it rounds up. 2p: 1st wins, 2nd loses 3p: 1-2 win, 3rd loses 4p: 1-2 win, 3-4 lose 5p: 1-3 win, 4-5 lose 6p: 1-3 win, 4-6 lose 7p: 1-4 win, 5-7 lose 8p: 1-4 win, 5-8 lose (SMK) 12p: 1-6 win, 7-12 lose (modern MK) 16p: 1-8 win, 9-16 lose (max player count) In big netgames you won't just hear the losing music all of the time now :V
54 lines
2.4 KiB
C
54 lines
2.4 KiB
C
// SONIC ROBO BLAST 2 KART ~ ZarroTsu
|
|
//-----------------------------------------------------------------------------
|
|
/// \file k_kart.h
|
|
/// \brief SRB2kart stuff.
|
|
|
|
#ifndef __K_KART__
|
|
#define __K_KART__
|
|
|
|
#include "doomdef.h"
|
|
#include "d_player.h" // Need for player_t
|
|
|
|
UINT8 colortranslations[MAXSKINCOLORS][16];
|
|
extern const char *KartColor_Names[MAXSKINCOLORS];
|
|
void K_StarmanColormap(UINT8 *dest_colormap, UINT8 skincolor);
|
|
void K_GenerateKartColormap(UINT8 *dest_colormap, INT32 skinnum, UINT8 color);
|
|
UINT8 K_GetKartColorByName(const char *name);
|
|
|
|
void K_RegisterKartStuff(void);
|
|
|
|
boolean K_IsPlayerLosing(player_t *player);
|
|
void K_KartBouncing(mobj_t *mobj1, mobj_t *mobj2, boolean bounce, boolean solid);
|
|
void K_LakituChecker(player_t *player);
|
|
void K_KartMoveAnimation(player_t *player);
|
|
void K_KartPlayerThink(player_t *player, ticcmd_t *cmd);
|
|
void K_KartPlayerAfterThink(player_t *player);
|
|
void K_SpinPlayer(player_t *player, mobj_t *source);
|
|
void K_SquishPlayer(player_t *player, mobj_t *source);
|
|
void K_ExplodePlayer(player_t *player, mobj_t *source);
|
|
void K_StealBalloon(player_t *player, player_t *victim, boolean force);
|
|
void K_SpawnKartExplosion(fixed_t x, fixed_t y, fixed_t z, fixed_t radius, INT32 number, mobjtype_t type, angle_t rotangle, boolean spawncenter, boolean ghostit, mobj_t *source);
|
|
void K_SpawnBobombExplosion(mobj_t *source);
|
|
void K_SpawnDriftTrail(player_t *player);
|
|
void K_DoMushroom(player_t *player, boolean doPFlag, boolean startboost);
|
|
void K_DoBouncePad(mobj_t *mo, fixed_t vertispeed);
|
|
boolean K_CheckPlayersRespawnColliding(INT32 playernum, fixed_t x, fixed_t y);
|
|
INT16 K_GetKartTurnValue(player_t *player, INT16 turnvalue);
|
|
void K_MomentumToFacing(player_t *player);
|
|
fixed_t K_GetKartSpeed(player_t *player, boolean doboostpower);
|
|
fixed_t K_GetKartAccel(player_t *player);
|
|
UINT16 K_GetKartFlashing(void);
|
|
fixed_t K_3dKartMovement(player_t *player, boolean onground, fixed_t forwardmove);
|
|
void K_MoveKartPlayer(player_t *player, boolean onground);
|
|
void K_CheckBalloons(void);
|
|
|
|
INT32 K_calcSplitFlags(INT32 snapflags);
|
|
void K_LoadKartHUDGraphics(void);
|
|
fixed_t K_FindCheckX(fixed_t px, fixed_t py, angle_t ang, fixed_t mx, fixed_t my);
|
|
void K_drawKartHUD(void);
|
|
void K_LoadIconGraphics(char *facestr, INT32 skinnum);
|
|
void K_ReloadSkinIconGraphics(void);
|
|
|
|
// =========================================================================
|
|
#endif // __K_KART__
|