game.loop: Fix throwing errors inside game loop.
parent
4df945e3db
commit
75dccbe329
|
@ -21,13 +21,13 @@ GENERIC: draw* ( tick-slice delegate -- )
|
||||||
|
|
||||||
DEFER: stop-loop
|
DEFER: stop-loop
|
||||||
|
|
||||||
TUPLE: game-loop-error-state game-loop error ;
|
TUPLE: game-loop-error-state error game-loop ;
|
||||||
|
|
||||||
: ?ui-error ( error -- )
|
: ?ui-error ( error -- )
|
||||||
ui-running? [ ui-error ] [ rethrow ] if ;
|
ui-running? [ ui-error ] [ rethrow ] if ;
|
||||||
|
|
||||||
: game-loop-error ( game-loop error -- )
|
: game-loop-error ( error game-loop -- )
|
||||||
[ drop stop-loop ] [ \ game-loop-error-state boa ?ui-error ] 2bi ;
|
[ nip stop-loop ] [ \ game-loop-error-state boa ?ui-error ] 2bi ;
|
||||||
|
|
||||||
: fps ( fps -- nanos )
|
: fps ( fps -- nanos )
|
||||||
[ 1,000,000,000 ] dip /i ; inline
|
[ 1,000,000,000 ] dip /i ; inline
|
||||||
|
|
Loading…
Reference in New Issue