Ejemplo n.º 1
0
        public GameService(Action <string> logAction)
        {
            m_log = logAction;

            m_worldEventsLog = new GameEventsLog();

            Logger.LogItemReceived += logItem => LogMessage(logItem.ToString());

            m_playerToPlaneMapping = new Dictionary <Guid, Plane>();

            World = new GameWorld(new Size(800, 800));
            World.AddGravityBoundsWithPlanets(50, 13);
            //World.AliensAppearingStrategy = new BasicAliensAppearingStrategy(World, TimeSpan.FromSeconds(60));
            World.AliensAppearingStrategy = new SingleAliensAppearingStrategy(World);

            World.GameObjectStatusChanged += GameObjectStatusChangedHandler;
            World.BonusApplied            += BonusAppliedHandler;
            World.Explosion += ExplosionHandler;

            Task.Factory.StartNew(GameWorldUpdate);
        }