public override void OnActivate(int pinID) { if (pinID != 0) { return; } PlayerData player = MonoSingleton <GameManager> .Instance.Player; player.AutoSetLeaderUnit(); if (this.SetCurrent) { player.SetPartyCurrentIndex((int)GlobalVars.SelectedPartyIndex); } PartyData partyCurrent = MonoSingleton <GameManager> .Instance.Player.GetPartyCurrent(); for (int index1 = 0; index1 < player.Partys.Count; ++index1) { bool flag = false; for (int index2 = 0; index2 < partyCurrent.MAX_UNIT; ++index2) { if (player.Partys[index1].GetUnitUniqueID(index2) != 0L) { flag = true; break; } } if (!flag) { this.ActivateOutputLinks(1800); return; } } if (Network.Mode == Network.EConnectMode.Offline) { this.Success(); } else { bool needUpdateMultiRoom = false; bool needUpdateMultiRoomMT = false; MyPhoton instance = PunMonoSingleton <MyPhoton> .Instance; GameUtility.EScene currentScene = GameUtility.GetCurrentScene(); if (UnityEngine.Object.op_Inequality((UnityEngine.Object)instance, (UnityEngine.Object)null)) { if (currentScene == GameUtility.EScene.HOME_MULTI || instance.IsResume()) { needUpdateMultiRoom = instance.IsOldestPlayer(); } else if (currentScene == GameUtility.EScene.MULTI_TOWER || instance.IsResume()) { needUpdateMultiRoomMT = instance.IsOldestPlayer(); } } ((Behaviour)this).set_enabled(true); this.ExecRequest((WebAPI) new ReqParty(new Network.ResponseCallback(((FlowNode_Network)this).ResponseCallback), needUpdateMultiRoom, true, needUpdateMultiRoomMT)); } }