/* Plugin generated by AMXX-Studio */
#include < amxmodx >
#include < amxmisc >
#include < nvault >
#include < cstrike >
#define PLUGIN "player_boost"
#define VERSION "1.0 beta"
#define AUTHOR "RoCk-MaN"
new szModel[32], szBuy[32], szCach[32], Float: szTime[32], szVault;
new iKey = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0;
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
register_event("ResetHUD", "set_players_models", "be");
szVault = nvault_open("model_ka4");
register_clcmd("say /models", "menu_player");
register_menu("Models", iKey, "func_menu");
}
public plugin_precache() {
precache_model("models/player/henry/henry.mdl");
precache_model("models/player/dominique/dominique.mdl");
precache_model("models/player/zim/zim.mdl");
}
public menu_player(id) {
static menu[ 512 ] , iLen ;
iLen = 0;
static const _info[ 4 ][ ] = { "Alap", "Henry", "Dominique", "Zim" };
iLen = formatex( menu[ iLen ] , charsmax( menu ) - iLen , "\r[\yModellek Vásárlása\r]^n\wPénzed: \y%d^nModelled: %s^n^n", szCach[id], _info[szModel[id]]);
iLen += formatex( menu[ iLen ] , charsmax( menu ) - iLen , "\r1. %sModell vásárlás^n", szBuy[id] < 3 ? "\w" : "\d" );
iLen += formatex( menu[ iLen ] , charsmax( menu ) - iLen , "\r2. %sModell: %s %s^n", szBuy[id] >= 1 ? "\w" : "\d", _info[1], szModel[id] == 1 ? "\d[\yBekapcsolva\d]" : "\d[\rKikapcsolva\d]");
iLen += formatex( menu[ iLen ] , charsmax( menu ) - iLen , "\r3. %sModell: %s %s^n", szBuy[id] >= 2 ? "\w" : "\d", _info[2], szModel[id] == 2 ? "\d[\yBekapcsolva\d]" : "\d[\rKikapcsolva\d]");
iLen += formatex( menu[ iLen ] , charsmax( menu ) - iLen , "\r4. %sModell: %s %s^n", szBuy[id] >= 3 ? "\w" : "\d", _info[3], szModel[id] == 3 ? "\d[\yBekapcsolva\d]" : "\d[\rKikapcsolva\d]");
iLen += formatex( menu[ iLen ] , charsmax( menu ) - iLen , "^n\r0. \wKilépés" );
szBuy[id] < 3 ? ( iKey |= MENU_KEY_1 ) : ( iKey &= ~MENU_KEY_1 );
szBuy[id] >= 1 ? ( iKey |= MENU_KEY_2 ) : ( iKey &= ~MENU_KEY_2 );
szBuy[id] >= 2 ? ( iKey |= MENU_KEY_3 ) : ( iKey &= ~MENU_KEY_3 );
szBuy[id] >= 3 ? ( iKey |= MENU_KEY_4 ) : ( iKey &= ~MENU_KEY_4 );
( iKey &= ~MENU_KEY_5 );( iKey &= ~MENU_KEY_6 );( iKey &= ~MENU_KEY_7 );( iKey &= ~MENU_KEY_8 );( iKey &= ~MENU_KEY_9 );
show_menu( id , iKey , menu , -1 , "Models" ) ;
return PLUGIN_CONTINUE ;
}
public func_menu(id, key)
{
switch(key) {
case 0: {
szCach[id] -= 200;
szBuy[id]++;
menu_player(id);
}
case 1: {
szModel[id] = szModel[id] ? 0 : 1;
set_players_models(id);
menu_player(id);
}
case 2: {
szModel[id] = szModel[id] ? 0 : 2;
set_players_models(id);
menu_player(id);
}
case 3: {
szModel[id] = szModel[id] ? 0 : 3;
set_players_models(id);
menu_player(id);
}
}
}
public set_players_models(id) {
if(!is_user_connected(id))
return PLUGIN_CONTINUE;
switch( szModel[id] ) {
case 0: cs_reset_user_model(id);
case 1: cs_set_user_model(id, "henry");
case 2: cs_set_user_model(id, "dominique");
case 3: cs_set_user_model(id, "zim");
}
return PLUGIN_CONTINUE;
}
public client_putinserver(id) {
szModel[id] = 0;
szBuy[id] = 0;
LoadData(id);
szTime[id] = get_gametime();
set_task(482.0, "give_cach", id);
}
public client_disconnect(id) {
SaveData(id)
szTime[id] = 0.0;
szModel[id] = 0;
szBuy[id] = 0;
remove_task(id);
}
public give_cach(id) {
szCach[id] += random_num( 1, 10 );
}
public plugin_end() {
for(new i = 0; i < get_maxplayers(); i++) {
SaveData(i);
}
nvault_close(szVault);
}
public SaveData(id) {
if(is_user_bot(id))
return PLUGIN_HANDLED;
new AuthID[35];
get_user_authid(id,AuthID,35);
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-Mod",AuthID);
format(vaultdata,255,"%i#%i#", szCach[id], szBuy[id]);
nvault_set(szVault,vaultkey,vaultdata);
return PLUGIN_CONTINUE;
}
public LoadData(id) {
new AuthID[35];
get_user_authid(id,AuthID,35);
new vaultkey[64],vaultdata[256];
format(vaultkey,63,"%s-Mod",AuthID);
format(vaultdata,255,"%i#%i#", szCach[id], szBuy[id]);
nvault_get(szVault,vaultkey,vaultdata,255);
replace_all(vaultdata, 255, "#", " ");
new playercach[32], playerbuy[32];
parse(vaultdata, playercach, 31, playerbuy, 31);
szCach[id] = str_to_num(playercach);
szBuy[id] = str_to_num(playerbuy);
return PLUGIN_CONTINUE;
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1058\\ f0\\ fs16 \n\\ par }
*/