mirror of
https://git.do.srb2.org/KartKrew/Kart-Public.git
synced 2024-11-16 17:51:27 +00:00
Revert MT_FIREBALL to vanilla, remove MT_FIRETRAIL, MT_BALLHOG added, bigger Jawz explosions
This commit is contained in:
parent
11aaad1837
commit
501bfae9ac
9 changed files with 65 additions and 82 deletions
|
@ -5807,15 +5807,9 @@ static const char *const STATE_LIST[] = { // array length left dynamic for sanit
|
||||||
"S_FIREBALL2",
|
"S_FIREBALL2",
|
||||||
"S_FIREBALL3",
|
"S_FIREBALL3",
|
||||||
"S_FIREBALL4",
|
"S_FIREBALL4",
|
||||||
"S_FIREBALL5",
|
|
||||||
"S_FIREBALL6",
|
|
||||||
"S_FIREBALL7",
|
|
||||||
"S_FIREBALLEXP1",
|
"S_FIREBALLEXP1",
|
||||||
"S_FIREBALLEXP2",
|
"S_FIREBALLEXP2",
|
||||||
"S_FIREBALLEXP3",
|
"S_FIREBALLEXP3",
|
||||||
"S_FIREBALLEXP4",
|
|
||||||
"S_FIREBALLEXP5",
|
|
||||||
"S_FIREBALLEXP6",
|
|
||||||
"S_SHELL",
|
"S_SHELL",
|
||||||
"S_SHELL1",
|
"S_SHELL1",
|
||||||
"S_SHELL2",
|
"S_SHELL2",
|
||||||
|
@ -7155,6 +7149,8 @@ static const char *const MOBJTYPE_LIST[] = { // array length left dynamic for s
|
||||||
"MT_BOOMEXPLODE",
|
"MT_BOOMEXPLODE",
|
||||||
"MT_BOOMPARTICLE",
|
"MT_BOOMPARTICLE",
|
||||||
|
|
||||||
|
"MT_BALLHOG", // Ballhog
|
||||||
|
|
||||||
"MT_BLUELIGHTNING", // Grow/shrink stuff
|
"MT_BLUELIGHTNING", // Grow/shrink stuff
|
||||||
"MT_BLUEEXPLOSION",
|
"MT_BLUEEXPLOSION",
|
||||||
"MT_LIGHTNING",
|
"MT_LIGHTNING",
|
||||||
|
|
86
src/info.c
86
src/info.c
|
@ -2125,19 +2125,13 @@ state_t states[NUMSTATES] =
|
||||||
{SPR_FFWR, 3, 3, {NULL}, 0, 0, S_FIREFLOWER1}, // S_FIREFLOWER4
|
{SPR_FFWR, 3, 3, {NULL}, 0, 0, S_FIREFLOWER1}, // S_FIREFLOWER4
|
||||||
|
|
||||||
// Thrown Mario Fireball
|
// Thrown Mario Fireball
|
||||||
{SPR_FBLL, FF_FULLBRIGHT, 3, {NULL}, MT_FIRETRAIL, 0, S_FIREBALL2}, // S_FIREBALL1
|
{SPR_FBLL, FF_FULLBRIGHT, 3, {NULL}, 0, 0, S_FIREBALL2}, // S_FIREBALL1
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|1, 3, {NULL}, MT_FIRETRAIL, 0, S_FIREBALL3}, // S_FIREBALL2
|
{SPR_FBLL, FF_FULLBRIGHT|1, 3, {NULL}, 0, 0, S_FIREBALL3}, // S_FIREBALL2
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|2, 3, {NULL}, MT_FIRETRAIL, 0, S_FIREBALL4}, // S_FIREBALL3
|
{SPR_FBLL, FF_FULLBRIGHT|2, 3, {NULL}, 0, 0, S_FIREBALL4}, // S_FIREBALL3
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|3, 3, {NULL}, MT_FIRETRAIL, 0, S_FIREBALL5}, // S_FIREBALL4
|
{SPR_FBLL, FF_FULLBRIGHT|3, 3, {NULL}, 0, 0, S_FIREBALL1}, // S_FIREBALL4
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|4, 3, {NULL}, MT_FIRETRAIL, 0, S_FIREBALL6}, // S_FIREBALL5
|
{SPR_FBLL, FF_FULLBRIGHT|4, 3, {NULL}, 0, 0, S_FIREBALLEXP2}, // S_FIREBALLEXP1
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|5, 3, {NULL}, MT_FIRETRAIL, 0, S_FIREBALL7}, // S_FIREBALL6
|
{SPR_FBLL, FF_FULLBRIGHT|5, 3, {NULL}, 0, 0, S_FIREBALLEXP3}, // S_FIREBALLEXP2
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|6, 3, {NULL}, MT_FIRETRAIL, 0, S_FIREBALL1}, // S_FIREBALL7
|
{SPR_FBLL, FF_FULLBRIGHT|6, 3, {NULL}, 0, 0, S_NULL}, // S_FIREBALLEXP3
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|7, 3, {NULL}, 0, 0, S_FIREBALLEXP2}, // S_FIREBALLEXP1
|
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|8, 3, {NULL}, 0, 0, S_FIREBALLEXP3}, // S_FIREBALLEXP2
|
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|9, 3, {NULL}, 0, 0, S_FIREBALLEXP4}, // S_FIREBALLEXP3
|
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|10, 3, {NULL}, 0, 0, S_FIREBALLEXP5}, // S_FIREBALLEXP4
|
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|11, 3, {NULL}, 0, 0, S_FIREBALLEXP6}, // S_FIREBALLEXP5
|
|
||||||
{SPR_FBLL, FF_FULLBRIGHT|12, 3, {NULL}, 0, 0, S_NULL}, // S_FIREBALLEXP6
|
|
||||||
|
|
||||||
// Turtle Shell
|
// Turtle Shell
|
||||||
{SPR_SHLL, 0, -1, {NULL}, 0, 0, S_NULL}, // S_SHELL
|
{SPR_SHLL, 0, -1, {NULL}, 0, 0, S_NULL}, // S_SHELL
|
||||||
|
@ -12022,7 +12016,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
{ // MT_FIREBALL
|
{ // MT_FIREBALL
|
||||||
-1, // doomednum
|
-1, // doomednum
|
||||||
S_FIREBALL1, // spawnstate
|
S_FIREBALL1, // spawnstate
|
||||||
140, // spawnhealth
|
1000, // spawnhealth
|
||||||
S_FIREBALLEXP1, // seestate
|
S_FIREBALLEXP1, // seestate
|
||||||
sfx_None, // seesound
|
sfx_None, // seesound
|
||||||
8, // reactiontime
|
8, // reactiontime
|
||||||
|
@ -12034,15 +12028,15 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
S_FIREBALLEXP1, // missilestate
|
S_FIREBALLEXP1, // missilestate
|
||||||
S_FIREBALLEXP1, // deathstate
|
S_FIREBALLEXP1, // deathstate
|
||||||
S_FIREBALLEXP1, // xdeathstate
|
S_FIREBALLEXP1, // xdeathstate
|
||||||
sfx_None, // deathsound
|
sfx_mario1, // deathsound
|
||||||
0, // speed
|
10*FRACUNIT, // speed
|
||||||
16*FRACUNIT, // radius
|
4*FRACUNIT, // radius
|
||||||
32*FRACUNIT, // height
|
8*FRACUNIT, // height
|
||||||
0, // display offset
|
0, // display offset
|
||||||
100, // mass
|
100, // mass
|
||||||
1, // damage
|
1, // damage
|
||||||
sfx_None, // activesound
|
sfx_None, // activesound
|
||||||
MF_SHOOTABLE|MF_BOUNCE, // flags
|
MF_NOBLOCKMAP|MF_FIRE|MF_MISSILE, // flags
|
||||||
S_NULL // raisestate
|
S_NULL // raisestate
|
||||||
},
|
},
|
||||||
|
|
||||||
|
@ -14615,33 +14609,6 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
S_NULL // raisestate
|
S_NULL // raisestate
|
||||||
},
|
},
|
||||||
|
|
||||||
{ // MT_FIRETRAIL
|
|
||||||
-1, // doomednum
|
|
||||||
S_FIRETRAIL1, // spawnstate
|
|
||||||
1000, // spawnhealth
|
|
||||||
S_NULL, // seestate
|
|
||||||
sfx_None, // seesound
|
|
||||||
8, // reactiontime
|
|
||||||
sfx_None, // attacksound
|
|
||||||
S_NULL, // painstate
|
|
||||||
0, // painchance
|
|
||||||
sfx_None, // painsound
|
|
||||||
S_NULL, // meleestate
|
|
||||||
S_NULL, // missilestate
|
|
||||||
S_NULL, // deathstate
|
|
||||||
S_NULL, // xdeathstate
|
|
||||||
sfx_None, // deathsound
|
|
||||||
8, // speed
|
|
||||||
20*FRACUNIT, // radius
|
|
||||||
16*FRACUNIT, // height
|
|
||||||
0, // display offset
|
|
||||||
100, // mass
|
|
||||||
0, // damage
|
|
||||||
sfx_None, // activesound
|
|
||||||
MF_NOBLOCKMAP|MF_NOGRAVITY|MF_NOCLIP|MF_SCENERY, // flags
|
|
||||||
S_NULL // raisestate
|
|
||||||
},
|
|
||||||
|
|
||||||
{ // MT_JAWZ
|
{ // MT_JAWZ
|
||||||
-1, // doomednum
|
-1, // doomednum
|
||||||
S_JAWZ1, // spawnstate
|
S_JAWZ1, // spawnstate
|
||||||
|
@ -14912,6 +14879,33 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
||||||
S_NULL // raisestate
|
S_NULL // raisestate
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{ // MT_BALLHOG
|
||||||
|
-1, // doomednum
|
||||||
|
S_FIREBALL1, // spawnstate
|
||||||
|
140, // spawnhealth
|
||||||
|
S_NULL, // seestate
|
||||||
|
sfx_None, // seesound
|
||||||
|
8, // reactiontime
|
||||||
|
sfx_None, // attacksound
|
||||||
|
S_NULL, // painstate
|
||||||
|
0, // painchance
|
||||||
|
sfx_None, // painsound
|
||||||
|
S_NULL, // meleestate
|
||||||
|
S_NULL, // missilestate
|
||||||
|
S_FIREBALLEXP1, // deathstate
|
||||||
|
S_NULL, // xdeathstate
|
||||||
|
sfx_mario1, // deathsound
|
||||||
|
0, // speed
|
||||||
|
16*FRACUNIT, // radius
|
||||||
|
32*FRACUNIT, // height
|
||||||
|
0, // display offset
|
||||||
|
100, // mass
|
||||||
|
1, // damage
|
||||||
|
sfx_None, // activesound
|
||||||
|
MF_SHOOTABLE|MF_BOUNCE, // flags
|
||||||
|
S_NULL // raisestate
|
||||||
|
},
|
||||||
|
|
||||||
{ // MT_BLUELIGHTNING
|
{ // MT_BLUELIGHTNING
|
||||||
-1, // doomednum
|
-1, // doomednum
|
||||||
S_BLUELIGHTNING1, // spawnstate
|
S_BLUELIGHTNING1, // spawnstate
|
||||||
|
|
|
@ -2649,15 +2649,9 @@ typedef enum state
|
||||||
S_FIREBALL2,
|
S_FIREBALL2,
|
||||||
S_FIREBALL3,
|
S_FIREBALL3,
|
||||||
S_FIREBALL4,
|
S_FIREBALL4,
|
||||||
S_FIREBALL5,
|
|
||||||
S_FIREBALL6,
|
|
||||||
S_FIREBALL7,
|
|
||||||
S_FIREBALLEXP1,
|
S_FIREBALLEXP1,
|
||||||
S_FIREBALLEXP2,
|
S_FIREBALLEXP2,
|
||||||
S_FIREBALLEXP3,
|
S_FIREBALLEXP3,
|
||||||
S_FIREBALLEXP4,
|
|
||||||
S_FIREBALLEXP5,
|
|
||||||
S_FIREBALLEXP6,
|
|
||||||
S_SHELL,
|
S_SHELL,
|
||||||
S_SHELL1,
|
S_SHELL1,
|
||||||
S_SHELL2,
|
S_SHELL2,
|
||||||
|
@ -3999,7 +3993,6 @@ typedef enum mobj_type
|
||||||
|
|
||||||
MT_GREENSHIELD, // Orbinaut stuff
|
MT_GREENSHIELD, // Orbinaut stuff
|
||||||
MT_GREENITEM,
|
MT_GREENITEM,
|
||||||
MT_FIRETRAIL,
|
|
||||||
|
|
||||||
MT_JAWZ, // Jawz stuff
|
MT_JAWZ, // Jawz stuff
|
||||||
MT_JAWZ_DUD,
|
MT_JAWZ_DUD,
|
||||||
|
@ -4014,6 +4007,8 @@ typedef enum mobj_type
|
||||||
MT_BOOMEXPLODE,
|
MT_BOOMEXPLODE,
|
||||||
MT_BOOMPARTICLE,
|
MT_BOOMPARTICLE,
|
||||||
|
|
||||||
|
MT_BALLHOG, // Ballhog
|
||||||
|
|
||||||
MT_BLUELIGHTNING, // Grow/shrink stuff
|
MT_BLUELIGHTNING, // Grow/shrink stuff
|
||||||
MT_BLUEEXPLOSION,
|
MT_BLUEEXPLOSION,
|
||||||
MT_LIGHTNING,
|
MT_LIGHTNING,
|
||||||
|
|
|
@ -2128,7 +2128,7 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
|
||||||
|
|
||||||
if (missile) // Shootables
|
if (missile) // Shootables
|
||||||
{
|
{
|
||||||
if (mapthing == MT_FIREBALL) // Messy
|
if (mapthing == MT_BALLHOG) // Messy
|
||||||
{
|
{
|
||||||
if (dir == -1)
|
if (dir == -1)
|
||||||
{
|
{
|
||||||
|
@ -3288,7 +3288,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
if (ATTACK_IS_DOWN && !HOLDING_ITEM && NO_HYUDORO)
|
if (ATTACK_IS_DOWN && !HOLDING_ITEM && NO_HYUDORO)
|
||||||
{
|
{
|
||||||
player->kartstuff[k_itemamount]--;
|
player->kartstuff[k_itemamount]--;
|
||||||
K_ThrowKartItem(player, true, MT_FIREBALL, 1, false);
|
K_ThrowKartItem(player, true, MT_BALLHOG, 1, false);
|
||||||
S_StartSound(player->mo, sfx_mario7);
|
S_StartSound(player->mo, sfx_mario7);
|
||||||
K_PlayTauntSound(player->mo);
|
K_PlayTauntSound(player->mo);
|
||||||
}
|
}
|
||||||
|
|
|
@ -8270,7 +8270,7 @@ void A_JawzExplode(mobj_t *actor)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
truc = P_SpawnMobj(actor->x, actor->y, actor->z, MT_BOOMEXPLODE);
|
truc = P_SpawnMobj(actor->x, actor->y, actor->z, MT_BOOMEXPLODE);
|
||||||
truc->scale = actor->scale;
|
truc->scale = actor->scale*2;
|
||||||
truc->color = SKINCOLOR_RED;
|
truc->color = SKINCOLOR_RED;
|
||||||
|
|
||||||
while (shrapnel)
|
while (shrapnel)
|
||||||
|
@ -8279,7 +8279,7 @@ void A_JawzExplode(mobj_t *actor)
|
||||||
|
|
||||||
truc = P_SpawnMobj(actor->x + P_RandomRange(-8, 8)*FRACUNIT, actor->y + P_RandomRange(-8, 8)*FRACUNIT,
|
truc = P_SpawnMobj(actor->x + P_RandomRange(-8, 8)*FRACUNIT, actor->y + P_RandomRange(-8, 8)*FRACUNIT,
|
||||||
actor->z + P_RandomRange(0, 8)*FRACUNIT, MT_BOOMPARTICLE);
|
actor->z + P_RandomRange(0, 8)*FRACUNIT, MT_BOOMPARTICLE);
|
||||||
truc->scale = actor->scale;
|
truc->scale = actor->scale*2;
|
||||||
|
|
||||||
speed = FixedMul(7*FRACUNIT, actor->scale)>>FRACBITS;
|
speed = FixedMul(7*FRACUNIT, actor->scale)>>FRACBITS;
|
||||||
truc->momx = P_RandomRange(-speed, speed)*FRACUNIT;
|
truc->momx = P_RandomRange(-speed, speed)*FRACUNIT;
|
||||||
|
|
|
@ -2080,7 +2080,7 @@ void P_KillMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source)
|
||||||
|| target->type == MT_JAWZ || target->type == MT_JAWZ_DUD || target->type == MT_JAWZ_SHIELD
|
|| target->type == MT_JAWZ || target->type == MT_JAWZ_DUD || target->type == MT_JAWZ_SHIELD
|
||||||
|| target->type == MT_BANANA || target->type == MT_BANANA_SHIELD
|
|| target->type == MT_BANANA || target->type == MT_BANANA_SHIELD
|
||||||
|| target->type == MT_FAKEITEM || target->type == MT_FAKESHIELD
|
|| target->type == MT_FAKEITEM || target->type == MT_FAKESHIELD
|
||||||
|| target->type == MT_FIREBALL)) // kart dead items
|
|| target->type == MT_BALLHOG)) // kart dead items
|
||||||
target->flags |= MF_NOGRAVITY; // Don't drop Tails 03-08-2000
|
target->flags |= MF_NOGRAVITY; // Don't drop Tails 03-08-2000
|
||||||
else
|
else
|
||||||
target->flags &= ~MF_NOGRAVITY; // lose it if you for whatever reason have it, I'm looking at you shields
|
target->flags &= ~MF_NOGRAVITY; // lose it if you for whatever reason have it, I'm looking at you shields
|
||||||
|
|
14
src/p_map.c
14
src/p_map.c
|
@ -702,7 +702,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
else if (thing->type == MT_GREENITEM || thing->type == MT_JAWZ || thing->type == MT_JAWZ_DUD
|
else if (thing->type == MT_GREENITEM || thing->type == MT_JAWZ || thing->type == MT_JAWZ_DUD
|
||||||
|| thing->type == MT_GREENSHIELD || thing->type == MT_JAWZ_SHIELD
|
|| thing->type == MT_GREENSHIELD || thing->type == MT_JAWZ_SHIELD
|
||||||
|| thing->type == MT_BANANA || thing->type == MT_BANANA_SHIELD
|
|| thing->type == MT_BANANA || thing->type == MT_BANANA_SHIELD
|
||||||
|| thing->type == MT_FIREBALL)
|
|| thing->type == MT_BALLHOG)
|
||||||
{
|
{
|
||||||
// Other Item Damage
|
// Other Item Damage
|
||||||
if (thing->eflags & MFE_VERTICALFLIP)
|
if (thing->eflags & MFE_VERTICALFLIP)
|
||||||
|
@ -850,7 +850,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
return true; // This doesn't collide with anything, but we want it to effect the player anyway.
|
return true; // This doesn't collide with anything, but we want it to effect the player anyway.
|
||||||
}
|
}
|
||||||
else if (tmthing->type == MT_BANANA_SHIELD || tmthing->type == MT_BANANA
|
else if (tmthing->type == MT_BANANA_SHIELD || tmthing->type == MT_BANANA
|
||||||
|| tmthing->type == MT_FIREBALL)
|
|| tmthing->type == MT_BALLHOG)
|
||||||
{
|
{
|
||||||
// see if it went over / under
|
// see if it went over / under
|
||||||
if (tmthing->z > thing->z + thing->height)
|
if (tmthing->z > thing->z + thing->height)
|
||||||
|
@ -868,7 +868,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
&& (tmthing->target == thing->target)) // Don't hit each other if you have the same target
|
&& (tmthing->target == thing->target)) // Don't hit each other if you have the same target
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (tmthing->type == MT_FIREBALL && thing->type == MT_FIREBALL)
|
if (tmthing->type == MT_BALLHOG && thing->type == MT_BALLHOG)
|
||||||
return true; // Fireballs don't collide with eachother
|
return true; // Fireballs don't collide with eachother
|
||||||
|
|
||||||
if (thing->player && thing->player->powers[pw_flashing])
|
if (thing->player && thing->player->powers[pw_flashing])
|
||||||
|
@ -894,7 +894,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
else if (thing->type == MT_BANANA || thing->type == MT_BANANA_SHIELD
|
else if (thing->type == MT_BANANA || thing->type == MT_BANANA_SHIELD
|
||||||
|| thing->type == MT_GREENITEM || thing->type == MT_GREENSHIELD
|
|| thing->type == MT_GREENITEM || thing->type == MT_GREENSHIELD
|
||||||
|| thing->type == MT_JAWZ || thing->type == MT_JAWZ_DUD || thing->type == MT_JAWZ_SHIELD
|
|| thing->type == MT_JAWZ || thing->type == MT_JAWZ_DUD || thing->type == MT_JAWZ_SHIELD
|
||||||
|| thing->type == MT_FIREBALL)
|
|| thing->type == MT_BALLHOG)
|
||||||
{
|
{
|
||||||
// Other Item Damage
|
// Other Item Damage
|
||||||
if (thing->eflags & MFE_VERTICALFLIP)
|
if (thing->eflags & MFE_VERTICALFLIP)
|
||||||
|
@ -975,7 +975,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
if (thing->type == MT_GREENITEM // When these items collide with the fake item, just the fake item is destroyed
|
if (thing->type == MT_GREENITEM // When these items collide with the fake item, just the fake item is destroyed
|
||||||
|| thing->type == MT_JAWZ || thing->type == MT_JAWZ_DUD
|
|| thing->type == MT_JAWZ || thing->type == MT_JAWZ_DUD
|
||||||
|| thing->type == MT_SSMINE
|
|| thing->type == MT_SSMINE
|
||||||
|| thing->type == MT_BANANA || thing->type == MT_FIREBALL)
|
|| thing->type == MT_BANANA || thing->type == MT_BALLHOG)
|
||||||
{
|
{
|
||||||
// This Item Damage
|
// This Item Damage
|
||||||
if (tmthing->eflags & MFE_VERTICALFLIP)
|
if (tmthing->eflags & MFE_VERTICALFLIP)
|
||||||
|
@ -1089,7 +1089,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
|| thing->type == MT_BANANA_SHIELD || thing->type == MT_BANANA
|
|| thing->type == MT_BANANA_SHIELD || thing->type == MT_BANANA
|
||||||
|| thing->type == MT_SSMINE_SHIELD || thing->type == MT_SSMINE
|
|| thing->type == MT_SSMINE_SHIELD || thing->type == MT_SSMINE
|
||||||
|| thing->type == MT_MINEEXPLOSION
|
|| thing->type == MT_MINEEXPLOSION
|
||||||
|| thing->type == MT_SINK || thing->type == MT_FIREBALL
|
|| thing->type == MT_SINK || thing->type == MT_BALLHOG
|
||||||
))
|
))
|
||||||
{
|
{
|
||||||
// see if it went over / under
|
// see if it went over / under
|
||||||
|
@ -1131,7 +1131,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
P_InstaThrust(thing, R_PointToAngle2(tmthing->x, tmthing->y, thing->x, thing->y)+ANGLE_90, 16*FRACUNIT);
|
P_InstaThrust(thing, R_PointToAngle2(tmthing->x, tmthing->y, thing->x, thing->y)+ANGLE_90, 16*FRACUNIT);
|
||||||
}
|
}
|
||||||
else if (thing->type == MT_BANANA_SHIELD || thing->type == MT_BANANA
|
else if (thing->type == MT_BANANA_SHIELD || thing->type == MT_BANANA
|
||||||
|| thing->type == MT_FIREBALL)
|
|| thing->type == MT_BALLHOG)
|
||||||
{
|
{
|
||||||
if ((thing->target == tmthing) && (thing->threshold > 0))
|
if ((thing->target == tmthing) && (thing->threshold > 0))
|
||||||
return true;
|
return true;
|
||||||
|
|
18
src/p_mobj.c
18
src/p_mobj.c
|
@ -1724,7 +1724,7 @@ void P_XYMovement(mobj_t *mo)
|
||||||
P_PushableCheckBustables(mo);
|
P_PushableCheckBustables(mo);
|
||||||
|
|
||||||
//{ SRB2kart - Fireball
|
//{ SRB2kart - Fireball
|
||||||
if (mo->type == MT_FIREBALL)
|
if (mo->type == MT_BALLHOG)
|
||||||
{
|
{
|
||||||
mo->health--;
|
mo->health--;
|
||||||
if (mo->health == 0)
|
if (mo->health == 0)
|
||||||
|
@ -1862,7 +1862,7 @@ void P_XYMovement(mobj_t *mo)
|
||||||
// draw damage on wall
|
// draw damage on wall
|
||||||
//SPLAT TEST ----------------------------------------------------------
|
//SPLAT TEST ----------------------------------------------------------
|
||||||
#ifdef WALLSPLATS
|
#ifdef WALLSPLATS
|
||||||
if (blockingline && mo->type != MT_REDRING //&& mo->type != MT_FIREBALL
|
if (blockingline && mo->type != MT_REDRING && mo->type != MT_FIREBALL
|
||||||
&& !(mo->flags2 & (MF2_AUTOMATIC|MF2_RAILRING|MF2_BOUNCERING|MF2_EXPLOSION|MF2_SCATTER)))
|
&& !(mo->flags2 & (MF2_AUTOMATIC|MF2_RAILRING|MF2_BOUNCERING|MF2_EXPLOSION|MF2_SCATTER)))
|
||||||
// set by last P_TryMove() that failed
|
// set by last P_TryMove() that failed
|
||||||
{
|
{
|
||||||
|
@ -1998,7 +1998,7 @@ void P_XYMovement(mobj_t *mo)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//{ SRB2kart stuff
|
//{ SRB2kart stuff
|
||||||
if (mo->type == MT_GREENITEM || mo->type == MT_JAWZ_DUD || mo->type == MT_JAWZ || mo->type == MT_FIREBALL) //(mo->type == MT_JAWZ && !mo->tracer))
|
if (mo->type == MT_GREENITEM || mo->type == MT_JAWZ_DUD || mo->type == MT_JAWZ || mo->type == MT_BALLHOG) //(mo->type == MT_JAWZ && !mo->tracer))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
if (mo->player && mo->player->kartstuff[k_spinouttimer] && mo->player->speed <= mo->player->normalspeed/2)
|
if (mo->player && mo->player->kartstuff[k_spinouttimer] && mo->player->speed <= mo->player->normalspeed/2)
|
||||||
|
@ -2333,7 +2333,7 @@ static boolean P_ZMovement(mobj_t *mo)
|
||||||
case MT_GREENITEM:
|
case MT_GREENITEM:
|
||||||
case MT_JAWZ:
|
case MT_JAWZ:
|
||||||
case MT_JAWZ_DUD:
|
case MT_JAWZ_DUD:
|
||||||
case MT_FIREBALL:
|
case MT_BALLHOG:
|
||||||
// Remove stuff from death pits.
|
// Remove stuff from death pits.
|
||||||
if (P_CheckDeathPitCollide(mo))
|
if (P_CheckDeathPitCollide(mo))
|
||||||
{
|
{
|
||||||
|
@ -7324,7 +7324,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
P_PushableThinker(mobj);
|
P_PushableThinker(mobj);
|
||||||
|
|
||||||
// Extinguish fire objects in water. (Yes, it's extraordinarily rare to have a pushable flame object, but Brak uses such a case.)
|
// Extinguish fire objects in water. (Yes, it's extraordinarily rare to have a pushable flame object, but Brak uses such a case.)
|
||||||
if (mobj->flags & MF_FIRE && mobj->type != MT_PUMA //&& mobj->type != MT_FIREBALL
|
if (mobj->flags & MF_FIRE && mobj->type != MT_PUMA && mobj->type != MT_FIREBALL
|
||||||
&& (mobj->eflags & (MFE_UNDERWATER|MFE_TOUCHWATER)))
|
&& (mobj->eflags & (MFE_UNDERWATER|MFE_TOUCHWATER)))
|
||||||
{
|
{
|
||||||
P_KillMobj(mobj, NULL, NULL);
|
P_KillMobj(mobj, NULL, NULL);
|
||||||
|
@ -8119,9 +8119,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
if (mobj->threshold > 0)
|
if (mobj->threshold > 0)
|
||||||
mobj->threshold--;
|
mobj->threshold--;
|
||||||
break;
|
break;
|
||||||
case MT_FIREBALL:
|
case MT_BALLHOG:
|
||||||
var1 = MT_FIRETRAIL;
|
|
||||||
A_SmokeTrailer(mobj);
|
|
||||||
if (mobj->threshold > 0)
|
if (mobj->threshold > 0)
|
||||||
mobj->threshold--;
|
mobj->threshold--;
|
||||||
break;
|
break;
|
||||||
|
@ -8348,7 +8346,7 @@ void P_MobjThinker(mobj_t *mobj)
|
||||||
P_MobjCheckWater(mobj);
|
P_MobjCheckWater(mobj);
|
||||||
|
|
||||||
// Extinguish fire objects in water
|
// Extinguish fire objects in water
|
||||||
if (mobj->flags & MF_FIRE && mobj->type != MT_PUMA //&& mobj->type != MT_FIREBALL
|
if (mobj->flags & MF_FIRE && mobj->type != MT_PUMA && mobj->type != MT_FIREBALL
|
||||||
&& (mobj->eflags & (MFE_UNDERWATER|MFE_TOUCHWATER)))
|
&& (mobj->eflags & (MFE_UNDERWATER|MFE_TOUCHWATER)))
|
||||||
{
|
{
|
||||||
P_KillMobj(mobj, NULL, NULL);
|
P_KillMobj(mobj, NULL, NULL);
|
||||||
|
@ -9082,7 +9080,7 @@ mobj_t *P_SpawnMobj(fixed_t x, fixed_t y, fixed_t z, mobjtype_t type)
|
||||||
case MT_GREENITEM: case MT_GREENSHIELD:
|
case MT_GREENITEM: case MT_GREENSHIELD:
|
||||||
case MT_JAWZ: case MT_JAWZ_DUD: case MT_JAWZ_SHIELD:
|
case MT_JAWZ: case MT_JAWZ_DUD: case MT_JAWZ_SHIELD:
|
||||||
case MT_SSMINE: case MT_SSMINE_SHIELD:
|
case MT_SSMINE: case MT_SSMINE_SHIELD:
|
||||||
case MT_FIREBALL: case MT_SINK:
|
case MT_BALLHOG: case MT_SINK:
|
||||||
P_SpawnShadowMobj(mobj);
|
P_SpawnShadowMobj(mobj);
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -7657,7 +7657,7 @@ void P_NukeEnemies(mobj_t *inflictor, mobj_t *source, fixed_t radius)
|
||||||
|| mo->type == MT_GREENSHIELD || mo->type == MT_JAWZ_SHIELD
|
|| mo->type == MT_GREENSHIELD || mo->type == MT_JAWZ_SHIELD
|
||||||
|| mo->type == MT_BANANA || mo->type == MT_BANANA_SHIELD
|
|| mo->type == MT_BANANA || mo->type == MT_BANANA_SHIELD
|
||||||
|| mo->type == MT_FAKEITEM || mo->type == MT_FAKESHIELD
|
|| mo->type == MT_FAKEITEM || mo->type == MT_FAKESHIELD
|
||||||
|| mo->type == MT_FIREBALL)
|
|| mo->type == MT_BALLHOG)
|
||||||
{
|
{
|
||||||
if (mo->eflags & MFE_VERTICALFLIP)
|
if (mo->eflags & MFE_VERTICALFLIP)
|
||||||
mo->z -= mo->height;
|
mo->z -= mo->height;
|
||||||
|
|
Loading…
Reference in a new issue