mirror of
https://github.com/ZDoom/Raze.git
synced 2025-03-13 04:24:39 +00:00
- WHaven: Uplift of ang to backend code.
This commit is contained in:
parent
3813913970
commit
249ea218f4
28 changed files with 80 additions and 87 deletions
|
@ -210,7 +210,7 @@ void aiProcess() {
|
|||
|
||||
PLAYER& plr = player[0];
|
||||
|
||||
// short daang = (short) plr.ang;
|
||||
// short daang = plr.angle.ang.asbuild();
|
||||
// int daz2 = -mulscale16(plr.horizon.horiz.asq16(), 2000);
|
||||
// hitscan(plr.x, plr.y, plr.z, plr.sector, // Start position
|
||||
// sintable[(daang + 2560) & 2047], // X vector of 3D ang
|
||||
|
@ -663,7 +663,8 @@ void attack(PLAYER& plr, int i) {
|
|||
|
||||
if (!droptheshield && plr.shieldpoints > 0 && plr.selectedgun > 0 && plr.selectedgun < 5) {
|
||||
short a = getangle(sprite[i].x - plr.x, sprite[i].y - plr.y);
|
||||
if ((a < plr.ang && plr.ang - a < 128) || (a > plr.ang && (((short)plr.ang + a) & 2047) < 128)) {
|
||||
auto ang = plr.angle.ang.asbuild();
|
||||
if ((a < ang && ang - a < 128) || (a > ang && ((ang + a) & 2047) < 128)) {
|
||||
if (krand() % 100 > 80) {
|
||||
spritesound(S_SWORD1 + krand() % 3, &sprite[plr.spritenum]);
|
||||
return;
|
||||
|
|
|
@ -83,7 +83,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = DEMON;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -83,7 +83,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = DEVIL;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -96,7 +96,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = FATWITCH;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -252,7 +252,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = FRED;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -110,7 +110,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = GOBLIN;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -298,7 +298,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.picnum = GONZOGSH;
|
||||
break;
|
||||
}
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -226,7 +226,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
else if (sprite[i].picnum == GRONMUPAIN)
|
||||
sprite[i].picnum = GRONMU;
|
||||
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -190,7 +190,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = GUARDIAN;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -103,7 +103,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = IMP;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -106,7 +106,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = JUDY;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -82,7 +82,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = KATIE;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -114,7 +114,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = KOBOLD;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -152,7 +152,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = MINOTAUR;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -171,7 +171,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = NEWGUY;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -93,7 +93,7 @@ static void pain(PLAYER& plr, short i) {
|
|||
spr.lotag -= TICSPERFRAME;
|
||||
if (spr.lotag < 0) {
|
||||
spr.picnum = SKULLY;
|
||||
spr.ang = (short)plr.ang;
|
||||
spr.ang = plr.angle.ang.asbuild();
|
||||
newstatus(i, FLEE);
|
||||
}
|
||||
|
||||
|
|
|
@ -91,7 +91,6 @@ int32_t registerosdcommands(void)
|
|||
for (int i = 0; i < 10; i++) if (ctrlGetInputKey(whcfg.keymap[i + WhKeys.Weapon_1.getNum()], true)) loc.bits |= (i + 1) << 8; //1 << 12 // weaponsel
|
||||
loc.bits |= whcfg.gMouseAim ? CtrlMouseAim : 0; ~SB_AIMMODE
|
||||
loc.bits |= ctrlGetInputKey(GameKeys.Open, true) ? CtrlOpen : 0; SB_OPEN
|
||||
loc.bits |= ctrlGetInputKey(GameKeys.Turn_Around, true) ? CtrlTurnAround : 0; SB_TURNAROUND
|
||||
loc.bits |= ctrlGetInputKey(WhKeys.Inventory_Use, true) ? CtrlInventory_Use : 0; SB_INVUSE
|
||||
loc.bits |= ctrlGetInputKey(WhKeys.Fly_up, false) ? CtrlFlyup : 0; // SB_FLYUP
|
||||
loc.bits |= ctrlGetInputKey(WhKeys.Fly_down, false) ? CtrlFlydown : 0; // SB_FLYDOWN
|
||||
|
@ -114,6 +113,10 @@ void GameInterface::clearlocalinputstate()
|
|||
lPlayerXVel = lPlayerYVel = 0;
|
||||
}
|
||||
|
||||
static void UpdatePlayerSpriteAngle(PLAYER& plr)
|
||||
{
|
||||
sprite[plr.spritenum].ang = plr.angle.ang.asbuild();
|
||||
}
|
||||
|
||||
void GameInterface::GetInput(InputPacket* packet, ControlInfo* const hidInput)
|
||||
{
|
||||
|
@ -164,8 +167,8 @@ void GameInterface::GetInput(InputPacket* packet, ControlInfo* const hidInput)
|
|||
if (packet)
|
||||
{
|
||||
double k = 0.92;
|
||||
double sin = calcSinTableValue(plr.ang);
|
||||
double cos = calcSinTableValue(plr.ang + 512);
|
||||
double sin = plr.angle.ang.fsin() * 16384.;
|
||||
double cos = plr.angle.ang.fcos() * 16384.;
|
||||
double xvel = (localInput.fvel * cos) + (localInput.svel * sin);
|
||||
double yvel = (localInput.fvel * sin) - (localInput.svel * cos);
|
||||
double len = sqrt(xvel * xvel + yvel * yvel);
|
||||
|
@ -207,6 +210,7 @@ void processinput(int num) {
|
|||
oldposx = plr.x;
|
||||
oldposy = plr.y;
|
||||
|
||||
plr.angle.resetadjustment();
|
||||
plr.horizon.resetadjustment();
|
||||
|
||||
auto& bits = plr.plInput.actions;
|
||||
|
@ -230,7 +234,7 @@ void processinput(int num) {
|
|||
|
||||
plr.plInput.fvel += (tics * damage_vel) << 14;
|
||||
plr.plInput.svel += (tics * damage_svel) << 14;
|
||||
plr.plInput.avel += damage_angvel;
|
||||
plr.angle.addadjustment(damage_angvel);
|
||||
|
||||
|
||||
if (damage_vel != 0)
|
||||
|
@ -303,16 +307,9 @@ void processinput(int num) {
|
|||
}
|
||||
}
|
||||
|
||||
if ((bits & SB_TURNAROUND) != 0)
|
||||
if (cl_syncinput)
|
||||
{
|
||||
if (plr.turnAround == 0)
|
||||
plr.turnAround = -1024;
|
||||
}
|
||||
|
||||
if (plr.turnAround < 0)
|
||||
{
|
||||
plr.turnAround = (short)std::min(plr.turnAround + 64, 0);
|
||||
plr.ang = BClampAngle(plr.ang + 64);
|
||||
applylook(&plr.angle, plr.plInput.avel, &bits, 1, bits & SB_CROUCH);
|
||||
}
|
||||
|
||||
if (plr.sector != -1 && ((sector[plr.sector].floorpicnum != LAVA || sector[plr.sector].floorpicnum != SLIME
|
||||
|
@ -431,13 +428,13 @@ void processinput(int num) {
|
|||
yvect = plr.plInput.svel;
|
||||
|
||||
// xvect = yvect = 0;
|
||||
// if (plr.pInput.fvel != 0) {
|
||||
// xvect = (int) (plr.pInput.fvel * tics * BCosAngle(plr.ang));
|
||||
// yvect = (int) (plr.pInput.fvel * tics * BSinAngle(plr.ang));
|
||||
// if (plr.plInput.fvel != 0) {
|
||||
// xvect = (int) (plr.plInput.fvel * tics * plr.angle.ang.bcos());
|
||||
// yvect = (int) (plr.plInput.fvel * tics * plr.angle.ang.bsin());
|
||||
// }
|
||||
// if (plr.pInput.svel != 0) {
|
||||
// xvect += (plr.pInput.svel * tics * BSinAngle(plr.ang));
|
||||
// yvect -= (plr.pInput.svel * tics * BCosAngle(plr.ang));
|
||||
// if (plr.plInput.svel != 0) {
|
||||
// xvect += (plr.plInput.svel * tics * plr.angle.ang.bsin());
|
||||
// yvect -= (plr.plInput.svel * tics * plr.angle.ang.bcos());
|
||||
// }
|
||||
|
||||
if (plr.noclip) {
|
||||
|
@ -586,14 +583,10 @@ void processinput(int num) {
|
|||
runningtime = 0;
|
||||
}
|
||||
}
|
||||
if (plr.plInput.avel != 0) {
|
||||
plr.ang += plr.plInput.avel * TICSPERFRAME / 16.0f;
|
||||
plr.ang = BClampAngle(plr.ang);
|
||||
}
|
||||
|
||||
//game.pInt.setsprinterpolate(plr.spritenum, sprite[plr.spritenum]);
|
||||
setsprite(plr.spritenum, plr.x, plr.y, plr.z + (plr.height << 8));
|
||||
sprite[plr.spritenum].ang = (short)plr.ang;
|
||||
UpdatePlayerSpriteAngle(plr);
|
||||
|
||||
if (plr.sector >= 0 && getceilzofslope(plr.sector, plr.x, plr.y) > getflorzofslope(plr.sector, plr.x, plr.y) - (8 << 8))
|
||||
addhealth(plr, -10);
|
||||
|
|
|
@ -10,7 +10,7 @@ struct PLAYER {
|
|||
InputPacket plInput;
|
||||
int spellnum;
|
||||
int x,y,z;
|
||||
float ang;
|
||||
PlayerAngle angle;
|
||||
PlayerHorizon horizon;
|
||||
int height;
|
||||
int hvel;
|
||||
|
@ -36,7 +36,6 @@ struct PLAYER {
|
|||
int fallz;
|
||||
|
||||
boolean dead;
|
||||
short turnAround;
|
||||
|
||||
int shadowtime;
|
||||
int helmettime;
|
||||
|
|
|
@ -16,8 +16,9 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly)
|
|||
int cposx = plr.x;
|
||||
int cposy = plr.y;
|
||||
int cposz = plr.z;
|
||||
float cang = plr.ang;
|
||||
binangle cang = plr.angle.sum();
|
||||
fixedhoriz choriz = plr.horizon.horiz + plr.horizon.interpolatedoff(dasmoothratio);
|
||||
lookangle crotscrnang = plr.angle.rotscrnang;
|
||||
|
||||
if (!paused)
|
||||
{
|
||||
|
@ -27,15 +28,12 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly)
|
|||
cposy = prevloc.y + mulscale16(cposy - prevloc.y, dasmoothratio);
|
||||
cposz = prevloc.z + mulscale16(cposz - prevloc.z, dasmoothratio);
|
||||
|
||||
float inAngle = prevloc.ang;
|
||||
inAngle += ((BClampAngle(cang - prevloc.ang + 1024) - 1024) * dasmoothratio) / 65536.0f;
|
||||
|
||||
if (cl_syncinput)
|
||||
{
|
||||
cang = plr.angle.interpolatedsum(dasmoothratio);
|
||||
choriz = plr.horizon.interpolatedsum(dasmoothratio);
|
||||
crotscrnang = plr.angle.interpolatedrotscrn(dasmoothratio);
|
||||
}
|
||||
|
||||
cang = inAngle;
|
||||
}
|
||||
|
||||
// wango
|
||||
|
@ -55,7 +53,7 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly)
|
|||
// Todo: render this with 30% light only.
|
||||
inpreparemirror = true;
|
||||
renderSetRollAngle(1024);
|
||||
renderDrawRoomsQ16(cposx, cposy, cposz, FloatToFixed(cang), choriz.asq16(), floormirrorsector[i]);
|
||||
renderDrawRoomsQ16(cposx, cposy, cposz, cang.asq16(), choriz.asq16(), floormirrorsector[i]);
|
||||
analyzesprites(plr, dasmoothratio);
|
||||
renderDrawMasks();
|
||||
renderSetRollAngle(0);
|
||||
|
@ -72,7 +70,10 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly)
|
|||
if (cposz > floorz - lz)
|
||||
cposz = floorz - lz;
|
||||
|
||||
renderDrawRoomsQ16(cposx, cposy, cposz, FloatToFixed(cang), choriz.asq16(), plr.sector);
|
||||
// do screen rotation.
|
||||
renderSetRollAngle(crotscrnang.asbam() / (double)(BAMUNIT));
|
||||
|
||||
renderDrawRoomsQ16(cposx, cposy, cposz, cang.asq16(), choriz.asq16(), plr.sector);
|
||||
analyzesprites(plr, dasmoothratio);
|
||||
renderDrawMasks();
|
||||
if (!sceneonly)
|
||||
|
@ -80,7 +81,7 @@ void drawscreen(int num, double dasmoothratio, bool sceneonly)
|
|||
DrawHud(dasmoothratio);
|
||||
if (automapMode != am_off)
|
||||
{
|
||||
DrawOverheadMap(cposx, cposy, int(cang));
|
||||
DrawOverheadMap(cposx, cposy, cang.asbuild());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -140,7 +140,7 @@ void GameInterface::UpdateSounds()
|
|||
|
||||
if (player[pyrn].spritenum >= 0)
|
||||
{
|
||||
listener.angle = -(float)player[pyrn].ang * pi::pi() / 1024; // Build uses a period of 2048.
|
||||
listener.angle = -FixedToFloat(player[pyrn].angle.ang.asq16()) * pi::pi() / 1024; // Build uses a period of 2048.
|
||||
listener.velocity.Zero();
|
||||
vec3_t ppos{ player[pyrn].x, player[pyrn].y, player[pyrn].z };
|
||||
listener.position = GetSoundPos(&ppos);
|
||||
|
|
|
@ -62,7 +62,7 @@ void castaorb(PLAYER& plr) {
|
|||
spritesound(S_GENERALMAGIC3, &sprite[plr.spritenum]);
|
||||
else
|
||||
spritesound(S_SPELL1, &sprite[plr.spritenum]);
|
||||
daang = plr.ang;
|
||||
daang = plr.angle.ang.asbuild();
|
||||
shootgun(plr, daang, 6);
|
||||
break;
|
||||
case 3: // MAGIC ARROW
|
||||
|
@ -71,7 +71,7 @@ void castaorb(PLAYER& plr) {
|
|||
spritesound(S_GENERALMAGIC2, &sprite[plr.spritenum]);
|
||||
}
|
||||
else {
|
||||
daang = BClampAngle(plr.ang - 36);
|
||||
daang = BClampAngle(plr.angle.ang.asbuild() - 36);
|
||||
for (k = 0; k < 10; k++) {
|
||||
daang = BClampAngle(daang + (k << 1));
|
||||
shootgun(plr, daang, 2);
|
||||
|
@ -80,7 +80,7 @@ void castaorb(PLAYER& plr) {
|
|||
}
|
||||
break;
|
||||
case 4: // OPEN DOORS
|
||||
daang = plr.ang;
|
||||
daang = plr.angle.ang.asbuild();
|
||||
shootgun(plr, daang, 7);
|
||||
if (isWh2())
|
||||
spritesound(S_DOORSPELL, &sprite[plr.spritenum]);
|
||||
|
@ -100,13 +100,13 @@ void castaorb(PLAYER& plr) {
|
|||
spritesound(S_FIRESPELL, &sprite[plr.spritenum]);
|
||||
}
|
||||
else {
|
||||
daang = plr.ang;
|
||||
daang = plr.angle.ang.asbuild();
|
||||
shootgun(plr, daang, 3);
|
||||
spritesound(S_SPELL1, &sprite[plr.spritenum]);
|
||||
}
|
||||
break;
|
||||
case 7: // NUKE
|
||||
daang = plr.ang;
|
||||
daang = plr.angle.ang.asbuild();
|
||||
shootgun(plr, daang, 4);
|
||||
if (isWh2())
|
||||
spritesound(S_NUKESPELL, &sprite[plr.spritenum]);
|
||||
|
@ -255,7 +255,7 @@ void nukespell(PLAYER& plr, short j) {
|
|||
sprite[j].cstat &= ~3;
|
||||
sprite[j].shade = 6;
|
||||
sprite[j].lotag = 360;
|
||||
sprite[j].ang = (short) plr.ang;
|
||||
sprite[j].ang = plr.angle.ang.asbuild();
|
||||
sprite[j].hitag = 0;
|
||||
addscore(&plr, 150);
|
||||
|
||||
|
|
|
@ -1609,7 +1609,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
|
|||
}
|
||||
newstatus(pHitInfo.hitsprite, DIE);
|
||||
}
|
||||
sprite[pHitInfo.hitsprite].ang = (short) (plr.ang + ((krand() & 32) - 64));
|
||||
sprite[pHitInfo.hitsprite].ang = plr.angle.ang.asbuild() + ((krand() & 32) - 64);
|
||||
if (sprite[pHitInfo.hitsprite].hitag > 0)
|
||||
newstatus(pHitInfo.hitsprite, PAIN);
|
||||
break;
|
||||
|
@ -1966,11 +1966,11 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
|
|||
sprite[j].z = plr.z + (24 << 8);
|
||||
sprite[j].cstat = 21;
|
||||
sprite[j].picnum = THROWPIKE;
|
||||
sprite[j].ang = (short) ((((int) plr.ang + 2048 + 96) - 512) & 2047);
|
||||
sprite[j].ang = ((plr.angle.ang.asbuild() + 2048 + 96) - 512) & 2047;
|
||||
sprite[j].xrepeat = 24;
|
||||
sprite[j].yrepeat = 24;
|
||||
sprite[j].clipdist = 32;
|
||||
sprite[j].extra = (short) plr.ang;
|
||||
sprite[j].extra = plr.angle.ang.asbuild();
|
||||
sprite[j].shade = -15;
|
||||
sprite[j].xvel = (short) ((krand() & 256) - 128);
|
||||
sprite[j].yvel = (short) ((krand() & 256) - 128);
|
||||
|
@ -1991,12 +1991,12 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
|
|||
sprite[j].cstat = 21;
|
||||
|
||||
sprite[j].picnum = THROWPIKE;
|
||||
sprite[j].ang = (short) BClampAngle((plr.ang + 96) - 512);
|
||||
sprite[j].ang = BClampAngle((plr.angle.ang.asbuild() + 96) - 512);
|
||||
sprite[j].xrepeat = 24;
|
||||
sprite[j].yrepeat = 24;
|
||||
sprite[j].clipdist = 24;
|
||||
|
||||
sprite[j].extra = (short) plr.ang;
|
||||
sprite[j].extra = plr.angle.ang.asbuild();
|
||||
sprite[j].shade = -15;
|
||||
sprite[j].xvel = (short) ((krand() & 256) - 128);
|
||||
sprite[j].yvel = (short) ((krand() & 256) - 128);
|
||||
|
@ -2055,11 +2055,11 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
|
|||
sprite[j].z = plr.z + (24 << 8);
|
||||
sprite[j].cstat = 21;
|
||||
sprite[j].picnum = THROWPIKE;
|
||||
sprite[j].ang = (short) ((((int) plr.ang + 2048 + 96) - 512) & 2047);
|
||||
sprite[j].ang = ((plr.angle.ang.asbuild() + 2048 + 96) - 512) & 2047;
|
||||
sprite[j].xrepeat = 24;
|
||||
sprite[j].yrepeat = 24;
|
||||
sprite[j].clipdist = 32;
|
||||
sprite[j].extra = (short) plr.ang;
|
||||
sprite[j].extra = plr.angle.ang.asbuild();
|
||||
sprite[j].shade = -15;
|
||||
sprite[j].xvel = (short) ((krand() & 256) - 128);
|
||||
sprite[j].yvel = (short) ((krand() & 256) - 128);
|
||||
|
@ -2079,12 +2079,12 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
|
|||
sprite[j].cstat = 21;
|
||||
|
||||
sprite[j].picnum = THROWPIKE;
|
||||
sprite[j].ang = (short) BClampAngle((plr.ang) - 512);
|
||||
sprite[j].ang = BClampAngle(plr.angle.ang.asbuild() - 512);
|
||||
sprite[j].xrepeat = 24;
|
||||
sprite[j].yrepeat = 24;
|
||||
sprite[j].clipdist = 24;
|
||||
|
||||
sprite[j].extra = (short) plr.ang;
|
||||
sprite[j].extra = plr.angle.ang.asbuild();
|
||||
sprite[j].shade = -15;
|
||||
sprite[j].xvel = (short) ((krand() & 256) - 128);
|
||||
sprite[j].yvel = (short) ((krand() & 256) - 128);
|
||||
|
@ -2151,7 +2151,7 @@ void shootgun(PLAYER& plr, float ang, int guntype) {
|
|||
sprite[j].pal = 0;
|
||||
sprite[j].xrepeat = 64;
|
||||
sprite[j].yrepeat = 64;
|
||||
sprite[j].ang = (short) plr.ang;
|
||||
sprite[j].ang = plr.angle.ang.asbuild();
|
||||
sprite[j].xvel = (short) (sintable[(daang + 2560) & 2047] >> 7);
|
||||
sprite[j].yvel = (short) (sintable[(daang) & 2047] >> 7);
|
||||
|
||||
|
@ -2275,7 +2275,7 @@ void swingdapunch(PLAYER& plr, int daweapon) {
|
|||
}
|
||||
|
||||
void swingdaweapon(PLAYER& plr) {
|
||||
float daang = plr.ang;
|
||||
float daang = FixedToFloat(plr.angle.ang.asq16());
|
||||
|
||||
if (plr.currweaponframe == BOWWALK + 5 && plr.ammo[6] > 0) {
|
||||
plr.currweaponfired = 5;
|
||||
|
|
|
@ -282,8 +282,8 @@ void animateobjs(PLAYER& plr) {
|
|||
wall[k].shade = (byte) ((wall[k].shade + j) >> 1);
|
||||
}
|
||||
movestat = (short) movesprite((short) i,
|
||||
((sintable[((short) plr.ang + 512) & 2047]) << TICSPERFRAME) << 8,
|
||||
((sintable[(short) plr.ang & 2047]) << TICSPERFRAME) << 8, 0, 4 << 8, 4 << 8, 0);
|
||||
(plr.angle.ang.bcos() << TICSPERFRAME) << 8,
|
||||
(plr.angle.ang.bsin() << TICSPERFRAME) << 8, 0, 4 << 8, 4 << 8, 0);
|
||||
|
||||
spr.cstat |= 0x8000;
|
||||
show2dsprite.Set(i);
|
||||
|
|
|
@ -380,7 +380,7 @@ void revolvefx() {
|
|||
}
|
||||
|
||||
if (plr.sector == revolvesector[i]) {
|
||||
revolvesyncang = (short) plr.ang;
|
||||
revolvesyncang = plr.angle.ang.asbuild();
|
||||
revolvesyncrotang = 0;
|
||||
revolvesyncx = plr.x;
|
||||
revolvesyncy = plr.y;
|
||||
|
@ -390,7 +390,7 @@ void revolvefx() {
|
|||
viewBackupPlayerLoc(pyrn);
|
||||
plr.x = out.getX();
|
||||
plr.y = out.getY();
|
||||
plr.ang = ((revolvesyncang + revolvesyncrotang) & 2047);
|
||||
plr.angle.settarget((revolvesyncang + revolvesyncrotang) & 2047);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -431,7 +431,7 @@ void teleporter() {
|
|||
|
||||
if (sector[plr.sector].lotag == 10) {
|
||||
if (plr.sector != plr.oldsector) {
|
||||
daang = (short) plr.ang;
|
||||
daang = plr.angle.ang.asbuild();
|
||||
warpfxsprite(plr.spritenum);
|
||||
warp(plr.x, plr.y, plr.z, daang, plr.sector);
|
||||
viewBackupPlayerLoc(pyrn);
|
||||
|
@ -441,7 +441,7 @@ void teleporter() {
|
|||
daang = (short) warpang;
|
||||
plr.sector = (short) warpsect;
|
||||
warpfxsprite(plr.spritenum);
|
||||
plr.ang = (int) daang;
|
||||
plr.angle.settarget(daang);
|
||||
justwarpedfx = 48;
|
||||
spritesound(S_WARP, &sprite[plr.spritenum]);
|
||||
setsprite(plr.spritenum, plr.x, plr.y, plr.z + (32 << 8));
|
||||
|
@ -997,7 +997,7 @@ void warpfxsprite(int s) {
|
|||
sprite[j].picnum = ANNIHILATE;
|
||||
short daang;
|
||||
if (s == plr.spritenum) {
|
||||
daang = (short) plr.ang;
|
||||
daang = plr.angle.ang.asbuild();
|
||||
sprite[j].ang = daang;
|
||||
} else {
|
||||
daang = sprite[s].ang;
|
||||
|
|
|
@ -31,7 +31,7 @@ FSerializer& Serialize(FSerializer& arc, const char* key, PLAYER& sw, PLAYER* de
|
|||
arc("x", sw.x)
|
||||
("y", sw.y)
|
||||
("z", sw.z)
|
||||
("ang", sw.ang)
|
||||
("angle", sw.angle)
|
||||
("horizon", sw.horizon)
|
||||
("height", sw.height)
|
||||
("hvel", sw.hvel)
|
||||
|
@ -58,7 +58,6 @@ FSerializer& Serialize(FSerializer& arc, const char* key, PLAYER& sw, PLAYER* de
|
|||
("onsomething", sw.onsomething)
|
||||
("fallz", sw.fallz)
|
||||
("dead", sw.dead)
|
||||
("turnaround", sw.turnAround)
|
||||
("shadowtime", sw.shadowtime)
|
||||
("helmettime", sw.helmettime)
|
||||
("scoretime", sw.scoretime)
|
||||
|
|
|
@ -212,7 +212,7 @@ boolean prepareboard(const char* fname) {
|
|||
plr.x = pos.x;
|
||||
plr.y = pos.y;
|
||||
plr.z = pos.z;
|
||||
plr.ang = ang;
|
||||
plr.angle.ang = buildang(ang);
|
||||
|
||||
// int ratcnt = 0;
|
||||
swingcnt = 0;
|
||||
|
@ -786,7 +786,7 @@ boolean prepareboard(const char* fname) {
|
|||
sprite[plr.spritenum].shade = 0;
|
||||
sprite[plr.spritenum].xrepeat = 36;
|
||||
sprite[plr.spritenum].yrepeat = 36;
|
||||
sprite[plr.spritenum].ang = (short) plr.ang;
|
||||
sprite[plr.spritenum].ang = plr.angle.ang.asbuild();
|
||||
sprite[plr.spritenum].xvel = 0;
|
||||
sprite[plr.spritenum].yvel = 0;
|
||||
sprite[plr.spritenum].zvel = 0;
|
||||
|
|
|
@ -26,7 +26,7 @@ void viewBackupPlayerLoc( int nPlayer )
|
|||
pPLocation.x = pSprite.x;
|
||||
pPLocation.y = pSprite.y;
|
||||
pPLocation.z = player[nPlayer].z;
|
||||
pPLocation.ang = player[nPlayer].ang;
|
||||
player[nPlayer].angle.backup();
|
||||
player[nPlayer].horizon.backup();
|
||||
}
|
||||
|
||||
|
@ -103,7 +103,7 @@ void initplayersprite(PLAYER& plr) {
|
|||
sprite[plr.spritenum].shade = 0;
|
||||
sprite[plr.spritenum].xrepeat = 36;
|
||||
sprite[plr.spritenum].yrepeat = 36;
|
||||
sprite[plr.spritenum].ang = (short) plr.ang;
|
||||
sprite[plr.spritenum].ang = plr.angle.ang.asbuild();
|
||||
sprite[plr.spritenum].xvel = 0;
|
||||
sprite[plr.spritenum].yvel = 0;
|
||||
sprite[plr.spritenum].zvel = 0;
|
||||
|
@ -237,13 +237,13 @@ void updateviewmap(PLAYER& plr) {
|
|||
|
||||
void plruse(PLAYER& plr) {
|
||||
Neartag nt;
|
||||
neartag(plr.x, plr.y, plr.z, (short) plr.sector, (short) plr.ang, nt, 1024, 3);
|
||||
neartag(plr.x, plr.y, plr.z, (short) plr.sector, plr.angle.ang.asbuild(), nt, 1024, 3);
|
||||
|
||||
if (nt.tagsector >= 0) {
|
||||
if (sector[nt.tagsector].hitag == 0) {
|
||||
operatesector(plr, nt.tagsector);
|
||||
} else {
|
||||
short daang = (short) plr.ang;
|
||||
short daang = plr.angle.ang.asbuild();
|
||||
int daz2 = -mulscale16(plr.horizon.horiz.asq16(), 2000);
|
||||
Hitscan pHitInfo;
|
||||
hitscan(plr.x, plr.y, plr.z, plr.sector, // Start position
|
||||
|
@ -581,7 +581,7 @@ void lockon(PLAYER& plr, int numshots, int shootguntype) {
|
|||
}
|
||||
}
|
||||
|
||||
daang = (short) (plr.ang - ((numshots * (128 / numshots)) >> 1));
|
||||
daang = plr.angle.ang.asbuild() - ((numshots * (128 / numshots)) >> 1);
|
||||
for (k = 0, s = 0; k < numshots; k++) {
|
||||
if (n > 0) {
|
||||
auto &spr = tspritelist[monsterlist[s]];
|
||||
|
|
|
@ -951,7 +951,7 @@ void animatetags(int nPlayer) {
|
|||
// Update sprite representation of player
|
||||
|
||||
setsprite(plr.spritenum, plr.x, plr.y, plr.z + (plr.height));
|
||||
sprite[plr.spritenum].ang = (short) plr.ang;
|
||||
sprite[plr.spritenum].ang = plr.angle.ang.asbuild();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue