Offline |
|
|
Csatlakozott: 2015.07.14. 14:30 Hozzászólások: 380
Megköszönt másnak: 43 alkalommal Megköszönték neki: 30 alkalommal
|
Hali! Van egy olyan pluginom amin ha valaki beírja chatbe /time akkor kiírja a játszott ideit. Ez mind szép és jó de ezt az egész szerver látja én meg csak azt szeretném hogy aki beírja a parancsot az adott illetőnek mutassa csak a chaten a játszott ideit ne lássa mindenki. /* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <amxmisc> #include <colorchat> #define PLUGIN "New Plug-In" #define VERSION "1.0" #define AUTHOR "Burza" new mp[33] new minutes[33] new hours[33] new od2_save[128]; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) set_task(1.0, "masodperc", _,_,_, "b") register_clcmd("say /time", "idok") get_localinfo("amxx_configsdir", od2_save, charsmax(od2_save)) format(od2_save, charsmax(od2_save), "%s/mentes_times", od2_save) } public masodperc(){ new players[32], szam, id; get_players(players, szam) for(new i;i<szam;i++){ id = players[i] mp[id] += 1 if(mp[id] >= 60){ mp[id] = 0 minutes[id] += 1 } if(minutes[id] >= 60){ minutes[id] = 0 hours[id] += 1 } } } public idok(id) { new nev[33] get_user_name(id, nev, 31) ColorChat(0, GREEN, "^3%s ^1Jatszott orai: ^4%d ^1Ora ^4%d ^1Perc ^4%d ^1Masodperc", nev, hours[id], minutes[id], mp[id]) new cim[121] format(cim, charsmax(cim), "\wJatszottal \r%d \yOra, \r%d \yPerc, \r%d \yMasodperc", hours[id], minutes[id], mp[id]) } public handi(id, menu, item){ if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[9], szName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback); new key = str_to_num(data); menu_destroy(menu) return PLUGIN_HANDLED } stock get_data(const key[], data[], len) { new vault = fopen(od2_save, "rt"); new _data[512], _key[64]; while( !feof(vault) ) { fgets(vault, _data, charsmax(_data)); parse(_data, _key, charsmax(_key), data, len); if( equal(_key, key) ) { fclose(vault); return 1; } } fclose(vault); copy(data, len, ""); return 0; } stock set_data(const key[], const data[]) { static const temp_vault_name[] = "set_data.txt"; new file = fopen(temp_vault_name, "wt"); new vault = fopen(od2_save, "rt"); new _data[512], _key[64], _other[32]; new bool:replaced = false; while( !feof(vault) ) { fgets(vault, _data, charsmax(_data)); parse(_data, _key, charsmax(_key), _other, charsmax(_other)); if( equal(_key, key) && !replaced ) { fprintf(file, "^"%s^" ^"%s^"^n", key, data); replaced = true; } else { fputs(file, _data); } } if( !replaced ) { fprintf(file, "^"%s^" ^"%s^"^n", key, data); } fclose(file); fclose(vault); delete_file(od2_save); while( !rename_file(temp_vault_name, od2_save, 1) ) { } //delete_file(temp_vault_name); } public client_disconnect(id) { if(!is_user_bot(id) && !is_user_hltv(id)) { save(id); } } public save(id) { new szData[128]; new steamid[32]; get_user_authid(id, steamid, charsmax(steamid)); if(contain(steamid, "_ID_LAN") != -1) get_user_ip(id, steamid, charsmax(steamid), 1); formatex(szData, charsmax(szData), "%i %i %i", mp[id], minutes[id], hours[id]); set_data(steamid, szData) } public client_authorized(id) { if(!is_user_bot(id) && !is_user_hltv(id)) { load(id); } } public load(id) { new szData[128]; new steamid[32]; get_user_authid(id, steamid, charsmax(steamid)); if(contain(steamid, "_ID_LAN") != -1) get_user_ip(id, steamid, charsmax(steamid), 1); if(get_data(steamid, szData, charsmax(szData))) { new sec[33], perc[33], ora[33] parse(szData, sec, charsmax(sec), perc, charsmax(perc), ora, charsmax(ora)); mp[id] = str_to_num(sec) minutes[id] = str_to_num(perc) hours[id] = str_to_num(ora) } }
|
|