完成多出修改
修复拾取界面点击无效问题 修复宠物训练界面不显示训练点问题 新增天赋分享到聊天界面 修复飞行界面无法关闭问题 修复术士宠物的显示问题 为天赋界面添加默认数据库支持 框架现在也可自主选择是否启用 玩家框架和目标框架可取消显示3D头像以及透明度修改 背包和银行也添加透明度自定义支持 优化tooltip性能和背包物品显示方式 修复布局模式在ui缩放后不能正常定位的问题 添加硬核模式危险和死亡的工会通报 添加拾取和已拾取的框体 等等
This commit is contained in:
101
Units/Player.lua
101
Units/Player.lua
@@ -105,27 +105,52 @@ function SFrames.Player:ApplyConfig()
|
||||
|
||||
local cfg = self:GetConfig()
|
||||
local f = self.frame
|
||||
local db = SFramesDB or {}
|
||||
|
||||
local showPortrait = db.playerShowPortrait ~= false
|
||||
local frameAlpha = tonumber(db.playerFrameAlpha) or 1
|
||||
frameAlpha = Clamp(frameAlpha, 0.1, 1.0)
|
||||
|
||||
f:SetScale(cfg.scale)
|
||||
f:SetWidth(cfg.width)
|
||||
f:SetHeight(cfg.height)
|
||||
f:SetAlpha(frameAlpha)
|
||||
|
||||
if f.portrait then
|
||||
f.portrait:SetWidth(cfg.portraitWidth)
|
||||
f.portrait:SetHeight(cfg.height - 2)
|
||||
end
|
||||
|
||||
if f.portraitBG then
|
||||
f.portraitBG:ClearAllPoints()
|
||||
f.portraitBG:SetPoint("TOPLEFT", f, "TOPLEFT", 0, 0)
|
||||
f.portraitBG:SetPoint("BOTTOMRIGHT", f.portrait, "BOTTOMRIGHT", 1, -1)
|
||||
end
|
||||
|
||||
if f.health then
|
||||
f.health:ClearAllPoints()
|
||||
f.health:SetPoint("TOPLEFT", f.portrait, "TOPRIGHT", 1, 0)
|
||||
f.health:SetPoint("TOPRIGHT", f, "TOPRIGHT", -1, -1)
|
||||
f.health:SetHeight(cfg.healthHeight)
|
||||
if showPortrait then
|
||||
if f.portrait then
|
||||
f.portrait:SetWidth(cfg.portraitWidth)
|
||||
f.portrait:SetHeight(cfg.height - 2)
|
||||
f.portrait:Show()
|
||||
end
|
||||
if f.portraitBG then
|
||||
f.portraitBG:ClearAllPoints()
|
||||
f.portraitBG:SetPoint("TOPLEFT", f, "TOPLEFT", 0, 0)
|
||||
f.portraitBG:SetPoint("BOTTOMRIGHT", f.portrait, "BOTTOMRIGHT", 1, -1)
|
||||
f.portraitBG:Show()
|
||||
end
|
||||
if f.health then
|
||||
f.health:ClearAllPoints()
|
||||
f.health:SetPoint("TOPLEFT", f.portrait, "TOPRIGHT", 1, 0)
|
||||
f.health:SetPoint("TOPRIGHT", f, "TOPRIGHT", -1, -1)
|
||||
f.health:SetHeight(cfg.healthHeight)
|
||||
end
|
||||
if f.classIcon and f.classIcon.overlay then
|
||||
f.classIcon.overlay:ClearAllPoints()
|
||||
f.classIcon.overlay:SetPoint("CENTER", f.portrait, "TOPRIGHT", 0, 0)
|
||||
end
|
||||
else
|
||||
if f.portrait then f.portrait:Hide() end
|
||||
if f.portraitBG then f.portraitBG:Hide() end
|
||||
if f.health then
|
||||
f.health:ClearAllPoints()
|
||||
f.health:SetPoint("TOPLEFT", f, "TOPLEFT", 1, -1)
|
||||
f.health:SetPoint("TOPRIGHT", f, "TOPRIGHT", -1, -1)
|
||||
f.health:SetHeight(cfg.healthHeight)
|
||||
end
|
||||
if f.classIcon and f.classIcon.overlay then
|
||||
f.classIcon.overlay:ClearAllPoints()
|
||||
f.classIcon.overlay:SetPoint("CENTER", f, "TOPLEFT", 8, 0)
|
||||
end
|
||||
end
|
||||
|
||||
if f.healthBGFrame then
|
||||
@@ -147,6 +172,21 @@ function SFrames.Player:ApplyConfig()
|
||||
f.powerBGFrame:SetPoint("BOTTOMRIGHT", f.power, "BOTTOMRIGHT", 1, -1)
|
||||
end
|
||||
|
||||
if f.restOverlay then
|
||||
if showPortrait then f.restOverlay:SetAlpha(1) else f.restOverlay:SetAlpha(0) end
|
||||
end
|
||||
|
||||
if f.castbar then
|
||||
f.castbar:ClearAllPoints()
|
||||
if showPortrait then
|
||||
f.castbar:SetPoint("BOTTOMRIGHT", f, "TOPRIGHT", 0, 6)
|
||||
f.castbar:SetPoint("BOTTOMLEFT", f.portrait, "TOPLEFT", SFrames.Config.castbarHeight + 6, 6)
|
||||
else
|
||||
f.castbar:SetPoint("BOTTOMRIGHT", f, "TOPRIGHT", 0, 6)
|
||||
f.castbar:SetPoint("BOTTOMLEFT", f, "TOPLEFT", SFrames.Config.castbarHeight + 6, 6)
|
||||
end
|
||||
end
|
||||
|
||||
local outline = (SFrames and SFrames.Media and SFrames.Media.fontOutline) or "OUTLINE"
|
||||
local fontPath = SFrames:GetFont()
|
||||
|
||||
@@ -471,7 +511,13 @@ function SFrames.Player:Initialize()
|
||||
SFrames:RegisterEvent("PARTY_MEMBERS_CHANGED", function() self:UpdateLeaderIcon() end)
|
||||
SFrames:RegisterEvent("PARTY_LEADER_CHANGED", function() self:UpdateLeaderIcon() end)
|
||||
SFrames:RegisterEvent("RAID_TARGET_UPDATE", function() self:UpdateRaidIcon() end)
|
||||
SFrames:RegisterEvent("UNIT_PORTRAIT_UPDATE", function() if arg1 == "player" then self.frame.portrait:SetUnit("player") self.frame.portrait:SetCamera(0) self.frame.portrait:SetPosition(-1.0, 0, 0) end end)
|
||||
SFrames:RegisterEvent("UNIT_PORTRAIT_UPDATE", function()
|
||||
if arg1 == "player" and self.frame.portrait and not (SFramesDB and SFramesDB.playerShowPortrait == false) then
|
||||
self.frame.portrait:SetUnit("player")
|
||||
self.frame.portrait:SetCamera(0)
|
||||
self.frame.portrait:SetPosition(-1.0, 0, 0)
|
||||
end
|
||||
end)
|
||||
SFrames:RegisterEvent("UNIT_DISPLAYPOWER", function() if arg1 == "player" then self:UpdatePowerType(); self:UpdatePower() end end)
|
||||
SFrames:RegisterEvent("UPDATE_SHAPESHIFT_FORM", function() self:UpdatePowerType(); self:UpdatePower() end)
|
||||
SFrames:RegisterEvent("PLAYER_UPDATE_RESTING", function() self:UpdateRestingStatus() end)
|
||||
@@ -587,6 +633,12 @@ function SFrames.Player:ScanTrainer()
|
||||
return
|
||||
end
|
||||
|
||||
if SetTrainerServiceTypeFilter then
|
||||
SetTrainerServiceTypeFilter("available", 1)
|
||||
SetTrainerServiceTypeFilter("unavailable", 1)
|
||||
SetTrainerServiceTypeFilter("used", 1)
|
||||
end
|
||||
|
||||
local _, classEn = UnitClass("player")
|
||||
if not classEn or not SFramesDB then self.scanningTrainer = nil return end
|
||||
|
||||
@@ -966,9 +1018,12 @@ function SFrames.Player:UpdateAll()
|
||||
formattedLevel = formattedLevel .. " "
|
||||
end
|
||||
|
||||
self.frame.portrait:SetUnit("player")
|
||||
self.frame.portrait:SetCamera(0)
|
||||
self.frame.portrait:SetPosition(-1.0, 0, 0)
|
||||
local showPortrait = not (SFramesDB and SFramesDB.playerShowPortrait == false)
|
||||
if showPortrait and self.frame.portrait then
|
||||
self.frame.portrait:SetUnit("player")
|
||||
self.frame.portrait:SetCamera(0)
|
||||
self.frame.portrait:SetPosition(-1.0, 0, 0)
|
||||
end
|
||||
|
||||
-- Class Color for Health
|
||||
local localizedClass, class = UnitClass("player")
|
||||
@@ -1477,6 +1532,12 @@ function SFrames.Player:Initialize()
|
||||
CastingBarFrame:UnregisterAllEvents()
|
||||
CastingBarFrame:Hide()
|
||||
end
|
||||
|
||||
-- Register mover
|
||||
if SFrames.Movers and SFrames.Movers.RegisterMover and self.frame then
|
||||
SFrames.Movers:RegisterMover("PlayerFrame", self.frame, "玩家",
|
||||
"CENTER", "UIParent", "CENTER", -200, -100)
|
||||
end
|
||||
end
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user