public void UpdateCriteria(CriteriaTypes type, ulong miscValue1 = 0, ulong miscValue2 = 0, ulong miscValue3 = 0, Unit unit = null) { m_achievementSys.UpdateCriteria(type, miscValue1, miscValue2, miscValue3, unit, this); // Update only individual achievement criteria here, otherwise we may get multiple updates // from a single boss kill if (CriteriaManager.IsGroupCriteriaType(type)) { return; } Scenario scenario = GetScenario(); if (scenario != null) { scenario.UpdateCriteria(type, miscValue1, miscValue2, miscValue3, unit, this); } Guild guild = Global.GuildMgr.GetGuildById(GetGuildId()); if (guild) { guild.UpdateCriteria(type, miscValue1, miscValue2, miscValue3, unit, this); } }
public void CheckAllQuestObjectiveCriteria(Player referencePlayer) { // suppress sending packets for (CriteriaTypes i = 0; i < CriteriaTypes.TotalTypes; ++i) { UpdateCriteria(i, 0, 0, 0, null, referencePlayer); } }
// Update Achievement Criteria for all players in instance public void DoUpdateCriteria(CriteriaTypes type, uint miscValue1 = 0, uint miscValue2 = 0, Unit unit = null) { var PlayerList = instance.GetPlayers(); if (!PlayerList.Empty()) { foreach (var player in PlayerList) { player.UpdateCriteria(type, miscValue1, miscValue2, 0, unit); } } }
private void OnPropertyNameUpdated() { ValueString = string.Empty; var propertyMetaData = PropertyName.GetAttribute <CriteriaPropertyAttribute>(); CriteriaTypes = propertyMetaData.CriteriaTypes.ToList(); CriteriaType = CriteriaTypes.Count == 1 ? CriteriaTypes.Single() : (CriteriaType?)null; PropertyType = propertyMetaData.PropertyType; }
public void ResetCriteria(CriteriaTypes type, ulong miscValue1, ulong miscValue2, bool evenIfCriteriaComplete) { Log.outDebug(LogFilter.Player, "QuestObjectiveCriteriaMgr.ResetCriteria({type}, {miscValue1}, {miscValue2})"); // disable for gamemasters with GM-mode enabled if (_owner.IsGameMaster()) { return; } var playerCriteriaList = GetCriteriaByType(type); foreach (Criteria playerCriteria in playerCriteriaList) { if (playerCriteria.Entry.FailEvent != miscValue1 || (playerCriteria.Entry.FailAsset != 0 && playerCriteria.Entry.FailAsset != miscValue2)) { continue; } var trees = Global.CriteriaMgr.GetCriteriaTreesByCriteria(playerCriteria.Id); bool allComplete = true; foreach (CriteriaTree tree in trees) { // don't update already completed criteria if not forced if (!(IsCompletedCriteriaTree(tree) && !evenIfCriteriaComplete)) { allComplete = false; break; } } if (allComplete) { continue; } RemoveCriteriaProgress(playerCriteria); } }
public void ResetCriteria(CriteriaTypes type, ulong miscValue1 = 0, ulong miscValue2 = 0, bool evenIfCriteriaComplete = false) { m_achievementSys.ResetCriteria(type, miscValue1, miscValue2, evenIfCriteriaComplete); }
protected PersistentCriteria(CriteriaTypes criteriaType, Type classType) { m_CriteriaType = criteriaType; m_ForClass = classType; m_ForClassName = PersistentObject.GetClassName(classType); }
public override List <Criteria> GetCriteriaByType(CriteriaTypes type, uint asset) { return(Global.CriteriaMgr.GetScenarioCriteriaByType(type)); }
public CriteriaView(CriteriaTypes cr, string name) { Value = cr; Name = name; }
public override List <Criteria> GetCriteriaByType(CriteriaTypes type) { return(Global.CriteriaMgr.GetQuestObjectiveCriteriaByType(type)); }
/// <summary> /// full constructor /// </summary> /// <param name="type"></param> /// <param name="maxCount"></param> /// <param name="epsilon"></param> public TermCriteria(CriteriaTypes type, int maxCount, double epsilon) { Type = type; MaxCount = maxCount; Epsilon = epsilon; }