eluna-scripts-ornfelt/lua/DinklePack_Lua/CustomContent/MiscTools/Mask.lua
2024-09-23 07:59:23 +02:00

44 lines
1.8 KiB
Lua

local Masks = {}
Masks.Tables = {
Alliance_races = {1, 3, 4, 7, 11, 12, 13, 15, 16, 19}, -- Replace with your actual Alliance race IDs
Horde_races = {2, 5, 6, 8, 9, 10, 14, 17, 18, 20}, -- Replace with your actual Horde race IDs
Classes = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15},
Demon_Hunter_Races = {14, 15} -- Replace with your actual class IDs
}
function Masks.calculateMask(ids)
local mask = 0
for _, id in ipairs(ids) do
mask = mask + 2^(id - 1)
end
return mask
end
function Masks.Command(event, player, command)
if command:lower() == "masks" then
local raceMask = player:GetRaceMask()
local classMask = player:GetClassMask()
player:SendBroadcastMessage("Your race mask ID is: " .. tostring(raceMask))
player:SendBroadcastMessage("Your class mask ID is: " .. tostring(classMask))
local allianceMask = Masks.calculateMask(Masks.Tables.Alliance_races)
local hordeMask = Masks.calculateMask(Masks.Tables.Horde_races)
local classesMask = Masks.calculateMask(Masks.Tables.Classes)
player:SendBroadcastMessage("The overall mask for Alliance races is: " .. tostring(allianceMask))
player:SendBroadcastMessage("The overall mask for Horde races is: " .. tostring(hordeMask))
player:SendBroadcastMessage("The overall mask for Alliance/Horde races is: " .. tostring(hordeMask + allianceMask))
player:SendBroadcastMessage("The overall mask for classes is: " .. tostring(classesMask))
elseif command:lower() == "dhmask" then
local dhMask = Masks.calculateMask(Masks.Tables.Demon_Hunter_Races)
player:SendBroadcastMessage("The overall mask for Demon Hunter races is: " .. tostring(dhMask))
else
return
end
return false
end
RegisterPlayerEvent(42, Masks.Command)