Proszę gracz może tylko raz użyć i tylko na jednej klasie.
#include <amxmodx>
#include <codmod>
#include <hamsandwich>
#include <nvault>
#pragma semicolon 1
#define MAX 32
new name[ MAX + 1 ][ MAX ],
plik_vault,
vaultkey[ 64 ],
vaultdata[ 256 ];
new bool:wziol_exp[ MAX + 1 ];
public plugin_init( ) {
register_plugin( "Darmowy EXP", "1.0", "ka.linux" );
plik_vault = nvault_open( "maexp" );
register_clcmd("say /free","DajEXP");
}
public plugin_end( ) nvault_close( plik_vault );
public client_putinserver( id ) {
wziol_exp[ id ] = false;
name[ id ] = "";
if( is_user_connected( id ) ){
get_user_name( id , name[ id ], 31 );
wczytaj_exp( id );
}
}
public DajEXP(id)
{
if(!is_user_alive(id))
return PLUGIN_CONTINUE;
if(!wziol_exp[ id ])
{
cod_set_user_xp(id, cod_get_user_xp(id)+1000);
client_print(id,3,"Dostales 1000 XP!");
wziol_exp[ id ] = true;
}
else
client_print(id,3,"Wykorzystales darmowy EXP lub juz go nie potrzebujesz");
return PLUGIN_CONTINUE;
}
public client_disconnect( id ) {
zapisz_exp( id );
wziol_exp[ id ] = false;
name[ id ] = "";
}
public wczytaj_exp( id ) {
format( vaultkey, sizeof vaultkey - 1, "%s-m-", name[ id ] );
format( vaultdata, sizeof vaultdata - 1,"%d",wziol_exp[ id ] );
nvault_get( plik_vault, vaultkey, vaultdata, sizeof vaultdata - 1 );
new wartosc[ 6 ];
parse( vaultdata,wartosc, 5 );
if( str_to_num( wartosc ) )
wziol_exp[ id ] = true;
}
public zapisz_exp( id ){
if( wziol_exp[ id ] ){
format( vaultkey, sizeof vaultkey - 1, "%s-m-", name[ id ] ) ;
format( vaultdata, sizeof vaultdata - 1, "1" );
nvault_set( plik_vault, vaultkey, vaultdata );
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
*/