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 > 9 || quest.map == null || quest.map.Count <= 0))
     {
       DebugUtility.Log("illegal iname:" + GlobalVars.SelectedQuestID);
       self.IllegalQuest();
     }
     else if (!instance.IsBattle(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();
       }
     }
   }
 }