mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-03-20 01:43:50 +00:00
Adapt diagonal springs to UDMF
This commit is contained in:
parent
fd3fa9a924
commit
43a15387d2
4 changed files with 54 additions and 6 deletions
|
@ -4722,6 +4722,16 @@ udmf
|
|||
title = "Diagonal Yellow Spring";
|
||||
sprite = "YSPRD2";
|
||||
width = 16;
|
||||
arg0
|
||||
{
|
||||
title = "Flags";
|
||||
type = 12;
|
||||
enum
|
||||
{
|
||||
1 = "Ignore gravity";
|
||||
2 = "Rotate 22.5° CCW";
|
||||
}
|
||||
}
|
||||
}
|
||||
556
|
||||
{
|
||||
|
@ -4729,6 +4739,16 @@ udmf
|
|||
title = "Diagonal Red Spring";
|
||||
sprite = "RSPRD2";
|
||||
width = 16;
|
||||
arg0
|
||||
{
|
||||
title = "Flags";
|
||||
type = 12;
|
||||
enum
|
||||
{
|
||||
1 = "Ignore gravity";
|
||||
2 = "Rotate 22.5° CCW";
|
||||
}
|
||||
}
|
||||
}
|
||||
557
|
||||
{
|
||||
|
@ -4736,6 +4756,16 @@ udmf
|
|||
title = "Diagonal Blue Spring";
|
||||
sprite = "BSPRD2";
|
||||
width = 16;
|
||||
arg0
|
||||
{
|
||||
title = "Flags";
|
||||
type = 12;
|
||||
enum
|
||||
{
|
||||
1 = "Ignore gravity";
|
||||
2 = "Rotate 22.5° CCW";
|
||||
}
|
||||
}
|
||||
}
|
||||
558
|
||||
{
|
||||
|
|
16
src/p_mobj.c
16
src/p_mobj.c
|
@ -13050,6 +13050,16 @@ static boolean P_SetupSpawnedMapThing(mapthing_t *mthing, mobj_t *mobj, boolean
|
|||
if (maptol & TOL_XMAS)
|
||||
P_SetMobjState(mobj, mobj->info->seestate);
|
||||
break;
|
||||
case MT_YELLOWDIAG:
|
||||
case MT_REDDIAG:
|
||||
case MT_BLUEDIAG:
|
||||
mobj->angle = FixedAngle(mthing->angle << FRACBITS);
|
||||
if (mthing->args[0] & TMDS_NOGRAVITY)
|
||||
mobj->flags |= MF_NOGRAVITY;
|
||||
if (mthing->args[0] & TMDS_ROTATEEXTRA)
|
||||
mobj->angle += ANGLE_22h;
|
||||
*doangle = false;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
@ -13065,9 +13075,6 @@ static boolean P_SetupSpawnedMapThing(mapthing_t *mthing, mobj_t *mobj, boolean
|
|||
|
||||
static void P_SetAmbush(mobj_t *mobj)
|
||||
{
|
||||
if (mobj->type == MT_YELLOWDIAG || mobj->type == MT_REDDIAG || mobj->type == MT_BLUEDIAG)
|
||||
mobj->angle += ANGLE_22h;
|
||||
|
||||
if (mobj->flags & MF_NIGHTSITEM)
|
||||
{
|
||||
// Spawn already displayed
|
||||
|
@ -13095,9 +13102,6 @@ static void P_SetAmbush(mobj_t *mobj)
|
|||
|
||||
static void P_SetObjectSpecial(mobj_t *mobj)
|
||||
{
|
||||
if (mobj->type == MT_YELLOWDIAG || mobj->type == MT_REDDIAG || mobj->type == MT_BLUEDIAG)
|
||||
mobj->flags |= MF_NOGRAVITY;
|
||||
|
||||
if ((mobj->flags & MF_MONITOR) && mobj->info->speed != 0)
|
||||
{
|
||||
// flag for strong/weak random boxes
|
||||
|
|
|
@ -4990,6 +4990,14 @@ static void P_ConvertBinaryMap(void)
|
|||
if (mapthings[i].options & MTF_AMBUSH)
|
||||
mapthings[i].args[2] |= TMSF_INTANGIBLE;
|
||||
break;
|
||||
case 555: //Diagonal yellow spring
|
||||
case 556: //Diagonal red spring
|
||||
case 557: //Diagonal blue spring
|
||||
if (mapthings[i].options & MTF_OBJECTSPECIAL)
|
||||
mapthings[i].args[0] |= TMDS_NOGRAVITY;
|
||||
if (mapthings[i].options & MTF_AMBUSH)
|
||||
mapthings[i].args[0] |= TMDS_ROTATEEXTRA;
|
||||
break;
|
||||
case 750: //Slope vertex
|
||||
mapthings[i].args[0] = mapthings[i].extrainfo;
|
||||
break;
|
||||
|
|
|
@ -63,6 +63,12 @@ typedef enum
|
|||
TMFH_CORONA = 1<<1,
|
||||
} textmapflameholderflags_t;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
TMDS_NOGRAVITY = 1,
|
||||
TMDS_ROTATEEXTRA = 1<<1,
|
||||
} textmapdiagonalspringflags_t;
|
||||
|
||||
//FOF flags
|
||||
typedef enum
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue