Core/Achievements: Update CriteriaType enum
Port From (https://github.com/TrinityCore/TrinityCore/commit/0a83f748766c49775d76412d2b98bb9b9dc8c4df)
This commit is contained in:
@@ -1921,7 +1921,7 @@ namespace Game.Entities
|
||||
Player player = user.ToPlayer();
|
||||
|
||||
player.SendLoot(GetGUID(), LootType.Fishinghole);
|
||||
player.UpdateCriteria(CriteriaTypes.FishInGameobject, GetGoInfo().entry);
|
||||
player.UpdateCriteria(CriteriaType.CatchFishInFishingHole, GetGoInfo().entry);
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
@@ -274,7 +274,7 @@ namespace Game.Entities
|
||||
|
||||
SetUpdateFieldValue(m_values.ModifyValue(m_azeriteItemData).ModifyValue(m_azeriteItemData.Xp), currentXP);
|
||||
|
||||
owner.UpdateCriteria(CriteriaTypes.HeartOfAzerothArtifactPowerEarned, xp);
|
||||
owner.UpdateCriteria(CriteriaType.EarnArtifactXPForAzeriteItem, xp);
|
||||
|
||||
// changing azerite level changes item level, need to update stats
|
||||
if (m_azeriteItemData.Level != level)
|
||||
@@ -284,7 +284,7 @@ namespace Game.Entities
|
||||
|
||||
SetUpdateFieldValue(m_values.ModifyValue(m_azeriteItemData).ModifyValue(m_azeriteItemData.Level), level);
|
||||
UnlockDefaultMilestones();
|
||||
owner.UpdateCriteria(CriteriaTypes.HeartOfAzerothLevelReached, level);
|
||||
owner.UpdateCriteria(CriteriaType.AzeriteLevelReached, level);
|
||||
|
||||
if (IsEquipped())
|
||||
owner._ApplyItemBonuses(this, GetSlot(), true);
|
||||
|
||||
@@ -728,13 +728,13 @@ namespace Game.Entities
|
||||
{
|
||||
int transmogSlot = Item.ItemTransmogrificationSlots[(int)item.inventoryType];
|
||||
if (transmogSlot >= 0)
|
||||
_owner.GetPlayer().UpdateCriteria(CriteriaTypes.AppearanceUnlockedBySlot, (ulong)transmogSlot, itemModifiedAppearance.Id);
|
||||
_owner.GetPlayer().UpdateCriteria(CriteriaType.LearnAnyTransmogInSlot, (ulong)transmogSlot, itemModifiedAppearance.Id);
|
||||
}
|
||||
|
||||
var sets = Global.DB2Mgr.GetTransmogSetsForItemModifiedAppearance(itemModifiedAppearance.Id);
|
||||
foreach (TransmogSetRecord set in sets)
|
||||
if (IsSetCompleted(set.Id))
|
||||
_owner.GetPlayer().UpdateCriteria(CriteriaTypes.TransmogSetUnlocked, set.TransmogSetGroupID);
|
||||
_owner.GetPlayer().UpdateCriteria(CriteriaType.CollectTransmogSetFromGroup, set.TransmogSetGroupID);
|
||||
}
|
||||
|
||||
void AddTemporaryAppearance(ObjectGuid itemGuid, ItemModifiedAppearanceRecord itemModifiedAppearance)
|
||||
|
||||
@@ -99,11 +99,11 @@ namespace Game.Entities
|
||||
uint guildId = victim.GetMap().GetOwnerGuildId();
|
||||
var guild = Global.GuildMgr.GetGuildById(guildId);
|
||||
if (guild != null)
|
||||
guild.UpdateCriteria(CriteriaTypes.KillCreature, victim.GetEntry(), 1, 0, victim, _killer);
|
||||
guild.UpdateCriteria(CriteriaType.KillCreature, victim.GetEntry(), 1, 0, victim, _killer);
|
||||
|
||||
Scenario scenario = victim.GetScenario();
|
||||
if (scenario != null)
|
||||
scenario.UpdateCriteria(CriteriaTypes.KillCreature, victim.GetEntry(), 1, 0, victim, _killer);
|
||||
scenario.UpdateCriteria(CriteriaType.KillCreature, victim.GetEntry(), 1, 0, victim, _killer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -208,7 +208,7 @@ namespace Game.Entities
|
||||
if (target != null)
|
||||
{
|
||||
player.KilledMonster(target.GetCreatureTemplate(), target.GetGUID());
|
||||
player.UpdateCriteria(CriteriaTypes.KillCreatureType, (ulong)target.GetCreatureType(), 1, 0, target);
|
||||
player.UpdateCriteria(CriteriaType.KillAnyCreature, (ulong)target.GetCreatureType(), 1, 0, target);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -271,7 +271,7 @@ namespace Game.Entities
|
||||
if (_killer == member || member.IsAtGroupRewardDistance(_victim))
|
||||
{
|
||||
_RewardPlayer(member, isDungeon);
|
||||
member.UpdateCriteria(CriteriaTypes.SpecialPvpKill, 1, 0, 0, _victim);
|
||||
member.UpdateCriteria(CriteriaType.KillPlayer, 1, 0, 0, _victim);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -66,7 +66,7 @@ namespace Game.Entities
|
||||
m_questObjectiveCriteriaMgr.ResetCriteria(failEvent, failAsset, evenIfCriteriaComplete);
|
||||
}
|
||||
|
||||
public void UpdateCriteria(CriteriaTypes type, ulong miscValue1 = 0, ulong miscValue2 = 0, ulong miscValue3 = 0, WorldObject refe = null)
|
||||
public void UpdateCriteria(CriteriaType type, ulong miscValue1 = 0, ulong miscValue2 = 0, ulong miscValue3 = 0, WorldObject refe = null)
|
||||
{
|
||||
m_achievementSys.UpdateCriteria(type, miscValue1, miscValue2, miscValue3, refe, this);
|
||||
m_questObjectiveCriteriaMgr.UpdateCriteria(type, miscValue1, miscValue2, miscValue3, refe, this);
|
||||
|
||||
@@ -491,8 +491,8 @@ namespace Game.Entities
|
||||
}
|
||||
break;
|
||||
case DuelCompleteType.Won:
|
||||
UpdateCriteria(CriteriaTypes.LoseDuel, 1);
|
||||
duel.opponent.UpdateCriteria(CriteriaTypes.WinDuel, 1);
|
||||
UpdateCriteria(CriteriaType.LoseDuel, 1);
|
||||
duel.opponent.UpdateCriteria(CriteriaType.WinDuel, 1);
|
||||
|
||||
// Credit for quest Death's Challenge
|
||||
if (GetClass() == Class.Deathknight && duel.opponent.GetQuestStatus(12733) == QuestStatus.Incomplete)
|
||||
|
||||
@@ -1268,8 +1268,8 @@ namespace Game.Entities
|
||||
if (item != null)
|
||||
{
|
||||
ItemAddedQuestCheck(itemId, count);
|
||||
UpdateCriteria(CriteriaTypes.ObtainAnyItem, itemId, count);
|
||||
UpdateCriteria(CriteriaTypes.OwnItem, itemId, 1);
|
||||
UpdateCriteria(CriteriaType.ObtainAnyItem, itemId, count);
|
||||
UpdateCriteria(CriteriaType.AcquireItem, itemId, 1);
|
||||
|
||||
item.AddItemFlag(ItemFieldFlags.NewItem);
|
||||
|
||||
@@ -1539,7 +1539,7 @@ namespace Game.Entities
|
||||
if (pItem != null)
|
||||
{
|
||||
ItemAddedQuestCheck(item, 1);
|
||||
UpdateCriteria(CriteriaTypes.ObtainAnyItem, item, 1);
|
||||
UpdateCriteria(CriteriaType.ObtainAnyItem, item, 1);
|
||||
return EquipItem(pos, pItem, update);
|
||||
}
|
||||
|
||||
@@ -1647,8 +1647,8 @@ namespace Game.Entities
|
||||
CheckTitanGripPenalty();
|
||||
|
||||
// only for full equip instead adding to stack
|
||||
UpdateCriteria(CriteriaTypes.EquipItem, pItem.GetEntry());
|
||||
UpdateCriteria(CriteriaTypes.EquipItemInSlot, slot, pItem.GetEntry());
|
||||
UpdateCriteria(CriteriaType.EquipItem, pItem.GetEntry());
|
||||
UpdateCriteria(CriteriaType.EquipItemInSlot, slot, pItem.GetEntry());
|
||||
|
||||
UpdateAverageItemLevelEquipped();
|
||||
|
||||
@@ -1775,8 +1775,8 @@ namespace Game.Entities
|
||||
if (slot == EquipmentSlot.MainHand || slot == EquipmentSlot.OffHand)
|
||||
CheckTitanGripPenalty();
|
||||
|
||||
UpdateCriteria(CriteriaTypes.EquipItem, pItem.GetEntry());
|
||||
UpdateCriteria(CriteriaTypes.EquipItemInSlot, slot, pItem.GetEntry());
|
||||
UpdateCriteria(CriteriaType.EquipItem, pItem.GetEntry());
|
||||
UpdateCriteria(CriteriaType.EquipItemInSlot, slot, pItem.GetEntry());
|
||||
}
|
||||
}
|
||||
public void SendEquipError(InventoryResult msg, Item item1 = null, Item item2 = null, uint itemId = 0)
|
||||
@@ -3423,7 +3423,7 @@ namespace Game.Entities
|
||||
guild.AddGuildNews(GuildNews.ItemPurchased, GetGUID(), 0, item);
|
||||
}
|
||||
|
||||
UpdateCriteria(CriteriaTypes.BoughtItemFromVendor, 1);
|
||||
UpdateCriteria(CriteriaType.BuyItemsFromVendors, 1);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -4238,7 +4238,7 @@ namespace Game.Entities
|
||||
{
|
||||
// update quest counters
|
||||
ItemAddedQuestCheck(pItem.GetEntry(), pItem.GetCount());
|
||||
UpdateCriteria(CriteriaTypes.ObtainAnyItem, pItem.GetEntry(), pItem.GetCount());
|
||||
UpdateCriteria(CriteriaType.ObtainAnyItem, pItem.GetEntry(), pItem.GetCount());
|
||||
|
||||
// store item
|
||||
Item pLastItem = StoreItem(dest, pItem, update);
|
||||
@@ -5941,9 +5941,9 @@ namespace Game.Entities
|
||||
if (aeResult == null)
|
||||
{
|
||||
SendNewItem(newitem, item.count, false, false, true);
|
||||
UpdateCriteria(CriteriaTypes.LootItem, item.itemid, item.count);
|
||||
UpdateCriteria(CriteriaTypes.LootType, item.itemid, item.count, (ulong)loot.loot_type);
|
||||
UpdateCriteria(CriteriaTypes.LootAnyItem, item.itemid, item.count);
|
||||
UpdateCriteria(CriteriaType.LootItem, item.itemid, item.count);
|
||||
UpdateCriteria(CriteriaType.GetLootByType, item.itemid, item.count, (ulong)loot.loot_type);
|
||||
UpdateCriteria(CriteriaType.LootAnyItem, item.itemid, item.count);
|
||||
}
|
||||
else
|
||||
aeResult.Add(newitem, item.count, loot.loot_type);
|
||||
|
||||
@@ -147,7 +147,7 @@ namespace Game.Entities
|
||||
|
||||
PushQuests();
|
||||
|
||||
UpdateCriteria(CriteriaTypes.TravelledToArea, newArea);
|
||||
UpdateCriteria(CriteriaType.EnterTopLevelArea, newArea);
|
||||
}
|
||||
|
||||
public void UpdateZone(uint newZone, uint newArea)
|
||||
|
||||
@@ -139,11 +139,11 @@ namespace Game.Entities
|
||||
ApplyModUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.TodayHonorableKills), (ushort)1, true);
|
||||
// and those in a lifetime
|
||||
ApplyModUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.LifetimeHonorableKills), 1u, true);
|
||||
UpdateCriteria(CriteriaTypes.EarnHonorableKill);
|
||||
UpdateCriteria(CriteriaTypes.HkClass, (uint)victim.GetClass());
|
||||
UpdateCriteria(CriteriaTypes.HkRace, (uint)victim.GetRace());
|
||||
UpdateCriteria(CriteriaTypes.HonorableKillAtArea, GetAreaId());
|
||||
UpdateCriteria(CriteriaTypes.HonorableKill, 1, 0, 0, victim);
|
||||
UpdateCriteria(CriteriaType.HonorableKills);
|
||||
UpdateCriteria(CriteriaType.DeliverKillingBlowToClass, (uint)victim.GetClass());
|
||||
UpdateCriteria(CriteriaType.DeliverKillingBlowToRace, (uint)victim.GetRace());
|
||||
UpdateCriteria(CriteriaType.PVPKillInArea, GetAreaId());
|
||||
UpdateCriteria(CriteriaType.EarnHonorableKill, 1, 0, 0, victim);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -290,7 +290,7 @@ namespace Game.Entities
|
||||
SetUpdateFieldValue(m_values.ModifyValue(m_playerData).ModifyValue(m_playerData.HonorLevel), level);
|
||||
UpdateHonorNextLevel();
|
||||
|
||||
UpdateCriteria(CriteriaTypes.HonorLevelReached);
|
||||
UpdateCriteria(CriteriaType.HonorLevelIncrease);
|
||||
}
|
||||
|
||||
void UpdateHonorNextLevel()
|
||||
|
||||
@@ -1056,7 +1056,7 @@ namespace Game.Entities
|
||||
ModifyMoney(moneyRew);
|
||||
|
||||
if (moneyRew > 0)
|
||||
UpdateCriteria(CriteriaTypes.MoneyFromQuestReward, (uint)(moneyRew));
|
||||
UpdateCriteria(CriteriaType.MoneyEarnedFromQuesting, (uint)moneyRew);
|
||||
}
|
||||
|
||||
// honor reward
|
||||
@@ -1091,8 +1091,8 @@ namespace Game.Entities
|
||||
SetDailyQuestStatus(questId);
|
||||
if (quest.IsDaily())
|
||||
{
|
||||
UpdateCriteria(CriteriaTypes.CompleteDailyQuest, questId);
|
||||
UpdateCriteria(CriteriaTypes.CompleteDailyQuestDaily, questId);
|
||||
UpdateCriteria(CriteriaType.CompleteDailyQuest, questId);
|
||||
UpdateCriteria(CriteriaType.CompleteAnyDailyQuestPerDay, questId);
|
||||
}
|
||||
}
|
||||
else if (quest.IsWeekly())
|
||||
@@ -1147,11 +1147,11 @@ namespace Game.Entities
|
||||
}
|
||||
|
||||
if (quest.QuestSortID > 0)
|
||||
UpdateCriteria(CriteriaTypes.CompleteQuestsInZone, quest.Id);
|
||||
UpdateCriteria(CriteriaType.CompleteQuestsInZone, quest.Id);
|
||||
|
||||
UpdateCriteria(CriteriaTypes.CompleteQuestCount);
|
||||
UpdateCriteria(CriteriaTypes.CompleteQuest, quest.Id);
|
||||
UpdateCriteria(CriteriaTypes.CompleteQuestAccumulate, 1);
|
||||
UpdateCriteria(CriteriaType.CompleteQuestsCount);
|
||||
UpdateCriteria(CriteriaType.CompleteQuest, quest.Id);
|
||||
UpdateCriteria(CriteriaType.CompleteAnyReplayQuest, 1);
|
||||
|
||||
// make full db save
|
||||
SaveToDB(false);
|
||||
@@ -2232,7 +2232,7 @@ namespace Game.Entities
|
||||
}
|
||||
|
||||
StartCriteriaTimer(CriteriaStartEvent.KillNPC, real_entry); // MUST BE CALLED FIRST
|
||||
UpdateCriteria(CriteriaTypes.KillCreature, real_entry, addKillCount, 0, killed);
|
||||
UpdateCriteria(CriteriaType.KillCreature, real_entry, addKillCount, 0, killed);
|
||||
|
||||
UpdateQuestObjectiveProgress(QuestObjectiveType.Monster, (int)entry, 1, guid);
|
||||
}
|
||||
|
||||
@@ -436,7 +436,7 @@ namespace Game.Entities
|
||||
}
|
||||
|
||||
UpdateSkillEnchantments(skillId, value, new_value);
|
||||
UpdateCriteria(CriteriaTypes.ReachSkillLevel, skillId);
|
||||
UpdateCriteria(CriteriaType.SkillRaised, skillId);
|
||||
Log.outDebug(LogFilter.Player, "Player:UpdateSkillPro Chance={0:F3}% taken", chance / 10.0f);
|
||||
return true;
|
||||
}
|
||||
@@ -1071,8 +1071,8 @@ namespace Game.Entities
|
||||
if (newVal > currVal)
|
||||
UpdateSkillEnchantments(id, currVal, (ushort)newVal);
|
||||
|
||||
UpdateCriteria(CriteriaTypes.ReachSkillLevel, id);
|
||||
UpdateCriteria(CriteriaTypes.LearnSkillLevel, id);
|
||||
UpdateCriteria(CriteriaType.SkillRaised, id);
|
||||
UpdateCriteria(CriteriaType.AchieveSkillStep, id);
|
||||
|
||||
// update skill state
|
||||
if (skillStatusData.State == SkillState.Unchanged)
|
||||
@@ -1202,8 +1202,8 @@ namespace Game.Entities
|
||||
|
||||
if (newVal != 0)
|
||||
{
|
||||
UpdateCriteria(CriteriaTypes.ReachSkillLevel, id);
|
||||
UpdateCriteria(CriteriaTypes.LearnSkillLevel, id);
|
||||
UpdateCriteria(CriteriaType.SkillRaised, id);
|
||||
UpdateCriteria(CriteriaType.AchieveSkillStep, id);
|
||||
|
||||
// temporary bonuses
|
||||
foreach (var auraEffect in GetAuraEffectsByType(AuraType.ModSkill))
|
||||
@@ -2636,11 +2636,11 @@ namespace Game.Entities
|
||||
// not ranked skills
|
||||
foreach (var _spell_idx in skill_bounds)
|
||||
{
|
||||
UpdateCriteria(CriteriaTypes.LearnSkillLine, _spell_idx.SkillLine);
|
||||
UpdateCriteria(CriteriaTypes.LearnSkilllineSpells, _spell_idx.SkillLine);
|
||||
UpdateCriteria(CriteriaType.LearnTradeskillSkillLine, _spell_idx.SkillLine);
|
||||
UpdateCriteria(CriteriaType.LearnSpellFromSkillLine, _spell_idx.SkillLine);
|
||||
}
|
||||
|
||||
UpdateCriteria(CriteriaTypes.LearnSpell, spellId);
|
||||
UpdateCriteria(CriteriaType.LearnOrKnowSpell, spellId);
|
||||
}
|
||||
|
||||
// needs to be when spell is already learned, to prevent infinite recursion crashes
|
||||
@@ -2653,7 +2653,7 @@ namespace Game.Entities
|
||||
if (entry.SummonSpellID == spellId && GetSession().GetBattlePetMgr().GetPetCount(entry.Id) == 0)
|
||||
{
|
||||
GetSession().GetBattlePetMgr().AddPet(entry.Id, entry.CreatureID, BattlePetMgr.RollPetBreed(entry.Id), BattlePetMgr.GetDefaultPetQuality(entry.Id));
|
||||
UpdateCriteria(CriteriaTypes.OwnBattlePetCount);
|
||||
UpdateCriteria(CriteriaType.UniquePetsOwned);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -535,8 +535,8 @@ namespace Game.Entities
|
||||
if (!noCost)
|
||||
{
|
||||
ModifyMoney(-cost);
|
||||
UpdateCriteria(CriteriaTypes.GoldSpentForTalents, cost);
|
||||
UpdateCriteria(CriteriaTypes.NumberOfTalentResets, 1);
|
||||
UpdateCriteria(CriteriaType.MoneySpentOnRespecs, cost);
|
||||
UpdateCriteria(CriteriaType.TotalRespecs, 1);
|
||||
|
||||
SetTalentResetCost(cost);
|
||||
SetTalentResetTime(GameTime.GetGameTime());
|
||||
|
||||
@@ -653,9 +653,9 @@ namespace Game.Entities
|
||||
|
||||
InitializeSelfResurrectionSpells();
|
||||
|
||||
UpdateCriteria(CriteriaTypes.DeathAtMap, 1);
|
||||
UpdateCriteria(CriteriaTypes.Death, 1);
|
||||
UpdateCriteria(CriteriaTypes.DeathInDungeon, 1);
|
||||
UpdateCriteria(CriteriaType.DieOnMap, 1);
|
||||
UpdateCriteria(CriteriaType.DieAnywhere, 1);
|
||||
UpdateCriteria(CriteriaType.DieInInstance, 1);
|
||||
|
||||
// reset all death criterias
|
||||
ResetCriteria(CriteriaFailEvent.Death, 0);
|
||||
@@ -1213,7 +1213,7 @@ namespace Game.Entities
|
||||
playerCurrency.TrackedQuantity = (uint)newTrackedCount;
|
||||
|
||||
if (count > 0)
|
||||
UpdateCriteria(CriteriaTypes.Currency, (uint)id, (uint)count);
|
||||
UpdateCriteria(CriteriaType.CurrencyGained, (uint)id, (uint)count);
|
||||
|
||||
_currencyStorage[(uint)id] = playerCurrency;
|
||||
|
||||
@@ -2036,7 +2036,7 @@ namespace Game.Entities
|
||||
|
||||
// recheck alive, might have died of EnvironmentalDamage, avoid cases when player die in fact like Spirit of Redemption case
|
||||
if (IsAlive() && final_damage < original_health)
|
||||
UpdateCriteria(CriteriaTypes.FallWithoutDying, (uint)z_diff * 100);
|
||||
UpdateCriteria(CriteriaType.MaxDistFallenWithoutDying, (uint)z_diff * 100);
|
||||
}
|
||||
|
||||
//Z given by moveinfo, LastZ, FallTime, WaterZ, MapZ, Damage, Safefall reduction
|
||||
@@ -2134,7 +2134,7 @@ namespace Game.Entities
|
||||
|
||||
m_summon_expire = 0;
|
||||
|
||||
UpdateCriteria(CriteriaTypes.AcceptedSummonings, 1);
|
||||
UpdateCriteria(CriteriaType.AcceptSummon, 1);
|
||||
RemoveAurasWithInterruptFlags(SpellAuraInterruptFlags.Summon);
|
||||
|
||||
m_summon_location.SetOrientation(GetOrientation());
|
||||
@@ -3980,7 +3980,7 @@ namespace Game.Entities
|
||||
SendDurabilityLoss(this, 10);
|
||||
}
|
||||
|
||||
UpdateCriteria(CriteriaTypes.DeathsFrom, 1, (ulong)type);
|
||||
UpdateCriteria(CriteriaType.DieFromEnviromentalDamage, 1, (ulong)type);
|
||||
}
|
||||
|
||||
return final_damage;
|
||||
@@ -5106,7 +5106,7 @@ namespace Game.Entities
|
||||
{
|
||||
MoneyChanged((uint)value);
|
||||
SetUpdateFieldValue(m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.Coinage), value);
|
||||
UpdateCriteria(CriteriaTypes.HighestGoldValueOwned);
|
||||
UpdateCriteria(CriteriaType.MostMoneyOwned);
|
||||
}
|
||||
|
||||
//Target
|
||||
@@ -5258,8 +5258,8 @@ namespace Game.Entities
|
||||
DB.Characters.CommitTransaction(trans);
|
||||
}
|
||||
|
||||
UpdateCriteria(CriteriaTypes.ReachLevel);
|
||||
UpdateCriteria(CriteriaTypes.ActivelyReachLevel, level);
|
||||
UpdateCriteria(CriteriaType.ReachLevel);
|
||||
UpdateCriteria(CriteriaType.ActivelyReachLevel, level);
|
||||
|
||||
PushQuests();
|
||||
|
||||
@@ -6173,7 +6173,7 @@ namespace Game.Entities
|
||||
{
|
||||
SetUpdateFieldFlagValue(ref m_values.ModifyValue(m_activePlayerData).ModifyValue(m_activePlayerData.ExploredZones, (int)offset), val);
|
||||
|
||||
UpdateCriteria(CriteriaTypes.ExploreArea, GetAreaId());
|
||||
UpdateCriteria(CriteriaType.RevealWorldMapOverlay, GetAreaId());
|
||||
|
||||
var areaLevels = Global.DB2Mgr.GetContentTuningData(areaEntry.ContentTuningID, m_playerData.CtrOptions.GetValue().ContentTuningConditionMask);
|
||||
if (areaLevels.HasValue)
|
||||
@@ -6845,21 +6845,21 @@ namespace Game.Entities
|
||||
}
|
||||
|
||||
//Checks and preparations done, DO FLIGHT
|
||||
UpdateCriteria(CriteriaTypes.FlightPathsTaken, 1);
|
||||
UpdateCriteria(CriteriaType.BuyTaxi, 1);
|
||||
|
||||
if (WorldConfig.GetBoolValue(WorldCfg.InstantTaxi))
|
||||
{
|
||||
var lastPathNode = CliDB.TaxiNodesStorage.LookupByKey(nodes[^1]);
|
||||
m_taxi.ClearTaxiDestinations();
|
||||
ModifyMoney(-totalcost);
|
||||
UpdateCriteria(CriteriaTypes.GoldSpentForTravelling, totalcost);
|
||||
UpdateCriteria(CriteriaType.MoneySpentOnTaxis, totalcost);
|
||||
TeleportTo(lastPathNode.ContinentID, lastPathNode.Pos.X, lastPathNode.Pos.Y, lastPathNode.Pos.Z, GetOrientation());
|
||||
return false;
|
||||
}
|
||||
else
|
||||
{
|
||||
ModifyMoney(-firstcost);
|
||||
UpdateCriteria(CriteriaTypes.GoldSpentForTravelling, firstcost);
|
||||
UpdateCriteria(CriteriaType.MoneySpentOnTaxis, firstcost);
|
||||
GetSession().SendActivateTaxiReply();
|
||||
GetSession().SendDoFlight(mount_display_id, sourcepath);
|
||||
}
|
||||
|
||||
@@ -843,7 +843,7 @@ namespace Game.Entities
|
||||
{
|
||||
Player killerPlayer = attacker.GetCharmerOrOwnerPlayerOrPlayerItself();
|
||||
if (killerPlayer != null)
|
||||
killerPlayer.UpdateCriteria(CriteriaTypes.GetKillingBlows, 1, 0, 0, victim);
|
||||
killerPlayer.UpdateCriteria(CriteriaType.DeliveredKillingBlow, 1, 0, 0, victim);
|
||||
}
|
||||
|
||||
if (!skipSettingDeathState)
|
||||
@@ -983,9 +983,9 @@ namespace Game.Entities
|
||||
if (attacker != null && victim.IsPlayer())
|
||||
{
|
||||
if (attacker.IsCreature())
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaTypes.KilledByCreature, attacker.GetEntry());
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaType.KilledByCreature, attacker.GetEntry());
|
||||
else if (attacker.IsPlayer() && victim != attacker)
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaTypes.KilledByPlayer, 1, (ulong)attacker.ToPlayer().GetTeam());
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaType.KilledByPlayer, 1, (ulong)attacker.ToPlayer().GetTeam());
|
||||
}
|
||||
|
||||
// Hook for OnPVPKill Event
|
||||
|
||||
@@ -1813,17 +1813,17 @@ namespace Game.Entities
|
||||
|
||||
// use the actual gain, as the overheal shall not be counted, skip gain 0 (it ignored anyway in to criteria)
|
||||
if (gain != 0)
|
||||
bgPlayer.UpdateCriteria(CriteriaTypes.HealingDone, (uint)gain, 0, 0, victim);
|
||||
bgPlayer.UpdateCriteria(CriteriaType.HealingDone, (uint)gain, 0, 0, victim);
|
||||
|
||||
bgPlayer.UpdateCriteria(CriteriaTypes.HighestHealCasted, addhealth);
|
||||
bgPlayer.UpdateCriteria(CriteriaType.HighestHealCast, addhealth);
|
||||
}
|
||||
}
|
||||
|
||||
Player player = victim.ToPlayer();
|
||||
if (player != null)
|
||||
{
|
||||
player.UpdateCriteria(CriteriaTypes.TotalHealingReceived, (uint)gain);
|
||||
player.UpdateCriteria(CriteriaTypes.HighestHealingReceived, addhealth);
|
||||
player.UpdateCriteria(CriteriaType.TotalHealReceived, (uint)gain);
|
||||
player.UpdateCriteria(CriteriaType.HighestHealReceived, addhealth);
|
||||
}
|
||||
|
||||
if (gain != 0)
|
||||
|
||||
@@ -2402,13 +2402,13 @@ namespace Game.Entities
|
||||
bg.UpdatePlayerScore(killer, ScoreType.DamageDone, damage);
|
||||
}
|
||||
|
||||
killer.UpdateCriteria(CriteriaTypes.DamageDone, health > damage ? damage : health, 0, 0, victim);
|
||||
killer.UpdateCriteria(CriteriaTypes.HighestHitDealt, damage);
|
||||
killer.UpdateCriteria(CriteriaType.DamageDealt, health > damage ? damage : health, 0, 0, victim);
|
||||
killer.UpdateCriteria(CriteriaType.HighestDamageDone, damage);
|
||||
}
|
||||
}
|
||||
|
||||
if (victim.IsPlayer())
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaTypes.HighestHitReceived, damage);
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaType.HighestDamageTaken, damage);
|
||||
|
||||
if (attacker != null)
|
||||
damage = (uint)(damage / victim.GetHealthMultiplierForTarget(attacker));
|
||||
@@ -2430,7 +2430,7 @@ namespace Game.Entities
|
||||
killed = true;
|
||||
|
||||
if (victim.IsPlayer() && victim != attacker)
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaTypes.TotalDamageReceived, health);
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaType.TotalDamageTaken, health);
|
||||
|
||||
if (damagetype != DamageEffectType.NoDamage && damagetype != DamageEffectType.Self && victim.HasAuraType(AuraType.SchoolAbsorbOverkill))
|
||||
{
|
||||
@@ -2499,7 +2499,7 @@ namespace Game.Entities
|
||||
else
|
||||
{
|
||||
if (victim.IsTypeId(TypeId.Player))
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaTypes.TotalDamageReceived, damage);
|
||||
victim.ToPlayer().UpdateCriteria(CriteriaType.TotalDamageTaken, damage);
|
||||
|
||||
victim.ModifyHealth(-(int)damage);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user