// -------------------------------------------------------------------------------- TextureMod Installer for M28
// In most cases, this script SHOULD NOT be distributed or sold with FULL PERMISSION. The valuable asset texture
// UUID is intercepted.
//
// rewrite the necessary UUID
key BOD = "268609e0-74d5-166b-7fa8-319f7996501f";
key CC = "5b21c2d2-53f0-3f7a-8030-b4a3ba748dd0";
key CS = "ff2d14dc-7e59-be3c-d111-9f3260e26269";
key FC = "0fb35125-ff14-7a55-9795-916a7f8b7a72";
key FSM = "2a490b69-5a1c-1f63-64c0-aefe9ec0bea8"; // <--- for metal parts of FS
key FSW = "ce044afa-eee9-0597-b808-6c14b1dad20c"; // <--- for wood parts of FS
key LL = "0f135360-f598-9685-0243-4f63f9bc078b";
key NP = "1b0b66e2-0cf9-cd04-b0d0-c15dbb763a44";
key R = "6f5445af-9c9b-c617-a098-3768de982a23";
key RE = "386f27ef-4959-2ebf-72c0-977b71d77bf6";
key RT = "c0ac66a2-5786-57ca-81e7-89ce7adebbe0";
// --------------------------------------------------------------------------- you do not need to fix below this
default{
state_entry(){
if (llGetObjectPrimCount(llGetKey()) > 10){
string str = llGetSubString((string)llGetKey(), 0, 3);
integer ch = -1 - (integer)("0x" + str);
llListen(ch, "", llGetOwner(), "");
llDialog(llGetOwner(), "Install ?", ["YES", "NO"], ch);
}
}
listen(integer channel, string name, key id, string str){
if (str == "YES"){
integer i;
integer end = llGetObjectPrimCount(llGetKey()) + 1;
string name;
list params;
vector repeat = <1.0, 1.0, 0.0>;
for (i=2; i<end; i++){
name = llGetLinkName(i);
if (name == "BOD"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, 1, BOD, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, 1, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "CC"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, 0, CC, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_TEXTURE, 1, CS, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, ALL_SIDES, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "CS"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, 0, CS, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, 0, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "FC"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, 0, FC, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, 0, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "FS"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, 0, FSM, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_TEXTURE, 1, FSW, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, ALL_SIDES, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "LL"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, ALL_SIDES, LL, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, ALL_SIDES, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "LR"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, ALL_SIDES, LL, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, ALL_SIDES, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "NP"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, 1, NP, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, 1, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "R"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, ALL_SIDES, R, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, ALL_SIDES, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "RE"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, ALL_SIDES, RE, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, ALL_SIDES, PRIM_ALPHA_MODE_NONE, 0];
}
else if (name == "RT"){
params += [PRIM_LINK_TARGET, i, PRIM_TEXTURE, 0, RT, repeat, ZERO_VECTOR, 0.0];
params += [PRIM_ALPHA_MODE, 0, PRIM_ALPHA_MODE_NONE, 0];
}
}
llSetLinkPrimitiveParamsFast(1, params);
llRemoveInventory(llGetScriptName());
}
}
on_rez(integer start_param){
llResetScript();
}
}