in case u change your mind
EDIT: Made a small modification
PHP Code:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <csstats>
#include <nvault>
#define PLUGIN "VipStats"
#define VERSION "1.0"
#define AUTHOR "NapoleoN#"
new iFlagLevel[33];
new szFlags[20];
new szVault;
new pVipFlags;
new pAdminFlags;
new pVipKills;
new pAdminKills;
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
pVipFlags = register_cvar("amx_vipflags", "bi"); // Set desired flags
pAdminFlags = register_cvar("amx_adminflags", "bicdeu"); // Set desired flags
pVipKills = register_cvar("amx_vipkills", "1000");
pAdminKills = register_cvar("amx_adminkills", "5000");
szVault = nvault_open("VipStats");
}
public plugin_end()
{
nvault_close(szVault);
}
public CheckFlags(id)
{
if(!(get_user_flags(id) & ADMIN_KICK)) // Avoid regular admins getting reset.
{
switch(iFlagLevel[id])
{
case 0:
{
new iStats[8], iBodyHits[8];
get_user_stats(id, iStats, iBodyHits);
if(iStats[0] >= get_pcvar_num(pAdminKills))
{
get_pcvar_string(pAdminFlags, szFlags, charsmax(szFlags));
set_user_flags(id, read_flags(szFlags));
iFlagLevel[id] = 1;
}
else if(iStats[0] >= get_pcvar_num(pVipKills))
{
get_pcvar_string(pVipFlags, szFlags, charsmax(szFlags));
set_user_flags(id, read_flags(szFlags));
iFlagLevel[id] = 2;
}
}
case 1:
{
get_pcvar_string(pAdminFlags, szFlags, charsmax(szFlags));
set_user_flags(id, read_flags(szFlags));
}
case 2:
{
get_pcvar_string(pVipFlags, szFlags, charsmax(szFlags));
set_user_flags(id, read_flags(szFlags));
}
}
}
}
public RemoveFlags(id)
{
remove_user_flags(id, read_flags(szFlags));
set_user_flags(id, read_flags("z"));
iFlagLevel[id] = 0;
}
public LoadData(id)
{
new szLoadFlags[33]
new szAuthid[35], szTemp[20];
get_user_authid(id, szAuthid, charsmax(szAuthid));
nvault_get(szVault, szAuthid, szTemp, charsmax(szTemp));
parse(szTemp, szLoadFlags, charsmax(szLoadFlags));
iFlagLevel[id] = str_to_num(szLoadFlags);
CheckFlags(id)
}
public SaveData(id)
{
new szAuthid[35], szTemp[20];
get_user_authid(id, szAuthid, charsmax(szAuthid));
formatex(szTemp, charsmax(szTemp), "%i", iFlagLevel[id]);
nvault_set(szVault, szAuthid, szTemp);
RemoveFlags(id);
}
public client_putinserver(id)
{
LoadData(id);
}
#if AMXX_VERSION_NUM < 190
public client_disconnect(id)
#else
public client_disconnected(id)
#endif
{
SaveData(id);
}
__________________