- RRRA: Sector effector type 156 is not supposed to scroll the floor texture.

This commit is contained in:
Christoph Oelckers 2021-04-07 18:12:25 +02:00
parent 4a6a999f89
commit 68b7628f56
5 changed files with 7 additions and 6 deletions

View file

@ -4505,7 +4505,7 @@ void handle_se27(DDukeActor* actor)
//
//---------------------------------------------------------------------------
void handle_se24(DDukeActor *actor, int16_t *list1, int16_t *list2, int TRIPBOMB, int LASERLINE, int CRANE, int shift)
void handle_se24(DDukeActor *actor, int16_t *list1, int16_t *list2, bool scroll, int TRIPBOMB, int LASERLINE, int CRANE, int shift)
{
int* t = &actor->temp_data[0];
@ -4575,7 +4575,7 @@ void handle_se24(DDukeActor *actor, int16_t *list1, int16_t *list2, int TRIPBOMB
}
}
}
sector[actor->s.sectnum].addfloorxpan(actor->s.yvel / 128.f);
if (scroll) sector[actor->s.sectnum].addfloorxpan(actor->s.yvel / 128.f);
}
//---------------------------------------------------------------------------

View file

@ -3697,7 +3697,7 @@ void moveeffectors_d(void) //STATNUM 3
{
static int16_t list1[] = { BLOODPOOL, PUKE, FOOTPRINTS, FOOTPRINTS2, FOOTPRINTS3, FOOTPRINTS4, BULLETHOLE, BLOODSPLAT1, BLOODSPLAT2, BLOODSPLAT3, BLOODSPLAT4, -1 };
static int16_t list2[] = { BOLT1, BOLT1 + 1,BOLT1 + 2, BOLT1 + 3, SIDEBOLT1, SIDEBOLT1 + 1, SIDEBOLT1 + 2, SIDEBOLT1 + 3, -1 };
handle_se24(act, list1, list2, TRIPBOMB, LASERLINE, CRANE, 2);
handle_se24(act, list1, list2, false, TRIPBOMB, LASERLINE, CRANE, 2);
break;
}
case SE_35:

View file

@ -3576,7 +3576,7 @@ void moveeffectors_r(void) //STATNUM 3
{
static int16_t list1[] = { BLOODPOOL, PUKE, FOOTPRINTS, FOOTPRINTS2, FOOTPRINTS3, -1 };
static int16_t list2[] = { BOLT1, BOLT1 + 1,BOLT1 + 2, BOLT1 + 3, -1 };
handle_se24(act, list1, list2, BULLETHOLE, -1, CRANE, 1);
handle_se24(act, list1, list2, st != 156, BULLETHOLE, -1, CRANE, 1);
break;
}

View file

@ -84,7 +84,7 @@ void handle_se19(DDukeActor* i, int BIGFORCE);
void handle_se20(DDukeActor* i);
void handle_se21(DDukeActor* i);
void handle_se22(DDukeActor* i);
void handle_se24(DDukeActor* actor, int16_t* list1, int16_t* list2, int TRIPBOMB, int LASERLINE, int CRANE, int shift);
void handle_se24(DDukeActor* actor, int16_t* list1, int16_t* list2, bool scroll, int TRIPBOMB, int LASERLINE, int CRANE, int shift);
void handle_se25(DDukeActor* a, int t_index, int snd1, int snd2);
void handle_se26(DDukeActor* i);
void handle_se27(DDukeActor* i);

View file

@ -785,7 +785,8 @@ void spawneffector(DDukeActor* actor)
break;
}
case 156:
if (!isRRRA()) break;
break;
case 34:
StartInterpolation(sect, Interp_Sect_FloorPanX);
break;