protected virtual void OnBattleLose() { MainWindow mainWindow = FindObjectOfType <MainWindow>(); if (mainWindow != null) { mainWindow.gameObject.SetActive(false); } if (!_hero.Alive) { if (_hero.GetRoleInfo().Level < 3) { ResetGameCtrl.Instance.ResetGame(false); } else { DropManager.DropWhenHeroDie(); } GameModel.Instance.DieTime++; #if !DISABLESTEAMWORKS SteamAchievementMgr.Instance.AchievementAboutNumChanged(); #endif } GlobalEventLocator.Instance.dispatch(new GameEvent(GameEvent.BATTLE_FAILED)); GameObject faildPanel = (GameObject)Instantiate(Resources.Load("Prefabs/BattleResult/FailedPanel"), GameObject.Find("MainCanvas").transform); }