Advertisement
Ugleh

HTML2RGB

Apr 17th, 2012
172
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. integer hex2int(string hex) {
  2.     if(llGetSubString(hex,0,1) == "0x")
  3.         return (integer)hex;
  4.     if(llGetSubString(hex,0,0) == "x")
  5.         return (integer)("0"+hex);
  6.     return(integer)("0x"+hex);
  7. }
  8.  
  9. string substuff(float number){
  10.     return llGetSubString((string)number,0,llSubStringIndex((string)number,".")+2);
  11. }
  12. list html2rgb(string color){
  13.     string r;
  14.     string g;
  15.     string b;
  16.  
  17.     if(llGetSubString(color, 0, 0) == "#")
  18.         color = llGetSubString(color, 1,-1);
  19.     if (llStringLength(color) == 6){
  20.         r = (string)llGetSubString(color, 0,0) + (string)llGetSubString(color, 1,1);
  21.         g = (string)llGetSubString(color, 2,2) + (string)llGetSubString(color, 3,3);
  22.         b = (string)llGetSubString(color, 4,4) + (string)llGetSubString(color, 5,5);
  23.     }else if (llStringLength(color) == 3){
  24.             r = (string)llGetSubString(color, 0,0) + (string)llGetSubString(color, 0,0);
  25.         g = (string)llGetSubString(color, 1,1) + (string)llGetSubString(color, 1,1);
  26.         b = (string)llGetSubString(color, 2,2) + (string)llGetSubString(color, 2,2);
  27.     }else{
  28.             return [];
  29.     }
  30.     r = (string)hex2int(r);
  31.     g = (string)hex2int(g);
  32.     b = (string)hex2int(b);
  33.     return [r,g,b];
  34. }
  35.  
  36. default
  37. {
  38.     state_entry()
  39.     {
  40.         string HTMLHEXCOLOR = "#00FF4C";
  41.         list RGB = html2rgb(HTMLHEXCOLOR);
  42.         string r = llList2String(RGB, 0);
  43.         string g = llList2String(RGB, 1);
  44.         string b = llList2String(RGB, 2);
  45.  
  46.         llOwnerSay("HTML RGB("+llList2CSV(RGB)+")\nSecond Life RGB("+substuff(((float)r/255.0))+", "+substuff(((float)g/255.0))+", "+substuff(((float)b/255.0))+")");
  47.     }
  48.  
  49.     touch_start(integer total_number)
  50.     {
  51.         llSay(0, "Touched.");
  52.     }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement