Raised This Month: $51 Target: $400
 12% 

need small modification


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
avril-lavigne
Banned
Join Date: Apr 2009
Old 12-26-2011 , 18:57   need small modification
Reply With Quote #1

I found this useful code by Hawk
PHP Code:
#include <amxmodx>
 #include <amxmisc>
 
 #define BGCOLOR "#0066CC"
 
 
new motd[5000];
 new 
motd_read_file[] = "motd_dynamic.txt";
 new 
motd_file[] = "motd.txt";
 new 
visit_vault[] = "dynamic_motd_vault.ini";
 new 
datadir[128];
 new 
total_time;
 new 
visits;
 
 public 
plugin_init()
 {
     
register_plugin("Dynamic MOTD","1.1","Hawk552");
     
     
Load_File();
     
Read_File();
     
Process_File();
     
Write_MOTD();
 }
 
 public 
client_connect(id)
 {
     if(
is_user_bot(id))
     {
         return;
     }
     
     
visits++;
     
Write_File();
     
Write_MOTD();
     
     return;
 }
 
 public 
Load_File()
 {    
     
get_datadir(datadir,127);
     
format(datadir,127,"%s/%s",datadir,visit_vault);
     
     if(!
file_exists(datadir))
     {
         
Write_File();
     }
     
     new 
line[10],len;
     
read_file(datadir,0,line,9,len);
     
     
visits str_to_num(line);
     
     
read_file(datadir,1,line,9,len);
     
     
total_time str_to_num(line);
     
     return;
 }
 
 public 
Write_File()
 {
     new 
str[10];
     
format(str,9,"%i",visits);
     
     new 
str2[10];
     
format(str,9,"%i",total_time);
     
     
write_file(datadir,str,0);
     
write_file(datadir,str2,1);
     
//
     
     
return;
 }
 
 public 
Read_File()
 {
     if(!
file_exists(motd_read_file))
     {
         new 
str[300];
         
format(str,299,"<html>^n<body bgcolor=^"%s^">^n<b>Welcome! Visitors to date: <visits><br>Server uptime: <uptime><br>Gravity: <gravity></b>^n</body>^n</html>",BGCOLOR);
         
write_file(motd_read_file,str,-1);
     }
     
     new 
i,len,motdlen;
     while(
read_file(motd_read_file,i,motd[motdlen],4999,len))
     {
         
motdlen += len;
         
i++;
     }
 }
 
 public 
Process_File()
 {    
     new 
visits_str[9];
     
format(visits_str,8,"%i",visits);
     
     new 
Float:fuptime get_gametime(), iuptime floatround(fuptime), uptime[20], gravity get_cvar_num("sv_gravity"),gravitystr[20];
     
get_time_length(iuptime,0,uptime,19);
     
format(gravitystr,19,"%d",gravity);
     
     while(
containi(motd,"<visits>") != -1)
     {
         
replace(motd,4999,"<visits>",visits_str);
     }
     
     while(
containi(motd,"<uptime>") != -1)
     {
         
replace(motd,4999,"<uptime>",uptime);
     }
     
     while(
containi(motd,"<gravity>") != -1)
     {
         
replace(motd,4999,"<uptime>",gravitystr);
     }
 }
 
 public 
Write_MOTD()
 {
     if(
file_exists(motd_file) && !delete_file(motd_file))
     {
         
log_amx("Unable to modify motd.txt. Please check for write protection.");
         return;
     }
     
     
write_file(motd_file,motd,-1);
 }
 
 
// **********************************************
 // Thanks to Brad for everything below here
 // **********************************************
 
 #define TIMEUNIT_SECONDS 0
 #define TIMEUNIT_MINUTES 1
 #define TIMEUNIT_HOURS   2
 #define TIMEUNIT_DAYS    3
 #define TIMEUNIT_WEEKS   4
 
 // define how many seconds are in each time unit
 #define SECONDS_IN_MINUTE 60
 #define SECONDS_IN_HOUR   3600
 #define SECONDS_IN_DAY    86400
 #define SECONDS_IN_WEEK   604800
 
 
stock get_time_length(iTimeUnitsiUnitTypecOutput[], iOutputLen)
 {
     
// iUnits:     The number of time units you want translated into verbose text.
     // iUnitType:  The type of unit (i.e. seconds, minutes, hours, days, weeks) that you are passing in.  See the defines for TIMEUNIT_.
     // cOutput:    The variable you want the verbose text to be placed in.
     // iOutputLen: The length of the cOutput variable.
 
     
if (iTimeUnits 0)
     {
         
// determine the number of each time unit there are
         
new iWeekCnt 0iDayCnt 0iHourCnt 0iMinuteCnt 0iSecondCnt 0;
     
         switch (
iUnitType)
         {
             case 
TIMEUNIT_SECONDSiSecondCnt iTimeUnits;
             case 
TIMEUNIT_MINUTESiSecondCnt iTimeUnits SECONDS_IN_MINUTE;
             case 
TIMEUNIT_HOURS:   iSecondCnt iTimeUnits SECONDS_IN_HOUR;
             case 
TIMEUNIT_DAYS:    iSecondCnt iTimeUnits SECONDS_IN_DAY;
             case 
TIMEUNIT_WEEKS:   iSecondCnt iTimeUnits SECONDS_IN_WEEK;
         }
     
         
iWeekCnt iSecondCnt SECONDS_IN_WEEK;
         
iSecondCnt -= (iWeekCnt SECONDS_IN_WEEK);
     
         
iDayCnt iSecondCnt SECONDS_IN_DAY;
         
iSecondCnt -= (iDayCnt SECONDS_IN_DAY);
     
         
iHourCnt iSecondCnt SECONDS_IN_HOUR;
         
iSecondCnt -= (iHourCnt SECONDS_IN_HOUR);
     
         
iMinuteCnt iSecondCnt SECONDS_IN_MINUTE;
         
iSecondCnt -= (iMinuteCnt SECONDS_IN_MINUTE);
     
         
// translate the unit counts into verbose text
         
new iMaxElementIdx = -1;
         new 
acElement[5][33];
     
         if (
iWeekCnt 0)
             
format(acElement[++iMaxElementIdx], 32"%d w"iWeekCnt);
         if (
iDayCnt 0)
             
format(acElement[++iMaxElementIdx], 32"%d s"iDayCnt);
         if (
iHourCnt 0)
             
format(acElement[++iMaxElementIdx], 32"%d h"iHourCnt);
         if (
iMinuteCnt 0)
             
format(acElement[++iMaxElementIdx], 32"%d m"iMinuteCnt);
         if (
iSecondCnt 0)
             
format(acElement[++iMaxElementIdx], 32"%d s"iSecondCnt);
     
         switch(
iMaxElementIdx)
         {
             case 
0format(cOutputiOutputLen"%s"acElement[0]);
             case 
1format(cOutputiOutputLen"%s, %s"acElement[0], acElement[1]);
             case 
2format(cOutputiOutputLen"%s, %s, %s"acElement[0], acElement[1], acElement[2]);
             case 
3format(cOutputiOutputLen"%s, %s, %s, %s"acElement[0], acElement[1], acElement[2], acElement[3]);
             case 
4format(cOutputiOutputLen"%s, %s, %s, %s, %s"acElement[0], acElement[1], acElement[2], acElement[3], acElement[4]);
         }
     }
 } 
what I need ./ just count connects and make if(connects > 1000 )
do something


I dont have full files like .ini // my server hangs whan I try to enable this plugin.
Please remove gravity , time ,and show motd from this plugin.
need only connect counter inside of .sma
thanks
__________________
VDS in Europe 1 gb/s unmetered.Any configurations.
I accept Paypal, Moneybookers,etc

Last edited by avril-lavigne; 12-26-2011 at 18:59.
avril-lavigne is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 02:40.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode