diff --git a/src/d_main.c b/src/d_main.c index 9cf7467c..7cc78b40 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -871,19 +871,23 @@ static void IdentifyVersion(void) #else const char *musicfile = "music.dta"; #endif + const char *kmusicfile; const char *musicpath = va(pandf,srb2waddir,musicfile); + const char *kmusicpath; int ms = W_VerifyNMUSlumps(musicpath); // Don't forget the music! + int kms; if (ms == 1) D_AddFile(musicpath); else if (ms == 0) I_Error("File %s has been modified with non-music lumps",musicfile); - const char* kmusicfile = "music.kart"; - const char* kmusicpath = va(pandf,srb2waddir,kmusicfile); - ms = W_VerifyNMUSlumps(kmusicpath); - if (ms == 1) + kmusicfile = "music.kart"; + kmusicpath = va(pandf,srb2waddir,kmusicfile); + kms = W_VerifyNMUSlumps(kmusicpath); // kill me now + + if (kms == 1) D_AddFile(kmusicpath); - else if (ms == 0) + else if (kms == 0) I_Error("File %s has been modified with non-music lumps",kmusicfile); } #endif diff --git a/src/g_game.c b/src/g_game.c index b3c4ff69..e0fb25c0 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -2330,7 +2330,7 @@ void G_PlayerReborn(INT32 player) p->panim = PA_IDLE; // standing animation if ((netgame || multiplayer) && !p->spectator) - p->powers[pw_flashing] = K_GetKartFlashing(p)-1; // Babysitting deterrent + p->powers[pw_flashing] = K_GetKartFlashing()-1; // Babysitting deterrent if (p-players == consoleplayer) { diff --git a/src/k_kart.c b/src/k_kart.c index 8e576fb7..e125c5a7 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -1399,7 +1399,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd) player->kartstuff[k_comebackshowninfo] = 1; } - if (player->kartstuff[k_spinout] == 0 && player->kartstuff[k_spinouttimer] == 0 && player->powers[pw_flashing] == K_GetKartFlashing(player)) + if (player->kartstuff[k_spinout] == 0 && player->kartstuff[k_spinouttimer] == 0 && player->powers[pw_flashing] == K_GetKartFlashing()) player->powers[pw_flashing]--; if (player->kartstuff[k_magnettimer]) @@ -1671,7 +1671,7 @@ fixed_t K_GetKartAccel(player_t *player) return FixedMul(k_accel, K_GetKartBoostPower(player, false)); } -UINT16 K_GetKartFlashing(player_t *player) +UINT16 K_GetKartFlashing(void) { UINT16 tics = flashingtics; if (gametype != GT_RACE) @@ -1768,7 +1768,7 @@ void K_SpinPlayer(player_t *player, mobj_t *source) else player->kartstuff[k_spinouttimer] = 1*TICRATE; // ? Whipeout - player->powers[pw_flashing] = K_GetKartFlashing(player); + player->powers[pw_flashing] = K_GetKartFlashing(); player->kartstuff[k_spinout] = player->kartstuff[k_spinouttimer]; @@ -1812,7 +1812,7 @@ void K_SquishPlayer(player_t *player, mobj_t *source) player->kartstuff[k_squishedtimer] = 1*TICRATE; - player->powers[pw_flashing] = K_GetKartFlashing(player); + player->powers[pw_flashing] = K_GetKartFlashing(); player->mo->flags |= MF_NOCLIP; @@ -1861,7 +1861,7 @@ void K_ExplodePlayer(player_t *player, mobj_t *source) // A bit of a hack, we ju player->kartstuff[k_spinouttimer] = 2*TICRATE+(TICRATE/2); player->kartstuff[k_spinout] = player->kartstuff[k_spinouttimer]; - player->powers[pw_flashing] = K_GetKartFlashing(player); + player->powers[pw_flashing] = K_GetKartFlashing(); if (player->mo->state != &states[S_KART_SPIN]) P_SetPlayerMobjState(player->mo, S_KART_SPIN); @@ -1938,7 +1938,7 @@ void K_StealBalloon(player_t *player, player_t *victim, boolean force) player->kartstuff[k_balloon]++; player->kartstuff[k_comebackpoints] = 0; - player->powers[pw_flashing] = K_GetKartFlashing(player); + player->powers[pw_flashing] = K_GetKartFlashing(); return; } @@ -2032,6 +2032,7 @@ static mobj_t *K_SpawnKartMissile(mobj_t *source, mobjtype_t type, angle_t angle mobj_t *th; angle_t an; fixed_t x, y, z; + mobj_t *throwmo; //INT32 dir; // angle at which you fire, is player angle @@ -2090,7 +2091,7 @@ static mobj_t *K_SpawnKartMissile(mobj_t *source, mobjtype_t type, angle_t angle x = x + P_ReturnThrustX(source, an, source->radius + th->radius); x = y + P_ReturnThrustY(source, an, source->radius + th->radius); - mobj_t *throwmo = P_SpawnMobj(x, y, z, MT_FIREDITEM); + throwmo = P_SpawnMobj(x, y, z, MT_FIREDITEM); throwmo->movecount = 1; throwmo->movedir = source->angle - an; P_SetTarget(&throwmo->target, source); @@ -2170,6 +2171,7 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map angle_t newangle; fixed_t newx; fixed_t newy; + mobj_t *throwmo; if (!player) return NULL; @@ -2272,7 +2274,7 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map mo->eflags |= MFE_VERTICALFLIP; } - mobj_t *throwmo = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + player->mo->height/2, MT_FIREDITEM); + throwmo = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + player->mo->height/2, MT_FIREDITEM); P_SetTarget(&throwmo->target, player->mo); throwmo->movecount = 0; // above player } @@ -4699,10 +4701,10 @@ static void K_drawStartLakitu(void) patch_t *localpatch = kp_nodraw; fixed_t adjustY; - fixed_t numFrames = 32; // Number of frames for the animation + tic_t numFrames = 32; // Number of frames for the animation fixed_t finalOffset = 206; // Number of pixels to offset the patch (This is actually 200, the 6 is a buffer for the parabola) - if (leveltime >= 0 && leveltime < 52) localpatch = kp_lakitustart[0]; + if (leveltime < 52) localpatch = kp_lakitustart[0]; if (leveltime >= 52 && leveltime < 56) localpatch = kp_lakitustart[1]; if (leveltime >= 56 && leveltime < 60) localpatch = kp_lakitustart[2]; if (leveltime >= 60 && leveltime < 64) localpatch = kp_lakitustart[3]; diff --git a/src/k_kart.h b/src/k_kart.h index 394e4d61..cbb74695 100644 --- a/src/k_kart.h +++ b/src/k_kart.h @@ -10,6 +10,7 @@ #include "d_player.h" // Need for player_t 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); @@ -17,6 +18,7 @@ void K_RegisterKartStuff(void); UINT8 K_GetKartCC(void); void K_KartBouncing(mobj_t *mobj1, mobj_t *mobj2, boolean bounce); +void K_LakituChecker(player_t *player); void K_KartMoveAnimation(player_t *player); void K_KartPlayerThink(player_t *player, ticcmd_t *cmd); void K_SpinPlayer(player_t *player, mobj_t *source); @@ -32,12 +34,13 @@ 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(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); 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); // ========================================================================= diff --git a/src/lua_baselib.c b/src/lua_baselib.c index f24cf27b..4f5af50d 100644 --- a/src/lua_baselib.c +++ b/src/lua_baselib.c @@ -2152,11 +2152,11 @@ static int lib_kGetKartAccel(lua_State *L) static int lib_kGetKartFlashing(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)); //HUDSAFE - if (!player) - return LUA_ErrInvalid(L, "player_t"); - lua_pushinteger(L, K_GetKartFlashing(player)); + //if (!player) + //return LUA_ErrInvalid(L, "player_t"); + lua_pushinteger(L, K_GetKartFlashing()); return 0; } diff --git a/src/m_cheat.c b/src/m_cheat.c index 69e691a5..cd08264d 100644 --- a/src/m_cheat.c +++ b/src/m_cheat.c @@ -1350,7 +1350,7 @@ void Command_ObjectPlace_f(void) players[0].mo->color = op_oldcolor; // This is necessary for recovery of dying players. - if (players[0].powers[pw_flashing] >= K_GetKartFlashing(&players[0])) - players[0].powers[pw_flashing] = K_GetKartFlashing(&players[0]) - 1; + if (players[0].powers[pw_flashing] >= K_GetKartFlashing()) + players[0].powers[pw_flashing] = K_GetKartFlashing() - 1; } } diff --git a/src/p_inter.c b/src/p_inter.c index bff3a030..867fd025 100644 --- a/src/p_inter.c +++ b/src/p_inter.c @@ -2592,7 +2592,7 @@ static inline void P_NiGHTSDamage(mobj_t *target, mobj_t *source) target->momy = FixedMul(FINESINE(fa),target->target->radius); } - player->powers[pw_flashing] = K_GetKartFlashing(player); + player->powers[pw_flashing] = K_GetKartFlashing(); P_SetMobjState(target->tracer, S_NIGHTSHURT1); S_StartSound(target, sfx_nghurt); @@ -2970,6 +2970,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da #else static const boolean force = false; #endif + mobj_t *blueexplode; if (objectplacing) return false; @@ -3161,7 +3162,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da { // Just need to do this now! Being thrown upwards is done by the explosion. P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_BLUELIGHTNING); - mobj_t *blueexplode = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_BLUEEXPLOSION); + blueexplode = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_BLUEEXPLOSION); P_SetTarget(&blueexplode->target, source); return true; } @@ -3309,7 +3310,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da player->health -= damage; // mirror mobj health here if (damage < 10000) { - target->player->powers[pw_flashing] = K_GetKartFlashing(target->player); + target->player->powers[pw_flashing] = K_GetKartFlashing(); if (damage > 0) // don't spill emeralds/ammo/panels for shield damage P_PlayerRingBurst(player, damage); } diff --git a/src/p_mobj.c b/src/p_mobj.c index a0295f4d..033912c9 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -216,10 +216,10 @@ boolean P_SetPlayerMobjState(mobj_t *mobj, statenum_t state) } } // You were in pain state after taking a hit, and you're moving out of pain state now? - else */if (mobj->state == &states[mobj->info->painstate] && player->powers[pw_flashing] == K_GetKartFlashing(player) && state != mobj->info->painstate) + else */if (mobj->state == &states[mobj->info->painstate] && player->powers[pw_flashing] == K_GetKartFlashing() && state != mobj->info->painstate) { // Start flashing, since you've landed. - player->powers[pw_flashing] = K_GetKartFlashing(player)-1; + player->powers[pw_flashing] = K_GetKartFlashing()-1; //P_DoPityCheck(player); } diff --git a/src/p_setup.c b/src/p_setup.c index c272464f..3e817fb1 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -2456,11 +2456,11 @@ static void P_LoadRecordGhosts(void) if (cv_ghost_staff.value) { lumpnum_t l; - UINT8 i = 1; - while (i <= 99 && (l = W_CheckNumForName(va("%sS%02u",G_BuildMapName(gamemap),i))) != LUMPERROR) + UINT8 j = 1; + while (j <= 99 && (l = W_CheckNumForName(va("%sS%02u",G_BuildMapName(gamemap),j))) != LUMPERROR) { - G_AddGhost(va("%sS%02u",G_BuildMapName(gamemap),i)); - i++; + G_AddGhost(va("%sS%02u",G_BuildMapName(gamemap),j)); + j++; } } diff --git a/src/p_spec.c b/src/p_spec.c index 6ebeb466..027e8a77 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -7549,7 +7549,7 @@ void T_Pusher(pusher_t *p) if (thing->player && thing->player->pflags & PF_ROPEHANG) continue; - if (thing->player && (thing->state == &states[thing->info->painstate]) && (thing->player->powers[pw_flashing] > (K_GetKartFlashing(thing->player)/4)*3 && thing->player->powers[pw_flashing] <= K_GetKartFlashing(thing->player))) + if (thing->player && (thing->state == &states[thing->info->painstate]) && (thing->player->powers[pw_flashing] > (K_GetKartFlashing()/4)*3 && thing->player->powers[pw_flashing] <= K_GetKartFlashing())) continue; inFOF = touching = moved = false; diff --git a/src/p_user.c b/src/p_user.c index 583a0547..371b9dd4 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -863,7 +863,7 @@ void P_DoPlayerPain(player_t *player, mobj_t *source, mobj_t *inflictor) P_ResetPlayer(player); P_SetPlayerMobjState(player->mo, player->mo->info->painstate); - player->powers[pw_flashing] = K_GetKartFlashing(player); + player->powers[pw_flashing] = K_GetKartFlashing(); if (player->timeshit != UINT8_MAX) ++player->timeshit; @@ -5842,7 +5842,7 @@ static void P_NiGHTSMovement(player_t *player) } // Currently reeling from being hit. - if (player->powers[pw_flashing] > (2*K_GetKartFlashing(player))/3) + if (player->powers[pw_flashing] > (2*K_GetKartFlashing())/3) { { const angle_t fa = (FixedAngle(player->flyangle*FRACUNIT)>>ANGLETOFINESHIFT) & FINEMASK; @@ -9375,7 +9375,7 @@ void P_PlayerThink(player_t *player) if (player->powers[pw_invulnerability] && player->powers[pw_invulnerability] < UINT16_MAX) player->powers[pw_invulnerability]--; - if (player->powers[pw_flashing] && player->powers[pw_flashing] < UINT16_MAX && ((player->pflags & PF_NIGHTSMODE) || player->powers[pw_flashing] < K_GetKartFlashing(player))) + if (player->powers[pw_flashing] && player->powers[pw_flashing] < UINT16_MAX && ((player->pflags & PF_NIGHTSMODE) || player->powers[pw_flashing] < K_GetKartFlashing())) player->powers[pw_flashing]--; if (player->powers[pw_tailsfly] && player->powers[pw_tailsfly] < UINT16_MAX && player->charability != CA_SWIM && !(player->powers[pw_super] && ALL7EMERALDS(player->powers[pw_emeralds]))) // tails fly counter @@ -9467,7 +9467,7 @@ void P_PlayerThink(player_t *player) && player->kartstuff[k_bootimer] == 0 && player->kartstuff[k_growshrinktimer] <= 0 && (player->kartstuff[k_comebacktimer] == 0 || (gametype == GT_RACE || player->kartstuff[k_balloon] > 0))) { - if (player->powers[pw_flashing] > 0 && player->powers[pw_flashing] < K_GetKartFlashing(player) && (leveltime & 1)) + if (player->powers[pw_flashing] > 0 && player->powers[pw_flashing] < K_GetKartFlashing() && (leveltime & 1)) player->mo->flags2 |= MF2_DONTDRAW; else player->mo->flags2 &= ~MF2_DONTDRAW;