// Update is called once per frame void Update() { //游戏启动后,调用此方法来向后台发送“已正常开始场景”消息。如按键开始游戏,可在按键后使用该方法 if (Input.GetKey(KeyCode.Space)) { MyServerManager.StartSuccess(); } }
void Update() { if (server == null) { server = MyServerManager.mainServerManager; } if (timer >= updateInterval) { timer = 0; updateScoreboard(); } timer += Time.deltaTime; }
void StartServer() { if (null == mServerCtrl || null == mServerCtrl.mList) { return; } if (mServerCtrl.mList.mSelectedIndex == -1) { return; } int index = mServerCtrl.mList.mSelectedIndex; string serverName = mServerCtrl.mList.mItems[index].mData[0]; int sceneMode = (int)MyServer.AdventureOrBuild(mServerCtrl.mList.mItems[index].mData[2]); ConnectedServer cServer = P2PManager.GetServer(serverName, sceneMode); if (cServer != null) { Debug.Log("Server is running!"); MessageBox_N.ShowOkBox(PELocalization.GetString(8000497)); return; } MyServer ms = LoadServer.GetServer(serverName, sceneMode); if (null == ms) { return; } mServerCtrl.GetMyServerInfo(ms); if (ms.gameMode == (int)Pathea.PeGameMgr.ESceneMode.Custom) { Pathea.PeGameMgr.mapUID = ms.uid; string dataPath = Path.Combine(GameConfig.CustomDataDir, ms.mapName); Pathea.CustomGameData.Mgr.Instance.GetCustomData(Pathea.PeGameMgr.mapUID, dataPath); } MyServerManager.StartMyServer(ms); }
void Awake() { if (instance == null) { instance = this; } else if (instance != this) { DestroyObject(gameObject); } DontDestroyOnLoad(this); playerColors = new Color[] //apparently warcraft 3 colors { Color.red, Color.blue, new Color32(0x00, 0xFF, 0xFF, 0xFF), new Color32(0x80, 0x00, 0x80, 0xFF), new Color32(0xFF, 0xFF, 0x00, 0xFF), new Color32(0x00, 0xFF, 0x80, 0xFF), new Color32(0x00, 0xFF, 0x00, 0xFF), new Color32(0x00, 0xFF, 0x00, 0xFF) }; }
void CreateCustomServer() { Pathea.CustomGameData.Mgr.Instance.curGameData = Pathea.CustomGameData.Mgr.Instance.GetCustomData(UID); if (null == Pathea.CustomGameData.Mgr.Instance.curGameData) { return; } string serverName = mServerName.text; if (LoadServer.Exist(serverName)) { return; } Pathea.PeGameMgr.gameName = Pathea.CustomGameData.Mgr.Instance.curGameData.name; Pathea.PeGameMgr.monsterYes = mMonsterYes; Pathea.PeGameMgr.loadArchive = Pathea.ArchiveMgr.ESave.New; MyServer ms = new MyServer(); ms.gameName = serverName; ms.gamePassword = mPassword.text; ms.gameMode = (int)Pathea.PeGameMgr.sceneMode; ms.masterRoleName = GameClientLobby.role.name; ms.mapName = Pathea.PeGameMgr.gameName; ms.seedStr = mSeed.text; ms.uid = UID; ms.unlimitedRes = mInfiniteResoureces.isChecked; ms.proxyServer = mProxyServer.isChecked; ms.isPrivate = mPrivateServer.isChecked; ms.useSkillTree = RandomMapConfig.useSkillTree = mSkillTreeSystem.isChecked; ms.scriptsAvailable = mAllScriptsAvailable.isChecked; MyServerManager.StartCustomServer(ms); }
void Awake() { mainServerManager = this; }
void Awake() { //调用此方法来连接客户端;可以在某个物体的Awake()方法中来调用此函数 MyServerManager.GameConnectToServer(); }
void Death() { //关闭游戏时,调用此方法来向后台发送“场景已结束,请关闭场景”消息 MyServerManager.EndGame(); }
void Start() { server = MyServerManager.mainServerManager; }
void OnCreateHostBtn() { if (string.IsNullOrEmpty(mServerName.text)) { MessageBox_N.ShowOkBox(PELocalization.GetString(8000059)); return; } if (Pathea.PeGameMgr.sceneMode == Pathea.PeGameMgr.ESceneMode.Custom) { if (!mMultiCustomCtrl.HasSelectMap())//没选中地图 { return; } if (LoadServer.Exist(mServerName.text)) { MessageBox_N.ShowOkBox(PELocalization.GetString(8000485)); return; } mMultiCustomCtrl.OnWndStartClick();//检测地图完整性 StartCoroutine(WhetherMapCheckHasFinished()); return; } if (Input.GetMouseButtonUp(0) && mMapList.Count > 0) { string serverName = mServerName.text; //int serverport = uLink.NetworkUtility.FindAvailablePort(9900, 9915); string password = mPassword.text; string mapName = mMapName.text; bool publicServer = !mPrivateServer.isChecked; switch (mBiomePop.selection) { case "Grassland": RandomMapConfig.RandomMapID = RandomMapType.GrassLand; RandomMapConfig.vegetationId = RandomMapType.GrassLand; break; case "Forest": RandomMapConfig.RandomMapID = RandomMapType.Forest; RandomMapConfig.vegetationId = RandomMapType.Forest; break; case "Desert": RandomMapConfig.RandomMapID = RandomMapType.Desert; RandomMapConfig.vegetationId = RandomMapType.Desert; break; case "Redstone": RandomMapConfig.RandomMapID = RandomMapType.Redstone; RandomMapConfig.vegetationId = RandomMapType.Redstone; break; case "Rainforest": RandomMapConfig.RandomMapID = RandomMapType.Rainforest; RandomMapConfig.vegetationId = RandomMapType.Rainforest; break; case "Mountain": RandomMapConfig.RandomMapID = RandomMapType.Mountain; RandomMapConfig.vegetationId = RandomMapType.Mountain; break; case "Swamp": RandomMapConfig.RandomMapID = RandomMapType.Swamp; RandomMapConfig.vegetationId = RandomMapType.Swamp; break; case "Crater": RandomMapConfig.RandomMapID = RandomMapType.Crater; RandomMapConfig.vegetationId = RandomMapType.Crater; break; default: RandomMapConfig.RandomMapID = RandomMapType.GrassLand; RandomMapConfig.vegetationId = RandomMapType.GrassLand; break; } switch (mWeatherPop.selection) { case "Dry": RandomMapConfig.ScenceClimate = ClimateType.CT_Dry; break; case "Temperate": RandomMapConfig.ScenceClimate = ClimateType.CT_Temperate; break; case "Wet": RandomMapConfig.ScenceClimate = ClimateType.CT_Wet; break; case "Random": RandomMapConfig.ScenceClimate = ClimateType.CT_Random; break; } Pathea.PeGameMgr.monsterYes = mMonsterYes; string seedStr = mSeed.text; serverName = serverName.Trim(); if (string.IsNullOrEmpty(serverName)) { MessageBox_N.ShowOkBox(PELocalization.GetString(8000060)); return; } if (serverName.Length < 4 || serverName.Length > 19) { MessageBox_N.ShowOkBox(PELocalization.GetString(8000486)); return; } if (LoadServer.Exist(serverName)) { MessageBox_N.ShowOkBox(PELocalization.GetString(8000485)); return; } bool IsInfiniteResoureces = mInfiniteResoureces.isChecked; bool useProxy = mProxyServer.isChecked; bool useSkillTree = mSkillTreeSystem.isChecked; bool scriptsAvailable = mAllScriptsAvailable.isChecked; RandomMapConfig.useSkillTree = useSkillTree; MyServer ms = new MyServer(); ms.gameName = serverName; ms.gamePassword = password; ms.mapName = mapName; ms.gameMode = (int)Pathea.PeGameMgr.sceneMode; ms.gameType = (int)Pathea.PeGameMgr.gameType; ms.seedStr = seedStr; ms.teamNum = teamNum; ms.numPerTeam = playerNum; ms.dropDeadPercent = Convert.ToInt32(mDropRateSelections[mDropRateIndex]); ms.terrainType = (int)RandomMapConfig.RandomMapID; ms.vegetationId = (int)RandomMapConfig.vegetationId; ms.sceneClimate = (int)RandomMapConfig.ScenceClimate; ms.monsterYes = Pathea.PeGameMgr.monsterYes; ms.unlimitedRes = IsInfiniteResoureces; ms.terrainHeight = mTerrainHeight; ms.mapSize = mMapSize; ms.riverDensity = mRiverDensity; ms.riverWidth = mRiverWidth; //a0.95 ms.plainHeight = plainHeight; ms.flatness = flatness; ms.bridgeMaxHeight = bridgeMaxHeight; //b0.72 ms.allyCount = mAllyCount; ms.scriptsAvailable = scriptsAvailable; ms.proxyServer = useProxy; ms.isPrivate = !publicServer; ms.masterRoleName = GameClientLobby.role.name; ms.useSkillTree = useSkillTree; ms.uid = ""; //ms.dropDeadPercent = drop MyServerManager.CreateNewServer(ms); } }