Skip to content
13 changes: 13 additions & 0 deletions games/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,19 @@

games = {

'stormyseas': Game(
name='Stormy Seas',
variants={
'regular': Variant(
name='Regular',
data_provider=GamesmanPy,
data_provider_game_id='stormyseas',
data_provider_variant_id='a',
gui='v3')
},
is_two_player_game=False,
gui='v3'),

'0to10by1or2': Game(
name='0 to 10 by 1 or 2',
variants={
Expand Down
28 changes: 27 additions & 1 deletion games/image_autogui_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -2528,6 +2528,31 @@ def get_squirrels_go_nuts(variant_id):
}
}

def get_stormyseas(variant_id):
return {
"defaultTheme": "regular",
"themes": {
"regular": {
"space": [220, 160],
#first 35 centers will be for centering the waves if applicable; next 35 will be possible boat centers; the last one is a special center for win condition (arriving into port)
"centers": [[50, 30], [70, 30], [90, 30], [110, 30], [130, 30], [150, 30], [170, 30], [50, 50], [70, 50], [90, 50], [110, 50], [130, 50], [150, 50], [170, 50], [50, 70], [70, 70], [90, 70], [110, 70], [130, 70], [150, 70], [170, 70], [50, 90], [70, 90], [90, 90], [110, 90], [130, 90], [150, 90], [170, 90], [50, 110], [70, 110], [90, 110], [110, 110], [130, 110], [150, 110], [170, 110],
[50, 20], [70, 20], [90, 20], [110, 20], [130, 20], [150, 20], [170, 20], [50, 40], [70, 40], [90, 40], [110, 40], [130, 40], [150, 40], [170, 40], [50, 60], [70, 60], [90, 60], [110, 60], [130, 60], [150, 60], [170, 60], [50, 80], [70, 80], [90, 80], [110, 80], [130, 80], [150, 80], [170, 80], [50, 100], [70, 100], [90, 100], [110, 100], [130, 100], [150, 100], [170, 100], [50, 110], [70, 110], [90, 110], [110, 110], [130, 110], [150, 110], [170, 110],
[110, 140]
],
"background": "stormyseas/fullboard.svg",
"charImages": {
"W": {"image":"stormyseas/wave.svg", "scale": "20"},
"B": {"image":"stormyseas/blueboat.svg", "scale": "30"},
"R": {"image":"stormyseas/redboat.svg", "scale": "30"},
},
"arrowWidth": 2,
"sounds": {"x": "general/remove.mp3"},
"animationType": "entityFade",
}
}
}


def get_tactix(variant_id):
centers = [[i % 4 + 0.5, i // 4 + 0.5] for i in range(16)]
centers += [
Expand Down Expand Up @@ -3198,11 +3223,12 @@ def get_sokoban(variant_id):
"slide5": get_slide5,
"snake": get_snake,
"snakestale": get_snakestale,
"spinout": get_spinout,
'sokoban': get_sokoban,
"solitairechess": get_solitaire_chess,
"spinout": get_spinout,
"squaredance": get_squaredance,
"squirrels": get_squirrels_go_nuts,
"stormyseas": get_stormyseas,
"tactix": get_tactix,
"tantfant": get_tantfant,
"tantrix": get_tantrix,
Expand Down