Game loop library.
npm install @latel88/bedrockshell
npm install @latel88/bedrock
`
- CJS
`javascript
const Bedrock = require( "@latel88/bedrock" ).default;
`
- ESM
`javascript
import Bedrock from "@latel88/bedrock";
`exsample
`javascript
const bedrock = new Bedrock(
{
fps: 30} );
bedrock.on( "update", ( event ) =>
{
//game loop
entity.x += addX * event.percent;
entity.y += addY * event.percent;
} );
bedrock.on( "rendering", ( event ) =>
{
//render loop
draw_sprite( entity.x, entity.y );
} );
// start game loop
bedrock.run();
if (bedrock.hasRun())
{
//stop game loop
bedrock.stop();
}
``javascript
class GameLoop extends Bedrock
{
constructor ( fps )
{
super( { fps } ); this.run();
}
onupdate ( event )
{
}
onrendering ( event )
{
}
}
``javascript
const gameloop = GameLoop.singleton( 30 );
//true;
gameloop === GameLoop.singleton();
``javascript
gameloop.setFPS( 60 );
gameloop.setSpeed( 0.5 );gameloop.on( "update", ( event ) =>
{
console.log( gameloop.getFPS() );
//fix speed
entity.x += addX * event.percent;
entity.y += addY * event.percent;
} );
``