controller/gamecontext: even nicer updateStep()

This commit is contained in:
Matthias Schiffer 2018-11-06 20:19:41 +01:00
parent a3962f36aa
commit b30a4a28a6
Signed by: neocturne
GPG key ID: 16EF3F64CB201D9C

View file

@ -114,14 +114,12 @@ export class GameContext {
const dest = vec2.scaleAndAdd(vec2.create(), this.entityPos, this.entityMovement, this.speed); const dest = vec2.scaleAndAdd(vec2.create(), this.entityPos, this.entityMovement, this.speed);
const newDest = vec2.create(); const newDest = vec2.create();
while (true) { while (this.updateStepCollide(newDest, dest)) {
if (vec2.equals(dest, this.entityPos)) if (vec2.equals(newDest, this.entityPos))
return; return;
if (!this.updateStepCollide(newDest, dest))
break;
vec2.copy(dest, newDest); vec2.copy(dest, newDest);
} }
vec2.copy(this.entityPos, dest); vec2.copy(this.entityPos, dest);