schedule hyperbullet and ultrabullet arenas - closes #6222
parent
53b29a8b0c
commit
ca5f63c182
|
@ -83,7 +83,7 @@ final class ApiJsonView(lightUserApi: LightUserApi)(implicit ec: scala.concurren
|
|||
|
||||
private val perfPositions: Map[PerfType, Int] = {
|
||||
import PerfType._
|
||||
List(Bullet, Blitz, Rapid, UltraBullet) ::: variants
|
||||
List(Bullet, Blitz, Rapid, Classical, UltraBullet) ::: variants
|
||||
}.zipWithIndex.toMap
|
||||
|
||||
private def perfJson(p: PerfType)(implicit lang: Lang) = Json.obj(
|
||||
|
|
|
@ -205,7 +205,6 @@ object Schedule {
|
|||
def byId(id: Int) = all find (_.id == id)
|
||||
def similar(s1: Speed, s2: Speed) = (s1, s2) match {
|
||||
case (a, b) if a == b => true
|
||||
case (HyperBullet, Bullet) | (Bullet, HyperBullet) => true
|
||||
case (Bullet, HippoBullet) | (HippoBullet, Bullet) => true
|
||||
case _ => false
|
||||
}
|
||||
|
|
|
@ -346,22 +346,18 @@ Thank you all, you rock!"""
|
|||
(-1 to 6).toList.flatMap { hourDelta =>
|
||||
val date = rightNow plusHours hourDelta
|
||||
val hour = date.getHourOfDay
|
||||
// Avoid overlap with daily/eastern bullet, daily/hourly ultra.
|
||||
// Hour 20 is daily hyper, so make hour 19 regular bullet.
|
||||
val bulletType = if (hour % 4 == 3 && hour != 19) HyperBullet else Bullet
|
||||
List(
|
||||
// Ultra hourlies avoid hyperbullet, and overlap with daily ultra.
|
||||
at(date, hour) collect {
|
||||
case date if hour % 8 == 5 => Schedule(Hourly, UltraBullet, Standard, std, date).plan
|
||||
},
|
||||
at(date, hour, 30) collect {
|
||||
case date if hour % 8 == 5 => Schedule(Hourly, UltraBullet, Standard, std, date).plan
|
||||
},
|
||||
at(date, hour) map { date =>
|
||||
Schedule(Hourly, bulletType, Standard, std, date).plan
|
||||
Schedule(Hourly, HyperBullet, Standard, std, date).plan
|
||||
},
|
||||
at(date, hour, 30) map { date =>
|
||||
Schedule(Hourly, bulletType, Standard, std, date).plan
|
||||
Schedule(Hourly, UltraBullet, Standard, std, date).plan
|
||||
},
|
||||
at(date, hour) map { date =>
|
||||
Schedule(Hourly, Bullet, Standard, std, date).plan
|
||||
},
|
||||
at(date, hour, 30) map { date =>
|
||||
Schedule(Hourly, Bullet, Standard, std, date).plan
|
||||
},
|
||||
at(date, hour) map { date =>
|
||||
Schedule(Hourly, SuperBlitz, Standard, std, date).plan
|
||||
|
|
|
@ -40,12 +40,14 @@ function laneGrouper(t) {
|
|||
return -1;
|
||||
} else if (t.variant.key !== 'standard') {
|
||||
return 99;
|
||||
} else if (t.perf.key === 'ultraBullet') {
|
||||
return 70;
|
||||
} else if (t.schedule && t.hasMaxRating) {
|
||||
return 50 + parseInt(t.fullName.slice(1,5)) / 10000;
|
||||
} else if (t.schedule && t.schedule.speed === 'superblitz') {
|
||||
} else if (t.schedule && t.schedule.speed === 'superBlitz') {
|
||||
return t.perf.position - 0.5;
|
||||
} else if (t.schedule && t.schedule.speed === 'hyperBullet') {
|
||||
return 4;
|
||||
} else if (t.schedule && t.perf.key === 'ultraBullet') {
|
||||
return 4;
|
||||
} else {
|
||||
return t.perf.position;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue