void Awake() { if (Instance != null) { Debug.LogError("GameRoomManager is Singleton! Cannot be created again!"); } Instance = this; //读取数据 // 为了测试战场内的功能,我需要单独运行Room场景,直接进入房间服务器,这时候CsvDataManger还没有被初始化,所以需要单独被初始化 // 但是因为这个初始化只能是异步的(从StreamingAssets目录里读取文件,只能使用WWW异步读取), // 所以这里做出分支,如果ClientManager.Instance不存在,就说是是独立运行的分支. if (ClientManager.Instance != null) { // CsvDataManager这个实例在游戏一开始已经被ClientManager初始化过 CsvDataManager = ClientManager.Instance.CsvDataManager; CommandManager.LoadCommands(); roomData = ClientManager.Instance.EnterRoom; _address = roomData.Address; _port = roomData.Port; } else { // CsvDataManager尚未被初始化过 CsvDataManager = gameObject.AddComponent <CsvDataManager>(); StartCoroutine(DownloadDataFiles()); } }
// Start is called before the first frame update void Start() { if (this.gameObject == null) { return; } gameRoomManager = GameObject.Find("GameRoomManager").GetComponent <GameRoomManager>(); //gooleSheetManager = GameObject.Find("GoogleSheetManager").GetComponent<GooleSheetManager>(); gamePenal[0].SetActive(true); gamePenal[1].SetActive(false); gamePenal[2].SetActive(false); if (Charactor[0] != null) { Charactor[0].SetActive(true); Charactor[1].SetActive(false); } else { return; } //gamePenal[3].SetActive(false); }
public void Process() //todo refactoring { try { Stream = _client.GetStream(); while (true) { var message = Stream.GetMessageBytes(); if (message.Length == 0) { break; } message.GetRequestInfo(out var data, out var itemId, out var roomId, out var queryType); Console.WriteLine($"{itemId} {queryType} {data.Length}"); if (queryType == QueryType.GetAll) { if (GameRoomManager.GetIfExistsRoom(roomId)) { foreach (var roomData in GameRoomManager.GetData(roomId)) { _server.Send(this, roomData); } } continue; } GameRoomManager.Save(roomId, itemId, data, queryType); _server.BroadcastMessage(data, Id); } } catch (Exception ex) { Console.WriteLine(ex.Message); } finally { _server.RemoveConnection(Id); Close(); } }
static void Main(string[] args) { List <IAbs> managers = new List <IAbs>(); var pm = new PlayerManager(new Player() { ID = 1001 }); var gm = new GameRoomManager(new GameRoom() { ID = 2050 }); managers.Add(pm); managers.Add(gm); IItem part = managers[0].GetItem("0000"); }
protected override void Setup() { /* Add the log path to the properties so can use them in log4net.config. */ GlobalContext.Properties["Photon:ApplicationLogPath"] = Path.Combine(ApplicationPath, "log"); /* Configure log4net to use the log4net.config file. */ var configFilePath = Path.Combine(BinaryPath, "log4net.config"); var configFile = new FileInfo(configFilePath); if (configFile.Exists) { XmlConfigurator.ConfigureAndWatch(configFile); } _games = new GameRoomManager(); Log.Info("Started GameServer..."); }
public NetworkPlayer GeneratePlayerFromClientID(int clientID, int roomID, GameClientManager gameClientManager, GameRoomManager gameRoomManager) { var teamID = gameRoomManager.GetTeamFromClientIDAndRoomID(roomID, clientID); return(new NetworkPlayer(gameClientManager.GetGameClientFromClientID(clientID).ID, gameClientManager.GetGameClientFromClientID(clientID).Name, teamID)); }
public DummyGameService(IMapper mapper, GameRoomManager gameRoomManager) { _mapper = mapper; _gameRoomManager = gameRoomManager; }
public GameRoomService(IServerNetWork network) : base(network) { roomManager = GameRoomManager.GetInstance(); }
public GameSampleGameService(IMapper mapper, GameRoomManager gameRoomManager) { _mapper = mapper; _gameRoomManager = gameRoomManager; }
public SangongGameService(IMapper mapper, GameRoomManager gameRoomManager) { _mapper = mapper; _gameRoomManager = gameRoomManager; }
private void Awake() { instance = this; }