Initial upload
Initial upload
This commit is contained in:
104
module/nss/setmulticolor.nss
Normal file
104
module/nss/setmulticolor.nss
Normal file
@@ -0,0 +1,104 @@
|
||||
//Script Name: setrandomcolor
|
||||
//////////////////////////////////////////
|
||||
//Created by: Genisys / Guile
|
||||
//ON: 6/17/08
|
||||
/////////////////////////////////////////
|
||||
/* **Notes**
|
||||
|
||||
This script goes in the Action Taken
|
||||
of a Converstion Line ONLY! It will
|
||||
colorize ALL Of the items in a PCs
|
||||
inventory a random color, each item a
|
||||
different color!
|
||||
*/
|
||||
////////////////////////////////////////
|
||||
|
||||
//WARNING: DON'T TOUCH THE STRINGS BELOW!!!!!!////
|
||||
const string COLORTOKEN = " ##################$%&'()*+,-./0123456789:;;==?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[[]^_`abcdefghijklmnopqrstuvwxyz{|}~~<7E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>";
|
||||
|
||||
// returns a properly color-coded string based on specified RGB values
|
||||
string ColorString(int nRed=255, int nGreen=255, int nBlue=255)
|
||||
{
|
||||
return "<c" + GetSubString(COLORTOKEN, nRed, 1) + GetSubString(COLORTOKEN, nGreen, 1) + GetSubString(COLORTOKEN, nBlue, 1) + ">";
|
||||
}
|
||||
|
||||
//Main Script//
|
||||
|
||||
void main()
|
||||
{
|
||||
|
||||
//Define Major Variables
|
||||
object oPC = GetPCSpeaker() ;
|
||||
object oItem;
|
||||
string sColor;
|
||||
int a;
|
||||
int b;
|
||||
int c;
|
||||
|
||||
oItem = GetFirstItemInInventory(oPC);
|
||||
//Loop through all the items in the PC's inventory..
|
||||
while(GetIsObjectValid(oItem)==TRUE)
|
||||
{
|
||||
|
||||
//Be careful with items with a color string already on them!!!
|
||||
if(GetSubString(GetName(oItem), 0, 2)=="<c")
|
||||
{
|
||||
a = Random(255); b = Random(255); c = Random(255);
|
||||
//This color value will change EVERY time an item is selected.
|
||||
sColor = ColorString(a,b,c);
|
||||
|
||||
//Get the actual name of the item minus the color code..
|
||||
string sName = GetSubString(GetName(oItem), 6, 40);
|
||||
//Set the color to the item's name
|
||||
SetName(oItem, sColor + sName);
|
||||
}
|
||||
//Since there is no color tag on the item's name give it one..
|
||||
else
|
||||
{
|
||||
a = Random(255); b = Random(255); c = Random(255);
|
||||
//This color value will change EVERY time an item is selected.
|
||||
sColor = ColorString(a,b,c);
|
||||
|
||||
//Set the random color to the item's name..
|
||||
SetName(oItem, sColor + GetName(oItem));
|
||||
}
|
||||
|
||||
//Get all of the items!
|
||||
oItem = GetNextItemInInventory(oPC);
|
||||
}
|
||||
|
||||
//Next cycle through all items equipped by the PC///
|
||||
int nSlot;
|
||||
|
||||
for (nSlot=0; nSlot<NUM_INVENTORY_SLOTS; nSlot++)
|
||||
{
|
||||
oItem=GetItemInSlot(nSlot, oPC);
|
||||
|
||||
//Be careful with items with a color string already on them!!!
|
||||
if(GetSubString(GetName(oItem), 0, 2)=="<c")
|
||||
{
|
||||
a = Random(255); b = Random(255); c = Random(255);
|
||||
//This color value will change EVERY time an item is selected.
|
||||
sColor = ColorString(a,b,c);
|
||||
|
||||
//Get the actual name of the item minus the color code..
|
||||
string sName2 = GetSubString(GetName(oItem), 6, 40);
|
||||
//Set the color to the item's name
|
||||
SetName(oItem, sColor + sName2);
|
||||
}
|
||||
//Since there is no color tag on the item's name give it one..
|
||||
else
|
||||
{
|
||||
a = Random(255); b = Random(255); c = Random(255);
|
||||
//This color value will change EVERY time an item is selected.
|
||||
sColor = ColorString(a,b,c);
|
||||
|
||||
//Set the random color to the item's name..
|
||||
SetName(oItem, sColor + GetName(oItem));
|
||||
}
|
||||
|
||||
//end loop
|
||||
}
|
||||
|
||||
//End Script
|
||||
}
|
||||
Reference in New Issue
Block a user