Patch 5.0.4/API changes

From Wowpedia
Jump to: navigation, search

Breaking changes

New functionality

  • Pet battles
  • Black market auction house
  • Class specializations
  • Challenge modes
  • Upgrading items
  • GetInstanceInfo - Now returns a MapID as its 8th result, allowing addons to identify the current instance/continent without relying on localized names.

Macros

  • New macro conditionals:
[petbattle] 
True when the player is participating in a pet battle.
[possessbar]
[overridebar]
[extrabar]

Talents

Unsorted

Widget API

  • NEW Frame:RegisterUnitEvent("event", "unit1"[, "unit2"]) - Triggers the widget's OnEvent handler when the specified event occurs for the specified units.
  • NEW Button:SetEnabled(enable) - Enables or disables the widget (available for any widget with Enable/Disable methods).
  • NEW Region:SetShown(show) - Shows or hides the widget (available for any widget with Show/Hide methods).

FrameXML

  • UIPanelButtonTemplate2 is renamed to UIPanelButtonTemplate; the old version of which is removed.
  • The minimap buttons MiniMapLFGFrame and MiniMapBattlefieldFrame is renamed/merged to QueueStatusMinimapButton.
  • ShapeshiftBarFrame is removed; druid shapeshifting UI is now handled by the StanceBarFrame.

Observed bugs and notable differences

  • UnitIsGroupAssistant - the new version of UnitIsRaidOfficer returns false if the player is leader. The old function returned true.
  • UnitInRange - when not in a party/raid, the new version of UnitInRange returns false for "player" and "pet". The old function returned true.
  • Texture:SetTexture - If the path passed into Texture:SetTexture(path) is invalid, the texture will display as solid green.
  • Texture:GetTexture - If the path passed into Texture:SetTexture(path) is invalid, Texture:GetTexture() will still return whatever was passed in. Previously, it would return nil if the texture path was invalid. It seems that it is no longer possible to determine if a texture is valid or not (useful for validating user input).
  • UnitGUID - requesting the GUID of another party member (possibly raid too - not tested) while responding to the new GROUP_ROSTER_UPDATE event during initial UI load while you are already in a group returns nil. This was not previously the case with the old PARTY_MEMBERS_CHANGED and RAID_ROSTER_UPDATE events.
  • COMBAT_LOG_EVENT / ENVIRONMENTAL_DAMAGE - the environmental type reported from this event is now reporting non-localized proper case strings (e.g. "Falling") instead of non-localized capitalized strings (e.g. "FALLING").

Automated diff

Click on the headers to expand the tables below.


Global API

Global API (4.3.4.15595 → 5.0.4.16016)
302 new functions 78 removed functions
AcceptSpellConfirmationPrompt
AcknowledgeAutoAcceptQuest
AreAccountAchievementsHidden
BNCheckBattleTagInviteToGuildMember
BNCheckBattleTagInviteToUnit
BNSendVerifiedBattleTagInvite
BNTokenFindName
C_BlackMarket.Close
C_BlackMarket.GetHotItem
C_BlackMarket.GetItemInfoByID
C_BlackMarket.GetItemInfoByIndex
C_BlackMarket.GetNumItems
C_BlackMarket.ItemPlaceBid
C_BlackMarket.RequestItems
C_LootHistory.CanMasterLoot
C_LootHistory.GetExpiration
C_LootHistory.GetItem
C_LootHistory.GetNumItems
C_LootHistory.GetPlayerInfo
C_LootHistory.GiveMasterLoot
C_LootHistory.SetExpiration
C_PetBattles.AcceptPVPDuel
C_PetBattles.AcceptQueuedPVPMatch
C_PetBattles.CanActivePetSwapOut
C_PetBattles.CanPetSwapIn
C_PetBattles.CancelPVPDuel
C_PetBattles.ChangePet
C_PetBattles.DeclineQueuedPVPMatch
C_PetBattles.ForfeitGame
C_PetBattles.GetAbilityEffectInfo
C_PetBattles.GetAbilityInfoByID
C_PetBattles.GetAbilityInfo
C_PetBattles.GetAbilityProcTurnIndex
C_PetBattles.GetAbilityStateModification
C_PetBattles.GetAbilityState
C_PetBattles.GetActivePet
C_PetBattles.GetAllEffectNames
C_PetBattles.GetAllStates
C_PetBattles.GetAttackModifier
C_PetBattles.GetAuraInfo
C_PetBattles.GetBattleState
C_PetBattles.GetBreedQuality
C_PetBattles.GetDisplayID
C_PetBattles.GetHealth
C_PetBattles.GetIcon
C_PetBattles.GetLevel
C_PetBattles.GetMaxHealth
C_PetBattles.GetName
C_PetBattles.GetNumAuras
C_PetBattles.GetNumPets
C_PetBattles.GetPVPMatchmakingInfo
C_PetBattles.GetPetSpeciesID
C_PetBattles.GetPetType
C_PetBattles.GetPlayerTrapAbility
C_PetBattles.GetPower
C_PetBattles.GetSelectedAction
C_PetBattles.GetSpeed
C_PetBattles.GetStateValue
C_PetBattles.GetTurnTimeInfo
C_PetBattles.GetXP
C_PetBattles.IsInBattle
C_PetBattles.IsPlayerNPC
C_PetBattles.IsSkipAvailable
C_PetBattles.IsTrapAvailable
C_PetBattles.IsWaitingOnOpponent
C_PetBattles.IsWildBattle
C_PetBattles.SetPendingReportBattlePetTarget
C_PetBattles.SetPendingReportTargetFromUnit
C_PetBattles.ShouldShowPetSelect
C_PetBattles.SkipTurn
C_PetBattles.StartPVPDuel
C_PetBattles.StartPVPMatchmaking
C_PetBattles.StopPVPMatchmaking
C_PetBattles.UseAbility
C_PetBattles.UseTrap
C_PetJournal.AddAllPetSourcesFilter
C_PetJournal.AddAllPetTypesFilter
C_PetJournal.CagePetByID
C_PetJournal.ClearAllPetSourcesFilter
C_PetJournal.ClearAllPetTypesFilter
C_PetJournal.ClearSearchFilter
C_PetJournal.GetBattlePetLink
C_PetJournal.GetNumPetSources
C_PetJournal.GetNumPetTypes
C_PetJournal.GetNumPets
C_PetJournal.GetPetAbilityInfo
C_PetJournal.GetPetAbilityList
C_PetJournal.GetPetInfoByIndex
C_PetJournal.GetPetInfoByPetID
C_PetJournal.GetPetInfoBySpeciesID
C_PetJournal.GetPetLoadOutInfo
C_PetJournal.GetPetStats
C_PetJournal.GetSummonedPetID
C_PetJournal.IsFindBattleEnabled
C_PetJournal.IsFlagFiltered
C_PetJournal.IsJournalReadOnly
C_PetJournal.IsJournalUnlocked
C_PetJournal.IsPetSourceFiltered
C_PetJournal.IsPetTypeFiltered
C_PetJournal.PetCanBeReleased
C_PetJournal.PetIsCapturable
C_PetJournal.PetIsFavorite
C_PetJournal.PetIsHurt
C_PetJournal.PetIsLockedForConvert
C_PetJournal.PetIsRevoked
C_PetJournal.PetIsSlotted
C_PetJournal.PetIsSummonable
C_PetJournal.PetIsTradable
C_PetJournal.PickupPet
C_PetJournal.ReleasePetByID
C_PetJournal.SetAbility
C_PetJournal.SetCustomName
C_PetJournal.SetFavorite
C_PetJournal.SetFlagFilter
C_PetJournal.SetPetLoadOutInfo
C_PetJournal.SetPetSourceFilter
C_PetJournal.SetPetTypeFilter
C_PetJournal.SetSearchFilter
C_PetJournal.SummonPetByID
C_Scenario.GetCriteriaInfo
C_Scenario.GetInfo
C_Scenario.GetScenarioIconInfo
C_Scenario.GetStepInfo
C_Scenario.IsChallengeMode
C_Scenario.IsInScenario
CanAbandonQuest
CanCancelScene
CanUseSoulstone
CancelMasterLootRoll
CancelScene
ClearBlacklistMap
ClearItemUpgrade
ClearMissingLootDisplay
CloseItemUpgrade
DeclineSpellConfirmationPrompt
DoMasterLootRoll
EJ_GetCurrentTier
EJ_GetLootFilter
EJ_GetNumTiers
EJ_ResetLootFilter
EJ_SetLootFilter
GetAchievementCriteriaInfoByID
GetActionCharges
GetActiveSpecGroup
GetAreaMapInfo
GetAreaMaps
GetArenaOpponentSpec
GetAuctionItemBattlePetInfo
GetBlacklistMap
GetBonusBarIndex
GetCategoryAchievementPoints
GetChallengeBestTimeInfo
GetChallengeBestTimeNum
GetChallengeBestTime
GetChallengeMapMoney
GetChallengeMapRewardInfo
GetChallengeModeCompletionInfo
GetChallengeModeCompletionReward
GetChallengeModeLeaderInfo
GetChallengeModeMapInfo
GetChallengeModeMapPlayerStats
GetChallengeModeMapTable
GetChallengeModeMapTimes
GetChallengeMode
GetClassInfoByID
GetClassInfo
GetContinentMapInfo
GetContinentMaps
GetCurrentGuildPerkIndex
GetDungeonDifficultyID
GetDungeonInfo
GetDungeonMapInfo
GetDungeonMaps
GetExtraBarIndex
GetFriendshipReputationByID
GetFriendshipReputation
GetGlyphLinkByID
GetInspectGlyph
GetInspectSpecialization
GetInspectTalent
GetItemLevelIncrement
GetItemUpdateLevel
GetItemUpgradeItemInfo
GetItemUpgradeStats
GetLFGCategoryForID
GetLevelUpInstances
GetLootSlotType
GetLootSourceInfo
GetMasteryEffect
GetMaxTalentTier
GetMerchantFilter
GetModResilienceDamageReduction
GetMultiCastBarIndex
GetNextGuildPerkIndex
GetNumArenaOpponentSpecs
GetNumChallengeMapRewards
GetNumChallengeModeLeaders
GetNumClasses
GetNumGroupMembers
GetNumQuestPOIWorldEffects
GetNumRandomScenarios
GetNumScenarios
GetNumSpecGroups
GetNumSpecializationsForClassID
GetNumSpecializations
GetNumSubgroupMembers
GetNumUnspentTalents
GetOverrideAPBySpellPower
GetOverrideBarIndex
GetOverrideBarSkin
GetPOITextureCoords
GetQuestLogQuestType
GetQuestPOIWorldEffectInfo
GetRaidBuffInfo
GetRaidBuffTrayAuraInfo
GetRandomScenarioBestChoice
GetRandomScenarioInfo
GetScenariosChoiceOrder
GetSpecializationInfoByID
GetSpecializationInfoForClassID
GetSpecializationInfo
GetSpecializationMasterySpells
GetSpecializationRoleByID
GetSpecializationRole
GetSpecializationSpells
GetSpecialization
GetSpecsForSpell
GetSpellCharges
GetSpellLevelLearned
GetTalentClearInfo
GetTalentRowSelectionInfo
GetTempShapeshiftBarIndex
GetTradeSkillCategoryFilter
GetTradeSkillSubCategories
GetVehicleBarIndex
GetVoidUnlockCost
GetWorldEffectTextureCoords
GetWorldElapsedTimers
GetWorldElapsedTime
GetWorldLocFromMapPos
GetWorldMapTransformInfo
GetWorldMapTransforms
HasBonusActionBar
HasOverrideActionBar
HasTempShapeshiftActionBar
HasVehicleActionBar
IsActiveQuestLegendary
IsBarberShopStyleValid
IsBlizzCon
IsEncounterInProgress
IsEuropeanNumbers
IsExpansionTrial
IsInGroup
IsInRaid
IsInScenarioGroup
IsItemAction
IsLoggingOut
IsMasterLooter
IsPetActive
IsPlayerInWorld
IsPlayerNeutral
IsPlayerSpell
IsQuestFlaggedCompleted
IsRangedWeapon
IsSpellClassOrSpec
IsTalentSpell
LearnTalents
LootSlotHasItem
NeutralPlayerSelectFaction
PetHasSpellbook
PetUsesPetFrame
PickupTalent
QueryWorldCountdownTimer
RemoveTalent
RequestChallengeModeLeaders
RequestChallengeModeMapInfo
RequestChallengeModeRewards
ResetChallengeMode
ResetSetMerchantFilter
SetActiveSpecGroup
SetBlacklistMap
SetDungeonDifficultyID
SetItemUpgradeFromCursorItem
SetMerchantFilter
SetPendingReportPetTarget
SetSpecialization
SetTradeSkillCategoryFilter
ShowAccountAchievements
StopSound
UnitBattlePetLevel
UnitBattlePetType
UnitCanPetBattle
UnitInOtherParty
UnitInVehicleHidesPetFrame
UnitIsBattlePetCompanion
UnitIsGroupAssistant
UnitIsGroupLeader
UnitIsOtherPlayersBattlePet
UnitIsOtherPlayersPet
UnitIsWildBattlePet
UnitLeadsAnyGroup
UpgradeItem
AddPreviewTalentPoints
AppendToFile
BNTokenCombineGivenAndSurname
ClearLFGDungeon
DeleteFile
EJ_GetAvailableClasses
EJ_GetClassFilter
EJ_SetClassLootFilter
GetAchievementInfoFromCriteria
GetActiveTalentGroup
GetBattlefieldPosition
GetBonusBarOverrideBarType
GetCompanionCooldown
GetDefaultRaidDifficulty
GetDungeonDifficulty
GetExpertisePercent
GetExtraBarOffset
GetGroupPreviewTalentPointsSpent
GetLFGInfoLocal
GetLastQueueStatusIndex
GetMajorTalentTreeBonuses
GetMaxDailyQuests
GetMinorTalentTreeBonuses
GetMovieResolution
GetMultiCastBarOffset
GetNextPetTalentLevel
GetNextTalentLevel
GetNumBattlefieldPositions
GetNumPartyMembers
GetNumRaidMembers
GetNumTalentGroups
GetNumTalentPoints
GetNumTalentTabs
GetPartyLeaderIndex
GetPartyMember
GetPreviewPrimaryTalentTree
GetPreviewTalentPointsSpent
GetPrimaryTalentTree
GetRaidRosterSelection
GetRealNumPartyMembers
GetRealNumRaidMembers
GetRewardArenaPoints
GetRewardHonor
GetTalentPrereqs
GetTalentTabInfo
GetTalentTreeEarlySpells
GetTalentTreeMasterySpells
GetTalentTreeRoles
GetTradeSkillSubClassFilter
GetUnspentTalentPoints
IsInFakeRaid
IsListedInLFR
IsOnePersonParty
IsPartyLeader
IsRaidLeader
IsRaidOfficer
IsRealPartyLeader
IsRealRaidLeader
LearnPreviewTalents
LootSlotIsCoin
LootSlotIsCurrency
LootSlotIsItem
QueryQuestsCompleted
ReadFile
RequestBattlefieldPositions
ResetGroupPreviewTalentPoints
ResetPreviewTalentPoints
SetActiveTalentGroup
SetDungeonDifficulty
SetPreviewPrimaryTalentTree
SetPrimaryTalentTree
SetRaidRosterSelection
SetTradeSkillSubClassFilter
SilenceMember
TestCreatePill
UnSilenceMember
UnitIsPartyLeader
ValidateTimer

FrameXML

FrameXML (4.3.4.15595 → 5.0.4.16016)
24 new functions 11 removed functions
BonusActionBarGetBarInfo
BonusActionButtonDown
BonusActionButtonUp
GetLFGModeType
HideBonusActionBar
SetTalentButtonLocation
SetupBonusActionBar
ShowBonusActionBar
TogglePetTalentFrame
isRaidFinderDungeonDisplayable
updateContainerFrameAnchors

Events

Events (4.3.4.15595 → 5.0.4.16016)
92 new events 4 removed events
ARENA_PREP_OPPONENT_SPECIALIZATIONS
BAG_UPDATE_DELAYED
BATTLETAG_INVITE_SHOW
BATTLE_PET_CURSOR_CLEAR
BLACK_MARKET_BID_RESULT
BLACK_MARKET_CLOSE
BLACK_MARKET_ITEM_UPDATE
BLACK_MARKET_OPEN
BLACK_MARKET_OUTBID
BLACK_MARKET_UNAVAILABLE
BLACK_MARKET_WON
BN_INFO_CHANGED
BONUS_ROLL_FAILED
BONUS_ROLL_RESULT
BONUS_ROLL_STARTED
CHALLENGE_MODE_COMPLETED
CHALLENGE_MODE_LEADERS_UPDATE
CHALLENGE_MODE_MAPS_UPDATE
CHALLENGE_MODE_NEW_RECORD
CHAT_MSG_PET_BATTLE_COMBAT_LOG
CHAT_MSG_PET_BATTLE_INFO
CRITERIA_COMPLETE
CRITERIA_EARNED
GROUP_ROSTER_UPDATE
ITEM_UPGRADE_MASTER_CLOSED
ITEM_UPGRADE_MASTER_OPENED
ITEM_UPGRADE_MASTER_SET_ITEM
ITEM_UPGRADE_MASTER_UPDATE
LOOT_HISTORY_AUTO_SHOW
LOOT_HISTORY_FULL_UPDATE
LOOT_HISTORY_ROLL_CHANGED
LOOT_HISTORY_ROLL_COMPLETE
LOOT_ITEM_AVAILABLE
LOOT_ITEM_ROLL_WON
LOOT_ROLLS_COMPLETE
MERCHANT_FILTER_ITEM_UPDATE
NEUTRAL_FACTION_SELECT_RESULT
NEW_WMO_CHUNK
PET_BATTLE_ABILITY_CHANGED
PET_BATTLE_ACTION_SELECTED
PET_BATTLE_AURA_APPLIED
PET_BATTLE_AURA_CANCELED
PET_BATTLE_AURA_CHANGED
PET_BATTLE_CAPTURED
PET_BATTLE_CLOSE
PET_BATTLE_FINAL_ROUND
PET_BATTLE_HEALTH_CHANGED
PET_BATTLE_LEVEL_CHANGED
PET_BATTLE_MAX_HEALTH_CHANGED
PET_BATTLE_OPENING_DONE
PET_BATTLE_OPENING_START
PET_BATTLE_OVER
PET_BATTLE_PET_CHANGED
PET_BATTLE_PET_ROUND_PLAYBACK_COMPLETE
PET_BATTLE_PET_ROUND_RESULTS
PET_BATTLE_PVP_DUEL_REQUESTED
PET_BATTLE_PVP_DUEL_REQUEST_CANCEL
PET_BATTLE_QUEUE_PROPOSAL_ACCEPTED
PET_BATTLE_QUEUE_PROPOSAL_DECLINED
PET_BATTLE_QUEUE_PROPOSE_MATCH
PET_BATTLE_QUEUE_STATUS
PET_BATTLE_TURN_STARTED
PET_BATTLE_XP_CHANGED
PET_JOURNAL_AUTO_SLOTTED_PET
PET_JOURNAL_LIST_UPDATE
PET_JOURNAL_NEW_BATTLE_SLOT
PET_JOURNAL_PETS_HEALED
PET_JOURNAL_PET_DELETED
PET_JOURNAL_TRAP_LEVEL_SET
PET_SPECIALIZATION_CHANGED
PLAYER_SPECIALIZATION_CHANGED
PVP_POWER_UPDATE
QUEST_BOSS_EMOTE
SCENARIO_CRITERIA_UPDATE
SCENARIO_POI_UPDATE
SCENARIO_UPDATE
SCRIPT_ACHIEVEMENT_PLAYER_NAME
SHOW_FACTION_SELECT_UI
SHOW_LOOT_TOAST
SPELL_CONFIRMATION_PROMPT
SPELL_CONFIRMATION_TIMEOUT
SPELL_POWER_CHANGED
SPELL_UPDATE_CHARGES
UNIT_OTHER_PARTY_CHANGED
UPDATE_EXPANSION_LEVEL
UPDATE_OVERRIDE_ACTIONBAR
UPDATE_POSSESS_BAR
UPDATE_SUMMONPETS_ACTION
UPDATE_VEHICLE_ACTIONBAR
USE_GLYPH
WORLD_STATE_TIMER_START
WORLD_STATE_TIMER_STOP
PET_TALENT_UPDATE
PREVIEW_PET_TALENT_POINTS_CHANGED
QUEST_QUERY_COMPLETE
WORLD_MAP_NAME_UPDATE

Widget API

Widget API (4.3.4.15595 → 5.0.4.16016)
36 new methods 2 removed methods
ArchaeologyDigSiteFrame:DrawAll
Button:SetEnabled
EditBox:SetEnabled
FontString:SetShown
Frame:RegisterUnitEvent
Frame:SetShown
GameTooltip:SetAchievementByID
Model:GetCameraDistance
Model:GetCameraFacing
Model:GetCameraPosition
Model:GetCameraTarget
Model:GetWorldScale
Model:HasCustomCamera
Model:SetCameraDistance
Model:SetCameraFacing
Model:SetCameraPosition
Model:SetCameraTarget
Model:SetCustomCamera
PlayerModel:GetDoBlend
PlayerModel:SetAnimation
PlayerModel:SetDoBlend
QuestPOIFrame:DrawAll
ScenarioPOIFrame:DrawAll
ScenarioPOIFrame:DrawBlob
ScenarioPOIFrame:DrawNone
ScenarioPOIFrame:EnableMerging
ScenarioPOIFrame:EnableSmoothing
ScenarioPOIFrame:SetBorderAlpha
ScenarioPOIFrame:SetBorderScalar
ScenarioPOIFrame:SetBorderTexture
ScenarioPOIFrame:SetFillAlpha
ScenarioPOIFrame:SetFillTexture
ScenarioPOIFrame:SetMergeThreshold
ScenarioPOIFrame:SetNumSplinePoints
Slider:SetEnabled
Texture:SetShown
Cooldown:GetDrawEdge
Cooldown:SetDrawEdge