diff --git a/src/allGames.ts b/src/allGames.ts index 9d3d721..4f0a24c 100644 --- a/src/allGames.ts +++ b/src/allGames.ts @@ -14,6 +14,7 @@ import SeaSaltPaper from './games/sea-salt-paper/main'; import SpiritsOfTheWild from './games/spirits-of-the-wild/main'; import Faraway from './games/faraway/main'; import SavannahPark from './games/savannah-park/main'; +import TheWhiteCastle from './games/the-white-castle/main'; export function getAllGames() { return [ @@ -33,6 +34,7 @@ export function getAllGames() { SpiritsOfTheWild, Faraway, SavannahPark, + TheWhiteCastle, ]; } diff --git a/src/games/the-white-castle/View.tsx b/src/games/the-white-castle/View.tsx new file mode 100644 index 0000000..7e36bd1 --- /dev/null +++ b/src/games/the-white-castle/View.tsx @@ -0,0 +1,6 @@ +import GameView from '../../components/GameView'; +import getDefinition from './definition'; + +export default function TheWhiteCastleView() { + return ; +} diff --git a/src/games/the-white-castle/assets/clan-points.png b/src/games/the-white-castle/assets/clan-points.png new file mode 100644 index 0000000..3354bb9 Binary files /dev/null and b/src/games/the-white-castle/assets/clan-points.png differ diff --git a/src/games/the-white-castle/assets/coins.png b/src/games/the-white-castle/assets/coins.png new file mode 100644 index 0000000..9390363 Binary files /dev/null and b/src/games/the-white-castle/assets/coins.png differ diff --git a/src/games/the-white-castle/assets/courtier.png b/src/games/the-white-castle/assets/courtier.png new file mode 100644 index 0000000..9ebe9fe Binary files /dev/null and b/src/games/the-white-castle/assets/courtier.png differ diff --git a/src/games/the-white-castle/assets/gardener.png b/src/games/the-white-castle/assets/gardener.png new file mode 100644 index 0000000..076afb5 Binary files /dev/null and b/src/games/the-white-castle/assets/gardener.png differ diff --git a/src/games/the-white-castle/assets/passage-of-time.png b/src/games/the-white-castle/assets/passage-of-time.png new file mode 100644 index 0000000..5d64567 Binary files /dev/null and b/src/games/the-white-castle/assets/passage-of-time.png differ diff --git a/src/games/the-white-castle/assets/resources.png b/src/games/the-white-castle/assets/resources.png new file mode 100644 index 0000000..b0b37fd Binary files /dev/null and b/src/games/the-white-castle/assets/resources.png differ diff --git a/src/games/the-white-castle/assets/warrior.png b/src/games/the-white-castle/assets/warrior.png new file mode 100644 index 0000000..7dddd7f Binary files /dev/null and b/src/games/the-white-castle/assets/warrior.png differ diff --git a/src/games/the-white-castle/definition.ts b/src/games/the-white-castle/definition.ts new file mode 100644 index 0000000..eb98718 --- /dev/null +++ b/src/games/the-white-castle/definition.ts @@ -0,0 +1,64 @@ +import { GameDef } from '../../api/types/GameDef'; +import { WinMode } from '../../api/types/WinMode'; +import FontUtils from '../../api/utils/FontUtils'; +import clanPoints from './assets/clan-points.png'; +import coins from './assets/coins.png'; +import courtier from './assets/courtier.png'; +import gardener from './assets/gardener.png'; +import passageOfTime from './assets/passage-of-time.png'; +import resources from './assets/resources.png'; +import warrior from './assets/warrior.png'; + +export default function getDefinition(): GameDef { + return { + title: 'The White Castle', + url: 'https://boardgamegeek.com/boardgame/371942/the-white-castle', + rulesUrl: + 'https://www.thamesandkosmos.co.uk/wp-content/uploads/2023/07/WHITE_CASTLE_ENG.pdf', + bgColor: '#e7daca', + fontColor: '#342d38', + primaryColor: '#3d3544', + secondaryColor: '#fad668', + fontFamily: FontUtils.CLASSIC, + stripeColor: '#cfb5a6', + playerSizes: [1, 2, 3, 4], + winMode: WinMode.MOST, + rows: [ + { + name: 'Clan Points', + icon: clanPoints, + description: 'Clan points that you earned during the game.', + }, + { + name: 'Passage of Time', + icon: passageOfTime, + description: 'Get points for your passage of time track.', + }, + { + name: 'Gardener', + icon: gardener, + description: 'Score the points for your gardeners on the board.', + }, + { + name: 'Warrior', + icon: warrior, + description: 'Score the points for your warriors on the board.', + }, + { + name: 'Courtier', + icon: courtier, + description: 'Score the points for your courtiers on the board.', + }, + { + name: 'Resources', + icon: resources, + description: 'Get points for resources you have left.', + }, + { + name: 'Coins', + icon: coins, + description: 'Get 1 point for every 5 coins you have.', + }, + ], + }; +} diff --git a/src/games/the-white-castle/main.ts b/src/games/the-white-castle/main.ts new file mode 100644 index 0000000..8efeedb --- /dev/null +++ b/src/games/the-white-castle/main.ts @@ -0,0 +1,8 @@ +import getDefinition from './definition'; +import TheWhiteCastleView from './View'; + +const TheWhiteCastle = { + view: TheWhiteCastleView, + definition: getDefinition(), +}; +export default TheWhiteCastle;