public PingPongGameData(Tuple <IGate, IGate> gates, IBall ball, IGameFieldInfo gameFieldInfo, IBallKicker <IBall> ballKicker)
 {
     Gates         = gates;
     Ball          = ball;
     GameFieldInfo = gameFieldInfo;
     BallKicker    = ballKicker;
 }
        public void Init(IProvidersContainer providersContainer)
        {
            Gates = new Tuple <IGate, IGate>(firstGate, secondGate);

            FieldInfo = new PingPongGameFieldInfo(centerTr.position);

            eventBus = providersContainer.GetProvider <IEventBus>();

            updateProvider           = providersContainer.GetProvider <IUpdateProvider>();
            updateProvider.OnUpdate += OnUpdate;

            InitWalls(providersContainer);
        }