Add autoplay mode
This commit is contained in:
43
public/src/js/mekadon.js
Normal file
43
public/src/js/mekadon.js
Normal 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]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user