Add bags, makeup, ageing, eyebrows ...

This commit is contained in:
renaiku
2017-08-06 12:47:09 +02:00
parent d65849ab97
commit 434a4cabfe
+136 -74
View File
@@ -1,36 +1,54 @@
local Components = {
{label = 'Sexe', name = 'sex', value = 0, min = 0 },
{label = 'Visage', name = 'face', value = 0, min = 0 },
{label = 'Peau', name = 'skin', value = 0, min = 0 },
{label = 'Type Barbe', name = 'beard_1', value = 0, min = 0 },
{label = 'Taille barbe', name = 'beard_2', value = 0, min = 0 },
{label = 'Couleur barbe 1', name = 'beard_3', value = 0, min = 0 },
{label = 'Couleur barbe 2', name = 'beard_4', value = 0, min = 0 },
{label = 'Cheveux 1', name = 'hair_1', value = 0, min = 0 },
{label = 'Cheveux 2', name = 'hair_2', value = 0, min = 0 },
{label = 'Couleur cheveux 1', name = 'hair_color_1', value = 0, min = 0 },
{label = 'Couleur cheveux 2', name = 'hair_color_2', value = 0, min = 0 },
{label = 'T-Shirt 1', name = 'tshirt_1', value = 0, min = 0 },
{label = 'T-Shirt 2', name = 'tshirt_2', value = 0, min = 0 , textureof = 'tshirt_1'},
{label = 'Torse 1', name = 'torso_1', value = 0, min = 0 },
{label = 'Torse 2', name = 'torso_2', value = 0, min = 0 , textureof = 'torso_1'},
{label = 'Calques 1', name = 'decals_1', value = 0, min = 0 },
{label = 'Calques 2', name = 'decals_2', value = 0, min = 0 , textureof = 'decals_1'},
{label = 'Bras', name = 'arms', value = 0, min = 0 },
{label = 'Jambes 1', name = 'pants_1', value = 0, min = 0 },
{label = 'Jambes 2', name = 'pants_2', value = 0, min = 0 , textureof = 'pants_1'},
{label = 'Chaussures 1', name = 'shoes_1', value = 0, min = 0 },
{label = 'Chaussures 2', name = 'shoes_2', value = 0, min = 0 , textureof = 'shoes_1'},
{label = 'Masque 1', name = 'mask_1', value = 0, min = 0 },
{label = 'Masque 2', name = 'mask_2', value = 0, min = 0 , textureof = 'mask_1'},
{label = 'Gilet pare-balle 1', name = 'bproof_1', value = 0, min = 0 },
{label = 'Gilet pare-balle 2', name = 'bproof_2', value = 0, min = 0 , textureof = 'bproof_1'},
{label = 'Chaine 1', name = 'chain_1', value = 0, min = 0 },
{label = 'Chaine 2', name = 'chain_2', value = 0, min = 0 , textureof = 'chain_1'},
{label = 'Casque 1', name = 'helmet_1', value = -1, min = -1, componentId = 0},
{label = 'Casque 2', name = 'helmet_2', value = 0, min = 0 , textureof = 'helmet_1'},
{label = 'Lunettes 1', name = 'glasses_1', value = 0, min = 0 },
{label = 'Lunettes 2', name = 'glasses_2', value = 0, min = 0 , textureof = 'glasses_1'},
local Components = {
{label = 'Sexe', name = 'sex', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Visage', name = 'face', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Peau', name = 'skin', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Rides', name = 'age_1', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Epaisseur rides', name = 'age_2', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Type Barbe', name = 'beard_1', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Taille barbe', name = 'beard_2', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur barbe 1', name = 'beard_3', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur barbe 2', name = 'beard_4', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Cheveux 1', name = 'hair_1', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Cheveux 2', name = 'hair_2', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Couleur cheveux 1', name = 'hair_color_1', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Couleur cheveux 2', name = 'hair_color_2', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Type Sourcils', name = 'eyebrows_1', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Taille Sourcils', name = 'eyebrows_2', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur Sourcils 1', name = 'eyebrows_3', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur Sourcils 2', name = 'eyebrows_4', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Type Maquillage', name = 'makeup_1', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Epaisseur Maquillage', name = 'makeup_2', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur Maquillage 1', name = 'makeup_3', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur Maquillage 2', name = 'makeup_4', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Type Lipstick', name = 'lipstick_1', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Epaisseur Lipstick', name = 'lipstick_2', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur Lipstick 1', name = 'lipstick_3', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur Lipstick 2', name = 'lipstick_4', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Accessoire Oreilles',name = 'ears_1', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65}, --
{label = 'Couleur Accessoire', name = 'ears_2', value = 0, min = 0, zoomOffset = 0.4, camOffset = 0.65, textureof = 'ears_1'}, --
{label = 'T-Shirt 1', name = 'tshirt_1', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15}, --
{label = 'T-Shirt 2', name = 'tshirt_2', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15, textureof = 'tshirt_1'}, --
{label = 'Torse 1', name = 'torso_1', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15}, --
{label = 'Torse 2', name = 'torso_2', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15, textureof = 'torso_1'}, --
{label = 'Calques 1', name = 'decals_1', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15}, --
{label = 'Calques 2', name = 'decals_2', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15, textureof = 'decals_1'}, --
{label = 'Bras', name = 'arms', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15}, --
{label = 'Jambes 1', name = 'pants_1', value = 0, min = 0, zoomOffset = 0.8, camOffset = -0.5}, --
{label = 'Jambes 2', name = 'pants_2', value = 0, min = 0, zoomOffset = 0.8, camOffset = -0.5, textureof = 'pants_1'}, --
{label = 'Chaussures 1', name = 'shoes_1', value = 0, min = 0, zoomOffset = 0.8, camOffset = -0.8},
{label = 'Chaussures 2', name = 'shoes_2', value = 0, min = 0, zoomOffset = 0.8, camOffset = -0.8, textureof = 'shoes_1'},
{label = 'Masque 1', name = 'mask_1', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Masque 2', name = 'mask_2', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65, textureof = 'mask_1'}, --
{label = 'Gilet pare-balle 1', name = 'bproof_1', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15}, --
{label = 'Gilet pare-balle 2', name = 'bproof_2', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15, textureof = 'bproof_1'}, --
{label = 'Chaine 1', name = 'chain_1', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Chaine 2', name = 'chain_2', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65, textureof = 'chain_1'}, --
{label = 'Casque 1', name = 'helmet_1', value = -1, min = -1, componentId = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Casque 2', name = 'helmet_2', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65, textureof = 'helmet_1'}, --
{label = 'Lunettes 1', name = 'glasses_1', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65}, --
{label = 'Lunettes 2', name = 'glasses_2', value = 0, min = 0, zoomOffset = 0.6, camOffset = 0.65, textureof = 'glasses_1'}, --
{label = 'Sac', name = 'bags_1', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15},
{label = 'Couleur Sac', name = 'bags_2', value = 0, min = 0, zoomOffset = 0.75, camOffset = 0.15, textureof = 'bags_1'}
}
local LastSex = 0
@@ -43,35 +61,35 @@ for i=1, #Components, 1 do
end
function LoadDefaultModel(loadMale)
local playerPed = GetPlayerPed(-1)
local characterModel
local characterModel
if loadMale then
characterModel = GetHashKey('mp_m_freemode_01')
else
characterModel = GetHashKey('mp_f_freemode_01');
end
if loadMale then
characterModel = GetHashKey('mp_m_freemode_01')
else
characterModel = GetHashKey('mp_f_freemode_01');
end
RequestModel(characterModel)
RequestModel(characterModel)
Citizen.CreateThread(function()
while not HasModelLoaded(characterModel) do
RequestModel(characterModel)
Citizen.Wait(0)
end
Citizen.CreateThread(function()
if IsModelInCdimage(characterModel) and IsModelValid(characterModel) then
SetPlayerModel(PlayerId(), characterModel)
SetPedDefaultComponentVariation(playerPed)
end
while not HasModelLoaded(characterModel) do
RequestModel(characterModel)
Citizen.Wait(0)
end
SetModelAsNoLongerNeeded(characterModel)
if IsModelInCdimage(characterModel) and IsModelValid(characterModel) then
SetPlayerModel(PlayerId(), characterModel)
SetPedDefaultComponentVariation(playerPed)
end
TriggerEvent('skinchanger:modelLoaded')
SetModelAsNoLongerNeeded(characterModel)
end)
TriggerEvent('skinchanger:modelLoaded')
end)
end
@@ -83,14 +101,30 @@ function GetMaxVals()
sex = 1,
face = 45,
skin = 45,
beard_1 = GetNumHeadOverlayValues(1),
age_1 = GetNumHeadOverlayValues(3)-1,
age_2 = 10,
beard_1 = GetNumHeadOverlayValues(1)-1,
beard_2 = 10,
beard_3 = 63,
beard_4 = 63,
beard_3 = GetNumHairColors()-1,
beard_4 = GetNumHairColors()-1,
hair_1 = GetNumberOfPedDrawableVariations(playerPed, 2) - 1,
hair_2 = GetNumberOfPedTextureVariations(playerPed, 2, Character['hair_1']) - 1,
hair_color_1 = 22,
hair_color_2 = 4,
hair_color_1 = GetNumHairColors()-1,
hair_color_2 = GetNumHairColors()-1,
eyebrows_1 = GetNumHeadOverlayValues(2)-1,
eyebrows_2 = 10,
eyebrows_3 = GetNumHairColors()-1,
eyebrows_4 = GetNumHairColors()-1,
makeup_1 = GetNumHeadOverlayValues(4)-1,
makeup_2 = 10,
makeup_3 = 74,
makeup_4 = 74,
lipstick_1 = GetNumHeadOverlayValues(8)-1,
lipstick_2 = 10,
lipstick_3 = 9,
lipstick_4 = 9,
ears_1 = GetNumberOfPedPropDrawableVariations(playerPed, 1) - 1,
ears_2 = GetNumberOfPedPropTextureVariations(playerPed, 1, Character['ears_1'] - 1),
tshirt_1 = GetNumberOfPedDrawableVariations(playerPed, 8) - 1,
tshirt_2 = GetNumberOfPedTextureVariations(playerPed, 8, Character['tshirt_1']) - 1,
torso_1 = GetNumberOfPedDrawableVariations(playerPed, 11) - 1,
@@ -102,12 +136,14 @@ function GetMaxVals()
pants_2 = GetNumberOfPedTextureVariations(playerPed, 4, Character['pants_1']) - 1,
shoes_1 = GetNumberOfPedDrawableVariations(playerPed, 6) - 1,
shoes_2 = GetNumberOfPedTextureVariations(playerPed, 6, Character['shoes_1']) - 1,
mask_1 = GetNumberOfPedDrawableVariations(playerPed, 1) - 1,
mask_2 = GetNumberOfPedTextureVariations(playerPed, 1, Character['mask_1']) - 1,
bproof_1 = GetNumberOfPedDrawableVariations(playerPed, 9) - 1,
bproof_2 = GetNumberOfPedTextureVariations(playerPed, 9, Character['bproof_1']) - 1,
chain_1 = GetNumberOfPedDrawableVariations(playerPed, 7) - 1,
chain_2 = GetNumberOfPedTextureVariations(playerPed, 7, Character['chain_1']) - 1,
mask_1 = GetNumberOfPedDrawableVariations(playerPed, 1) - 1,
mask_2 = GetNumberOfPedTextureVariations(playerPed, 1, Character['mask_1']) - 1,
bproof_1 = GetNumberOfPedDrawableVariations(playerPed, 9) - 1,
bproof_2 = GetNumberOfPedTextureVariations(playerPed, 9, Character['bproof_1']) - 1,
chain_1 = GetNumberOfPedDrawableVariations(playerPed, 7) - 1,
chain_2 = GetNumberOfPedTextureVariations(playerPed, 7, Character['chain_1']) - 1,
bags_1 = GetNumberOfPedDrawableVariations(playerPed, 5) - 1,
bags_2 = GetNumberOfPedTextureVariations(playerPed, 5, Character['bags_1']) - 1,
helmet_1 = GetNumberOfPedPropDrawableVariations(playerPed, 0) - 1,
helmet_2 = GetNumberOfPedTextureVariations(playerPed, 0, Character['helmet_1']) - 1,
glasses_1 = GetNumberOfPedPropDrawableVariations(playerPed, 1) - 1,
@@ -133,6 +169,8 @@ function ApplySkin(skin, clothes)
k ~= 'sex' and
k ~= 'face' and
k ~= 'skin' and
k ~= 'age_1' and
k ~= 'age_2' and
k ~= 'beard_1' and
k ~= 'beard_2' and
k ~= 'beard_3' and
@@ -140,7 +178,19 @@ function ApplySkin(skin, clothes)
k ~= 'hair_1' and
k ~= 'hair_2' and
k ~= 'hair_color_1' and
k ~= 'hair_color_2'
k ~= 'hair_color_2' and
k ~= 'eyebrows_1' and
k ~= 'eyebrows_2' and
k ~= 'eyebrows_3' and
k ~= 'eyebrows_4' and
k ~= 'makeup_1' and
k ~= 'makeup_2' and
k ~= 'makeup_3' and
k ~= 'makeup_4' and
k ~= 'lipstick_1' and
k ~= 'lipstick_2' and
k ~= 'lipstick_3' and
k ~= 'lipstick_4'
then
Character[k] = v
end
@@ -149,26 +199,34 @@ function ApplySkin(skin, clothes)
end
SetPedHeadBlendData(playerPed, Character['face'], Character['face'], Character['face'], Character['skin'], Character['skin'], Character['skin'], 1.0, 1.0, 1.0, true)
SetPedHeadOverlay(playerPed, 1, Character['beard_1'], (Character['beard_2'] / 10) + 0.0) -- Beard
SetPedHeadOverlayColor(playerPed, 1, 1, Character['beard_3'], Character['beard_4']) -- Beard Color
SetPedHeadOverlay(playerPed, 3, Character['age_1'], (Character['age_2'] / 10) + 0.0) -- Age + opacity
SetPedHeadOverlay(playerPed, 1, Character['beard_1'], (Character['beard_2'] / 10) + 0.0) -- Beard + opacity
SetPedHeadOverlayColor(playerPed, 1, 1, Character['beard_3'], Character['beard_4']) -- Beard Color
SetPedHeadOverlay(playerPed, 2, Character['eyebrows_1'], (Character['eyebrows_2'] / 10) + 0.0) -- Eyebrows + opacity
SetPedHeadOverlayColor(playerPed, 1, 1, Character['eyebrows_3'], Character['eyebrows_4']) -- Eyebrows Color
SetPedHeadOverlay(playerPed, 4, Character['makeup_1'], (Character['makeup_2'] / 10) + 0.0) -- Makeup + opacity
SetPedHeadOverlayColor(playerPed, 1, 1, Character['makeup_3'], Character['makeup_4']) -- Makeup Color
SetPedHeadOverlay(playerPed, 8, Character['lipstick_1'], (Character['lipstick_2'] / 10) + 0.0) -- Lipstick + opacity
SetPedHeadOverlayColor(playerPed, 2, 1, Character['lipstick_3'], Character['lipstick_4']) -- Lipstick Color
SetPedComponentVariation(playerPed, 2, Character['hair_1'], Character['hair_2'], 2) -- Hair
SetPedHairColor(playerPed, Character['hair_color_1'], Character['hair_color_2']) -- Hair Color
SetPedHairColor(playerPed, Character['hair_color_1'], Character['hair_color_2']) -- Hair Color
SetPedPropIndex(playerPed, 2, Character['ears_1'], Character['ears_2'], 2) -- Ears Accessories
SetPedComponentVariation(playerPed, 8, Character['tshirt_1'],Character['tshirt_2'], 2) -- Tshirt
SetPedComponentVariation(playerPed, 11, Character['torso_1'], Character['torso_2'], 2) -- torso parts
SetPedComponentVariation(playerPed, 3, Character['arms'], 0, 2) -- torso
SetPedComponentVariation(playerPed, 10, Character['decals_1'], Character['decals_2'], 2) -- decals
SetPedComponentVariation(playerPed, 4, Character['pants_1'], Character['pants_2'], 2) -- pants
SetPedComponentVariation(playerPed, 6, Character['shoes_1'], Character['shoes_2'], 2) -- shoes
SetPedComponentVariation(playerPed, 1, Character['mask_1'], Character['mask_2'], 2) -- mask
SetPedComponentVariation(playerPed, 9, Character['bproof_1'], Character['bproof_2'], 2) -- bulletproof
SetPedComponentVariation(playerPed, 1, Character['mask_1'], Character['mask_2'], 2) -- mask
SetPedComponentVariation(playerPed, 9, Character['bproof_1'], Character['bproof_2'], 2) -- bulletproof
SetPedComponentVariation(playerPed, 7, Character['chain_1'], Character['chain_2'], 2) -- chain
SetPedComponentVariation(playerPed, 5, Character['bags_1'], Character['bags_2'], 2) -- Bag
if Character['helmet_1'] == -1 then
ClearPedProp(playerPed, 0)
else
SetPedPropIndex(playerPed, 0, Character['helmet_1'], Character['helmet_2'], 2) -- Helmet
end
SetPedPropIndex(playerPed, 1, Character['glasses_1'], Character['glasses_2'], 2) -- Glasses
end
@@ -185,6 +243,8 @@ AddEventHandler('skinchanger:getData', function(cb)
for i=1, #components, 1 do
if k == components[i].name then
components[i].value = v
--components[i].zoomOffset = Components[i].zoomOffset
--components[i].camOffset = Components[i].camOffset
end
end
end
@@ -210,6 +270,8 @@ end)
AddEventHandler('skinchanger:modelLoaded', function()
ClearPedProp(GetPlayerPed(-1), 0)
if LoadSkin ~= nil then
ApplySkin(LoadSkin)
@@ -236,7 +298,7 @@ AddEventHandler('skinchanger:loadSkin', function(skin)
else
LoadDefaultModel(false)
end
LastSex = skin['sex']
end)