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); }
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); }