[DRTVWR-476] - create new wearable type

meow-7.2.2
Anchor Linden 2018-06-08 20:36:49 +05:30
parent 6e1cbd04b4
commit 56fc3222dc
22 changed files with 296 additions and 165 deletions

View File

@ -65,14 +65,14 @@ LLAvatarAppearanceDictionary::Textures::Textures()
addEntry(TEX_HEAD_TATTOO, new TextureEntry("head_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_UPPER_TATTOO, new TextureEntry("upper_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_LOWER_TATTOO, new TextureEntry("lower_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_SKIRT_TATTOO, new TextureEntry("skirt_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_HAIR_TATTOO, new TextureEntry("hair_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_EYES_TATTOO, new TextureEntry("eyes_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_LEFT_ARM_TATTOO, new TextureEntry("leftarm_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_LEFT_LEG_TATTOO, new TextureEntry("leftleg_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_AUX1_TATTOO, new TextureEntry("aux1_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_AUX2_TATTOO, new TextureEntry("aux2_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_AUX3_TATTOO, new TextureEntry("aux3_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_TATTOO));
addEntry(TEX_SKIRT_TATTOO, new TextureEntry("skirt_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_HAIR_TATTOO, new TextureEntry("hair_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_EYES_TATTOO, new TextureEntry("eyes_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_LEFT_ARM_TATTOO, new TextureEntry("leftarm_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_LEFT_LEG_TATTOO, new TextureEntry("leftleg_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_AUX1_TATTOO, new TextureEntry("aux1_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_AUX2_TATTOO, new TextureEntry("aux2_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_AUX3_TATTOO, new TextureEntry("aux3_tattoo", TRUE, BAKED_NUM_INDICES, "", LLWearableType::WT_UNIVERSAL));
addEntry(TEX_HEAD_BAKED, new TextureEntry("head-baked", FALSE, BAKED_HEAD, "head"));
@ -111,42 +111,42 @@ LLAvatarAppearanceDictionary::BakedTextures::BakedTextures()
addEntry(BAKED_EYES, new BakedEntry(TEX_EYES_BAKED,
"eyes", "27b1bc0f-979f-4b13-95fe-b981c2ba9788",
3, TEX_EYES_IRIS, TEX_EYES_TATTOO, TEX_EYES_ALPHA,
3, LLWearableType::WT_EYES, LLWearableType::WT_TATTOO, LLWearableType::WT_ALPHA));
3, LLWearableType::WT_EYES, LLWearableType::WT_UNIVERSAL, LLWearableType::WT_ALPHA));
addEntry(BAKED_SKIRT, new BakedEntry(TEX_SKIRT_BAKED,
"skirt", "03e7e8cb-1368-483b-b6f3-74850838ba63",
2, TEX_SKIRT, TEX_SKIRT_TATTOO,
2, LLWearableType::WT_SKIRT, LLWearableType::WT_TATTOO ));
2, LLWearableType::WT_SKIRT, LLWearableType::WT_UNIVERSAL ));
addEntry(BAKED_HAIR, new BakedEntry(TEX_HAIR_BAKED,
"hair", "a60e85a9-74e8-48d8-8a2d-8129f28d9b61",
3, TEX_HAIR, TEX_HAIR_TATTOO, TEX_HAIR_ALPHA,
3, LLWearableType::WT_HAIR, LLWearableType::WT_TATTOO, LLWearableType::WT_ALPHA));
3, LLWearableType::WT_HAIR, LLWearableType::WT_UNIVERSAL, LLWearableType::WT_ALPHA));
addEntry(BAKED_LEFT_ARM, new BakedEntry(TEX_LEFT_ARM_BAKED,
"leftarm", "9f39febf-22d7-0087-79d1-e9e8c6c9ed19",
1, TEX_LEFT_ARM_TATTOO,
1, LLWearableType::WT_TATTOO));
1, LLWearableType::WT_UNIVERSAL));
addEntry(BAKED_LEFT_LEG, new BakedEntry(TEX_LEFT_LEG_BAKED,
"leftleg", "054a7a58-8ed5-6386-0add-3b636fb28b78",
1, TEX_LEFT_LEG_TATTOO,
1, LLWearableType::WT_TATTOO));
1, LLWearableType::WT_UNIVERSAL));
addEntry(BAKED_AUX1, new BakedEntry(TEX_AUX1_BAKED,
"aux1", "790c11be-b25c-c17e-b4d2-6a4ad786b752",
1, TEX_AUX1_TATTOO,
1, LLWearableType::WT_TATTOO));
1, LLWearableType::WT_UNIVERSAL));
addEntry(BAKED_AUX2, new BakedEntry(TEX_AUX2_BAKED,
"aux2", "d78c478f-48c7-5928-5864-8d99fb1f521e",
1, TEX_AUX2_TATTOO,
1, LLWearableType::WT_TATTOO));
1, LLWearableType::WT_UNIVERSAL));
addEntry(BAKED_AUX3, new BakedEntry(TEX_AUX3_BAKED,
"aux3", "6a95dd53-edd9-aac8-f6d3-27ed99f3c3eb",
1, TEX_AUX3_TATTOO,
1, LLWearableType::WT_TATTOO));
1, LLWearableType::WT_UNIVERSAL));
}
LLAvatarAppearanceDictionary::MeshEntries::MeshEntries()

View File

@ -91,6 +91,7 @@ LLWearableDictionary::LLWearableDictionary()
addEntry(LLWearableType::WT_SKIRT, new WearableEntry("skirt", "New Skirt", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_SKIRT, FALSE, TRUE));
addEntry(LLWearableType::WT_ALPHA, new WearableEntry("alpha", "New Alpha", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_ALPHA, FALSE, TRUE));
addEntry(LLWearableType::WT_TATTOO, new WearableEntry("tattoo", "New Tattoo", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_TATTOO, FALSE, TRUE));
addEntry(LLWearableType::WT_UNIVERSAL, new WearableEntry("universal", "New Universal", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_UNIVERSAL, FALSE, TRUE));
addEntry(LLWearableType::WT_PHYSICS, new WearableEntry("physics", "New Physics", LLAssetType::AT_CLOTHING, LLInventoryType::ICONNAME_CLOTHING_PHYSICS, TRUE, TRUE));

View File

@ -63,7 +63,8 @@ public:
WT_ALPHA = 13,
WT_TATTOO = 14,
WT_PHYSICS = 15,
WT_COUNT = 16,
WT_UNIVERSAL = 16,
WT_COUNT = 17,
WT_INVALID = 255,
WT_NONE = -1,

View File

@ -100,6 +100,7 @@ public:
ICONNAME_CLOTHING_SKIRT,
ICONNAME_CLOTHING_ALPHA,
ICONNAME_CLOTHING_TATTOO,
ICONNAME_CLOTHING_UNIVERSAL,
ICONNAME_ANIMATION,
ICONNAME_GESTURE,

View File

@ -8955,7 +8955,7 @@
id="1211"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_hair_red"
value_min="0"
value_max="1"
@ -8973,7 +8973,7 @@
id="1212"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_hair_green"
value_min="0"
value_max="1"
@ -8991,7 +8991,7 @@
id="1213"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_hair_blue"
value_min="0"
value_max="1"
@ -12303,7 +12303,7 @@ render_pass="bump">
id="924"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_eyes_red"
value_min="0"
value_max="1"
@ -12321,7 +12321,7 @@ render_pass="bump">
id="925"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_eyes_green"
value_min="0"
value_max="1"
@ -12339,7 +12339,7 @@ render_pass="bump">
id="926"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_eyes_blue"
value_min="0"
value_max="1"
@ -12543,7 +12543,7 @@ render_pass="bump">
id="1208"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_skirt_red"
value_min="0"
value_max="1"
@ -12561,7 +12561,7 @@ render_pass="bump">
id="1209"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_skirt_green"
value_min="0"
value_max="1"
@ -12579,7 +12579,7 @@ render_pass="bump">
id="1210"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_skirt_blue"
value_min="0"
value_max="1"
@ -12612,7 +12612,7 @@ render_pass="bump">
id="1214"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_leftarm_red"
value_min="0"
value_max="1"
@ -12630,7 +12630,7 @@ render_pass="bump">
id="1215"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_leftarm_green"
value_min="0"
value_max="1"
@ -12648,7 +12648,7 @@ render_pass="bump">
id="1216"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_leftarm_blue"
value_min="0"
value_max="1"
@ -12681,7 +12681,7 @@ render_pass="bump">
id="1217"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_leftleg_red"
value_min="0"
value_max="1"
@ -12699,7 +12699,7 @@ render_pass="bump">
id="1218"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_leftleg_green"
value_min="0"
value_max="1"
@ -12717,7 +12717,7 @@ render_pass="bump">
id="1219"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_leftleg_blue"
value_min="0"
value_max="1"
@ -12750,7 +12750,7 @@ render_pass="bump">
id="1220"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux1_red"
value_min="0"
value_max="1"
@ -12768,7 +12768,7 @@ render_pass="bump">
id="1221"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux1_green"
value_min="0"
value_max="1"
@ -12786,7 +12786,7 @@ render_pass="bump">
id="1222"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux1_blue"
value_min="0"
value_max="1"
@ -12819,7 +12819,7 @@ render_pass="bump">
id="1223"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux2_red"
value_min="0"
value_max="1"
@ -12837,7 +12837,7 @@ render_pass="bump">
id="1224"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux2_green"
value_min="0"
value_max="1"
@ -12855,7 +12855,7 @@ render_pass="bump">
id="1225"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux2_blue"
value_min="0"
value_max="1"
@ -12888,7 +12888,7 @@ render_pass="bump">
id="1226"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux3_red"
value_min="0"
value_max="1"
@ -12906,7 +12906,7 @@ render_pass="bump">
id="1227"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux3_green"
value_min="0"
value_max="1"
@ -12924,7 +12924,7 @@ render_pass="bump">
id="1228"
group="1"
edit_group="colorpicker_driven"
wearable="tattoo"
wearable="universal"
name="tattoo_aux3_blue"
value_min="0"
value_max="1"

View File

@ -83,6 +83,7 @@ LLIconDictionary::LLIconDictionary()
addEntry(LLInventoryType::ICONNAME_CLOTHING_SKIRT, new IconEntry("Inv_Skirt"));
addEntry(LLInventoryType::ICONNAME_CLOTHING_ALPHA, new IconEntry("Inv_Alpha"));
addEntry(LLInventoryType::ICONNAME_CLOTHING_TATTOO, new IconEntry("Inv_Tattoo"));
addEntry(LLInventoryType::ICONNAME_CLOTHING_UNIVERSAL, new IconEntry("Inv_Universal"));
addEntry(LLInventoryType::ICONNAME_ANIMATION, new IconEntry("Inv_Animation"));
addEntry(LLInventoryType::ICONNAME_GESTURE, new IconEntry("Inv_Gesture"));

View File

@ -381,6 +381,7 @@ void LLLocalBitmap::replaceIDs(LLUUID old_id, LLUUID new_id)
updateUserLayers(old_id, new_id, LLWearableType::WT_SKIRT);
updateUserLayers(old_id, new_id, LLWearableType::WT_SOCKS);
updateUserLayers(old_id, new_id, LLWearableType::WT_TATTOO);
updateUserLayers(old_id, new_id, LLWearableType::WT_UNIVERSAL);
updateUserLayers(old_id, new_id, LLWearableType::WT_UNDERPANTS);
updateUserLayers(old_id, new_id, LLWearableType::WT_UNDERSHIRT);
}
@ -746,7 +747,7 @@ LLAvatarAppearanceDefines::ETextureIndex LLLocalBitmap::getTexIndex(
case LLWearableType::WT_TATTOO:
{
switch(baked_texind)
switch (baked_texind)
{
case LLAvatarAppearanceDefines::BAKED_HEAD:
{
@ -764,6 +765,19 @@ LLAvatarAppearanceDefines::ETextureIndex LLLocalBitmap::getTexIndex(
result = LLAvatarAppearanceDefines::TEX_UPPER_TATTOO;
break;
}
default:
{
break;
}
}
break;
}
case LLWearableType::WT_UNIVERSAL:
{
switch (baked_texind)
{
case LLAvatarAppearanceDefines::BAKED_SKIRT:
{
result = LLAvatarAppearanceDefines::TEX_SKIRT_TATTOO;

View File

@ -97,6 +97,7 @@ enum ESubpart {
SUBPART_SKIRT,
SUBPART_ALPHA,
SUBPART_TATTOO,
SUBPART_UNIVERSAL,
SUBPART_PHYSICS_BREASTS_UPDOWN,
SUBPART_PHYSICS_BREASTS_INOUT,
SUBPART_PHYSICS_BREASTS_LEFTRIGHT,
@ -240,8 +241,9 @@ LLEditWearableDictionary::Wearables::Wearables()
addEntry(LLWearableType::WT_UNDERPANTS, new WearableEntry(LLWearableType::WT_UNDERPANTS,"edit_underpants_title","underpants_desc_text", texture_vec_t{TEX_LOWER_UNDERPANTS}, texture_vec_t{TEX_LOWER_UNDERPANTS}, subpart_vec_t{SUBPART_UNDERPANTS}));
addEntry(LLWearableType::WT_SKIRT, new WearableEntry(LLWearableType::WT_SKIRT,"edit_skirt_title","skirt_desc_text", texture_vec_t{TEX_SKIRT}, texture_vec_t{TEX_SKIRT}, subpart_vec_t{SUBPART_SKIRT}));
addEntry(LLWearableType::WT_ALPHA, new WearableEntry(LLWearableType::WT_ALPHA,"edit_alpha_title","alpha_desc_text", texture_vec_t(), texture_vec_t{TEX_LOWER_ALPHA, TEX_UPPER_ALPHA, TEX_HEAD_ALPHA, TEX_EYES_ALPHA, TEX_HAIR_ALPHA}, subpart_vec_t{SUBPART_ALPHA}));
addEntry(LLWearableType::WT_TATTOO, new WearableEntry(LLWearableType::WT_TATTOO,"edit_tattoo_title","tattoo_desc_text", texture_vec_t{TEX_HEAD_TATTOO}, texture_vec_t{TEX_LOWER_TATTOO, TEX_UPPER_TATTOO, TEX_HEAD_TATTOO, TEX_SKIRT_TATTOO, TEX_HAIR_TATTOO, TEX_EYES_TATTOO, TEX_LEFT_ARM_TATTOO,TEX_LEFT_LEG_TATTOO,TEX_AUX1_TATTOO,TEX_AUX2_TATTOO,TEX_AUX3_TATTOO}, subpart_vec_t{SUBPART_TATTOO}));
addEntry(LLWearableType::WT_PHYSICS, new WearableEntry(LLWearableType::WT_PHYSICS,"edit_physics_title","physics_desc_text", texture_vec_t(), texture_vec_t(), subpart_vec_t{SUBPART_PHYSICS_BREASTS_UPDOWN, SUBPART_PHYSICS_BREASTS_INOUT, SUBPART_PHYSICS_BREASTS_LEFTRIGHT, SUBPART_PHYSICS_BELLY_UPDOWN, SUBPART_PHYSICS_BUTT_UPDOWN, SUBPART_PHYSICS_BUTT_LEFTRIGHT, SUBPART_PHYSICS_ADVANCED}));
addEntry(LLWearableType::WT_TATTOO, new WearableEntry(LLWearableType::WT_TATTOO,"edit_tattoo_title","tattoo_desc_text", texture_vec_t{TEX_HEAD_TATTOO}, texture_vec_t{TEX_LOWER_TATTOO, TEX_UPPER_TATTOO, TEX_HEAD_TATTOO}, subpart_vec_t{SUBPART_TATTOO}));
addEntry(LLWearableType::WT_UNIVERSAL, new WearableEntry(LLWearableType::WT_UNIVERSAL, "edit_universal_title", "universal_desc_text", texture_vec_t{ TEX_SKIRT_TATTOO }, texture_vec_t{TEX_SKIRT_TATTOO, TEX_HAIR_TATTOO, TEX_EYES_TATTOO, TEX_LEFT_ARM_TATTOO, TEX_LEFT_LEG_TATTOO, TEX_AUX1_TATTOO, TEX_AUX2_TATTOO, TEX_AUX3_TATTOO }, subpart_vec_t{ SUBPART_UNIVERSAL }));
addEntry(LLWearableType::WT_PHYSICS, new WearableEntry(LLWearableType::WT_PHYSICS,"edit_physics_title","physics_desc_text", texture_vec_t(), texture_vec_t(), subpart_vec_t{SUBPART_PHYSICS_BREASTS_UPDOWN, SUBPART_PHYSICS_BREASTS_INOUT, SUBPART_PHYSICS_BREASTS_LEFTRIGHT, SUBPART_PHYSICS_BELLY_UPDOWN, SUBPART_PHYSICS_BUTT_UPDOWN, SUBPART_PHYSICS_BUTT_LEFTRIGHT, SUBPART_PHYSICS_ADVANCED}));
}
LLEditWearableDictionary::WearableEntry::WearableEntry(LLWearableType::EType type,
@ -294,7 +296,9 @@ LLEditWearableDictionary::Subparts::Subparts()
addEntry(SUBPART_UNDERPANTS, new SubpartEntry(SUBPART_UNDERPANTS, "mPelvis", "underpants", "underpants_main_param_list", "underpants_main_tab", LLVector3d(0.f, 0.f, -0.5f), LLVector3d(-1.6f, 0.15f, -0.5f),SEX_BOTH));
addEntry(SUBPART_ALPHA, new SubpartEntry(SUBPART_ALPHA, "mPelvis", "alpha", "alpha_main_param_list", "alpha_main_tab", LLVector3d(0.f, 0.f, 0.1f), LLVector3d(-2.5f, 0.5f, 0.8f),SEX_BOTH));
addEntry(SUBPART_TATTOO, new SubpartEntry(SUBPART_TATTOO, "mPelvis", "tattoo", "tattoo_main_param_list", "tattoo_main_tab", LLVector3d(0.f, 0.f, 0.1f), LLVector3d(-2.5f, 0.5f, 0.8f),SEX_BOTH));
addEntry(SUBPART_PHYSICS_BREASTS_UPDOWN, new SubpartEntry(SUBPART_PHYSICS_BREASTS_UPDOWN, "mTorso", "physics_breasts_updown", "physics_breasts_updown_param_list", "physics_breasts_updown_tab", LLVector3d(0.f, 0.f, 0.3f), LLVector3d(0.f, 0.f, 0.f),SEX_FEMALE));
addEntry(SUBPART_UNIVERSAL, new SubpartEntry(SUBPART_UNIVERSAL, "mPelvis", "universal", "universal_main_param_list", "universal_main_tab", LLVector3d(0.f, 0.f, 0.1f), LLVector3d(-2.5f, 0.5f, 0.8f), SEX_BOTH));
addEntry(SUBPART_PHYSICS_BREASTS_UPDOWN, new SubpartEntry(SUBPART_PHYSICS_BREASTS_UPDOWN, "mTorso", "physics_breasts_updown", "physics_breasts_updown_param_list", "physics_breasts_updown_tab", LLVector3d(0.f, 0.f, 0.3f), LLVector3d(0.f, 0.f, 0.f),SEX_FEMALE));
addEntry(SUBPART_PHYSICS_BREASTS_INOUT, new SubpartEntry(SUBPART_PHYSICS_BREASTS_INOUT, "mTorso", "physics_breasts_inout", "physics_breasts_inout_param_list", "physics_breasts_inout_tab", LLVector3d(0.f, 0.f, 0.3f), LLVector3d(0.f, 0.f, 0.f),SEX_FEMALE));
addEntry(SUBPART_PHYSICS_BREASTS_LEFTRIGHT, new SubpartEntry(SUBPART_PHYSICS_BREASTS_LEFTRIGHT, "mTorso", "physics_breasts_leftright", "physics_breasts_leftright_param_list", "physics_breasts_leftright_tab", LLVector3d(0.f, 0.f, 0.3f), LLVector3d(0.f, 0.f, 0.f),SEX_FEMALE));
addEntry(SUBPART_PHYSICS_BELLY_UPDOWN, new SubpartEntry(SUBPART_PHYSICS_BELLY_UPDOWN, "mTorso", "physics_belly_updown", "physics_belly_updown_param_list", "physics_belly_updown_tab", LLVector3d(0.f, 0.f, 0.3f), LLVector3d(0.f, 0.f, 0.f),SEX_BOTH));
@ -747,6 +751,7 @@ BOOL LLPanelEditWearable::postBuild()
mPanelSkirt = getChild<LLPanel>("edit_skirt_panel");
mPanelAlpha = getChild<LLPanel>("edit_alpha_panel");
mPanelTattoo = getChild<LLPanel>("edit_tattoo_panel");
mPanelUniversal = getChild<LLPanel>("edit_universal_panel");
mPanelPhysics = getChild<LLPanel>("edit_physics_panel");
mTxtAvatarHeight = mPanelShape->getChild<LLTextBox>("avatar_height");
@ -1450,6 +1455,10 @@ LLPanel* LLPanelEditWearable::getPanel(LLWearableType::EType type)
case LLWearableType::WT_TATTOO:
return mPanelTattoo;
break;
case LLWearableType::WT_UNIVERSAL:
return mPanelUniversal;
break;
case LLWearableType::WT_PHYSICS:
return mPanelPhysics;

View File

@ -167,6 +167,7 @@ private:
LLPanel *mPanelSkirt;
LLPanel *mPanelAlpha;
LLPanel *mPanelTattoo;
LLPanel *mPanelUniversal;
LLPanel *mPanelPhysics;
typedef std::map<std::string, LLAvatarAppearanceDefines::ETextureIndex> string_texture_index_map_t;

View File

@ -466,6 +466,7 @@ BOOL LLPanelOutfitEdit::postBuild()
mListViewItemTypes.push_back(new LLFilterItem(LLTrans::getString("skirt"), new LLFindActualWearablesOfType(LLWearableType::WT_SKIRT)));
mListViewItemTypes.push_back(new LLFilterItem(LLTrans::getString("alpha"), new LLFindActualWearablesOfType(LLWearableType::WT_ALPHA)));
mListViewItemTypes.push_back(new LLFilterItem(LLTrans::getString("tattoo"), new LLFindActualWearablesOfType(LLWearableType::WT_TATTOO)));
mListViewItemTypes.push_back(new LLFilterItem(LLTrans::getString("universal"), new LLFindActualWearablesOfType(LLWearableType::WT_UNIVERSAL)));
mListViewItemTypes.push_back(new LLFilterItem(LLTrans::getString("physics"), new LLFindActualWearablesOfType(LLWearableType::WT_PHYSICS)));
mCurrentOutfitName = getChild<LLTextBox>("curr_outfit_name");

View File

@ -97,6 +97,7 @@ public:
LVIT_SKIRT,
LVIT_ALPHA,
LVIT_TATTOO,
LVIT_UNIVERSAL,
LVIT_PHYSICS,
NUM_LIST_VIEW_ITEM_TYPES
} EListViewItemType;

View File

@ -138,6 +138,7 @@ LLLocalizedInventoryItemsDictionary::LLLocalizedInventoryItemsDictionary()
mInventoryItemsDict["New Skirt"] = LLTrans::getString("New Skirt");
mInventoryItemsDict["New Alpha"] = LLTrans::getString("New Alpha");
mInventoryItemsDict["New Tattoo"] = LLTrans::getString("New Tattoo");
mInventoryItemsDict["New Universal"] = LLTrans::getString("New Universal");
mInventoryItemsDict["New Physics"] = LLTrans::getString("New Physics");
mInventoryItemsDict["Invalid Wearable"] = LLTrans::getString("Invalid Wearable");

View File

@ -455,6 +455,7 @@ clothing_to_string_map_t init_clothing_string_map()
w_map.insert(std::make_pair(LLWearableType::WT_SKIRT, "skirt_not_worn"));
w_map.insert(std::make_pair(LLWearableType::WT_ALPHA, "alpha_not_worn"));
w_map.insert(std::make_pair(LLWearableType::WT_TATTOO, "tattoo_not_worn"));
w_map.insert(std::make_pair(LLWearableType::WT_UNIVERSAL, "universal_not_worn"));
w_map.insert(std::make_pair(LLWearableType::WT_PHYSICS, "physics_not_worn"));
return w_map;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 416 B

View File

@ -316,6 +316,7 @@ with the same filename but different name
<texture name="Inv_SysClosed" file_name="icons/Inv_SysClosed.png" preload="false" />
<texture name="Inv_SysOpen" file_name="icons/Inv_SysOpen.png" preload="false" />
<texture name="Inv_Tattoo" file_name="icons/Inv_Tattoo.png" preload="false" />
<texture name="Inv_Universal" file_name="icons/Inv_Universal.png" preload="false" />
<texture name="Inv_Physics" file_name="icons/Inv_Physics.png" preload="false" />
<texture name="Inv_Texture" file_name="icons/Inv_Texture.png" preload="false" />
<texture name="Inv_TrashClosed" file_name="icons/Inv_TrashClosed.png" preload="false" />

View File

@ -275,6 +275,14 @@
function="Inventory.DoCreate"
parameter="tattoo" />
</menu_item_call>
<menu_item_call
label="New Universal"
layout="topleft"
name="New Universal">
<menu_item_call.on_click
function="Inventory.DoCreate"
parameter="universal" />
</menu_item_call>
<menu_item_call
label="New Physics"
layout="topleft"

View File

@ -194,6 +194,14 @@
function="Inventory.DoCreate"
parameter="tattoo" />
</menu_item_call>
<menu_item_call
label="New Universal"
layout="topleft"
name="New Universal">
<menu_item_call.on_click
function="Inventory.DoCreate"
parameter="universal" />
</menu_item_call>
<menu_item_call
label="New Physics"
layout="topleft"

View File

@ -175,6 +175,14 @@
function="Gear.Create"
parameter="tattoo" />
</menu_item_call>
<menu_item_call
label="New Universal"
layout="topleft"
name="New Universal">
<menu_item_call.on_click
function="Gear.Create"
parameter="universal" />
</menu_item_call>
</menu>
<menu
height="85"

View File

@ -76,126 +76,7 @@
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Skirt Tattoo"
layout="topleft"
left_pad="30"
name="Skirt Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Hair Tattoo"
layout="topleft"
left="20"
name="Hair Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Eyes Tattoo"
layout="topleft"
left_pad="30"
name="Eyes Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Left Arm Tattoo"
layout="topleft"
left="20"
name="Left Arm Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Left Leg Tattoo"
layout="topleft"
left_pad="30"
name="Left Leg Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Aux1 Tattoo"
layout="topleft"
left="20"
name="Aux1 Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Aux2 Tattoo"
layout="topleft"
left_pad="30"
name="Aux2 Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Aux3 Tattoo"
layout="topleft"
left="20"
name="Aux3 Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<color_swatch
can_apply_immediately="true"

View File

@ -0,0 +1,171 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<panel
background_visible="true"
follows="all"
height="400"
layout="topleft"
left="0"
name="edit_universal_panel"
top_pad="10"
width="333" >
<scroll_container
color="DkGray2"
follows="all"
height="400"
layout="topleft"
left="9"
name="avatar_universal_scroll"
opaque="true"
top_pad="10"
width="314">
<panel
border="false"
bg_alpha_color="DkGray2"
bg_opaque_color="DkGray2"
background_visible="true"
background_opaque="true"
follows="all"
height="800"
left="10"
layout="topleft"
name="avatar_universal_color_panel"
top="0"
width="313" >
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Hair Tattoo"
layout="topleft"
left="20"
name="Hair Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Eyes Tattoo"
layout="topleft"
left_pad="30"
name="Eyes Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Left Arm Tattoo"
layout="topleft"
left="20"
name="Left Arm Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Left Leg Tattoo"
layout="topleft"
left_pad="30"
name="Left Leg Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Aux1 Tattoo"
layout="topleft"
left="20"
name="Aux1 Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Aux2 Tattoo"
layout="topleft"
left_pad="30"
name="Aux2 Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Aux3 Tattoo"
layout="topleft"
left="20"
name="Aux3 Tattoo"
tool_tip="Click to choose a picture"
top_pad="10"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<texture_picker
can_apply_immediately="true"
default_image_name="Default"
follows="left|top"
height="115"
label="Skirt Tattoo"
layout="topleft"
left_pad="30"
name="Skirt Tattoo"
tool_tip="Click to choose a picture"
top_delta="0"
width="115" >
<texture_picker.commit_callback
function="TexturePicker.Commit" />
</texture_picker>
<color_swatch
can_apply_immediately="true"
follows="left|top"
height="115"
label="Color/Tint"
layout="topleft"
left="30"
name="Color/Tint"
tool_tip="Click to open color picker"
top_pad="10"
width="115" >
<color_swatch.commit_callback
function="ColorSwatch.Commit" />
</color_swatch>
</panel>
</scroll_container>
</panel>

View File

@ -71,6 +71,10 @@
name="edit_tattoo_title">
Editing Tattoo
</string>
<string
name="edit_universal_title">
Editing Universal
</string>
<string
name="edit_physics_title">
Editing Physics
@ -135,6 +139,10 @@
name="tattoo_desc_text">
Tattoo:
</string>
<string
name="universal_desc_text">
Universal:
</string>
<string
name="physics_desc_text">
Physics:
@ -418,6 +426,16 @@
top="8"
visible="false"
width="333" />
<panel
filename="panel_edit_universal.xml"
follows="all"
height="425"
layout="topleft"
left="0"
name="edit_universal_panel"
top="8"
visible="false"
width="333" />
<panel
filename="panel_edit_physics.xml"
follows="all"

View File

@ -2209,6 +2209,7 @@ For AI Character: Get the closest navigable point to the point provided.
<string name="skirt">Skirt</string>
<string name="alpha">Alpha</string>
<string name="tattoo">Tattoo</string>
<string name="universal">Universal</string>
<string name="physics">Physics</string>
<string name="invalid">invalid</string>
<string name="none">none</string>
@ -2225,6 +2226,7 @@ For AI Character: Get the closest navigable point to the point provided.
<string name="skirt_not_worn">Skirt not worn</string>
<string name="alpha_not_worn">Alpha not worn</string>
<string name="tattoo_not_worn">Tattoo not worn</string>
<string name="universal_not_worn">Universal not worn</string>
<string name="physics_not_worn">Physics not worn</string>
<string name="invalid_not_worn">invalid</string>
@ -2244,6 +2246,7 @@ For AI Character: Get the closest navigable point to the point provided.
<string name="create_new_skirt">Create new skirt</string>
<string name="create_new_alpha">Create new alpha</string>
<string name="create_new_tattoo">Create new tattoo</string>
<string name="create_new_universal">Create new universal</string>
<string name="create_new_physics">Create new physics</string>
<string name="create_new_invalid">invalid</string>
@ -3805,6 +3808,7 @@ Abuse Report</string>
<string name="New Skirt">New Skirt</string>
<string name="New Alpha">New Alpha</string>
<string name="New Tattoo">New Tattoo</string>
<string name="New Universal">New Universal</string>
<string name="New Physics">New Physics</string>
<string name="Invalid Wearable">Invalid Wearable</string>
<string name="New Gesture">New Gesture</string>