2014-05-09 05:51:55 -06:00
|
|
|
package lila.pref
|
|
|
|
|
2014-10-08 15:17:47 -06:00
|
|
|
sealed class PieceSet private[pref] (val name: String) {
|
2014-05-09 05:51:55 -06:00
|
|
|
|
|
|
|
override def toString = name
|
|
|
|
|
|
|
|
def cssClass = name
|
|
|
|
}
|
|
|
|
|
2014-10-08 15:17:47 -06:00
|
|
|
sealed trait PieceSetObject {
|
2014-05-09 05:51:55 -06:00
|
|
|
|
2017-05-06 03:04:10 -06:00
|
|
|
val all: List[PieceSet]
|
2014-05-09 05:51:55 -06:00
|
|
|
|
2017-05-06 03:21:37 -06:00
|
|
|
val default: PieceSet
|
2014-05-09 05:51:55 -06:00
|
|
|
|
2017-05-06 03:21:37 -06:00
|
|
|
lazy val allByName = all map { c => c.name -> c } toMap
|
2014-05-09 05:51:55 -06:00
|
|
|
|
2017-05-06 03:04:10 -06:00
|
|
|
def apply(name: String) = allByName.getOrElse(name, default)
|
2014-05-09 05:51:55 -06:00
|
|
|
|
|
|
|
def contains(name: String) = allByName contains name
|
|
|
|
}
|
2014-10-08 15:17:47 -06:00
|
|
|
|
|
|
|
object PieceSet extends PieceSetObject {
|
|
|
|
|
2017-05-06 03:21:37 -06:00
|
|
|
val default = new PieceSet("cburnett")
|
|
|
|
|
2017-05-06 03:04:10 -06:00
|
|
|
val all = List(
|
2019-09-05 03:03:29 -06:00
|
|
|
default.name, "merida", "alpha",
|
|
|
|
"pirouetti", "chessnut", "chess7",
|
|
|
|
"reillycraig", "companion", "riohacha",
|
|
|
|
"kosal", "leipzig", "fantasy",
|
|
|
|
"spatial", "california", "maestro",
|
2019-09-07 03:50:52 -06:00
|
|
|
"pixel", "fresca", "shapes",
|
|
|
|
"letter"
|
2015-06-29 05:51:40 -06:00
|
|
|
) map { name => new PieceSet(name) }
|
2014-10-08 15:17:47 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
object PieceSet3d extends PieceSetObject {
|
|
|
|
|
2017-05-06 03:21:37 -06:00
|
|
|
val default = new PieceSet("Basic")
|
|
|
|
|
2017-05-06 03:04:10 -06:00
|
|
|
val all = List(
|
2017-05-06 03:21:37 -06:00
|
|
|
default.name, "Wood", "Metal", "RedVBlue",
|
2015-06-29 05:51:40 -06:00
|
|
|
"ModernJade", "ModernWood", "Glass", "Trimmed",
|
2019-02-22 01:37:51 -07:00
|
|
|
"Experimental", "Staunton", "CubesAndPi"
|
2017-02-14 08:34:07 -07:00
|
|
|
) map { name => new PieceSet(name) }
|
2014-10-08 15:17:47 -06:00
|
|
|
}
|