- #include <amxmodx> 
- #include <amxmisc> 
-   
- #pragma semicolon 1 
-   
- #define ALKOTO "" 
- #define VERZIO "" 
- #define PLUGIN "" 
-   
- #define IDOTARTAM 14 //Két hét 
-   
- new g_iVip[ 33 ]; 
- new g_iDatum; 
-   
- public plugin_init() 
- { 
- 	register_plugin( PLUGIN, VERZIO, ALKOTO ); 
-   
- 	register_clcmd( "say /veszek", "VESZ" ); 
-   
- 	new sDatum[ 16 ]; 
- 	get_time( "%Y%m%d", sDatum, charsmax( sDatum ) ); 
-   
- 	g_iDatum = str_to_num( sDatum ); 
- } 
-   
- public client_connect( id ) 
- { 
-         g_iVip[ id ] 
- 	//Betoltes( id ); 
-   
- 	if( g_iVip[ id ] < g_iDatum ) 
- 		g_iVip[ id ] = 0; 
- } 
-   
- public client_disconnect( id ) 
- { 
- 	//Mentes( id ); 
- } 
-   
- public VESZ( id ) 
- { 
- 	new sEv[ 8 ], sHonap[ 4 ], sNap[ 4 ], iEv, iHonap, iNap; 
- 	get_time( "%Y", sEv, charsmax( sEv ) ); 
- 	get_time( "%m", sHonap, charsmax( sHonap ) ); 
- 	get_time( "%d", sNap, charsmax( sNap ) ); 
-   
- 	iEv = str_to_num( sEv ); 
- 	iHonap = str_to_num( sHonap ); 
- 	iNap = str_to_num( sNap ); 
-   
- 	iNap += IDOTARTAM; 
-   
- 	while( iNap > GetDaysInMonth( iHonap, iEv ) ) 
- 	{ 
- 		++iHonap; 
- 		iNap -= GetDaysInMonth( iHonap, iEv ); 
- 	} 
-   
- 	while( iHonap > 12 ) 
- 	{ 
- 		++iEv; 
- 		iHonap -= 12; 
- 	} 
-   
- 	new sDatum[ 16 ]; 
- 	formatex( sDatum, charsmax( sDatum ), "%i%i%i", iEv, iHonap, iNap ); 
-   
- 	g_iVip = str_to_num( sDatum ); 
- } 
-   
- GetDaysInMonth( iMonth, iYear=0 )	//Gag menüből 
- { 
- 	switch( iMonth ) 
- 	{ 
- 		case 1: return 31; 
- 		case 2: return ( ( iYear % 4 ) == 0 ) ? 29 : 28; 
- 		case 3: return 31; 
- 		case 4: return 30; 
- 		case 5: return 31; 
- 		case 6: return 30; 
- 		case 7: return 31; 
- 		case 8: return 31; 
- 		case 9: return 30; 
- 		case 10: return 31; 
- 		case 11: return 30; 
- 		case 12: return 31; 
- 	} 
-   
- 	return 30; 
- } 
Vmi ilyesmiből ki lehet indulni, nem teszteltem, fordítani se próbáltam csak gyors összedobtam.
#define IDOTARTAM -nál adod meg, hogy hány napra kapja, g_iVip[ id ] -t kell menteni, ebben van a lejárati dátum, ha nem vip akkor 0 az értéke, szóval úgy működik mint a többi vipes cuccban, csak itt 1 helyett a lejárati dátum lesz benne.
pl:
"ha vip"
if( g_iVip[ id ] ) { }
"ha nem vip"
if( !g_iVip[ id ] ) { }