public bool RedoOneStep(string id)
 {
     if (!PowerUser.IsPowerUser(User.Identity.Name))
     {
         return(false);
     }
     return(GameMgr.RedoOneStep(id));
 }
 public bool ReportBug(string id)
 {
     if (!PowerUser.IsPowerUser(User.Identity.Name))
     {
         return(false);
     }
     return(GameMgr.ReportBug(id));
 }
        /// <summary>
        /// 回退一步
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public bool UndoOneStep(string id)
        {
            var u = User.Identity;

            if (!PowerUser.IsPowerUser(User.Identity.Name))
            {
                return(false);
            }
            return(GameMgr.UndoOneStep(id));
        }
 /// <summary>
 /// 恢复备份
 /// </summary>
 /// <param name="filename"></param>
 /// <returns></returns>
 public IActionResult RestoreData(string filename)
 {
     if (!PowerUser.IsPowerUser(User.Identity.Name))
     {
         return(Redirect("/home/index"));
     }
     ViewData["nameList"] = string.Join(",", GameMgr.RestoreDictionary(filename));
     //恢复到未维护状态
     ServerStatus.IsStopSyntax = false;
     return(Redirect("/home/viewgame/" + "test01"));
     //return View();
 }
        /// <summary>
        /// 删除游戏
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>

        public bool DeleteOneGame(string id)
        {
            if (!PowerUser.IsPowerUser(User.Identity.Name))
            {
                return(false);
            }
            //数据库一起删除
            GameInfoModel gameInfoModel = this.dbContext.GameInfoModel.SingleOrDefault(item => item.name == id);

            if (gameInfoModel != null)
            {
                this.dbContext.GameInfoModel.Remove(gameInfoModel);
                this.dbContext.SaveChanges();
            }
            return(GameMgr.DeleteOneGame(id));
        }
        public IActionResult DeleteAllGame()
        {
            if (!PowerUser.IsPowerUser(User.Identity.Name))
            {
                return(Redirect("/home/index"));
            }
            var task = _userManager.GetUserAsync(HttpContext.User);

            Task[] taskarray = new Task[] { task };
            Task.WaitAll(taskarray, millisecondsTimeout: 1000);
            if ("*****@*****.**".Equals(task.Result.UserName))
            {
                GameMgr.DeleteAllGame();
            }
            return(Redirect("/home/index"));
        }