public override void Begin(FlowNode_MultiPlayJoinRoom self) { MyPhoton instance = PunMonoSingleton <MyPhoton> .Instance; if (string.IsNullOrEmpty(GlobalVars.SelectedMultiPlayRoomName)) { self.FailureLobby(); } else { QuestParam quest = MonoSingleton <GameManager> .Instance.FindQuest(GlobalVars.SelectedQuestID); if (quest == null || !quest.IsMulti || ((int)quest.playerNum < 1 || (int)quest.unitNum < 1) || ((int)quest.unitNum > 11 || quest.map == null || quest.map.Count <= 0)) { DebugUtility.Log("illegal iname:" + GlobalVars.SelectedQuestID); self.IllegalQuest(); } else if (!instance.CheckTowerRoomIsBattle(GlobalVars.SelectedMultiPlayRoomName)) { self.FailureLobby(); } else { self.mJoinPlayerParam = JSON_MyPhotonPlayerParam.Create(0, 0); if (self.mJoinPlayerParam == null) { self.FailureLobby(); } else { DebugUtility.Log("Joining name:" + GlobalVars.SelectedMultiPlayRoomName + " pnum:" + (object)quest.playerNum + " unum:" + (object)quest.unitNum); if (instance.JoinRoom(GlobalVars.SelectedMultiPlayRoomName, self.mJoinPlayerParam.Serialize(), GlobalVars.ResumeMultiplayPlayerID != 0)) { return; } DebugUtility.Log("error:" + (object)instance.LastError); self.FailureLobby(); } } } }