color updates, tweaks to the new dataabse driven design

This commit is contained in:
Michael Simard
2021-11-01 15:07:14 -05:00
parent 9374175c50
commit 2c5ea3a9d5
6 changed files with 16 additions and 7 deletions

View File

@@ -13,7 +13,7 @@ import Fluent
import Vapor
struct ColorSchemeConfig: Content {
var gameId: Int
var gameId: String
var tileColour: String?
var winColour: String?
var lossColour: String?

View File

@@ -17,7 +17,7 @@ struct Configuration : Content {
var gameModes:[GameModeConfig]
var gameModeGroups:[GameModeGroupConfig]
var players:[PlayerConfig]
var lossReasons:[LossReasonConfig]
var lossReasons:[LossReasonConfig]
init (games:[GameConfig], gameModes:[GameModeConfig], gameModeGroups:[GameModeGroupConfig], players:[PlayerConfig], lossReasons:[LossReasonConfig]){

View File

@@ -18,6 +18,8 @@ struct GameConfig: Content {
var maps: [MapConfig]
var enabled:Bool
var colours:ColorSchemeConfig?
var shortName:String
var imageName:String
}

View File

@@ -70,7 +70,7 @@ struct AppDataController: RouteCollection {
return GameConfig(gameId: game.gameId, name: game.name, maps: mapConfigs, enabled: game.enabled, colours: colourSchemeConfigs.first{game.gameId == "\($0.gameId)"})
return GameConfig(gameId: game.gameId, name: game.name, maps: mapConfigs, enabled: game.enabled, colours: colourSchemeConfigs.first{game.gameId == "\($0.gameId)"}, shortName: game.shortName, imageName: game.imageName)
})
return Configuration(games:gameConfigs, gameModes: gameModeConfigs, gameModeGroups: gameModeGroupConfigs, players: playerConfigs, lossReasons: lossReasonConfigs)
}

View File

@@ -19,7 +19,7 @@ final class ColourScheme: Model, Content {
var id: UUID?
@Field(key: "game_id")
var gameId: Int
var gameId: String
@Field(key: "tile_colour")
var tileColour: String?
@@ -35,7 +35,7 @@ final class ColourScheme: Model, Content {
init() { }
// Creates a new with all properties set.
init(id: UUID? = nil, gameId: Int, tileColour: String?,winColour: String?,lossColour: String? ) {
init(id: UUID? = nil, gameId: String, tileColour: String?,winColour: String?,lossColour: String? ) {
self.id = id
self.gameId = gameId
self.tileColour = tileColour

View File

@@ -31,19 +31,26 @@ final class Game: Model, Content {
@Field(key: "enabled")
var enabled: Bool
@Field(key: "short_name")
var shortName: String
@Field(key: "image_name")
var imageName: String
// Creates a new, empty .
init() { }
// Creates a new with all properties set.
init(id: UUID? = nil, gameId: String, name: String, maps:String, enabled:Bool) {
init(id: UUID? = nil, gameId: String, name: String, maps:String, enabled:Bool, shortName:String, imageName:String) {
self.id = id
self.gameId = gameId
self.name = name
self.maps = maps
self.enabled = enabled
self.shortName = shortName
self.imageName = imageName
}