blob: fbad529d73bdb8e6206880a6286e85dff3a6ca9c [file] [log] [blame]
// Copyright 2015 The Vanadium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
import 'game/game.dart' as game_impl;
import 'hearts/hearts.dart' as hearts_impl;
import 'proto/proto.dart' as proto_impl;
import 'solitaire/solitaire.dart' as solitaire_impl;
game_impl.Game createGame(game_impl.GameType gt, bool debugMode,
{int gameID, bool isCreator, int playerNumber}) {
switch (gt) {
case game_impl.GameType.Proto:
return new proto_impl.ProtoGame(gameID: gameID, isCreator: isCreator)
..debugMode = debugMode
..playerNumber = playerNumber;
case game_impl.GameType.Hearts:
return new hearts_impl.HeartsGame(gameID: gameID, isCreator: isCreator)
..debugMode = debugMode
..playerNumber = playerNumber;
case game_impl.GameType.Solitaire:
return new solitaire_impl.SolitaireGame(
gameID: gameID, isCreator: isCreator)
..debugMode = debugMode
..playerNumber = playerNumber;
default:
assert(false);
return null;
}
}