1
0
mirror of https://github.com/zenorogue/hyperrogue.git synced 2024-06-14 09:26:52 +00:00

racing:: efficient braking, stop when hit wall

This commit is contained in:
Zeno Rogue 2018-11-18 01:44:13 +01:00
parent 10b664097f
commit 65f07aa30a

View File

@ -1625,6 +1625,8 @@ void movePlayer(monster *m, int delta) {
if(!canmove) mgo = 0; if(!canmove) mgo = 0;
if(racing::on) { if(racing::on) {
// braking is more efficient
if(m->vel * mgo < 0) mgo *= 3;
m->vel += mgo * delta / 600; m->vel += mgo * delta / 600;
playergo[cpid] = m->vel * SCALE * delta / 600; playergo[cpid] = m->vel * SCALE * delta / 600;
printf("vel = %lf go = %lf\n", m->vel, playergo[cpid]); printf("vel = %lf go = %lf\n", m->vel, playergo[cpid]);
@ -1895,6 +1897,10 @@ void movePlayer(monster *m, int delta) {
goto nextstep; goto nextstep;
} }
} }
#if CAP_RACING
if(!go && racing::on) m->vel = 0;
#endif
if(shotkey && canmove && curtime >= m->nextshot) { if(shotkey && canmove && curtime >= m->nextshot) {