- prontera,155,88,0 script VIP Stats Checker 910,{
- query_sql "SELECT `char`.account_id,`name`,SUM(online) AS online, " +
- "`value`-UNIX_TIMESTAMP() AS secs_left " +
- "FROM global_reg_value LEFT JOIN `char` ON global_reg_value.account_id=`char`.account_id " +
- "WHERE global_reg_value.str='#VIP_expire' AND CAST(`value` AS UNSIGNED) > UNIX_TIMESTAMP() " +
- "GROUP BY `char`.account_id " +
- "ORDER BY CAST(`value` AS SIGNED) ASC LIMIT 128",
- .@account_id, .@name$, .@online, .@secs_left;
- mes "[ VIP Stats Checker]";
- mes "We have "+getarraysize(.@account_id)+" "+((getarraysize(.@account_id)==1)?"VIP":"VIPs")+" in <ServerName>";
- mes " ";
- for (set .@i,0; .@i<getarraysize(.@account_id); set .@i,.@i+1) {
- if (.@online[.@i])
- mes (.@i+1)+". ^008000"+rid2name(.@account_id[.@i])+"^000000 - "+callsub(S_Time2Str,.@secs_left[.@i])+" left";
- else
- mes (.@i+1)+". ^FF0000"+.@name$[.@i]+"^000000 - "+callsub(S_Time2Str,.@secs_left[.@i])+" left";
- }
- close;
- // converts seconds to d,h,m,s string
- S_Time2Str:
- set .@Time_Left, getarg(0);
- set .@Days, .@Time_Left / 86400;
- set .@Time_Left, .@Time_Left - (.@Days * 86400);
- set .@Hours, .@Time_Left / 3600;
- set .@Time_Left, .@Time_Left - (.@Hours * 3600);
- set .@Minutes, .@Time_Left / 60;
- set .@Time_Left, .@Time_Left - (.@Minutes * 60);
- if( .@Days > 0 )
- set .@Time$, .@Time$ + .@Days + "d ";
- if( .@Hours > 0 )
- set .@Time$, .@Time$ + .@Hours + "h ";
- if( .@Minutes > 0 )
- set .@Time$, .@Time$ + .@Minutes + "m";
- return .@Time$;
- }
VIP Status Checker
Posted by Anonymous on Wed 26th Oct 2011 07:33
raw | new post
view followups (newest first): VIP Status Checker by Anonymous
Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.
eathena.kpaste.net RSS