mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-02-04 04:36:21 +00:00
Merge branch 'fix-bufo-spawn' into 'master'
Fix Battle UFO spawn not cycling; fix Super Flicky minimap crash Closes #938 See merge request KartKrew/Kart!1844
This commit is contained in:
commit
9d0b29b73d
5 changed files with 27 additions and 4 deletions
|
|
@ -4460,9 +4460,9 @@ static void K_drawKartMinimap(void)
|
|||
break;
|
||||
case MT_SUPER_FLICKY:
|
||||
workingPic = kp_superflickyminimap;
|
||||
if (Obj_SuperFlickyOwner(mobj)->color)
|
||||
if (mobj_t* owner = Obj_SuperFlickyOwner(mobj); owner && owner->color)
|
||||
{
|
||||
colormap = R_GetTranslationColormap(TC_RAINBOW, static_cast<skincolornum_t>(Obj_SuperFlickyOwner(mobj)->color), GTC_CACHE);
|
||||
colormap = R_GetTranslationColormap(TC_RAINBOW, static_cast<skincolornum_t>(owner->color), GTC_CACHE);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@
|
|||
#include <vector>
|
||||
|
||||
#include "core/static_vec.hpp"
|
||||
#include "v_draw.hpp"
|
||||
|
||||
#include "k_battle.h"
|
||||
#include "k_hud.h"
|
||||
|
|
@ -26,7 +27,7 @@
|
|||
|
||||
using namespace srb2;
|
||||
|
||||
extern "C" consvar_t cv_debughudtracker;
|
||||
extern "C" consvar_t cv_debughudtracker, cv_battleufotest;
|
||||
|
||||
namespace
|
||||
{
|
||||
|
|
@ -190,6 +191,9 @@ private:
|
|||
}},
|
||||
};
|
||||
|
||||
case MT_BATTLEUFO_SPAWNER:
|
||||
return {};
|
||||
|
||||
default:
|
||||
return {
|
||||
{ // Near
|
||||
|
|
@ -291,6 +295,9 @@ bool is_object_tracking_target(const mobj_t* mobj)
|
|||
return !(mobj->renderflags & (RF_TRANSMASK | RF_DONTDRAW)) && // the spraycan wasn't collected yet
|
||||
P_CheckSight(stplyr->mo, const_cast<mobj_t*>(mobj));
|
||||
|
||||
case MT_BATTLEUFO_SPAWNER:
|
||||
return cv_battleufotest.value;
|
||||
|
||||
default:
|
||||
return false;
|
||||
}
|
||||
|
|
@ -512,6 +519,15 @@ void K_DrawTargetTracking(const TargetTracking& target)
|
|||
colormap
|
||||
);
|
||||
};
|
||||
|
||||
if (target.mobj->type == MT_BATTLEUFO_SPAWNER) // debug
|
||||
{
|
||||
using srb2::Draw;
|
||||
Draw(FixedToFloat(result.x), FixedToFloat(result.y))
|
||||
.font(Draw::Font::kThin)
|
||||
.align(Draw::Align::kCenter)
|
||||
.text("BUFO ID: {}", Obj_BattleUFOSpawnerID(target.mobj));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -188,6 +188,7 @@ void Obj_UnlinkBattleUFOSpawner(mobj_t *spawner);
|
|||
void Obj_SpawnBattleUFOFromSpawner(void);
|
||||
INT32 Obj_RandomBattleUFOSpawnerID(void);
|
||||
void Obj_BattleUFOBeamThink(mobj_t *beam);
|
||||
INT32 Obj_BattleUFOSpawnerID(const mobj_t *spawner);
|
||||
|
||||
/* Power-Up Aura */
|
||||
void Obj_SpawnPowerUpAura(player_t* player);
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@ public:
|
|||
auto min = [&](auto cmp) { return std::min_element(list_.begin(), list_.end(), cmp); };
|
||||
|
||||
return *(it != list_.end()
|
||||
? min([order](T a, T b) { return order < a->id() && a->id() < b->id(); })
|
||||
? min([order](T a, T b) { return order < a->id() && (b->id() <= order || a->id() < b->id()); })
|
||||
: min([](T a, T b) { return a->id() < b->id(); }));
|
||||
}
|
||||
|
||||
|
|
@ -251,3 +251,8 @@ void Obj_BattleUFOBeamThink(mobj_t *beam)
|
|||
{
|
||||
P_SetObjectMomZ(beam, beam->info->speed, true);
|
||||
}
|
||||
|
||||
INT32 Obj_BattleUFOSpawnerID(const mobj_t *spawner)
|
||||
{
|
||||
return static_cast<const Spawner*>(spawner)->id();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5428,6 +5428,7 @@ static boolean P_IsTrackerType(INT32 type)
|
|||
case MT_OVERTIME_CENTER:
|
||||
case MT_MONITOR:
|
||||
case MT_EMERALD:
|
||||
case MT_BATTLEUFO_SPAWNER: // debug
|
||||
case MT_BATTLEUFO:
|
||||
case MT_SUPER_FLICKY:
|
||||
case MT_SPRAYCAN:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue