Add Setter Function to VariableRender Interface

This commit is contained in:
Marty Oehme 2018-07-24 15:08:39 +02:00
parent 1c3264f33c
commit 08c7e8ac1d
3 changed files with 18 additions and 5 deletions

View file

@ -3,10 +3,11 @@ import 'package:browserloop/game/Game.dart';
abstract class LoopExample { abstract class LoopExample {
Game game; Game game;
void stop() {} void stop();
void start() {}
void start();
} }
abstract class VariableUpdates { abstract class VariableUpdates {
double MS_PER_UPDATE = 300.0; void setUpdates(double updateRate);
} }

View file

@ -33,7 +33,8 @@ class FixedLoopVariableRender implements LoopExample, VariableUpdates {
game.draw(interp); game.draw(interp);
} }
// Starting and stopping the loop for the example page // CONTROLS ON THE EXAMPLE PAGE
// NOT NECESSARY FOR LOOP ITSELF
void stop() { void stop() {
elapsed.stop(); elapsed.stop();
window.cancelAnimationFrame(id); window.cancelAnimationFrame(id);
@ -44,4 +45,9 @@ class FixedLoopVariableRender implements LoopExample, VariableUpdates {
elapsed.reset(); elapsed.reset();
window.requestAnimationFrame(eventloop); window.requestAnimationFrame(eventloop);
} }
@override
void setUpdates(double updateRate) {
MS_PER_UPDATE = updateRate;
}
} }

View file

@ -39,7 +39,8 @@ class DirtyFlagRender implements LoopExample, VariableUpdates {
dirty = false; dirty = false;
} }
// Starting and stopping the loop for the example page // CONTROLS ON THE EXAMPLE PAGE
// NOT NECESSARY FOR LOOP ITSELF
void stop() { void stop() {
elapsed.stop(); elapsed.stop();
window.cancelAnimationFrame(id); window.cancelAnimationFrame(id);
@ -50,4 +51,9 @@ class DirtyFlagRender implements LoopExample, VariableUpdates {
elapsed.reset(); elapsed.reset();
window.requestAnimationFrame(eventloop); window.requestAnimationFrame(eventloop);
} }
@override
void setUpdates(double updateRate) {
MS_PER_UPDATE = updateRate;
}
} }