Commit 8b6623e8 authored by nanahira's avatar nanahira

new score

parent 84e04813
...@@ -113,15 +113,15 @@ class AutoScore { ...@@ -113,15 +113,15 @@ class AutoScore {
} }
if (this.IsCommonCircle(circle)) { if (this.IsCommonCircle(circle)) {
combo++; combo++;
if (combo % 100 === 0 && this.scoremode !== 1) { if (combo % 100 === 0 && this.scoremode === 2) {
score += 10000; score += 10000;
} }
} }
var diff_mul = 0; var diff_mul = 0;
var multiplier = circle.gogoTime ? 1.2 : 1; var multiplier = (this.scoremode !== 3 && circle.gogoTime) ? 1.2 : 1;
if (this.scoremode === 1) { if (this.scoremode === 1) {
diff_mul = Math.max(0, Math.floor((Math.min(combo, 100) - 1) / 10)); diff_mul = Math.max(0, Math.floor((Math.min(combo, 100) - 1) / 10));
} else { } else if (this.scoremode === 2) {
if (combo >= 100) { if (combo >= 100) {
diff_mul = 8; diff_mul = 8;
} else if (combo >= 50) { } else if (combo >= 50) {
...@@ -132,23 +132,42 @@ class AutoScore { ...@@ -132,23 +132,42 @@ class AutoScore {
diff_mul = 1; diff_mul = 1;
} }
} }
switch (circle.type) { if (this.scoremode === 3) {
case "don": switch (circle.type) {
case "ka": { case "don":
score += Math.floor((init + diff * diff_mul) * multiplier / 10) * 10; case "ka":
break; case "daiDon":
} case "daiKa": {
case "daiDon": score += Math.floor(init / 10) * 10;
case "daiKa": { break;
score += Math.floor((init + diff * diff_mul) * multiplier / 5) * 10; }
break; case "balloon": {
} score += 100 * circle.requiredHits;
case "balloon": { break;
score += (5000 + 300 * circle.requiredHits) * multiplier; }
break; default: {
break;
}
} }
default: { } else {
break; switch (circle.type) {
case "don":
case "ka": {
score += Math.floor((init + diff * diff_mul) * multiplier / 10) * 10;
break;
}
case "daiDon":
case "daiKa": {
score += Math.floor((init + diff * diff_mul) * multiplier / 5) * 10;
break;
}
case "balloon": {
score += (5000 + 300 * circle.requiredHits) * multiplier;
break;
}
default: {
break;
}
} }
} }
} }
......
...@@ -370,7 +370,11 @@ class Game{ ...@@ -370,7 +370,11 @@ class Game{
this.controller.displayScore(score, true, false) this.controller.displayScore(score, true, false)
} }
this.updateCombo(score) this.updateCombo(score)
this.updateGlobalScore(score, typeDai && keyDai ? 2 : 1, circle.gogoTime) var mul = typeDai && keyDai ? 2 : 1;
if (this.songData.scoremode === 3 && typeDai) {
mul *= 0.5;
}
this.updateGlobalScore(score, mul, circle.gogoTime);
this.updateCurrentCircle() this.updateCurrentCircle()
if(circle.section){ if(circle.section){
this.resetSection() this.resetSection()
...@@ -405,9 +409,10 @@ class Game{ ...@@ -405,9 +409,10 @@ class Game{
} }
return true return true
} }
checkBalloon(circle){ checkBalloon(circle) {
var score;
if(circle.timesHit >= circle.requiredHits - 1){ if(circle.timesHit >= circle.requiredHits - 1){
var score = 5000 score = this.songData.scoremode === 3 ? 100 : 5000;
this.updateCurrentCircle() this.updateCurrentCircle()
circle.hit() circle.hit()
circle.played(score) circle.played(score)
...@@ -417,7 +422,7 @@ class Game{ ...@@ -417,7 +422,7 @@ class Game{
}) })
} }
}else{ }else{
var score = 300 score = this.songData.scoremode === 3 ? 100 : 300;
circle.hit() circle.hit()
} }
this.globalScore.drumroll++ this.globalScore.drumroll++
...@@ -453,7 +458,7 @@ class Game{ ...@@ -453,7 +458,7 @@ class Game{
this.view.drumroll.push(circleAnim) this.view.drumroll.push(circleAnim)
this.globalScore.drumroll++ this.globalScore.drumroll++
this.sectionDrumroll++ this.sectionDrumroll++
this.globalScore.points += score * (dai ? 2 : 1) this.globalScore.points += score * ((dai && this.songData.scoremode !== 3) ? 2 : 1)
this.view.setDarkBg(false) this.view.setDarkBg(false)
} }
getLastCircle(circles){ getLastCircle(circles){
...@@ -683,11 +688,11 @@ class Game{ ...@@ -683,11 +688,11 @@ class Game{
diff_mul = 1; diff_mul = 1;
} }
score += this.songData.scorediff * diff_mul; score += this.songData.scorediff * diff_mul;
} else { } else if (this.songData.scoremode == 1) {
score += Math.max(0, Math.floor((Math.min(this.combo, 100) - 1) / 10) * (this.songData.scoremode ? this.songData.scorediff : 100)); score += Math.max(0, Math.floor((Math.min(this.combo, 100) - 1) / 10) * (this.songData.scoremode ? this.songData.scorediff : 100));
} }
if(gogoTime){ if(gogoTime && this.songData.scoremode !== 3){
multiplier *= 1.2 multiplier *= 1.2
} }
this.globalScore.points += Math.floor(score * multiplier / 10) * 10 this.globalScore.points += Math.floor(score * multiplier / 10) * 10
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment