another fix

master
Benjamin Kraft 4 years ago
parent 0ca94df85c
commit 19bbb5cbb0
  1. 5
      Arch/ThreadManager.cs
  2. 6
      Game/GameManager.cs

@ -1,5 +1,6 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq;
using System.Threading; using System.Threading;
using GameServer.Game; using GameServer.Game;
using GameServer.Management; using GameServer.Management;
@ -59,8 +60,8 @@ namespace GameServer.Arch {
} }
private static void Tick() { private static void Tick() {
foreach (var room in Server.Rooms.Values) { foreach (var room in Server.Rooms.Values.Where(room => room.Game != null && room.Game.IsRunning)) {
room.Game?.Update(); room.Game.Update();
} }
UpdateMain(); UpdateMain();

@ -7,6 +7,8 @@ namespace GameServer.Game {
private Room Room { get; } private Room Room { get; }
private Dictionary<int, Player> Players { get; } = new(); private Dictionary<int, Player> Players { get; } = new();
public bool IsRunning { get; set; }
public GameManager(Room room) { public GameManager(Room room) {
Room = room; Room = room;
@ -17,10 +19,12 @@ namespace GameServer.Game {
Start(); Start();
} }
public void Start() { private void Start() {
foreach (var player in Players.Values) { foreach (var player in Players.Values) {
player.Start(); player.Start();
} }
IsRunning = true;
} }
public void Update() { public void Update() {

Loading…
Cancel
Save