Add autoplay mode

This commit is contained in:
LoveEevee
2018-08-28 02:56:31 +03:00
parent 97eee0e27a
commit 2f717614fb
9 changed files with 100 additions and 16 deletions

43
public/src/js/mekadon.js Normal file
View File

@@ -0,0 +1,43 @@
class Mekadon{
constructor(controller, game){
this.controller = controller
this.game = game
this.lr = false
this.keys = {}
}
play(circle){
if(circle.getType() == "don"){
this.setKey(this.lr ? 86 : 66)
this.lr = !this.lr
}else if(circle.getType() == "daiDon"){
this.setKey(86)
this.setKey(66)
this.lr = false
}else if(circle.getType() == "ka"){
this.setKey(this.lr ? 67 : 78)
this.lr = !this.lr
}else if(circle.getType() == "daiKa"){
this.setKey(67)
this.setKey(78)
this.lr = false
}
var score = this.game.checkScore(circle);
circle.played(score);
this.game.updateCurrentCircle();
}
setKey(keyCode){
var self = this
if(this.keys[keyCode]){
clearTimeout(this.keys[keyCode])
self.clearKey(keyCode)
}
this.controller.setKey(keyCode, true)
this.keys[keyCode] = setTimeout(function(){
self.clearKey(keyCode)
},100)
}
clearKey(keyCode){
this.controller.setKey(keyCode, false)
delete this.keys[keyCode]
}
}