예제 #1
0
파일: Game.cs 프로젝트: kingpipe/Pacman
        private void Init(int time, Position cherry)
        {
            _status     = GameStatus.NeedInitEvent;
            _defaultMap = (Map)Map.Clone();
            _pacman     = Map.Pacman;
            _pacman.SetTime(time);
            _cherry = new Cherry(cherry, Map);
            _ghosts = new MenagerGhosts(Map, time);

            _pacman.SinkAboutEatEnergizer += _ghosts.AreFrightened;
            _pacman.SinkAboutCreateCherry += () => _cherry.Start();
            _pacman.SinkAboutNextLevel    += NextLevel;
            _pacman.SinkAboutEatGhost     += _ghosts.EatGhost;
            _ghosts.AddSinkAboutEatPacmanHandler(PacmanIsKilled);
        }