Ejemplo n.º 1
0
        internal static ConsolePlayer Create(PolyGame game, int variant = -1)
        {
            var ret = new ConsolePlayer {
                Game = (variant == -1) ? game : game.Create(variant)
            };

            return(ret);
        }
Ejemplo n.º 2
0
        // create game model by parsing script
        internal static GameBoardModel Create(GameManager game, ScriptInfo script)
        {
            var gameprog = game.Items.LoadScript(script);

            if (gameprog == null)
            {
                return(null);
            }
            // guaranteed never to raise exception!!!
            var engine = PolyGame.Create(script.Filename, new StringReader(gameprog));

            return((engine == null) ? null : new GameBoardModel {
                Script = script,
                Seed = 1, // FIX: optional
                _polygame = engine,
            }.Setup());
        }
Ejemplo n.º 3
0
        static PlayWrapper LoadGame(string gamename, int variant, int level = -1, bool inner = false)
        {
            if (level >= 0)
            {
                Logger.Level = level;
            }
            var game = (inner) ? ((gamename != null) ? PolyGame.CreateInner(gamename) : PolyGame.CreateInner(InputPath))
                         : ((gamename != null) ? PolyGame.Create(gamename) : PolyGame.Create(InputPath));

            if (game == null)
            {
                Logger.WriteLine(1, "\n*** {0} did not load ***\n{1}", gamename, PolyGame.LastError);
                return(null);
            }
            if (Logger.Level >= 1)
            {
                ShowMenu(gamename, game);
            }
            return(new PlayWrapper {
                Player = ConsolePlayer.Create(game, variant)
            });
        }