1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2025-11-19 07:05:11 +00:00

fixed the disconnect between Euclidean sspeed and mspeed

This commit is contained in:
Zeno Rogue
2025-09-09 13:32:36 +02:00
parent 923da0b999
commit 15068e76ab
2 changed files with 6 additions and 2 deletions

View File

@@ -158,7 +158,7 @@ EX bool applyAnimation(cell *c, shiftmatrix& V, double& footphase, int layer) {
R = hdist(a.attackat * TC0, a.wherenow * TC0);
else
R = hdist(a.wherenow * TC0, TC0);
aspd *= (1+R+(shmup::on?1:0));
adjust_aspeed(aspd, R);
if(a.attacking == 3 && aspd > R) aspd = R;

View File

@@ -2258,6 +2258,10 @@ EX vector<transmatrix*> move_affected_matrices(int flag) {
return res;
}
EX void adjust_aspeed(ld& aspd, ld R) {
aspd *= euclid ? (2+3*R*R) : (1+R+(shmup::on?1:0));
}
EX void centerpc(ld aspd) {
if(subscreens::split([=] () {centerpc(aspd);})) return;
@@ -2341,7 +2345,7 @@ EX void centerpc(ld aspd) {
}
else {
aspd *= euclid ? (2+3*R*R) : (1+R+(shmup::on?1:0));
adjust_aspeed(aspd, R);
if(R < aspd) fix_whichcopy_if_near();