MBT Meta Clothes take advantage of ox_inventory metadata feature giving you the possibility to turn your clothes into unique items. Undress yourself using a clean and simple NUI and have fun swapping your outfits with your friends!
Add to your items the following ones (customize the settings to fit your needs) DO NOT CHANGE THE ITEMS NAME!
The resource has been tested ONLY on Ox Core and ESX
Remember to check and change if needed the Default
clothes in MBT.Drawables
and MBT.Props
['topdress'] = {
label = 'Top Dress',
description = 'YOUR_DESCRIPTION',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'clothingshirt', clip = 'try_shirt_positive_d', flag = 51 },
usetime = 1200,
}
},
['jacket'] = {
label = 'Jacket',
description = 'YOUR_DESCRIPTION',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'clothingshirt', clip = 'try_shirt_positive_d', flag = 51 },
usetime = 1200,
}
},
['trousers'] = {
label = 'Trousers',
description = 'YOUR_DESCRIPTION',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 're@construction', clip = 'out_of_breath', flag = 51 },
usetime = 1200,
}
},
['shoes'] = {
label = 'Shoes',
description = 'YOUR_DESCRIPTION',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'random@domestic', clip = 'pickup_low', flag = 0 },
usetime = 1200,
}
},
['hat'] = {
label = 'Hat',
description = 'YOUR_DESCRIPTION',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'missheist_agency2ahelmet', clip = 'take_off_helmet_stand', flag = 51 },
usetime = 1200,
}
},
['glasses'] = {
label = 'Glasses',
description = 'YOUR_DESCRIPTION',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'clothingspecs', clip = 'take_off', flag = 51 },
usetime = 1200,
}
},
['earaccess'] = {
label = 'Ear Accessories',
description = 'YOUR_DESCRIPTION',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'mp_cp_stolen_tut', clip = 'b_think', flag = 51 },
usetime = 1200,
}
},
['chain'] = {
label = 'Torso Accessories',
description = 'Torso Accessories',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'clothingtie', clip = 'try_tie_positive_a', flag = 51 },
usetime = 2500,
}
},
['watch'] = {
label = 'Watch',
description = 'Watch',
weight = 100,
stack = true,
close = true,
client = {
anim = { dict = 'nmt_3_rcm-10', clip = 'cs_nigel_dual-10', flag = 51 },
usetime = 900,
}
},
Item('topdress', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Drawables",
index = slot.metadata,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyKitDress", slot.metadata)
end
end)
end
})
end)
Item('trousers', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Drawables",
index = slot.metadata.index,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyDress", slot.metadata)
end
end)
end
})
end)
Item('shoes', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Drawables",
index = slot.metadata.index,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyDress", slot.metadata)
end
end)
end
})
end)
Item('chain', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Drawables",
index = slot.metadata.index,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyProps", slot.metadata)
end
end)
end
})
end)
Item('watch', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Props",
index = slot.metadata.index,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyProps", slot.metadata)
end
end)
end
})
end)
Item('hat', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Props",
index = slot.metadata.index,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyProps", slot.metadata)
end
end)
end
})
end)
Item('glasses', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Props",
index = slot.metadata.index,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyProps", slot.metadata)
end
end)
end
})
end)
Item('earaccess', function(data, slot)
local sexLabel = { ["m"] = "man", ["f"] = "woman"}
if PlayerData.sex ~= slot.metadata.sex then
-- Trigger your notify here
-- Text: This piece of clothing is not for "..sexLabel[PlayerData.sex]
end
TriggerEvent("mbt_metaclothes:checkDress", {
type = "Props",
index = slot.metadata.index,
sex = PlayerData.sex,
cb = function(canDress)
if not canDress then
-- Trigger your notify here
return
end
ox_inventory:useItem(data, function(data)
if data then
TriggerEvent("mbt_metaclothes:applyProps", slot.metadata)
end
end)
end
})
end)
- Turn clothes into items and swap them with your friends
- ESX compatible (Tested with ESX Legacy)
- Ox Core compatible
- QB Core compatible(if you have ox_inventory)
- Optimized for low CPU usage
- Customizable labels
- Customizable notify system
- Showcase: Click Here
- Cfx : Click Here