MaTiX98 1 Odesláno: 23. Duben, 2013 Share Odesláno: 23. Duben, 2013 Ahojte lidi potřeboval bych takovou pomoc mám TimeBan když dám ban v 18:00 tak se ukážu že mám ban do 17:00 nevíte proč to je takové divné? Děkuji předem:) Link to comment Share on other sites More sharing options...
0 jenkings 121 Odesláno: 23. Duben, 2013 Share Odesláno: 23. Duben, 2013 Kód si máme vycucat z prstu, nebo máme jasnovidecky odhadnout chybu ? Link to comment Share on other sites More sharing options...
0 MaTiX98 1 Odesláno: 23. Duben, 2013 Author Share Odesláno: 23. Duben, 2013 Sry kód je zde: #include #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 #define SCMF(%0,%1,%2,%3) new _string[128]; format(_string,sizeof(_string),%2,%3); print(_string); SendClientMessage(%0,%1,_string) #define SCMTAF(%0,%1,%2) new _tring[128]; format(_tring,sizeof(_tring),%1,%2); SendClientMessageToAll(%0,_tring) #define SCM SendClientMessage #define SCMTA SendClientMessageToAll #define HODINA(%0) 3600*%0 #define DIALOG_ID 874 new bool:admin[MAX_PLAYERS]; public OnPlayerCommandText(playerid,cmdtext[]){ dcmd(nban,4,cmdtext); dcmd(tban,4,cmdtext); dcmd(pban,4,cmdtext); dcmd(tcmds,5,cmdtext); dcmd(tadmin,6,cmdtext); } public OnPlayerConnect(playerid){ admin[playerid] = false; new name[MAX_PLAYER_NAME],str[100],string[128],ip[20]; GetPlayerName(playerid,name,MAX_PLAYER_NAME); format(str,100,"TimeBan/Admin/%s.txt",name); if(fexist(str)){ admin[playerid] = true; } GetPlayerIp(playerid,ip,20); format(str,100,"TimeBan/Nick/%s.txt",name); if(fexist(str)){ new File:a = fopen(str,io_read); new dovod[75],Admin[25],kedy,dokedy; fread(a,string); DelChar(string); format(ip,20,"%s",string); fread(a,string); DelChar(string); format(dovod,75,"%s",string); fread(a,string); DelChar(string); format(Admin,25,"%s",string); fread(a,string); DelChar(string); kedy = strval(string); fread(a,string); DelChar(string); dokedy = strval(string); fclose(a); if(gettime() > dokedy){ //vypršal SCM(playerid,0xFF0404FF,"[ TimeBan ] ban ti vypršel doufám že jsi se poučil"); fremove(str); }else{ new bigstring[500]; format(bigstring,500,"Tvůj ban ještě stále nevypršel !\nNick:\t\t\t%s\nIP:\t\t\t%s\nDôvod:\t\t\t%s\nAdmin:\t\t\t%s\nKdy:\t\t\t%s\nPlatí do:\t\t%s",name,ip,dovod,Admin,date(kedy),date(dokedy)); ShowPlayerDialog(playerid,DIALOG_ID,0,"TimeBan",bigstring,"Ok",""); Kick(playerid); } } format(str,100,"TimeBan/IP/%s.txt",ip); if(fexist(str)){ new File:a = fopen(str,io_read); new dovod[75],Admin[25],kedy,dokedy; fread(a,string); DelChar(string); format(name,20,"%s",string); fread(a,string); DelChar(string); format(dovod,75,"%s",string); fread(a,string); DelChar(string); format(Admin,25,"%s",string); fread(a,string); DelChar(string); kedy = strval(string); fread(a,string); DelChar(string); dokedy = strval(string); fclose(a); if(gettime() > dokedy){ //vypršal SCM(playerid,0xFF0404FF,"[ TimeBan ] ban ti vypršel doufám že jsi se poučil"); fremove(str); }else{ new bigstring[500]; format(bigstring,500,"Tvůj ban ještě stále nevypršel !\nNick:\t\t\t%s\nIP:\t\t\t%s\nDůvod:\t\t\t%s\nAdmin:\t\t\t%s\nKdy:\t\t\t%s\nPlatí do:\t\t%s",name,ip,dovod,Admin,date(kedy),date(dokedy)); ShowPlayerDialog(playerid,DIALOG_ID,0,"TimeBan",bigstring,"Ok",""); Kick(playerid); } } format(str,100,"TimeBan/Perma/%s.txt",ip); if(fexist(str)){ new File:a = fopen(str,io_read); new dovod[75],Admin[25],kedy; fread(a,string); DelChar(string); format(name,20,"%s",string); fread(a,string); DelChar(string); format(dovod,75,"%s",string); fread(a,string); DelChar(string); format(Admin,25,"%s",string); fread(a,string); DelChar(string); kedy = strval(string); fclose(a); new bigstring[500]; format(bigstring,500,"Tvůj ban ještě stále nevypršel !\nNick:\t\t\t%s\nIP:\t\t\t%s\nDůvod:\t\t\t%s\nAdmin:\t\t\t%s\nKedy:\t\t%s",name,ip,dovod,Admin,date(kedy)); ShowPlayerDialog(playerid,DIALOG_ID,0,"TimeBan",bigstring,"Ok",""); Kick(playerid); } } // Nick Ban dcmd_nban(playerid, params[]){ if(admin[playerid] == false) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nejsi Admin !"); if(GetPlayerState(playerid) == PLAYER_STATE_WASTED) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nemůžeš být ve výběru postav !"); new a[3][60],id,hodiny; if(UnFormat(params,a,' ',3) != 3) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Použi: /nban [iD] [HODINY] [DOVOD]"); id = strval(a[0]); if(!IsPlayerConnected(id)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Hráč není na serveru !"); //if(id == playerid) return SCM(playerid,0x0000FFFF,"[ TimeBan ] Nemôžeš zabanovať sám seba !"); if(IsPlayerAdmin(id)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nemůžeš zabanovat Hlavního Admina !"); hodiny = strval(a[1]); new name[MAX_PLAYER_NAME],str[100],str2[75]; GetPlayerName(id,name,MAX_PLAYER_NAME); format(str,100,"TimeBan/Nick/%s.txt",name); print("[ TimeBan ] Ak sa vypol server (spadol) tak v ScriptFiles chyba zlozka 'TimeBan' a v nej zlozka 'Nick'"); new File:s = fopen(str,io_write); GetPlayerIp(id,str2,75); format(str,75,"%s\r\n",str2); fwrite(s,str); format(str,75,"%s\r\n",a[2]); fwrite(s,str); format(str,75,"%s\r\n",Jmeno(playerid)); fwrite(s,str); format(str,75,"%d\r\n",gettime()); fwrite(s,str); format(str,75,"%d\r\n",HODINA(hodiny)+gettime()); fwrite(s,str); fclose(s); SCMTAF(0xFF0404FF,"[ TimeBan ] Admin %s dal hráčovy %s ban na %d hodin Důvod: %s",Jmeno(playerid),name,hodiny,a[2]); SCMF(playerid,0xFF0404FF,"[ TimeBan ] Dostal si ban na %d hodin Důvod: %s",hodiny,a[2]); Kick(id); return true; } // Time Ban dcmd_tban(playerid, params[]){ if(admin[playerid] == false) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nejsi Admin !"); if(GetPlayerState(playerid) == PLAYER_STATE_WASTED) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nemůžeš být ve výběru postav !"); new a[3][60],id,hodiny; if(UnFormat(params,a,' ',3) != 3) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Použi: /tban [iD] [HODINY] [DOVOD]"); id = strval(a[0]); if(!IsPlayerConnected(id)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Hráč není na serveru !"); //if(id == playerid) return SCM(playerid,0x0000FFFF,"[ TimeBan ] {FF0000}Nemôžeš zabanovať sám seba !"); if(IsPlayerAdmin(id)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nemůžeš zabanovat hlavního admina !"); hodiny = strval(a[1]); new name[MAX_PLAYER_NAME],str[100],str2[75]; GetPlayerIp(id,str2,75); format(str,100,"TimeBan/IP/%s.txt",str2); print("[ TimeBan ] Ak sa vypol server (spadol) tak v ScriptFiles chyba zlozka 'TimeBan' a v nej zlozka 'IP'"); new File:s = fopen(str,io_write); GetPlayerName(id,name,MAX_PLAYER_NAME); format(str,75,"%s\r\n",name); fwrite(s,str); format(str,75,"%s\r\n",a[2]); fwrite(s,str); format(str,75,"%s\r\n",Jmeno(playerid)); fwrite(s,str); format(str,75,"%d\r\n",gettime()); fwrite(s,str); format(str,75,"%d\r\n",HODINA(hodiny)+gettime()); fwrite(s,str); fclose(s); SCMTAF(0x0000FFFF,"[ TimeBan ] Admin %s dal hráčovy %s ban na %d hodin Důvod: %s",Jmeno(playerid),name,hodiny,a[2]); SCMF(playerid,0xFF0404FF,"[ TimeBan ] Dostal si ban na %d hodin Důvod: %s",hodiny,a[2]); Kick(id); return true; } // Perma Ban dcmd_pban(playerid, params[]){ if(admin[playerid] == false) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nejsi admin !"); if(GetPlayerState(playerid) == PLAYER_STATE_WASTED) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nemůžeš být ve výběru postav !"); new a[2][60],id; if(UnFormat(params,a,' ',2) != 2) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Použi: /pban [iD] [DOVOD]"); id = strval(a[0]); if(!IsPlayerConnected(id)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Hráč není na serveru!"); //if(id == playerid) return SCM(playerid,0x0000FFFF,"[ TimeBan ] Nemůžeš zabanovat sám sebe !"); if(IsPlayerAdmin(id)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Nemůžeš zabanovat hlavního admina !"); new name[MAX_PLAYER_NAME],str[100],str2[75]; GetPlayerIp(id,str2,75); format(str,100,"TimeBan/Perma/%s.txt",str2); print("[ TimeBan ] Ak sa vypol server (spadol) tak v ScriptFiles chyba zlozka 'TimeBan' a v nej zlozka 'Perma'"); new File:s = fopen(str,io_write); GetPlayerName(id,name,MAX_PLAYER_NAME); format(str,75,"%s\r\n",name); fwrite(s,str); format(str,75,"%s\r\n",a[1]); fwrite(s,str); format(str,75,"%s\r\n",Jmeno(playerid)); fwrite(s,str); format(str,75,"%d\r\n",gettime()); fwrite(s,str); fclose(s); SCMTAF(0xFF0404FF,"[ TimeBan ] Admin %s dal hráčovy %s pernamentný ban Důvod: %s",Jmeno(playerid),name,a[1]); SCMF(playerid,0xFF0404FF,"[ TimeBan ] Dostal si trvalý ban Důvod: %s",a[1]); Kick(id); return true; } // Admin Level dcmd_tadmin(playerid, params[]){ if(!IsPlayerAdmin(playerid)) return 0; new a[2][5],id,level; if(UnFormat(params,a,' ',2) != 2) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Použi: /tadmin [iD] [0-1]"); id = strval(a[0]); if(!IsPlayerConnected(id)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Hráč není na servery !"); level = strval(a[1]); if(level > 1 || level < 0) return SCM(playerid,0xFF0404FF,"Použi: /tadmin [iD] [0-1]"); new str[100]; print("[ TimeBan ] Ak sa vypol server (spadol) tak v ScriptFiles chyba zlozka 'TimeBan' a v nej zlozka 'Admin'"); if(level == 0){ format(str,100,"TimeBan/Admin/%s.txt",Jmeno(id)); if(!fexist(str)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Hráč nemá právo dat Ban na čas !"); fremove(str); admin[id] = false; SCMTAF(0xFF0404FF,"[ TimeBan ] Admin %s odobral hráčovy %s admin level",Jmeno(playerid),Jmeno(id)); }else{ format(str,100,"TimeBan/Admin/%s.txt",Jmeno(id)); if(fexist(str)) return SCM(playerid,0xFF0404FF,"[ TimeBan ] Hráč má právo dat Ban na čas !"); fcreate(str); admin[id] = true; SCMTAF(0xFF0404FF,"[ TimeBan ] Admin %s dal hráčovy %s admin level",Jmeno(playerid),Jmeno(id)); } return true; } dcmd_tcmds(playerid, params[]){ #pragma unused params SCM(playerid,-1,"------------------------------------------------------------------------------------------------------------------------------------"); SCM(playerid,-1,"sss"); SCM(playerid,0xFF0404FF,"/nban - Zabanuje nick hráče na určený čas"); SCM(playerid,0xFF0404FF,"/tban - Zabanuje ip hráče na určený čas"); SCM(playerid,0xFF0404FF,"/pban - Zabanuje hráče natrvalo"); SCM(playerid,0xFF0404FF,"/tadmin - Dá hráčovy možnost použít tento příkaz"); SCM(playerid,-1,"Děkuju za Používání Tbanu"); return true; } stock fcreate(filename[]) { new File:file; if (fexist(filename)) return false; file=fopen(filename,io_write); fclose(file); return true; } stock DelChar(tstring[]) { new ln = strlen(tstring); if(tstring[ln-2] == '\r')tstring[ln-2] = '\0'; if(tstring[ln-1] == '\n')tstring[ln-1] = '\0'; } stock Jmeno(playerid){ new n[MAX_PLAYER_NAME]; GetPlayerName(playerid,n,MAX_PLAYER_NAME); return n; } stock UnFormat(str[],variables[][],cha,m=0) { new len = strlen(str),chcount,i,start,varcount; while(i < len+1){ if(i == len && chcount != 0){ strmid(variables[varcount],str,start+1,strlen(str),128); chcount++; } if(str[i] == cha){ if((m == 0) || (chcount != m-1)){ strmid(variables[varcount],str,start + ((start == 0) ? 0 : 1),i,128); start = i; chcount++; varcount++; } } i++; } return chcount; } stock date( timestamp, _form=1 ) { /* ~ convert a Timestamp to a Date. ~ 10.07.2009 date( 1247182451, 0) will print >> 09.07.2009-23:34:11 date( 1247182451) will print >> 09/07/2009, 23:34:11 date( 1247182451, 2) will print >> July 09, 2009, 23:34:11 date( 1247182451, 3) will print >> 9 Jul 2009, 23:34 */ new year=1970, day=0, month=0, hour=0, mins=0, sec=0; new days_of_month[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 }; new names_of_month[12][10] = {"Januar","Februar","Marec","April","Maj","Jun","Jul","August","September","Oktober","November","December"}; new returnstring[32]; while(timestamp>31622400){ timestamp -= 31536000; if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) ) timestamp -= 86400; year++; } if ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) ) days_of_month[1] = 29; else days_of_month[1] = 28; while(timestamp>86400){ timestamp -= 86400, day++; if(day==days_of_month[month]) day=0, month++; } while(timestamp>60){ timestamp -= 60, mins++; if( mins == 60) mins=1, hour++; } sec=timestamp; switch( _form ){ case 1: format(returnstring, 31, "%02d/%02d/%d %02d:%02d:%02d", day+1, month+1, year, hour, mins, sec); case 2: format(returnstring, 31, "%s %02d, %d, %02d:%02d:%02d", names_of_month[month],day+1,year, hour, mins, sec); case 3: format(returnstring, 31, "%d %c%c%c %d, %02d:%02d", day+1,names_of_month[month][0],names_of_month[month][1],names_of_month[month][2], year,hour,mins); default: format(returnstring, 31, "%02d.%02d.%d %02d:%02d:%02d", day+1, month+1, year, hour, mins, sec); } return returnstring; } Link to comment Share on other sites More sharing options...
0 MaTiX98 1 Odesláno: 23. Duben, 2013 Author Share Odesláno: 23. Duben, 2013 QWER takto jsem to stáhl z uložto spíš bych to potřeboval pomoct opravit :// Link to comment Share on other sites More sharing options...
0 Guest SpiRinG Odesláno: 23. Duben, 2013 Share Odesláno: 23. Duben, 2013 Niekedy qwera ľutujem ak bi nebolo jeho na pawne je o ... dobrich scriptou menej. A odmena zato je to že mažete jeho meno. Hanba takim ľuďom . Nema niekto nahodou aj BanList.php od timebanu ? Link to comment Share on other sites More sharing options...
0 MaTiX98 1 Odesláno: 23. Duben, 2013 Author Share Odesláno: 23. Duben, 2013 QWER posláno.. neveděl by někdo spravit? Link to comment Share on other sites More sharing options...
0 _Martin_ 10 Odesláno: 23. Duben, 2013 Share Odesláno: 23. Duben, 2013 1. Serverové nastavenie má zle nastavený čas -> nastavíš ho 2. TimeBan nepracuje s posunom času (alebo uberá čas z nejakého iného dôvodu) -> ten čas ktorý ti uberie musíš pripočítať. Ak to je 1 hodina tak ku všetkým výpisom, ukladaniam musíš prirátať 3600 (v timestampe je to 1 hodina). Ak 2 tak 7200..proste čo hodina to 3600.. Link to comment Share on other sites More sharing options...
0 MaTiX98 1 Odesláno: 23. Duben, 2013 Author Share Odesláno: 23. Duben, 2013 Promin ale teď jsem tě nepochopil.. Link to comment Share on other sites More sharing options...
Dotaz
MaTiX98 1
Ahojte lidi potřeboval bych takovou pomoc mám TimeBan když dám ban v 18:00 tak se ukážu že mám ban do 17:00 nevíte proč to je takové divné? Děkuji předem:)
Link to comment
Share on other sites
7 odpovědí na tuto otázku
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now