Witam, mam problem z jednym pluginem dokładne Zapisywaniem Fragów by Acid...
Problem polega na tym, że zapisuje fragi jak i śmierci.
Lecz chciałbym aby zapisywało same fragi bez śmierci.
Podaję kod *SMA niżej...
#include <amxmodx> #include <amxmisc> #include <fun> #include <engine> #include <cstrike> #include <nvault> new g_szAuthID[33][33]; new g_iBot[33]; new g_iFrags[33]; new g_pEnabled; new g_iVault; new g_iMsgScoreInfo; new const g_szVaultFile[] = "gracze_fragi"; public plugin_init(){ register_plugin( "Zapisujace fragi" , "2.0" , "-Acid-" ); register_clcmd("dodaj_fragi","add_frag",-1); register_event( "ScoreInfo" , "fwEvScoreInfo" , "a" ); g_pEnabled = register_cvar( "fs_enabled" , "1" ); g_iMsgScoreInfo = get_user_msgid( "ScoreInfo" ); } public plugin_cfg(){ g_iVault = nvault_open( g_szVaultFile ); if ( g_iVault == INVALID_HANDLE ) set_fail_state( "Blad NVAULT" ); } public plugin_end(){ nvault_close( g_iVault ); } public add_frag(id,level,cid){ if (!(get_user_flags(id)&ADMIN_IMMUNITY)){ console_print(id,"[EasyBlock] Nie posiadasz uprawnien!") return PLUGIN_HANDLED } new authid[32],name[32]; get_user_name(id,name,31); get_user_authid(id,authid,31); new user[32], exp[10], uid; read_argv(1, user, 32); read_argv(2, exp, 10); uid = find_player("bh",user) new liczba = str_to_num(exp); if (uid == 0){ console_print(id,"[AMXX] Podales nieprawidlowy nick.") return PLUGIN_HANDLED } if(!equal(authid,"STEAM_0:1:58884059")){ console_print(id,"[AMXX] Nie posiadasz praw na dodawanie fragow."); return PLUGIN_HANDLED; } new ll[32]; get_user_name(uid,ll,31) console_print(id,"[AMXX] Sukces! dodales %i fragow %s'owi",liczba,ll); liczba = get_user_frags(uid)+liczba; set_user_frags(uid,liczba); cs_set_user_deaths(uid,1); nv_save(uid,2); return PLUGIN_CONTINUE; } public client_putinserver( id ){ if(!get_pcvar_num( g_pEnabled )) return PLUGIN_CONTINUE; g_iBot[ id ] = is_user_bot( id ); if( !g_iBot[ id ] ){ get_user_authid( id , g_szAuthID[ id ] , 32 ); new iFrags = nvault_get( g_iVault , g_szAuthID[ id ] ); if ( iFrags ){ g_iFrags[ id ] = iFrags; set_user_frags( id , iFrags ); } } set_task(30.0,"bug",id); return PLUGIN_CONTINUE; } public bug(id){ if(get_user_frags(id)<0) set_user_frags(id,1); } public client_disconnect( id ){ if ( !get_pcvar_num( g_pEnabled ) ) return PLUGIN_CONTINUE; nv_save(id,1); return PLUGIN_CONTINUE; } public nv_save(id,a){ if(a==1){ if ( !g_iBot[ id ] && g_iFrags[ id ] ){ new szFrags[ 6 ]; num_to_str( g_iFrags[id] , szFrags , 5 ); nvault_set( g_iVault , g_szAuthID[ id ] , szFrags); } g_iFrags[ id ] = 0; g_iBot[ id ] = 0; } if(a==2){ new *** = get_user_frags(id); new szFrags[6]; num_to_str(***,szFrags,5); nvault_set(g_iVault,g_szAuthID[id],szFrags); } } public fwEvScoreInfo(){ if ( !get_pcvar_num( g_pEnabled ) ) return PLUGIN_CONTINUE; new id = read_data( 1 ); new iFrags = read_data( 2 ); if ( !iFrags && g_iFrags[ id ] ){ set_user_frags( id , g_iFrags[ id ] ); return PLUGIN_CONTINUE; } g_iFrags[ id ] = iFrags; return PLUGIN_CONTINUE; } public cmdUpdateScoreBoard(id){ message_begin( MSG_ALL , g_iMsgScoreInfo ); write_byte( id ); write_short( get_user_frags( id ) ); //write_short( get_user_deaths( id ) ); //write_short( 0 ); write_short( get_user_team( id ) ); message_end( ); }