mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Merge branch 'paperitem-backdrop' into 'master'
Add backdrop for paper items See merge request KartKrew/Kart!755
This commit is contained in:
commit
ff6f7b62c8
5 changed files with 15 additions and 1 deletions
|
|
@ -3271,6 +3271,7 @@ const char *const STATE_LIST[] = { // array length left dynamic for sanity testi
|
|||
"S_ITEM_DEBRIS_CLOUD_SPAWNER2",
|
||||
|
||||
"S_ITEMICON",
|
||||
"S_ITEMBACKDROP",
|
||||
|
||||
// Item capsules
|
||||
"S_ITEMCAPSULE",
|
||||
|
|
|
|||
|
|
@ -531,6 +531,7 @@ char sprnames[NUMSPRITES + 1][5] =
|
|||
"SBOX", // Sphere Box (for Battle)
|
||||
"RPOP", // Random Item Box Pop
|
||||
"ITRI", // Item Box Debris
|
||||
"ITPA", // Paper item backdrop
|
||||
"SGNS", // Signpost sparkle
|
||||
"FAST", // Speed boost trail
|
||||
"DSHR", // Speed boost dust release
|
||||
|
|
@ -3879,6 +3880,7 @@ state_t states[NUMSTATES] =
|
|||
{SPR_NULL, 0, 7, {A_SpawnItemDebrisCloud}, 20, 0, S_ITEM_DEBRIS_CLOUD_SPAWNER1}, // S_ITEM_DEBRIS_CLOUD_SPAWNER2
|
||||
|
||||
{SPR_NULL, FF_FULLBRIGHT, -1, {NULL}, 0, 0, S_NULL}, // S_ITEMICON
|
||||
{SPR_ITPA, FF_FULLBRIGHT, -1, {NULL}, 1, 0, S_NULL}, // S_ITEMBACKDROP
|
||||
|
||||
{SPR_ICAP, FF_ADD|0, -1, {NULL}, 0, 0, S_NULL}, // S_ITEMCAPSULE
|
||||
{SPR_ICAP, FF_PAPERSPRITE|1, -1, {NULL}, 0, 0, S_NULL}, // S_ITEMCAPSULE_TOP_SIDE
|
||||
|
|
|
|||
|
|
@ -1077,6 +1077,7 @@ typedef enum sprite
|
|||
SPR_SBOX, // Sphere Box (for Battle)
|
||||
SPR_RPOP, // Random Item Box Pop
|
||||
SPR_ITRI, // Item Box Debris
|
||||
SPR_ITPA, // Paper item backdrop
|
||||
SPR_SGNS, // Signpost sparkle
|
||||
SPR_FAST, // Speed boost trail
|
||||
SPR_DSHR, // Speed boost dust release
|
||||
|
|
@ -4282,6 +4283,7 @@ typedef enum state
|
|||
S_ITEM_DEBRIS_CLOUD_SPAWNER2,
|
||||
|
||||
S_ITEMICON,
|
||||
S_ITEMBACKDROP,
|
||||
|
||||
// Item capsules
|
||||
S_ITEMCAPSULE,
|
||||
|
|
|
|||
10
src/k_kart.c
10
src/k_kart.c
|
|
@ -6924,9 +6924,14 @@ void K_DropHnextList(player_t *player, boolean keepshields)
|
|||
mobj_t *K_CreatePaperItem(fixed_t x, fixed_t y, fixed_t z, angle_t angle, SINT8 flip, UINT8 type, UINT8 amount)
|
||||
{
|
||||
mobj_t *drop = P_SpawnMobj(x, y, z, MT_FLOATINGITEM);
|
||||
mobj_t *backdrop = P_SpawnMobjFromMobj(drop, 0, 0, 0, MT_OVERLAY);
|
||||
|
||||
P_SetTarget(&backdrop->target, drop);
|
||||
P_SetMobjState(backdrop, S_ITEMBACKDROP);
|
||||
|
||||
P_SetScale(drop, drop->scale>>4);
|
||||
drop->destscale = (3*drop->destscale)/2;
|
||||
|
||||
|
||||
drop->angle = angle;
|
||||
P_Thrust(drop,
|
||||
FixedAngle(P_RandomFixed(PR_ITEM_ROULETTE) * 180) + angle,
|
||||
|
|
@ -7002,6 +7007,9 @@ mobj_t *K_CreatePaperItem(fixed_t x, fixed_t y, fixed_t z, angle_t angle, SINT8
|
|||
}
|
||||
|
||||
drop->flags |= MF_NOCLIPTHING;
|
||||
backdrop->dispoffset = 1;
|
||||
P_SetTarget(&backdrop->tracer, drop);
|
||||
backdrop->flags2 |= MF2_LINKDRAW;
|
||||
|
||||
return drop;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6786,6 +6786,7 @@ static boolean P_MobjRegularThink(mobj_t *mobj)
|
|||
break;
|
||||
case MT_FLOATINGITEM:
|
||||
{
|
||||
mobj->pitch = mobj->roll = 0;
|
||||
if (mobj->flags & MF_NOCLIPTHING)
|
||||
{
|
||||
if (P_CheckDeathPitCollide(mobj))
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue