Na wstępie chciałbym zaznaczyć, że pracując na dystrybucji Linuxowej (tak - mam Linuxa, nie - nie mam na żadnym z dysków Windowsa, tak - działa mi steam, tak - działa mi Counter Strike
![;)](http://img.amxx.pl/public/style_emoticons/default/wink.gif)
Działa mi natomiast Pawn Studio (w Wine), lecz teraz byłem po formacie i nie zdążyłem zainstalować.
Tak więc proszę mi wybaczyć ewentualne błędy, aczkolwiek powinno wszystko ładnie współpracować, tak jak być powinno
![;)](http://img.amxx.pl/public/style_emoticons/default/wink.gif)
A oto plugin:
#include <amxmodx> #include <nvault> #define PLUGIN "Save Player's playing time" #define VERSION "1.0" #define AUTHOR "#Vaverix." new czas_gry[33]; new g_vault; public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR); register_clcmd("say /gametime","pokaz_czas_gry"); register_clcmd("say /playingtime","pokaz_czas_gry"); register_clcmd("say /czasgry","pokaz_czas_gry"); g_vault = nvault_open("SPPT"); if (g_vault == INVALID_HANDLE) set_fail_state( "Nie udalo sie otworzyc pliku nvault!"); } public client_connect(id) wczytaj_czas_gry(id); public client_disconnect(id) { zapisz_czas_gry(id); czas_gry[id] = 0; } public wczytaj_czas_gry(id) { new name[35],vaultkey[64],vaultdata[256]; get_user_name(id,name,34); format(vaultkey,63,"%s-gametime",name); nvault_get(g_vault,vaultkey,vaultdata,255); czas_gry[id] = str_to_num(vaultdata); return PLUGIN_CONTINUE; } public zapisz_czas_gry(id) { new name[35],vaultkey[64],vaultdata[256]; get_user_name(id,name,34); czas_gry[id] += get_user_time(id, 1); format(vaultkey,63,"%s-gametime",name); format(vaultdata, 255, "%d", czas_gry[id]); nvault_set(g_vault,vaultkey,vaultdata) czas_gry[id] = str_to_num(vaultdata); return PLUGIN_CONTINUE; } public pokaz_czas_gry(id) { new sekundy = (czas_gry[id] + get_user_time(id, 1)), minuty, godziny; while(sekundy >= 60) { sekundy -= 60; minuty++; } while(minuty >= 60) { minuty -= 60; godziny++; } client_print(id,print_chat,"Grasz juz %ih %imin %is na tym serwerze!", godziny, minuty, sekundy); return PLUGIN_HANDLED; } public plugin_end() nvault_close(g_vault);
@ warring - DarkGL
Oczywiście chodziło o Amxx Studio
![;P](http://img.amxx.pl/public/style_emoticons/default/jezyk.gif)
PS.1 Kod można jeszcze skrócić (zresztą sam w sobie jest krótki), ale chciałem, żeby był w miare przejrzysty
![;)](http://img.amxx.pl/public/style_emoticons/default/wink.gif)
PS.2 Ten post ma tylko i wyłącznie na celu pomóc w problemie zaistniałym w tym temacie, a nie jest to forma jakiegokolwiek żalenia się, chwalenia, czy próby sprowokowania miłośników Windows'a
PS.3 Przy takiej porze, wydajność pracy mózgu spada do minimum
![:>](http://img.amxx.pl/public/style_emoticons/default/mruga.gif)
Pozdrawiam.
Użytkownik vaverix edytował ten post 14.05.2011 09:31