Advertisement
salahzar

Leaderboard V1.0 mesh

May 15th, 2016
235
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. key handle;
  2. string URL = "http://edmondo-1252.appspot.com/?";
  3. string SESSION = "42061b74-9603-4e7a-af22-c4a868410dc0";
  4.  
  5. debug(string s) {
  6.    // llOwnerSay("DEBUG:"+s);
  7. }
  8.  
  9. show(integer row, string line) {
  10.     llMessageLinked(LINK_SET,(row+1)*1000,line,NULL_KEY);
  11. }
  12.  
  13. clear() {
  14.     debug("clearing");
  15.     integer i;
  16.     for(i=0;i<20;i++) {
  17.         show(i,"");
  18.     }
  19. }
  20.  
  21. httprequest(string cmd) {
  22.     //show(9,"     (refreshing...)   ");
  23.     debug("httprequest");
  24.     string url = URL + "type=" + cmd + "&session="+SESSION;
  25.     debug("url="+url);
  26.     list parm = [ HTTP_MIMETYPE, "text/plain; charset=UTF-8",
  27.         HTTP_BODY_MAXLENGTH, 32000 ];
  28.     string body = "";
  29.     handle = llHTTPRequest(url, parm, body);
  30. }
  31.  
  32. string SPACES = "                           ";
  33. string POINTS = "...........................";
  34. string format(string str,integer len,string formatType,string padding) {
  35.     integer strlen = llStringLength(str);
  36.     if(strlen>=len) return llGetSubString(str,0,len-1);
  37.     if(formatType == "L") {
  38.         return str + llGetSubString(padding, 0,len - strlen - 1);
  39.     } else {
  40.             return  llGetSubString(padding, 0,len - strlen - 1) + str;
  41.     }
  42.  
  43. }
  44.  
  45. default
  46. {
  47.     state_entry() {
  48.         clear();
  49.          httprequest("list");
  50.         llListen(1,"",llGetOwner(),"");
  51.     }
  52.     listen(integer channel, string name, key id, string message)
  53.     {
  54.         if(message=="cleardb"){
  55.             httprequest("clear");
  56.         }
  57.     }
  58.  
  59.     touch_start(integer count) {
  60.         show(9,"(refresh)");
  61.         httprequest("list");
  62.         llSleep(2);
  63.     }
  64.    
  65.     http_response(key k, integer status, list meta, string body) {
  66.         debug("status: "+(string)status);
  67.         debug("body: "+body);
  68.         clear();
  69.         list lines = llParseStringKeepNulls(body,["\n"],[]);
  70.         integer i;
  71.         for(i=0;i<(llGetListLength(lines)-1);i++){
  72.             string line = llList2String(lines,i);
  73.             debug("Line: "+line);
  74.             list array = llParseStringKeepNulls(line,[","],[]);
  75.             string name = llList2String(array,0);
  76.             string score = llList2String(array,1);
  77.             show(i,format(score,4,"R",SPACES) + " " + format(name,30,"L",SPACES));
  78.         }
  79.     }
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement