initial commit
This commit is contained in:
56
Modules/Blizzard/Vehicle.lua
Normal file
56
Modules/Blizzard/Vehicle.lua
Normal file
@@ -0,0 +1,56 @@
|
||||
local E, L, V, P, G = unpack(select(2, ...)); --Import: Engine, Locales, PrivateDB, ProfileDB, GlobalDB
|
||||
local B = E:GetModule('Blizzard')
|
||||
|
||||
local _G = _G
|
||||
local hooksecurefunc = hooksecurefunc
|
||||
local GetVehicleUIIndicator = GetVehicleUIIndicator
|
||||
local GetVehicleUIIndicatorSeat = GetVehicleUIIndicatorSeat
|
||||
local VehicleSeatIndicator_SetUpVehicle = VehicleSeatIndicator_SetUpVehicle
|
||||
|
||||
local function SetPosition(_,_,anchor)
|
||||
if anchor == 'MinimapCluster' or anchor == _G.MinimapCluster then
|
||||
_G.VehicleSeatIndicator:ClearAllPoints()
|
||||
_G.VehicleSeatIndicator:Point('TOPLEFT', _G.VehicleSeatMover, 'TOPLEFT', 0, 0)
|
||||
end
|
||||
end
|
||||
|
||||
local function VehicleSetUp(vehicleID)
|
||||
local size = E.db.general.vehicleSeatIndicatorSize
|
||||
_G.VehicleSeatIndicator:Size(size)
|
||||
|
||||
local _, numSeatIndicators = GetVehicleUIIndicator(vehicleID)
|
||||
if numSeatIndicators then
|
||||
local fourth = size / 4
|
||||
|
||||
for i = 1, numSeatIndicators do
|
||||
local button = _G['VehicleSeatIndicatorButton'..i]
|
||||
button:Size(fourth)
|
||||
|
||||
local _, xOffset, yOffset = GetVehicleUIIndicatorSeat(vehicleID, i)
|
||||
button:ClearAllPoints()
|
||||
button:Point('CENTER', button:GetParent(), 'TOPLEFT', xOffset * size, -yOffset * size)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function B:UpdateVehicleFrame()
|
||||
if _G.VehicleSeatIndicator.currSkin then
|
||||
VehicleSeatIndicator_SetUpVehicle(_G.VehicleSeatIndicator.currSkin)
|
||||
end
|
||||
end
|
||||
|
||||
function B:PositionVehicleFrame()
|
||||
local VehicleSeatIndicator = _G.VehicleSeatIndicator
|
||||
if not VehicleSeatIndicator.PositionVehicleFrameHooked then
|
||||
hooksecurefunc(VehicleSeatIndicator, 'SetPoint', SetPosition)
|
||||
hooksecurefunc('VehicleSeatIndicator_SetUpVehicle', VehicleSetUp)
|
||||
E:CreateMover(VehicleSeatIndicator, 'VehicleSeatMover', L["Vehicle Seat Frame"], nil, nil, nil, nil, nil, 'general,blizzUIImprovements')
|
||||
VehicleSeatIndicator.PositionVehicleFrameHooked = true
|
||||
end
|
||||
|
||||
VehicleSeatIndicator:Size(E.db.general.vehicleSeatIndicatorSize)
|
||||
|
||||
if VehicleSeatIndicator.currSkin then
|
||||
VehicleSetUp(VehicleSeatIndicator.currSkin)
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user