diff --git a/source/games/duke/src/actors_d.cpp b/source/games/duke/src/actors_d.cpp index cec72b3f5..186c4ebbc 100644 --- a/source/games/duke/src/actors_d.cpp +++ b/source/games/duke/src/actors_d.cpp @@ -774,7 +774,7 @@ void movefallers_d(void) { act->add_int_zvel( x); if (act->vel.Z > 24) - act->set_int_zvel(6144); + act->vel.Z = 24; act->spr.pos.Z += act->vel.Z; } if ((sectp->floorz - act->spr.pos.Z) < 16) @@ -1337,8 +1337,8 @@ static bool movefireball(DDukeActor* actor) } actor->temp_data[0]++; } - if (actor->vel.Z < 15000./256.) - actor->add_int_zvel( 200); + if (actor->vel.Z < 15000. / 256.) + actor->vel.Z += 200 / 256.; return false; } @@ -1555,7 +1555,7 @@ static void weaponcommon_d(DDukeActor* proj) if (proj->spr.pos.Z < proj->ceilingz) { coll.setSector(proj->sector()); - proj->set_int_zvel(-1); + proj->vel.Z -= 1/256.; } else if ((proj->spr.pos.Z > proj->floorz && proj->sector()->lotag != 1) || @@ -1563,7 +1563,7 @@ static void weaponcommon_d(DDukeActor* proj) { coll.setSector(proj->sector()); if (proj->sector()->lotag != 1) - proj->set_int_zvel(1); + proj->vel.Z += 1/256.; } } @@ -2367,7 +2367,7 @@ static void greenslime(DDukeActor *actor) if (actor->int_xvel() > 96) { - actor->add_int_xvel(-2); + actor->vel.X -= 1/8.; return; } else @@ -2398,7 +2398,7 @@ static void greenslime(DDukeActor *actor) if (actor->spr.yrepeat < 40) actor->spr.yrepeat += 8; if (actor->spr.xrepeat > 8) actor->spr.xrepeat -= 4; if (actor->vel.Z > -12) - actor->add_int_zvel(- 348); + actor->vel.Z -= 348 / 256.; actor->spr.pos.Z += actor->vel.Z; if (actor->spr.pos.Z < actor->ceilingz + 16) { @@ -2487,14 +2487,14 @@ static void flamethrowerflame(DDukeActor *actor) if (actor->spr.pos.Z < actor->ceilingz) { coll.setSector(actor->sector()); - actor->set_int_zvel(-1); + actor->vel.Z -= 1/256.; } else if ((actor->spr.pos.Z > actor->floorz && actor->sector()->lotag != 1) || (actor->spr.pos.Z > actor->floorz + 16 && actor->sector()->lotag == 1)) { coll.setSector(actor->sector()); if (actor->sector()->lotag != 1) - actor->set_int_zvel(1); + actor->vel.Z += 1/256.; } } @@ -2626,9 +2626,9 @@ static void heavyhbomb(DDukeActor *actor) if(actor->vel.X > 0) { - actor->add_int_xvel(-5); + actor->vel.X -= 5. / 16; if (sectp->lotag == 2) - actor->add_int_xvel(-10); + actor->vel.X -= 10. / 16; if(actor->vel.X < 0) actor->vel.X = 0; diff --git a/source/games/duke/src/actors_r.cpp b/source/games/duke/src/actors_r.cpp index 59fb14dcc..01cfeded9 100644 --- a/source/games/duke/src/actors_r.cpp +++ b/source/games/duke/src/actors_r.cpp @@ -674,7 +674,7 @@ void movefallers_r(void) { if (act->int_xvel() > 0) { - act->add_int_xvel(-2); + act->vel.X -= 1/8.; ssp(act, CLIPMASK0); } @@ -692,7 +692,7 @@ void movefallers_r(void) { act->add_int_zvel( x); if (act->vel.Z > 24) - act->set_int_zvel(6144); + act->vel.Z = 24; act->spr.pos.Z += act->vel.Z; } if ((sectp->floorz - act->spr.pos.Z) < 16) @@ -956,7 +956,7 @@ static void chickenarrow(DDukeActor* actor) if (actor->spr.hitag > 180) if (actor->vel.Z <= 0) - actor->add_int_zvel( 200); + actor->vel.Z += 200 / 256; } } @@ -1246,14 +1246,14 @@ static void weaponcommon_r(DDukeActor *proj) if (proj->spr.pos.Z < proj->ceilingz) { coll.setSector(proj->sector()); - proj->set_int_zvel(-1); + proj->vel.Z -= 1/256.; } else if (proj->spr.pos.Z > proj->floorz) { coll.setSector(proj->sector()); if (proj->sector()->lotag != 1) - proj->set_int_zvel(1); + proj->vel.Z += 1/256.; } } @@ -2414,9 +2414,9 @@ static void heavyhbomb(DDukeActor *actor) if(actor->vel.X > 0) { - actor->add_int_xvel(-5); + actor->vel.X -= 5. / 16; if (sectp->lotag == 2) - actor->add_int_xvel(-10); + actor->vel.X -= 10. / 16; if(actor->vel.X < 0) actor->vel.X = 0; @@ -2588,7 +2588,7 @@ static int henstand(DDukeActor *actor) } } } - actor->add_int_xvel(-1); + actor->vel.X -= 1/16.; if(actor->vel.X < 0) actor->vel.X = 0; actor->spr.cstat = CSTAT_SPRITE_BLOCK_ALL; if (actor->spr.picnum == BOWLINGPIN) @@ -3824,7 +3824,7 @@ static int fallspecial(DDukeActor *actor, int playernum) if (actor->spr.picnum != APLAYER && (badguy(actor) || actor->spr.picnum == HEN || actor->spr.picnum == COW || actor->spr.picnum == PIG || actor->spr.picnum == DOGRUN || actor->spr.picnum == RABBIT) && (!isRRRA() || actor->spriteextra < 128)) { actor->spr.pos.Z = actor->floorz - FOURSLEIGHT_F; - actor->set_int_zvel(8000); + actor->vel.Z = 8000 / 256.; actor->spr.extra = 0; actor->spriteextra++; sphit = 1;