Ejemplo n.º 1
0
        public Game()
        {
            screen = new Screen
            {
                Width  = ScreenWidth,
                Height = ScreenHeight
            };

            levelManager           = new LevelManager();
            collisionManager       = new CollisionManager();
            screenCollisionManager = new ScreenCollisionManager(screen);
            randomGenerator        = new RandomGenerator();
            tailManager            = new TailManager();
            ballManager            = new BallManager();
            borderManager          = new BorderManager();
            padManager             = new PadManager(screen);

            ballStateMachine = new BallStateMachine(this, screenCollisionManager, collisionManager, padManager, borderManager, levelManager);

            padManager.Add(Edge.Top);
            padManager.Add(Edge.Bottom);

            borderManager.Create(screen);

            foreach (var pad in padManager)
            {
                VerifyBorderCollision(pad);
            }

            IBall ball = new Ball(randomGenerator);

            ball.SetSize(15, 15);
            ballManager.Add(ball);
        }
Ejemplo n.º 2
0
 public BallBuilder(
     IBallManager ballManager,
     ITailManager tailManager,
     IPadManager padManager,
     Action <IBall, int> SpeedTimerHandler)
 {
     this.ballManager       = ballManager;
     this.tailManager       = tailManager;
     this.padManager        = padManager;
     this.SpeedTimerHandler = SpeedTimerHandler;
 }
Ejemplo n.º 3
0
 public BallExtraFeatureBuilder(
     IBallManager ballManager,
     ITailManager tailManager,
     BallBuilder ballBuilder,
     FireBallCounter fireBallCounter)
 {
     this.ballManager     = ballManager;
     this.tailManager     = tailManager;
     this.ballBuilder     = ballBuilder;
     this.fireBallCounter = fireBallCounter;
 }
Ejemplo n.º 4
0
        public GameEngine(int number)
        {
            GameConfig.Mouses = number;

            screen = new Screen
            {
                Width  = ScreenWidth,
                Height = ScreenHeight
            };

            ManagerScope = managerScopeFactory.Create(screen);

            levelManager           = ManagerScope.Resolve <ILevelManager>();
            ballManager            = ManagerScope.Resolve <IBallManager>();
            padManager             = ManagerScope.Resolve <IPadManager>();
            tailManager            = ManagerScope.Resolve <ITailManager>();
            borderManager          = ManagerScope.Resolve <IBorderManager>();
            collisionManager       = ManagerScope.Resolve <ICollisionManager>();
            screenCollisionManager = ManagerScope.Resolve <IScreenCollisionManager>();
            borderCollisionManager = ManagerScope.Resolve <IBorderCollisionManager>();

            FireBallCounter = new FireBallCounter(tailManager);

            ballStateMachine = new BallStateMachine(
                ManagerScope,
                Bricks,
                HitBrick,
                LostBall);

            ballBuilder = new BallBuilder(
                ballManager,
                tailManager,
                padManager,
                FastBallCounter.TimerHandler);

            ballExtraFeatureBuilder = new BallExtraFeatureBuilder(
                ballManager,
                tailManager,
                ballBuilder,
                FireBallCounter);

            levelBuilder = new LevelBuilder(
                screen,
                levelManager,
                padManager,
                borderManager,
                borderCollisionManager,
                ballBuilder,
                GameConfig,
                Bricks);
        }
Ejemplo n.º 5
0
 public GamePlayView(IRenderProxy render,
                     IGamePlayfieldView playfieldView,
                     IInfoPanelView infoView,
                     IPadManager padManager,
                     IBallManager ballManager,
                     ITailManager tailManager
                     )
 {
     this.render        = render;
     this.playfieldView = playfieldView;
     this.infoView      = infoView;
     this.padManager    = padManager;
     this.ballManager   = ballManager;
     this.tailManager   = tailManager;
 }
Ejemplo n.º 6
0
 // Start is called before the first frame update
 void Start()
 {
     _player         = RealizationBox.Instance.Player;
     _ballManager    = RealizationBox.Instance.BallManager;
     _countBonusType = Enum.GetValues(typeof(BonusType)).Length;
 }
Ejemplo n.º 7
0
 public override void CustomStart()
 {
     _destroyManager = RealizationBox.Instance.ManagerForDestroyable;
     _ballManager    = RealizationBox.Instance.BallManager;
     _player         = RealizationBox.Instance.Player;
 }
Ejemplo n.º 8
0
 private void Start()
 {
     _ballManager  = RealizationBox.Instance.BallManager;
     _brickmanager = RealizationBox.Instance.ManagerForDestroyable;
     _player       = RealizationBox.Instance.Player;
 }
Ejemplo n.º 9
0
 public override void CustomStart()
 {
     _player      = RealizationBox.Instance.Player;
     _ballManager = RealizationBox.Instance.BallManager;
 }