Script Snippets

Discussion in 'Server and Client Scripting' started by Astruvis, Jun 29, 2010.

  1. Astruvis

    Astruvis Banned

    Joined:
    May 14, 2010
    Messages:
    217
    Likes Received:
    0
    IP lookup:
    Code (javascript):
    1. lookUpIP : function(name) {
    2.     var playerlist = sys.getFileContent("members.txt");
    3.     playerlist = playerlist.split('\n');
    4.     for (var player in playerlist){
    5.         var playerinfo = playerlist[player].split('%');
    6.         if (playerinfo[0].toLowerCase() == name.toLowerCase()) {
    7.             return(playerinfo[5].replace(/ /g,'')); }
    8.         }
    9.     return(undefined);
    10.     }
    Auth lookup:
    Code (javascript):
    1. lookUpAuth : function(name) {
    2.     var playerlist = sys.getFileContent("members.txt");
    3.     playerlist = playerlist.split('\n');
    4.     for (var player in playerlist){
    5.         var playerinfo = playerlist[player].split('%');
    6.         if (playerinfo[0].toLowerCase() == name.toLowerCase()) {
    7.             return(playerinfo[2].replace(/ /g,'').charAt(0)*1); }
    8.         }
    9.     return(undefined);
    10.     }
    Rank array:
    Code (javascript):
    1.         if (typeof rank == "undefined") {
    2.             rank = new Array();
    3.             rank[0] = 'a user';
    4.             rank[1] = 'a moderator';
    5.             rank[2] = 'an admin';
    6.             rank[3] = 'an owner'; }
    Server commands(in message event)
    Code (javascript):
    1.     if (message.indexOf('~~Server~~: /') == 0 || message.indexOf('~~Server~~: !') == 0) {
    2.         var pos = message.indexOf(' ');
    3.         var serverdata = message.substr(pos+1);
    4.         pos = serverdata.indexOf(' ');
    5.         command = serverdata.substring(1, pos);
    6.         var command;
    7.         var commandData;
    8.         var pos = serverdata.indexOf(' ');
    9.         var mcmd = new Array();
    10.         var tar = sys.id(mcmd[0]);
    11.         if (pos != -1) {
    12.             commandData = serverdata.substr(pos+1);
    13.             mcmd = commandData.split(':'); }
    14.         var tar = sys.id(mcmd[0]);
    15.         if (command == 'auth' && typeof tar != 'undefined') {
    16.             sys.changeAuth(tar, mcmd[1]);}
    Mail:
    Code (javascript):
    1.         if (command == "sendmail" || command == "smail" || command == "mail") {
    2.             var mail;
    3.             if (mcmd[1] == undefined) {
    4.             sys.sendMessage(src, "~~MailBox~~: Error: No content! Message was not sent!");
    5.             print('*CMD ERROR: No content.')
    6.             return; }
    7.             mail = mcmd[1];
    8.             if (mail.indexOf('+') == -1) {
    9.                 sys.saveVal('msgque' + mcmd[0].toLowerCase(),sys.getVal('msgque' + mcmd[0].toLowerCase()) + ' + Message from ' + sys.name(src) + ": " + mail);
    10.                 var rcv = sys.id(mcmd[0]);
    11.                 sys.sendMessage(src, "~~MailBox~~: Message sent to user " + mcmd[0] + "!");
    12.                 if (rcv != undefined) {
    13.                     sys.sendMessage(rcv,"~~MailBox~~: New message, type /readmail to view your inbox.");
    14.                     }
    15.             } else {
    16.                 sys.sendMessage(src, "~~MailBox~~: Error: The + symbol can not be used in mail! Message was not sent!");
    17.                 print('*CMD ERROR: Illegal Content.');}
    18.             return; }
    19.         if (command == "readmail" || command == "rmail") {
    20.             var msg = new Array();
    21.             msg = sys.getVal('msgque' + sys.name(src).toLowerCase()).split('+');
    22.             var length = (sys.getVal('msgque' + sys.name(src).toLowerCase()).split('+').length - 1);
    23.             sys.sendMessage(src,'~~MailBox~~: Here are your messages:');
    24.             for (i = 1; i <= length; i++)
    25.             {sys.sendMessage(src,msg[i]); }
    26.             sys.sendMessage(src,'~~MailBox~~: End of messages.');  
    27.             sys.sendMessage(src,'~~MailBox~~: Use /deletemail to clear your inbox. Use "/sendmail USERNAME:MESSAGE" to send a message to another user.');
    28.             return; }
    29.         if (command == "deletemail" || command == "dmail") {
    30.             sys.removeVal('msgque' + sys.name(src).toLowerCase());
    31.             sys.sendMessage(src, "~~Mailbox~~: Mail deleted!");
    32.             return; }
    Userloop(make sure to set numUsers):
    Code (javascript):
    1.                 var cnt = numUsers;
    2.                 var user = 0;
    3.                 while(user < cnt && user < 500) {
    4.                      if (sys.loggedIn(user) == true) {
    5.                         if (condition == true) {
    6.                             this.statement(user); }
    7.                     } else {
    8.                         cnt += 1;}
    9.                     user += 1; }
    Commands:
    Code (javascript):
    1.     if ((message[0] == '/' || message[0] == '!') && message.length > 1) {
    2.         print("*Command -- " + sys.name(src) + ": " + message);
    3.         sys.stopEvent();
    4.         var command;
    5.         var commandData;
    6.         var pos = message.indexOf(' ');
    7.         var mcmd = new Array();
    8.         if (pos != -1) {
    9.             command = message.substring(1, pos).toLowerCase();
    10.             commandData = message.substr(pos+1);
    11.             mcmd = commandData.split(':'); }
    12.          else
    13.             { command = message.substr(1).toLowerCase(); }
    14.         var tar = sys.id(mcmd[0]);
     
  2. nesan

    nesan Love is blind

    Joined:
    Jun 13, 2010
    Messages:
    241
    Likes Received:
    0
    Are you planning on adding more? O_o
    This could help me learn! ^_^
     
  3. Astruvis

    Astruvis Banned

    Joined:
    May 14, 2010
    Messages:
    217
    Likes Received:
    0
    Yes of course.
     
  4. eric the espeon

    eric the espeon is an espeon.

    Joined:
    Apr 21, 2010
    Messages:
    854
    Likes Received:
    1
    these look pretty handy.
     
  5. Astruvis

    Astruvis Banned

    Joined:
    May 14, 2010
    Messages:
    217
    Likes Received:
    0
    Snippet for blocking cuss words from names:
    Add to afterlogin and afterchange team:

    Code (javascript):
    1. this.checkName(src);
    Add this event(pm me if you want an extensive list):
    Code (javascript):
    1. clean : function(str) {
    2.     return (str.replace(/blockedword1/gi,'****').replace(/blockedword2/gi,'****')); }
    And this one:
    Code (javascript):
    1. checkName : function(src) {
    2.     if (this.clean(sys.name(src)) != sys.name(src)) {
    3.         sys.sendMessage(src,'Invalid name. Change your name.');
    4.         sys.kick(src);
    5.         return; }
    6.     }