Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Derplib command file
- var MM = module.parent,
- commands = MM.plugin.load('commands'),
- db = MM.plugin.load('database'),
- utils = MM.libary.load('utils'),
- DerpLib = MM.parent,
- _ = require('underscore');
- commands.register({
- key: 'mods',
- access: 1,
- run: function(req){
- var owner = [],
- mods = [],
- all = {};
- var pm = _.find(MM.parent._data.pms, function(pm){
- return pm._sock && pm._sock._connected;
- });
- setTimeout(function(){
- if(pm){
- pm.addfreind(req.room.admin);
- pm.on('frame_wladd', function(frame){
- var _frame = utils.parseContact(frame.state, frame.time);
- if(_frame.state == 'online'){
- all[frame.name] = {name: frame.name, rank: 'admin', status: _frame.state};
- }else if(_frame.state == 'offline'){
- all[frame.name] = {name: frame.name, rank: 'admin', status: _frame.state};
- }else if(_frame.state == 'idle'){
- all[frame.name] = {name: frame.name, rank: 'admin', status: _frame.state};
- }else{
- all[frame.name] = {name: frame.name, rank: 'admin'};
- }
- });
- }else{
- all[req.room.admin] = {name: req.room.admin, rank: 'admin'};
- }
- _.each(req.room.mods, function(user){
- if(pm){
- pm.addfreind(user);
- pm.on('frame_wladd', function(frame){
- if(!(frame.name == req.room.admin)){
- var _frame = utils.parseContact(frame.state, frame.time);
- if(_frame.state == 'online'){
- all[frame.name] = {name: frame.name, rank: 'mod', status: _frame.state};
- }else if(_frame.state == 'offline'){
- all[frame.name] = {name: frame.name, rank: 'mod', status: _frame.state};
- }else if(_frame.state == 'idle'){
- all[frame.name] = {name: frame.name, rank: 'mod', status: _frame.state};
- }else{
- all[frame.name] = {name: frame.name, rank: 'mod'};
- }
- }
- });
- }else{
- if(!(req.room.admin == user)){
- all[user] = {name: user, rank: 'mod'};
- }
- }
- });
- if(pm){
- setTimeout(function(){
- _.each(all, function(user){
- if(user.rank == 'mod'){
- if(user.name == req.room._accountLC){
- mods.push("<font color=\"#cc00ff\">"+user.name+"</font>");
- }else if(user.status == 'online'){
- mods.push("<font color=\"#cc00ff\">"+user.name+"</font>");
- }else if(user.status == 'offline'){
- mods.push("<font color=\"#ff0000\">"+user.name+"</font>");
- }else if(user.status == 'idle'){
- mods.push("<font color=\"#00ffff\">"+user.name+"</font>");
- }else{
- mods.push("<font color=\"#666666\">"+user.name+"</font>");
- }
- }else if(user.rank == 'admin'){
- if(user.name == req.room._accountLC){
- owner.push("<font color=\"#cc00ff\">"+user.name+"</font>");
- }else if(user.status == 'online'){
- owner.push("<font color=\"#cc00ff\">"+user.name+"</font>");
- }else if(user.status == 'offline'){
- owner.push("<font color=\"#ff0000\">"+user.name+"</font>");
- }else if(user.status == 'idle'){
- owner.push("<font color=\"#00ffff\">"+user.name+"</font>");
- }else{
- owner.push("<font color=\"#666666\">"+user.name+"</font>");
- }
- }
- });
- }, 800);
- }else{
- setTimeout(function(){
- _.each(req.room.mods, function(user){
- mods.push("<font color=\"#666666\">"+user+"</font>");
- });
- owner.push("<font color=\"#666666\">"+req.room.admin+"</font>");
- }, 800);
- }
- setTimeout(function(){
- req.write("Owner: "+owner+" \r <font colot=\"#edf345\">Mods: </font>"+mods.join('<font colot=\"#edf345\">, </font>')+" \r <font color=\"#00ffff\">Idle</font> <font color=\"#ff0000\">Offline</font> <font color=\"#cc00ff\">Online</font> <font color=\"#666666\">Unknown (usually because its not connected to the pms)</font>");
- }, 1200);
- }, 400);
- },
- });
Advertisement
Add Comment
Please, Sign In to add comment