Master Changer PRO – Manual

The ultimate prim changer script for your objects. More then 20 functions.

The Master Changer PRO is a all-in-on script that lets you change the texture, color, size, etc of your object. It can change one prim, all prims or prims based on there name. By using the name function you can link multiple prims together and change all prims that have a specific name. This means that you only need one Master Changer PRO script in your object regardless of how many prims.

It even comes with a customizable merge script that lets you remove scripts. So if you for example have a fence (containing the Master Changer PRO) and people link multiple fences together it can remove all the unnecessary scripts (since only 1 Master Change PRO would be needed to change all linked fences).

The Master Changer PRO works with link messages (on a customizable link number). To for example change the color of the prim (containing the script) all you would need to do is:
llMessageLinked(LINK_THIS, link_number, “mc_color # -4 # <1.0, 1.0, 0.0> # -1”, “”);

Master Menu PRO Integration

The Master Change PRO is easily integrated with the Master Menu PRO. It automatically takes over the “settings:link_number” setting from the Master Menu PRO _Config script.

To use the Master Changer PRO in your Master Menu PRO all you need to do is add the lines to your Master Menu PRO _Config script. To for example change the color you would do:
“menu:color:Red = link,re | mc_color # -1 # <1.0, 0.0, 0.0> # -1”

llMessageLinked

The Master Changer PRO comes with a Link Example script that contains all 20+ functions that you can use as a reference. Before you start make sure you are familiar with using llMessageLinked(): https://wiki.secondlife.com/wiki/LlMessageLinked

To use the Master Changer PRO script the first thing you need to do is to let it know what link number to use. This will be the link_number on which you send message to the script.

You send the link number to the Master Changer PRO using the following:
string link_number = 1542;
llMessageLinked(LINK_THIS, 350428, “data#¿ñ^$#settings:link_number = “+(string)link_number, “d68c6f80c8c037e9cd281d12f5cbf5a1”);

Note that the script starts with a llSleep(1);. This delays the script by 1 seconds to make sure that the Master Changer PRO script is fully loaded before sending the link message.

If you are using the Master Menu PRO you can skip this as it will automatically takeover the settings from the Master Menu PRO.

Functions

All functions start with mc_ and the data is separated using a #.
Ex.: llMessageLinked(LINK_THIS, link_number, “mc_color # -4 # <1.0, 1.0, 0.0> # -1″, “”);

The prim may consist of a prim number, flag or name. Its recommended to use a flag or name as link numbers may change. Flags are negative numbers that refer to LINK_SET, LINK_THIS, etc and names refer to the actual name of the prim in a link-set.

The face is the face number or -1 for ALL_SIDES.

mc_color (Set the color of a prim)
mc_color # prim # color_vector # face
llMessageLinked(LINK_THIS, link_number, “mc_color # -4 # <1.0, 1.0, 0.0> # -1”, “”);

mc_scale (Change the scale/size of the object. 1.1 = 110% )
mc_scale # float
llMessageLinked(LINK_THIS, link_number, “mc_scale # 1.1”, “”);

mc_size (Change the size of a prim)
mc_size # prim # size_vector
llMessageLinked(LINK_THIS, link_number, “mc_size # -4 # <0.5,0.5,0.5>”, “”);

mc_texture (Set the texture of a prim)
mc_texture # prim # texture # face
llMessageLinked(LINK_THIS, link_number, “mc_texture # -4 # 361d45d9-803d-c6ea-7158-4eed2c6a84a0 # -1”, “”);

mc_texture+ (Set the texture of a prim including repeats, offset and rotation)
mc_texture+ # prim # face # texture # repeats # offsets # rotation
llMessageLinked(LINK_THIS, link_number, “mc_texture+ # -4 # -1 # 361d45d9-803d-c6ea-7158-4eed2c6a84a0 # <1,1,1> # <0,0,0> # 90.0”, “”);

mc_alpha (Set the alpha of a prim. 1.0 = solid, 0.0 = invisible)
mc_alpha # prim # alpha
llMessageLinked(LINK_THIS, link_number, “mc_alpha # -4 # 0.5”, “”);

mc_glow (Set the glow of a prim)
mc_glow # prim # face # glow
llMessageLinked(LINK_THIS, link_number, “mc_glow # -4 # -1 # 0.05”, “”);

mc_bright (Set a prim to full bright)
mc_bright # prim # face # bright (1 = On, 0 = Off)
llMessageLinked(LINK_THIS, link_number, “mc_bright # -4 # -1 # 1”, “”);

mc_light (Set light on a prim)
mc_light # prim # light (1 = On, 0 = Off) # linear_color # intensity # radius # falloff
llMessageLinked(LINK_THIS, link_number, “mc_light # -4 # 1 # <1,0,0> # 1.0 # 5.0 # 0.75”, “”);

mc_material (Features / Material)
mc_material # prim # material
https://wiki.secondlife.com/wiki/PRIM_MATERIAL
llMessageLinked(LINK_THIS, link_number, “mc_material # -4 # 0”, “”);

mc_normal (Texture / Bumpiness)
mc_normal # prim # face # shiny # bump
https://wiki.secondlife.com/wiki/PRIM_BUMP_SHINY
llMessageLinked(LINK_THIS, link_number, “mc_normal # -4 # -1 # 2 # 5”, “”);

mc_normal2 (Texture / Bumpiness) (Update v1.46, 16 Jan 2023)
mc_normal2 # prim # face # texture # repeats # offsets # rotation
llMessageLinked(LINK_THIS, link_number, “mc_normal2 # -4 # -1 # 361d45d9-803d-c6ea-7158-4eed2c6a84a0 # <1.0, 1.0, 0.0> # <0.0, 0.0, 0.0> # 0.0”, “”);

mc_specular (Texture / Shininess)
mc_specular # prim # face # texture # repeats # offsets # rotation # specular_color # glossiness # environment
llMessageLinked(LINK_THIS, link_number, “mc_specular # -4 # -1 # 361d45d9-803d-c6ea-7158-4eed2c6a84a0 # <1,1,1> # <0,0,0> # 0.0 # <1,0,0> # 51 # 0”, “”);

mc_rotate (Make the object rotate)
mc_rotate # axis # spinrate
llMessageLinked(LINK_THIS, link_number, “mc_rotate # <1,0,0> # 0.2”, “”);

mc_anim (Set a animated texture on a prim. Sliding animation)
mc_anim # prim # face # sizey # sizex # start # length # rate
llMessageLinked(LINK_THIS, link_number, “mc_anim # -4 # -1 # 1 # 1 # 1 # 1.0 # 0.2”, “”);
llMessageLinked(LINK_THIS, link_number, “mc_anim # -4 # off”, “”);
Note: you can only have 1 animation per prim

mc_animrot (Rotating animation)
mc_animrot # prim # face # sizey # sizex # start # length # rate
llMessageLinked(LINK_THIS, link_number, “mc_animrot # -4 # -1 # 1 # 1 # 1 # 1.0 # 0.2”, “”);

mc_animscale (Zoom in and out animation)
mc_animscale # prim # face # sizey # sizex # start # length # rate
llMessageLinked(LINK_THIS, link_number, “mc_animscale # -4 # -1 # 1 # 1 # 1 # 1.0 # 0.2”, “”);

mc_projector (Features / Light / FOV)
mc_projector # prim # texture # fov # focus # ambiance
llMessageLinked(LINK_THIS, link_number, “mc_projector # -4 # 361d45d9-803d-c6ea-7158-4eed2c6a84a0 # 1.5 # 0.0 # 0.0”, “”);

mc_sound (Play a sound)
mc_sound # sound # volume
llMessageLinked(LINK_THIS, link_number, “mc_sound # 900bdb8a-a208-1c9b-c08e-c67016bf3069 # 1.0”, “”);

mc_url (Give a URL dialog)
mc_url # target_uuid # text # url
llMessageLinked(LINK_THIS, link_number, “mc_url # target_uuid # Visit BobsCreations.com # http://www.bobscreations.com”, “”);

mc_inventory (Give a item)
mc_inventory # target_uuid # item
llMessageLinked(LINK_THIS, link_number, “mc_inventory # target_uuid # BobsCreations Main Store”, “”);

mc_im (Send a IM)
mc_im # target_uuid # text
llMessageLinked(LINK_THIS, link_number, “mc_im # target_uuid #[nl]Hi there [name],[nl]how are you today?”, “”);

mc_msg (Send a message)
mc_msg # target_uuid # text
llMessageLinked(LINK_THIS, link_number, “mc_msg # target_uuid #[nl]Hi there [name],[nl]how are you today?”, “”);

mc_kill (Remove everything in the contents of the prim)
mc_kill # 1 (warning this deletes all contents from the prim)
llMessageLinked(LINK_THIS, link_number, “mc_kill # 1 “, “”);

mc_noscript (Makes a HUD work on land where scripts are disabled)
mc_noscript # 1
llMessageLinked(LINK_THIS, link_number, “mc_noscript # 1 “, “”);
(Update v1.48, 16 Jan 2024)
mc_noscript # 2 (activate no-script on any attachment, “1” only activates no-script on HUDs)

mc_minimize (Makes a HUD minimize / rotate)
mc_minimize # rotation_vector # scale_prim_name # x, y or z
llMessageLinked(LINK_THIS, link_number, “mc_minimize # <0,0,90> # min # y “, “”);

mc_maximize (Makes a HUD maximize / set rotation to 0)
mc_maximize # scale_prim_name # x, y, z or reset
llMessageLinked(LINK_THIS, link_number, “mc_maximize # min # y “, “”);
llMessageLinked(LINK_THIS, link_number, “mc_maximize # min # reset “, “”);

More functions?

Missing a function? Feel free to contact me and and i will look into adding it in a update.
Also make sure you check out the included examples as they add more features by combining the above funcions.