Merge pull request #26 from LoveEevee/gogotime

Fix fire animation and dai notes
This commit is contained in:
Bui 2018-09-20 19:56:15 +01:00 committed by GitHub
commit cd694b39c2
4 changed files with 37 additions and 27 deletions

View File

@ -18,7 +18,7 @@ class Game{
}
this.HPGain = 100 / this.songData.circles.filter(circle => {
var type = circle.getType()
return type == "don" || type == "ka" || type == "daiDon" || type == "daiKa"
return type === "don" || type === "ka" || type === "daiDon" || type === "daiKa"
}).length
this.paused = false
this.started = false
@ -89,29 +89,29 @@ class Game{
}
}
}else if(currentTime > endTime){
if(drumrollNotes){
circle.updateStatus(-1)
circle.played(0)
this.updateCurrentCircle()
if(this.controller.multiplayer == 1){
p2.send("drumroll", {
pace: (this.getElapsedTime().ms - circle.getMS()) / circle.timesHit
})
}
}else{
if(!this.controller.autoPlayEnabled){
if(!this.controller.autoPlayEnabled){
if(drumrollNotes){
circle.updateStatus(-1)
circle.played(0, false)
this.updateCurrentCircle()
if(this.controller.multiplayer === 1){
p2.send("drumroll", {
pace: (this.getElapsedTime().ms - circle.getMS()) / circle.timesHit
})
}
}else{
circle.updateStatus(-1)
var currentScore = 0
circle.played(currentScore)
circle.played(currentScore, type === "daiDon" || type === "daiKa")
this.controller.displayScore(currentScore, true)
this.updateCurrentCircle()
this.updateCombo(currentScore)
this.updateGlobalScore(currentScore, 1)
}
if(this.controller.multiplayer === 1){
p2.send("note", {
score: -1
})
if(this.controller.multiplayer === 1){
p2.send("note", {
score: -1
})
}
}
}
}

View File

@ -8,9 +8,15 @@ class Mekadon{
}
play(circle){
var type = circle.getType()
if(type == "balloon"){
if((type === "balloon" || type === "drumroll" || type === "daiDrumroll") && this.getMS() > circle.getEndTime()){
circle.updateStatus(-1)
circle.played(0, false)
this.game.updateCurrentCircle()
}
type = circle.getType()
if(type === "balloon"){
this.playDrumrollAt(circle, 0, 30)
}else if(type == "drumroll" || type == "daiDrumroll"){
}else if(type === "drumroll" || type === "daiDrumroll"){
this.playDrumrollAt(circle, 0, 60)
}else{
this.playAt(circle, 0, 450)
@ -59,12 +65,12 @@ class Mekadon{
this.setKey(this.lr ? kbd["ka_l"] : kbd["ka_r"])
this.lr = !this.lr
}
if(type == "balloon"){
if(type === "balloon"){
if(circle.requiredHits == 1){
assets.sounds["balloon"].play()
}
this.game.checkBalloon(circle)
}else if(type == "drumroll" || type == "daiDrumroll"){
}else if(type === "drumroll" || type === "daiDrumroll"){
this.game.checkDrumroll(circle)
}else{
if(typeof score == "undefined"){

View File

@ -31,7 +31,7 @@ class View{
this.currentScore = 0
this.special = ""
this.scoreDispCount = -1
this.scoreOpacity = 1.0
this.scoreOpacity = 1
this.lastMeasure = 0
this.currentTimingPoint = 0
@ -418,7 +418,7 @@ class View{
var timeForDistance = this.posToMs(this.distanceForCircle + this.bigCircleSize / 2, speed)
var startingTime = circle.getMS() - timeForDistance
var finishTime = circle.getEndTime() + this.posToMs(this.slotX - this.taikoSquareW + this.bigCircleSize / 2, speed)
var finishTime = circle.getEndTime() + this.posToMs(this.slotX - this.taikoSquareW + this.bigCircleSize * 3, speed)
if(!circle.getPlayed() || circle.getScore() === 0){
if(ms >= startingTime && ms <= finishTime){

View File

@ -54,9 +54,12 @@ class ViewAssets{
var imgh = 370
var scale = 175
var ms = this.controller.getElapsedTime().ms
var grow = Math.min(100, ms - this.view.gogoTimeStarted) / 100
if(!this.view.gogoTime){
grow = 1 - grow
var elapsed = ms - this.view.gogoTimeStarted
if(this.view.gogoTime){
var grow = 3 - Math.min(200, elapsed) / 100
this.ctx.globalAlpha = Math.min(200, elapsed) / 200
}else{
var grow = 1 - Math.min(100, elapsed) / 100
}
var w = (this.view.barH * imgw) / scale * grow
var h = (this.view.barH * imgh) / scale * grow
@ -72,6 +75,7 @@ class ViewAssets{
h: h,
callback: () => {
this.ctx.globalCompositeOperation = "source-over"
this.ctx.globalAlpha = 1
}
}
})