Exemple #1
0
        public DBAllianceTaskList GetAllianceActive(LodeManager _this, Alliance alliance)
        {
            DBAllianceTaskList task;

            if (false == _this.mDbData.ActivityInfo.AllianceTaskList.TryGetValue(alliance.AllianceId, out task))
            {
                task       = new DBAllianceTaskList();
                task.Id    = alliance.AllianceId;
                task.Name  = alliance.Name;
                task.Score = 0;
                for (int i = 0; i < _this.mDbData.ActivityInfo.aTaskIDs.Count; i++)
                {
                    DBAllianceTask tt  = new DBAllianceTask();
                    var            tab = Table.GetObjectTable(_this.mDbData.ActivityInfo.aTaskIDs[i]);
                    if (tab == null)
                    {
                        continue;
                    }
                    tt.Id   = tab.Id;
                    tt.Need = tab.NeedCount;
                    tt.Type = tab.EventType;
                    task.TaskList.Add(tt.Id, tt);
                }
                _this.mDbData.ActivityInfo.AllianceTaskList.Add(alliance.AllianceId, task);
            }

            task.Level = alliance.Level;
            task.Fight = alliance.GetTotleFightPoint();

            _this.bDirty = true;
            return(task);
        }
Exemple #2
0
        public ErrorCodes CheckAllianceMission(LodeManager _this, Alliance alliance, int missionId)
        {
            DBAllianceTaskList task = GetAllianceActive(_this, alliance);
            DBAllianceTask     t    = null;

            if (false == task.TaskList.TryGetValue(missionId, out t))
            {
                return(ErrorCodes.Error_MissionID);
            }
            if (t.Count < t.Need)
            {
                return(ErrorCodes.Error_ConditionNoEnough);
            }
            return(ErrorCodes.OK);
        }