2018-09-18 06:37:59 +08:00
|
|
|
class Tutorial{
|
2018-09-27 02:30:57 +08:00
|
|
|
constructor(fromSongSel){
|
|
|
|
this.fromSongSel = fromSongSel
|
2019-01-16 20:33:42 +08:00
|
|
|
loader.changePage("tutorial", true)
|
2018-09-18 06:37:59 +08:00
|
|
|
assets.sounds["bgm_setsume"].playLoop(0.1, false, 0, 1.054, 16.054)
|
|
|
|
this.endButton = document.getElementById("tutorial-end-button")
|
2018-10-06 21:24:23 +08:00
|
|
|
|
2018-10-13 02:04:28 +08:00
|
|
|
pageEvents.once(this.endButton, ["mousedown", "touchstart"]).then(this.onEnd.bind(this))
|
2018-09-27 02:30:57 +08:00
|
|
|
pageEvents.keyOnce(this, 13, "down").then(this.onEnd.bind(this))
|
2018-10-06 21:24:23 +08:00
|
|
|
|
2018-09-27 02:30:57 +08:00
|
|
|
this.gamepad = new Gamepad({
|
2018-10-09 04:32:25 +08:00
|
|
|
"confirm": ["start", "b", "ls", "rs"]
|
2018-09-27 02:30:57 +08:00
|
|
|
}, this.onEnd.bind(this))
|
2018-09-18 06:37:59 +08:00
|
|
|
}
|
2018-10-06 21:24:23 +08:00
|
|
|
onEnd(event){
|
|
|
|
var touched = false
|
|
|
|
if(event && event.type === "touchstart"){
|
|
|
|
event.preventDefault()
|
|
|
|
touched = true
|
|
|
|
}
|
2018-09-18 06:37:59 +08:00
|
|
|
this.clean()
|
|
|
|
assets.sounds["don"].play()
|
|
|
|
localStorage.setItem("tutorial", "true")
|
2018-09-27 02:30:57 +08:00
|
|
|
setTimeout(() => {
|
2018-10-14 16:04:31 +08:00
|
|
|
new SongSelect(this.fromSongSel ? "tutorial" : false, false, touched)
|
2018-09-27 02:30:57 +08:00
|
|
|
}, 500)
|
2018-09-18 06:37:59 +08:00
|
|
|
}
|
|
|
|
clean(){
|
2018-09-27 02:30:57 +08:00
|
|
|
this.gamepad.clean()
|
2018-09-18 06:37:59 +08:00
|
|
|
assets.sounds["bgm_setsume"].stop()
|
2018-10-13 02:04:28 +08:00
|
|
|
pageEvents.remove(this.endButton, ["mousedown", "touchstart"])
|
2018-09-27 02:30:57 +08:00
|
|
|
pageEvents.keyRemove(this, 13)
|
2018-09-18 06:37:59 +08:00
|
|
|
delete this.endButton
|
|
|
|
}
|
|
|
|
}
|