示例#1
0
文件: Action4210.cs 项目: 0jpq0/Scut
        public override bool TakeAction()
        {
            var plotTeam = new PlotTeamCombat(ContextUser);
            MorePlotTeam moreTeam = plotTeam.GetTeam(teamID);

            if (moreTeam != null && moreTeam.UserList.Count <= 1)
            {
                this.ErrorCode = LanguageManager.GetLang().ErrorCode;
                this.ErrorInfo = LanguageManager.GetLang().St4210_PeopleNotEnough;
                return false;
            }

            PlotInfo plotInfo = new ConfigCacheSet<PlotInfo>().FindKey(plotID);
            if (plotInfo == null)
            {
                this.ErrorCode = LanguageManager.GetLang().ErrorCode;
                this.ErrorInfo = LanguageManager.GetLang().St4210_PlotNotEnough;
                return false;
            }

            if(!plotTeam.DoStart(teamID))
            {
                this.ErrorCode = LanguageManager.GetLang().ErrorCode;
                return false;
            }

            return true;
        }
示例#2
0
 private static void DisposeData(GameActive gameActive)
 {
     if (gameActive.LoadSuccess)
     {
         gameActive.LoadSuccess = false;
         if (gameActive.ActiveType == FunctionEnum.Booszhang)
         {
             BossCombat.Dispose(gameActive);
         }
         else if (gameActive.ActiveType == FunctionEnum.Lintuzhang)
         {
             CountryCombat.Dispose(gameActive);
         }
         else if (gameActive.ActiveType == FunctionEnum.Multiplot)
         {
             PlotTeamCombat.Dispose(gameActive);
         }
         else if (gameActive.ActiveType == FunctionEnum.MorePlotCoin)
         {
             PlotTeamCombat.Dispose(gameActive);
         }
         else if (gameActive.ActiveType == FunctionEnum.MorePlotEnergy)
         {
             PlotTeamCombat.Dispose(gameActive);
         }
     }
 }
示例#3
0
 public override bool TakeAction()
 {
     if (!PlotTeamCombat.IsMorePlotDate(ContextUser.UserID, funEnum))
     {
         ErrorCode = LanguageManager.GetLang().ErrorCode;
         ErrorInfo = LanguageManager.GetLang().St4202_OutMorePlotDate;
         return false;
     }
     if (UserHelper.IsBeiBaoFull(ContextUser))
     {
         ErrorCode = LanguageManager.GetLang().ErrorCode;
         ErrorInfo = LanguageManager.GetLang().St1107_GridNumFull;
         return false;
     }
     var plotTeam = new PlotTeamCombat(ContextUser);
     teamID = plotTeam.GetTeamId(Uid);
     if (teamID != -1)
     {
         return true;
     }
     if (!plotTeam.CreateTeam(plotID, out teamID))
     {
         ErrorCode = LanguageManager.GetLang().ErrorCode;
         return false;
     }
     return true;
 }
示例#4
0
        public override bool TakeAction()
        {
            if (!PlotTeamCombat.IsMorePlotDate(ContextUser.UserID, funEnum))
            {
                ErrorCode = LanguageManager.GetLang().ErrorCode;
                ErrorInfo = LanguageManager.GetLang().St4202_OutMorePlotDate;
                return false;
            }
            if (UserHelper.IsBeiBaoFull(ContextUser))
            {
                ErrorCode = LanguageManager.GetLang().ErrorCode;
                ErrorInfo = LanguageManager.GetLang().St1107_GridNumFull;
                return false;
            }
            var plotTeam = new PlotTeamCombat(ContextUser);
            var team = plotTeam.GetTeam(teamID);
            if (team != null)
            {
                if (team.Status == 2)
                {
                    ErrorCode = LanguageManager.GetLang().ErrorCode;
                    ErrorInfo = LanguageManager.GetLang().St4206_TeamPlotStart;
                    return false;
                }
                if (team.Status == 3)
                {
                    ErrorCode = LanguageManager.GetLang().ErrorCode;
                    ErrorInfo = LanguageManager.GetLang().St4206_TeamPlotLead;
                    return false;
                }
            }
            if (ops == 1)
            {
                plotTeam.AddTeam(teamID);
            }
            else if (ops == 2)
            {
                if (funEnum == FunctionEnum.Multiplot)
                {
                    plotTeam.AddTeam(out teamID);
                }
                else
                {
                    plotTeam.AddMoreTeam(out teamID);
                }
                if (teamID == -1)
                {
                    ErrorCode = LanguageManager.GetLang().ErrorCode;
                    ErrorInfo = LanguageManager.GetLang().St4206_NoTeam;
                    return false;
                }
            }

            return true;
        }
示例#5
0
 public override bool TakeAction()
 {
     var plotTeam = new PlotTeamCombat(ContextUser);
     int teamId = plotTeam.GetTeamId(Uid);
     if (teamId != -1)
     {
         var team = plotTeam.GetTeam(teamId);
         if (!team.TeamUser.UserId.Equals(Uid))
         {
             ErrorCode = LanguageManager.GetLang().ErrorCode;
             return false;
         }
         plotTeam.MoveTeamPos(teamId, toUser, IsUp == 1);
     }
     return true;
 }
示例#6
0
文件: Action4209.cs 项目: 0jpq0/Scut
 public override bool TakeAction()
 {
     var plotTeam = new PlotTeamCombat(ContextUser);
     var team = plotTeam.GetTeam(teamID);
     if (team.Status == 2)
     {
         ErrorCode = LanguageManager.GetLang().ErrorCode;
         ErrorInfo = LanguageManager.GetLang().St4208_IsCombating;
         return false;
     }
     if(!plotTeam.LeaveTeam(teamID))
     {
         //ErrorCode = LanguageManager.GetLang().ErrorCode;
         //return false;
     }
     return true;
 }
示例#7
0
        private static void LoadData(GameActive gameActive)
        {
            if ((gameActive.CombatStatus == CombatStatus.Wait || gameActive.CombatStatus == CombatStatus.Combat) && !gameActive.LoadSuccess)
            {
                if (!string.IsNullOrEmpty(gameActive.Broadcast))
                {
                    var broadcastService = new TjxBroadcastService(null);
                    var msg = broadcastService.Create(NoticeType.Game, gameActive.Broadcast);

                    if (gameActive.ActiveId == 11)
                    {
                        int    invertal  = (int)new TimeSpan(0, 0, gameActive.WaitMinutes, 0).TotalSeconds / 5;
                        string startTime = DateTime.Now.ToString("HH:mm:ss");
                        string endTime   = DateTime.Now.AddMinutes(gameActive.WaitMinutes).ToString("HH:mm:ss");
                        broadcastService.SendTimer(msg, startTime, endTime, true, invertal);//秒
                    }
                    else
                    {
                        broadcastService.Send(msg);
                    }
                }
                gameActive.LoadSuccess = true;
                if (gameActive.ActiveType == FunctionEnum.Booszhang)
                {
                    BossCombat.InitBoss(gameActive);
                }
                else if (gameActive.ActiveType == FunctionEnum.Lintuzhang)
                {
                    CountryCombat.Init(gameActive);
                }
                else if (gameActive.ActiveType == FunctionEnum.Multiplot)
                {
                    PlotTeamCombat.Init(gameActive);
                }
                else if (gameActive.ActiveType == FunctionEnum.MorePlotCoin)
                {
                    PlotTeamCombat.Init(gameActive);
                }
                else if (gameActive.ActiveType == FunctionEnum.MorePlotEnergy)
                {
                    PlotTeamCombat.Init(gameActive);
                }
            }
        }
示例#8
0
        public override bool TakeAction()
        {
            var plotTeam = new PlotTeamCombat(ContextUser);
            var team = plotTeam.GetTeam(teamID);
            if (!plotTeam.IsInTeam())
            {
                ErrorCode = LanguageManager.GetLang().ErrorCode;
                ErrorInfo = LanguageManager.GetLang().St4211_UserNotAddTeam;
                return false;
            }

            if (!plotTeam.SendOutMember(teamID, toUser))
            {
                ErrorCode = LanguageManager.GetLang().ErrorCode;
                return false;
            }

            return true;
        }
示例#9
0
 public override bool TakeAction()
 {
     if (!PlotTeamCombat.IsMorePlotDate(ContextUser.UserID,funEnum))
     {
         ErrorCode = LanguageManager.GetLang().ErrorCode;
         ErrorInfo = LanguageManager.GetLang().St4202_OutMorePlotDate;
         return false;
     }
     var plotTeam = new PlotTeamCombat(ContextUser);
     if (!string.IsNullOrEmpty(plotTeam.ToString()))
     {
         if (funEnum == FunctionEnum.Multiplot)
         {
             morePlotArray = plotTeam.GetMorePlotList();
         }
         else
         {
             morePlotArray = plotTeam.GetMorePlotFestivalList(funEnum);
         }
     }
     return true;
 }
示例#10
0
文件: Action4204.cs 项目: 0jpq0/Scut
 public override bool TakeAction()
 {
     var plotTeam = new PlotTeamCombat(ContextUser);
     moreTeam = plotTeam.GetTeam(teamID);
     return true;
 }
示例#11
0
        public override bool TakeAction()
        {
            var plotTeam = new PlotTeamCombat(ContextUser);
            teamCombatResult = plotTeam.GetCombatProcess(teamID);
            teamPlot = plotTeam.GetTeam(teamID);
            plotInfo = new ConfigCacheSet<PlotInfo>().FindKey(plotID);

            if (teamCombatResult.IsWin)
            {
                //日常任务-多人副本
                TaskHelper.TriggerDailyTask(Uid, 4007);

                if (ContextUser.UserExtend != null && ContextUser.UserExtend.DailyInfo != null)
                {
                    if (ContextUser.UserExtend.DailyInfo.RefreshDate.Date == DateTime.Now.Date)
                    {
                        ContextUser.UserExtend.DailyInfo.MoreNum = MathUtils.Addition(ContextUser.UserExtend.DailyInfo.MoreNum, 1);
                    }
                    else
                    {
                        ContextUser.UserExtend.DailyInfo.RefreshDate = DateTime.Now;
                        ContextUser.UserExtend.DailyInfo.MoreNum = 1;
                    }
                }
                else if (ContextUser.UserExtend != null)
                {
                    DailyRefresh dailyRefresh = new DailyRefresh();
                    dailyRefresh.RefreshDate = DateTime.Now;
                    dailyRefresh.MoreNum = 1;
                    ContextUser.UserExtend.DailyInfo = dailyRefresh;
                }
                //ContextUser.Update();
            }

            return true;
        }