private void JoinGame(object sender, EventArgs e) { Application.Run(new FrmJoinGame()); var multiplayerComponent = new MultiplayerComponent(_game, _input, _game.Get <GameWindow>().ClientSize, new IPEndPoint(IPAddress.Loopback, GameSettings.DefaultPortServer)); _game.RegisterNewComponent(multiplayerComponent); Visible = false; Enabled = false; _game.JoinGame(); }
public void Run(int frame, int ups, bool multiplayer, string playername = "") { IsMutliplayer = multiplayer; if (multiplayer) { MultiplayerComponent.Connect(); } Frames = frame; this.ups = ups; if (multiplayer) { Map = MultiplayerComponent.GetMap(); player = MultiplayerComponent.ConnectPlayer(playername); player.Map = Map; player.IsLocal = true; player.Color = Color.Red; } else { var generator = new MapGenerator(); Map = generator.Generate(20, 10); player = new Player(Map, RoleManager.GetRandomRole()) { Color = Color.Red, Position = new Point(7, 4) }; CurrentGameStatus = GameStatus.Running; } Map.Players.Add(player); if (RoundComponent == null) { RoundComponent = new DefaultRoundManagerComponent(Map); } IsRunning = true; gameThread = new Thread(Loop) { Name = "gameThread" }; gameThread.Start(); }
private void SystemUpdate() { if (IsMutliplayer) { MultiplayerComponent.Update(this); } WaitingComponent?.Update(this); if (CurrentGameStatus == GameStatus.Running) { GameUpdate(); } }
public void Stop() { if (IsMutliplayer) { MultiplayerComponent.Disconnect(); } if (gameThread.IsAlive) { IsRunning = false; } CurrentGameStatus = GameStatus.Stopped; }
private void HostGame(object sender, EventArgs e) { var server = new ChainReactServer(_game.Identity.Id); server.Start(); var multiplayerComponent = new MultiplayerComponent(_game, _input, _game.Get <GameWindow>().ClientSize, new IPEndPoint(IPAddress.Loopback, GameSettings.DefaultPortServer)); _game.RegisterNewComponent(multiplayerComponent); Visible = false; Enabled = false; GameSettings.Instance.Address = IPAddress.Loopback; _game.JoinGame(); //_game.JoinGame(_random.Next(25000, 60000)); }
private void JoinGame(object sender, EventArgs e) { Application.Run(new FrmJoinGame()); var multiplayerComponent = new MultiplayerComponent(_game, _input, _game.Get<GameWindow>().ClientSize, new IPEndPoint(IPAddress.Loopback, GameSettings.DefaultPortServer)); _game.RegisterNewComponent(multiplayerComponent); Visible = false; Enabled = false; _game.JoinGame(); }
private void HostGame(object sender, EventArgs e) { var server = new ChainReactServer(_game.Identity.Id); server.Start(); var multiplayerComponent = new MultiplayerComponent(_game, _input, _game.Get<GameWindow>().ClientSize, new IPEndPoint(IPAddress.Loopback, GameSettings.DefaultPortServer)); _game.RegisterNewComponent(multiplayerComponent); Visible = false; Enabled = false; GameSettings.Instance.Address = IPAddress.Loopback; _game.JoinGame(); //_game.JoinGame(_random.Next(25000, 60000)); }