- WHaven: Uplift sector/wall x/y panning in line with changes from d545eb7aa9 and 2cd3927613.

This commit is contained in:
Mitchell Richters 2021-01-01 17:44:59 +11:00
parent a515426c68
commit a8d8335e2b
2 changed files with 19 additions and 17 deletions

View file

@ -94,6 +94,8 @@ struct walltype
int xpan() const { return int(xpan_); }
int ypan() const { return int(ypan_); }
void setxpan(float val) { xpan_ = fmod(val + 512, 256); } // +512 is for handling negative offsets
void setypan(float val) { ypan_ = fmod(val + 512, 256); } // +512 is for handling negative offsets
void addxpan(float add) { xpan_ = fmod(xpan_ + add + 512, 256); } // +512 is for handling negative offsets
void addypan(float add) { ypan_ = fmod(ypan_ + add + 512, 256); } // +512 is for handling negative offsets

View file

@ -302,7 +302,7 @@ void movewater(uint8_t* dapic) {
void skypanfx() {
for (int i = 0; i < skypancnt; i++) {
sector[skypanlist[i]].ceilingxpanning = (short) -((lockclock >> 2) & 255);
sector[skypanlist[i]].setceilingxpan(-((lockclock >> 2) & 255));
}
}
@ -312,36 +312,36 @@ void panningfx() {
switch (whichdir) {
case 0:
sector[floorpanninglist[i]].floorypanning = (short) ((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorypan(((lockclock >> 2) & 255));
break;
case 1:
sector[floorpanninglist[i]].floorxpanning = (short) -((lockclock >> 2) & 255);
sector[floorpanninglist[i]].floorypanning = (short) ((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorxpan(-((lockclock >> 2) & 255));
sector[floorpanninglist[i]].setfloorypan(((lockclock >> 2) & 255));
break;
case 2:
sector[floorpanninglist[i]].floorxpanning = (short) -((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorxpan(-((lockclock >> 2) & 255));
break;
case 3:
sector[floorpanninglist[i]].floorxpanning = (short) -((lockclock >> 2) & 255);
sector[floorpanninglist[i]].floorypanning = (short) -((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorxpan(-((lockclock >> 2) & 255));
sector[floorpanninglist[i]].setfloorypan(-((lockclock >> 2) & 255));
break;
case 4:
sector[floorpanninglist[i]].floorypanning = (short) -((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorypan(-((lockclock >> 2) & 255));
break;
case 5:
sector[floorpanninglist[i]].floorxpanning = (short) ((lockclock >> 2) & 255);
sector[floorpanninglist[i]].floorypanning = (short) -((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorxpan(((lockclock >> 2) & 255));
sector[floorpanninglist[i]].setfloorypan(-((lockclock >> 2) & 255));
break;
case 6:
sector[floorpanninglist[i]].floorxpanning = (short) ((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorxpan(((lockclock >> 2) & 255));
break;
case 7:
sector[floorpanninglist[i]].floorxpanning = (short) ((lockclock >> 2) & 255);
sector[floorpanninglist[i]].floorypanning = (short) ((lockclock >> 2) & 255);
sector[floorpanninglist[i]].setfloorxpan(((lockclock >> 2) & 255));
sector[floorpanninglist[i]].setfloorypan(((lockclock >> 2) & 255));
break;
default:
sector[floorpanninglist[i]].floorxpanning = 0;
sector[floorpanninglist[i]].floorypanning = 0;
sector[floorpanninglist[i]].setfloorxpan(0);
sector[floorpanninglist[i]].setfloorypan(0);
break;
}
}
@ -351,11 +351,11 @@ void panningfx() {
int startwall = sector[dasector].wallptr;
int endwall = startwall + sector[dasector].wallnum - 1;
for (int s = startwall; s <= endwall; s++)
wall[s].xpanning = (short) ((lockclock >> 2) & 255);
wall[s].setxpan((lockclock >> 2) & 255);
}
for (int i = 0; i < ypanningwallcnt; i++)
wall[ypanningwalllist[i]].ypanning = (short) ~(lockclock & 255);
wall[ypanningwalllist[i]].setypan(~(lockclock & 255));
}
void revolvefx() {