Higher FPS! (#19)
This commit is contained in:
49
src/main.js
49
src/main.js
@@ -27,7 +27,7 @@ class Demo {
|
||||
constructor() {
|
||||
[
|
||||
'setOriginTile',
|
||||
'setFadeToGray',
|
||||
'setupKeydown',
|
||||
'tap',
|
||||
'pressStart',
|
||||
'press',
|
||||
@@ -50,7 +50,7 @@ class Demo {
|
||||
});
|
||||
|
||||
this.setOriginTile();
|
||||
this.setFadeToGray();
|
||||
this.setupKeydown();
|
||||
|
||||
this.tessellate = new Tessellate(Object.assign({
|
||||
element: '#container',
|
||||
@@ -99,10 +99,27 @@ class Demo {
|
||||
});
|
||||
}
|
||||
|
||||
setFadeToGray () {
|
||||
setupKeydown () {
|
||||
this.pipDefault = null;
|
||||
|
||||
window.addEventListener('keydown', event => {
|
||||
if (!event.repeat && event.key === 'Enter') {
|
||||
this.gray = this.gray ? null : Date.now();
|
||||
if (!event.repeat) {
|
||||
if (event.key === 'Enter') {
|
||||
this.gray = this.gray ? null : Date.now();
|
||||
}
|
||||
|
||||
if (event.key === `~`) {
|
||||
this.mined = true;
|
||||
}
|
||||
|
||||
if (event.key === '`') {
|
||||
this.pipDefault = '*';
|
||||
}
|
||||
|
||||
const num = parseInt(event.key);
|
||||
if (num >= 0 && num <= 9) {
|
||||
this.pipDefault = num;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -221,9 +238,25 @@ class Demo {
|
||||
|
||||
Tessellate.TILES[tile.tileStyle][tile.drawStyle](context, scale, pixelPoint.getX(), pixelPoint.getY(), tile);
|
||||
|
||||
if (tile.pips) {
|
||||
this.counts[1] += tile.pips;
|
||||
Tessellate.Shapes.pips(context, scale, pixelPoint.getX(), pixelPoint.getY(), tile);
|
||||
if (this.mined) {
|
||||
this.counts[2] += 1;
|
||||
Tessellate.Shapes.mine(context, scale, pixelPoint.getX(), pixelPoint.getY());
|
||||
}
|
||||
else {
|
||||
if (!tile.pips && this.pipDefault !== null) {
|
||||
if (this.pipDefault === '*') {
|
||||
const pipMax = this.settings.tile === Tessellate.TILE_STYLES.HEX ? 7 : 9;
|
||||
tile.pips = Tessellate.utils.random(1, pipMax);
|
||||
}
|
||||
else {
|
||||
tile = Tessellate.utils.extend(tile, {pips: this.pipDefault});
|
||||
}
|
||||
}
|
||||
|
||||
if (tile.pips) {
|
||||
this.counts[1] += tile.pips;
|
||||
Tessellate.Shapes.pips(context, scale, pixelPoint.getX(), pixelPoint.getY(), tile);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user