Exemplo n.º 1
0
        internal async ValueTask StartedAsync()
        {
            if (GameState == GameStates.Starting)
            {
                for (var i = 0; i < _players.Values.Count; i++)
                {
                    var player = _players.Values.ElementAt(i);
                    await player.Character !.NetworkTransform.SetPositionAsync(player, MapSpawn.Maps[Options.Map].GetSpawnLocation(i, PlayerCount, true), Vector2.Zero);
                }

                GameState = GameStates.Started;

                await _eventManager.CallAsync(new GameStartedEvent(this));
            }
        }
Exemplo n.º 2
0
        internal async ValueTask StartedAsync()
        {
            if (GameState == GameStates.Starting)
            {
                foreach (var player in _players.Values)
                {
                    player.Character?.NetworkTransform.OnPlayerSpawn();
                    await player.Character !.NetworkTransform.SetPositionAsync(player, GameNet.ShipStatus !.GetSpawnLocation(player.Character, PlayerCount, true), Vector2.Zero);
                }

                GameState = GameStates.Started;

                await _eventManager.CallAsync(new GameStartedEvent(this));
            }
        }