Merge branch 'hardcode-balloons' into 'master'

Hardcode Carnival Night balloon edits (also seen in Joypolis)

See merge request KartKrew/Kart!1682
This commit is contained in:
James R. 2023-12-09 01:40:14 +00:00
commit 5233217b86
2 changed files with 17 additions and 2 deletions

View file

@ -3299,8 +3299,8 @@ state_t states[NUMSTATES] =
{SPR_BUMP, FF_ANIMATE|4, 12, {A_Pain}, 1, 3, S_BUMPER}, //S_BUMPERHIT
// Balloons
{SPR_BLON, FF_ANIMATE, -1, {NULL}, 2, 5, S_NULL}, // S_BALLOON
{SPR_BLON, 3, 0, {A_RemoteDamage}, 0, 1, S_BALLOONPOP2}, // S_BALLOONPOP1
{SPR_BLON, FF_ANIMATE|FF_RANDOMANIM, -1, {NULL}, 7, 5, S_BALLOON}, // S_BALLOON
{SPR_NULL, 0, 2, {NULL}, 0, 0, S_BALLOONPOP2}, // S_BALLOONPOP1
{SPR_BLON, 3, 1, {A_Pain}, 0, 0, S_BALLOONPOP3}, // S_BALLOONPOP2
{SPR_BLON, 4, 1, {NULL}, 0, 0, S_BALLOONPOP4}, // S_BALLOONPOP3
{SPR_NULL, 0, TICRATE, {A_CheckFlags2}, MF2_AMBUSH, S_BALLOONPOP5, S_NULL}, // S_BALLOONPOP4

View file

@ -10286,6 +10286,14 @@ static boolean P_MobjRegularThink(mobj_t *mobj)
break;
}
case MT_BALLOON:
{
fixed_t sine = FixedMul(16 * FSIN((M_TAU_FIXED * (4*TICRATE)) * (leveltime + mobj->extravalue2)), mobj->scale);
mobj->z = (mobj->extravalue1 - (16 * mobj->scale)) + sine;
break;
}
default:
// check mobj against possible water content, before movement code
P_MobjCheckWater(mobj);
@ -11109,6 +11117,7 @@ static void P_DefaultMobjShadowScale(mobj_t *thing)
case MT_SPB:
case MT_DUELBOMB:
case MT_GACHABOM:
case MT_BALLOON:
thing->shadowscale = 3*FRACUNIT/2;
break;
case MT_BANANA_SHIELD:
@ -11160,6 +11169,9 @@ static void P_DefaultMobjShadowScale(mobj_t *thing)
case MT_AIRIVOBALL:
thing->shadowscale = FRACUNIT/2;
break;
case MT_BUMPER:
thing->shadowscale = 7*FRACUNIT/4;
break;
default:
if (thing->flags & (MF_ENEMY|MF_BOSS))
thing->shadowscale = FRACUNIT;
@ -11431,6 +11443,9 @@ mobj_t *P_SpawnMobj(fixed_t x, fixed_t y, fixed_t z, mobjtype_t type)
};
mobj->color = BALLOONCOLORS[P_RandomKey(PR_DECORATION, sizeof(BALLOONCOLORS))];
mobj->extravalue1 = mobj->z;
mobj->extravalue2 = P_RandomRange(PR_DECORATION, 0, 4*TICRATE);
}
break;
case MT_POGOSPRING: