Example #1
0
        public static void Main(string[] args)
        {
            var serviceProvider = new ServiceCollection()
                                  .AddSingleton <IPlayerFactory, PlayerFactory>()
                                  .AddSingleton <IPlayerBuilder, PlayerBuilder>()
                                  .AddSingleton <IGameManager, GameManager>()
                                  .AddSingleton <KillingLaserFactory, KillingLaserFactory>()
                                  .AddSingleton <CatchingLaserFactory, CatchingLaserFactory>()
                                  .AddSingleton <LaserManager, LaserManager>()
                                  .AddSingleton <IGameController, GameController>()
                                  .AddSingleton <ILobbyManager, LobbyManager>()
                                  .AddSingleton <ILobbyController, LobbyController>()
                                  .AddSingleton <IRequestFacade, RequestFacade>()
                                  .AddSingleton <FriendlySpawnFactory, FriendlySpawnFactory>()
                                  .AddSingleton <EnemySpawnFactory, EnemySpawnFactory>()
                                  .AddSingleton <SpawnManager, SpawnManager>()
                                  .AddSingleton <ISender, Sender.SenderAdapter>()
                                  .AddSingleton <IUdpReceiver, UdpReceiver>()
                                  .AddSingleton <IUdpSender, UdpSender>()
                                  .BuildServiceProvider();

            IUdpReceiver udpReceiver = serviceProvider.GetService <IUdpReceiver>();

            udpReceiver.Run("127.0.0.1", 23456);

            IUdpSender udpSender = serviceProvider.GetService <IUdpSender>();

            udpSender.Run("127.0.0.1", 23456);

            Console.ReadKey();
        }
Example #2
0
        public LoginForm(IUdpSender udpSender, ISubject <LoginResponse> loginSubject, IStorage storage, IServiceProvider provider)
        {
            _udpSender = udpSender;
            _storage   = storage;
            _provider  = provider;

            loginSubject.Attach(this);

            InitializeComponent();
        }
        public SimpleMessagesPacker(int mtu, IUdpSender udpSender, MessagesPackIdFactory messagesPackIdFactory)
        {
            if (mtu < 500)
            {
                throw new Exception($"Размер mtu слишком мал {mtu}");
            }

            this.mtu                   = mtu;
            this.udpSender             = udpSender;
            this.messagesPackIdFactory = messagesPackIdFactory;
        }
Example #4
0
        public LobbyForm(IUdpSender udpSender, ILobbyManager lobbyManager, IStorage storage, GameForm game)
        {
            _udpSender    = udpSender;
            _storage      = storage;
            _game         = game;
            _lobbyManager = lobbyManager;

            _lobbyManager.AttachLobby(this);

            InitializeComponent();

            slots = new List <LobbyUserItem>
            {
                lobbyUserItem1,
                lobbyUserItem2,
                lobbyUserItem3,
                lobbyUserItem4
            };
        }
Example #5
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            var serviceProvider = new ServiceCollection()
                                  .AddSingleton <IRequestFacade, RequestFacade>()
                                  .AddSingleton <ILoginManager, LoginManager>()
                                  .AddSingleton <ILobbyManager, LobbyManager>()
                                  .AddSingleton <IGameManager, GameManager>()
                                  .AddSingleton <PlayerManager, PlayerManager>()
                                  .AddSingleton <GameUpdater, GameUpdater>()
                                  .AddSingleton <GameController, GameController>()
                                  .AddSingleton <IStorage, Storage>()
                                  .AddSingleton <LoginController, LoginController>()
                                  .AddSingleton <LobbyController, LobbyController>()
                                  .AddSingleton <ISubject <LoginResponse>, LoginSubject>()
                                  .AddSingleton <IUdpReceiver, UdpReceiver>()
                                  .AddSingleton <IUdpSender, UdpSender>()
                                  .AddSingleton <ISender, SenderAdapter>()
                                  .AddTransient <LoginForm>()
                                  .AddTransient <LobbyForm>()
                                  .AddTransient <GameForm>()
                                  .BuildServiceProvider();

            IUdpReceiver udpReceiver = serviceProvider.GetService <IUdpReceiver>();

            udpReceiver.Connect("127.0.0.1", 23456);

            IUdpSender udpSender = serviceProvider.GetService <IUdpSender>();

            udpSender.Connect(udpReceiver.Socket);

            var loginForm = serviceProvider.GetService <LoginForm>();

            Application.Run(loginForm);
        }
Example #6
0
 public ServiceWorker(IUdpSender udp, IServiceScopeFactory serviceScopeFactory, ILogger <ServiceWorker> log)
 {
     this.udp = udp;
     this.serviceScopeFactory = serviceScopeFactory;
     this.log = log;
 }
Example #7
0
 public SenderAdapter(IUdpSender udpSender)
 {
     _udpSender = udpSender;
 }
Example #8
0
 public GameManager(IUdpSender udpSender, GameUpdater gameUpdater)
 {
     _udpSender   = udpSender;
     _gameUpdater = gameUpdater;
 }
Example #9
0
 public DhcpRequestEventHandler(IUdpSender udpSender)
 {
     this.udpSender = udpSender;
 }