Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #include <monety_bzp>
- #include <csx>
- #include <fakemeta>
- #include <nvault>
- #include <colorchat>
- #define PLUGIN "System Skiny"
- #define VERSION "2.0.0"
- #define AUTHOR "Boski Z Polski"
- #define MAXIK 100
- /* SERWER */
- new ilosc_kategorii;
- new nazwa_kategoria_skina[32][32];
- new ilosc_w_danej_kategorii[32];
- new ilosc_skinow_w_kategorii[32];
- new nazwa_skina[MAXIK][MAXIK][MAXIK];
- new id_broni[32];
- new sciezka_skina[MAXIK][MAXIK][MAXIK];
- new cena_skina[32][32];
- new ustawienia_skina[32][32];
- new kille_skina[32][32];
- new flaga_skina[32][32][32];
- new motd_skina[150][150][150];
- new vault;
- /* SERWER */
- /* GRACZ */
- new wybrana_kategoria[33];
- new wybrana_skina[33];
- new czy_ma_skina[33][33][33];
- new czy_ma_zalozonego[33][33];
- new licz_zabojstw_na_skinie[33][33][33];
- /* GRACZ */
- public plugin_init()
- {
- #define FORUM_S "PsychaSiada.pl"
- #define SERWER_IP "51.83.214.206:27015"
- new g_miesiac[3];
- get_time("%m",g_miesiac, charsmax(g_miesiac));
- new MIESIAC = str_to_num(g_miesiac);
- register_plugin(PLUGIN, VERSION, AUTHOR);
- register_clcmd("say /skiny", "skiny_menu");
- register_event("CurWeapon","CurWeapon","be", "1=1");
- register_event("DeathMsg", "DeathMsg", "a");
- vault = nvault_open("system_skinow");
- }
- public plugin_end()
- {
- nvault_close(vault);
- }
- public plugin_precache()
- {
- new sciezka[526];
- get_configsdir(sciezka, charsmax(sciezka));
- formatex(sciezka, charsmax(sciezka), "%s/skiny_za_monety.ini", sciezka);
- if(file_exists(sciezka))
- {
- new linia[1024];
- new Len;
- new g_nazwa_kategoria_skina[32];
- new g_nazwa_skina[32];
- new g_id_broni[32];
- new g_sciezka_skina[128];
- new g_cena_skina[32];
- new g_ustawienia_skina[32];
- new g_kille_skina[32];
- new g_flaga_skina[32];
- new g_motd_skina[248];
- new h_nazwa_kategoria_skina[32];
- for(new i = 0; read_file(sciezka, i, linia, charsmax(linia), Len); i++)
- {
- if(Len == 0 || !linia[0] || linia[0] == ';')
- {
- continue;
- }
- parse(linia,
- g_nazwa_kategoria_skina, charsmax(g_nazwa_kategoria_skina),
- g_nazwa_skina, charsmax(g_nazwa_skina),
- g_id_broni, charsmax(g_id_broni),
- g_sciezka_skina, charsmax(g_sciezka_skina),
- g_cena_skina, charsmax(g_cena_skina),
- g_ustawienia_skina, charsmax(g_ustawienia_skina),
- g_kille_skina, charsmax(g_kille_skina),
- g_flaga_skina, charsmax(g_flaga_skina),
- g_motd_skina, charsmax(g_motd_skina)
- );
- /* SCIEZKA SKINA */
- if(file_exists(g_sciezka_skina))
- {
- precache_model(g_sciezka_skina);
- }
- else
- {
- continue;
- }
- /* SCIEZKA SKINA */
- /* KATEGORIA BRONII */
- if(!equal(h_nazwa_kategoria_skina, g_nazwa_kategoria_skina))
- {
- ilosc_skinow_w_kategorii[ilosc_kategorii] = 0;
- ++ilosc_kategorii;
- copy(nazwa_kategoria_skina[ilosc_kategorii], charsmax(nazwa_kategoria_skina), g_nazwa_kategoria_skina);
- }
- ++ilosc_w_danej_kategorii[ilosc_kategorii];
- copy(h_nazwa_kategoria_skina, charsmax(h_nazwa_kategoria_skina), nazwa_kategoria_skina[ilosc_kategorii]);
- /* KATEGORIA BRONII */
- /* NAZWA SKINA */
- ++ilosc_skinow_w_kategorii[ilosc_kategorii];
- copy(nazwa_skina[ilosc_kategorii][ilosc_skinow_w_kategorii[ilosc_kategorii]], charsmax(nazwa_skina), g_nazwa_skina);
- /* NAZWA SKINA */
- /* ID BRONI */
- id_broni[ilosc_kategorii] = str_to_num(g_id_broni);
- /* ID BRONI */
- /* CENA SKINA */
- cena_skina[ilosc_kategorii][ilosc_skinow_w_kategorii[ilosc_kategorii]] = str_to_num(g_cena_skina);
- /* CENA SKINA */
- /* USTAWIENIA SKINA */
- ustawienia_skina[ilosc_kategorii][ilosc_skinow_w_kategorii[ilosc_kategorii]] = str_to_num(g_ustawienia_skina);
- /* USTAWIENIA SKINA */
- /* KILLE SKINA */
- kille_skina[ilosc_kategorii][ilosc_skinow_w_kategorii[ilosc_kategorii]] = str_to_num(g_kille_skina);
- /* KILLE SKINA */
- /* FLAGA SKINA */
- copy(flaga_skina[ilosc_kategorii][ilosc_skinow_w_kategorii[ilosc_kategorii]], charsmax(flaga_skina), g_flaga_skina);
- /* FLAGA SKINA */
- /* MOTD SKINA */
- copy(motd_skina[ilosc_kategorii][ilosc_skinow_w_kategorii[ilosc_kategorii]], charsmax(motd_skina), g_motd_skina);
- /* MOTD SKINA */
- /* SCIEZKA SKINA */
- copy(sciezka_skina[ilosc_kategorii][ilosc_skinow_w_kategorii[ilosc_kategorii]], charsmax(nazwa_skina), g_sciezka_skina);
- /* SCIEZKA SKINA */
- }
- }
- else
- {
- log_amx("Brak pliku ^"%s^"", sciezka);
- }
- return PLUGIN_CONTINUE;
- }
- public funkcja_aktywna(id, menu, item)
- {
- return ITEM_ENABLED;
- }
- public funkcja_nieaktywna(id, menu, item)
- {
- return ITEM_DISABLED;
- }
- public client_authorized(id)
- {
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultdata[128];
- for(new i = 1; i <= ilosc_kategorii; i++)
- {
- for(new k = 1; k <= ilosc_w_danej_kategorii[i]; k++)
- {
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[i],nazwa_skina[i][k]);
- if(nvault_get(vault, vaultkey, vaultdata, charsmax(vaultdata)))
- {
- new dane[3][33];
- parse(vaultdata, dane[0], charsmax(dane), dane[1], charsmax(dane), dane[2], charsmax(dane));
- if(str_to_num(dane[0]) == 1)
- {
- czy_ma_skina[id][i][k] = true;
- if(!(str_to_num(dane[1]) == 0))
- {
- czy_ma_zalozonego[id][i] = k;
- }
- licz_zabojstw_na_skinie[id][i][k] = str_to_num(dane[2]);
- }
- }
- }
- }
- }
- public client_disconnected(id)
- {
- wybrana_kategoria[id] = false;
- wybrana_skina[id] = false;
- for(new i = 1; i <= ilosc_kategorii; i++)
- {
- for(new k = 1; k <= ilosc_w_danej_kategorii[i]; k++)
- {
- czy_ma_skina[id][i][k] = false;
- licz_zabojstw_na_skinie[id][i][k] = 0;
- }
- czy_ma_zalozonego[id][i] = false;
- }
- }
- public CurWeapon(id)
- {
- if(!is_user_alive(id))
- {
- return PLUGIN_CONTINUE;
- }
- new wid = read_data(2);
- if(!czy_ma_zalozonego[id][obecna_bron(wid)])
- {
- return PLUGIN_CONTINUE;
- }
- if(wid == id_broni[obecna_bron(wid)])
- {
- set_pev(id,pev_viewmodel2, sciezka_skina[obecna_bron(wid)][czy_ma_zalozonego[id][obecna_bron(wid)]]);
- }
- return PLUGIN_CONTINUE;
- }
- stock obecna_bron(wid)
- {
- new zwrot;
- for(new i = 1; i <= ilosc_kategorii; i++)
- {
- if(wid == id_broni[i])
- {
- zwrot = i;
- }
- }
- return zwrot;
- }
- public skiny_menu(id)
- {
- new menu = menu_create("Wybierz kategorie, ktora Cie interesuje!", "skiny_menu_hadler");
- for(new i = 1; i <= ilosc_kategorii; i++)
- {
- new w_menu[128];
- formatex(w_menu, charsmax(w_menu), "\w%s \y(\r%i\y)", nazwa_kategoria_skina[i], ilosc_w_danej_kategorii[i]);
- menu_additem(menu, w_menu);
- }
- menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
- menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
- menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
- if(is_user_connected(id))
- {
- menu_display(id, menu);
- }
- return PLUGIN_CONTINUE;
- }
- public skiny_menu_hadler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- wybrana_kategoria[id] = item + 1;
- menu_wyboru_skina(id);
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- public menu_wyboru_skina(id)
- {
- new menu = menu_create("Wybierz skin, ktory Cie interesuje!", "menu_wyboru_skina_hadler");
- new aktywna = menu_makecallback("funkcja_aktywna");
- //new nieaktywna = menu_makecallback("funkcja_nieaktywna");
- for(new i = 1; i <= ilosc_w_danej_kategorii[wybrana_kategoria[id]]; i++)
- {
- new w_menu[128];
- if(ustawienia_skina[wybrana_kategoria[id]][i] == 1)
- {
- formatex(w_menu, charsmax(w_menu), "\w%s \y(\r%i monet\y)", nazwa_skina[wybrana_kategoria[id]][i], cena_skina[wybrana_kategoria[id]][i]);
- if(czy_ma_skina[id][wybrana_kategoria[id]][i])
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == i)
- {
- add(w_menu, charsmax(w_menu), " [ZALOZONE]");
- }
- else
- {
- add(w_menu, charsmax(w_menu), " [POSIADANE]");
- }
- }
- menu_additem(menu, w_menu,_,_, aktywna);
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][i] == 2)
- {
- formatex(w_menu, charsmax(w_menu), "\w%s \y(\r%i fragow\y)", nazwa_skina[wybrana_kategoria[id]][i], kille_skina[wybrana_kategoria[id]][i]);
- if(czy_ma_skina[id][wybrana_kategoria[id]][i])
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == i)
- {
- add(w_menu, charsmax(w_menu), " [ZALOZONE]");
- }
- else
- {
- add(w_menu, charsmax(w_menu), " [POSIADANE]");
- }
- }
- menu_additem(menu, w_menu,_,_, aktywna);
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][i] == 3)
- {
- if(equal(flaga_skina[wybrana_kategoria[id]][i], "t"))
- {
- formatex(w_menu, charsmax(w_menu), "\w%s \y(\rVIP\y)", nazwa_skina[wybrana_kategoria[id]][i]);
- if(czy_ma_skina[id][wybrana_kategoria[id]][i])
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == i)
- {
- add(w_menu, charsmax(w_menu), " [ZALOZONE]");
- }
- else
- {
- add(w_menu, charsmax(w_menu), " [POSIADANE]");
- }
- }
- }
- else if(equal(flaga_skina[wybrana_kategoria[id]][i], "s"))
- {
- formatex(w_menu, charsmax(w_menu), "\w%s \y(\rSVIP\y)", nazwa_skina[wybrana_kategoria[id]][i]);
- if(czy_ma_skina[id][wybrana_kategoria[id]][i])
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == i)
- {
- add(w_menu, charsmax(w_menu), " [ZALOZONE]");
- }
- else
- {
- add(w_menu, charsmax(w_menu), " [POSIADANE]");
- }
- }
- }
- else
- {
- formatex(w_menu, charsmax(w_menu), "\w%s \y(\rUSLUGA\y)", nazwa_skina[wybrana_kategoria[id]][i]);
- if(czy_ma_skina[id][wybrana_kategoria[id]][i])
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == i)
- {
- add(w_menu, charsmax(w_menu), " [ZALOZONE]");
- }
- else
- {
- add(w_menu, charsmax(w_menu), " [POSIADANE]");
- }
- }
- }
- menu_additem(menu, w_menu,_,_, aktywna);
- }
- }
- menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
- menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
- menu_setprop(menu, MPROP_EXITNAME, "Powrot");
- if(is_user_connected(id))
- {
- menu_display(id, menu);
- }
- return PLUGIN_CONTINUE;
- }
- public menu_wyboru_skina_hadler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- skiny_menu(id)
- return PLUGIN_CONTINUE;
- }
- wybrana_skina[id] = item + 1;
- co_zrobic_ze_skinem(id);
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- public co_zrobic_ze_skinem(id)
- {
- new menu = menu_create("Wybierz co chcesz zrobic ze skinem!", "co_zrobic_ze_skinem_hadler");
- new aktywna = menu_makecallback("funkcja_aktywna");
- new nieaktywna = menu_makecallback("funkcja_nieaktywna");
- if(czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]])
- {
- menu_additem(menu, "ZARZADZANIE SKINEM",_,_, aktywna);
- menu_additem(menu, "KUPNO SKINA",_,_, nieaktywna);
- }
- else
- {
- menu_additem(menu, "ZARZADZANIE SKINEM",_,_, nieaktywna);
- new flagi = read_flags(flaga_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- if(get_user_flags(id) & flagi)
- {
- menu_additem(menu, "KUPNO SKINA",_,_, aktywna);
- }
- else
- {
- menu_additem(menu, "KUPNO SKINA",_,_, nieaktywna);
- }
- }
- menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
- menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
- menu_setprop(menu, MPROP_EXITNAME, "Powrot");
- if(is_user_connected(id))
- {
- menu_display(id, menu);
- }
- return PLUGIN_CONTINUE;
- }
- public co_zrobic_ze_skinem_hadler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_wyboru_skina(id)
- return PLUGIN_CONTINUE;
- }
- switch(item)
- {
- case 0:
- {
- zarzadzanie_skinem(id);
- }
- case 1:
- {
- zainteresowany_skin_menu(id);
- }
- }
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- public zarzadzanie_skinem(id)
- {
- new tytul[128];
- if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 1)
- {
- formatex(tytul, charsmax(tytul), "Bron: %s^nNazwa Skina: %s^nCena Skina: %i", nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]], cena_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 2)
- {
- formatex(tytul, charsmax(tytul), "Bron: %s^nNazwa Skina: %s^nFragi Skina: %i", nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]], kille_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 3)
- {
- formatex(tytul, charsmax(tytul), "Bron: %s^nNazwa Skina: %s", nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- }
- new menu = menu_create(tytul, "zarzadzanie_skinem_hadler");
- if(czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]])
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == wybrana_skina[id])
- {
- menu_additem(menu, "ZDEJMIJ SKINA");
- }
- else
- {
- menu_additem(menu, "ZALOZ SKINA");
- }
- }
- menu_additem(menu, "PODGLAD SKINA");
- if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 1)
- {
- menu_additem(menu, "SPRZEDAJ SKINA");
- }
- menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
- menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
- menu_setprop(menu, MPROP_EXITNAME, "Powrot");
- if(is_user_connected(id))
- {
- menu_display(id, menu);
- }
- return PLUGIN_CONTINUE;
- }
- public zarzadzanie_skinem_hadler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- co_zrobic_ze_skinem(id);
- return PLUGIN_CONTINUE;
- }
- switch(item)
- {
- case 0:
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == wybrana_skina[id])
- {
- czy_ma_zalozonego[id][wybrana_kategoria[id]] = 0;
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Zdjales^x04 %s!", nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]], 0, licz_zabojstw_na_skinie[id][wybrana_kategoria[id]][wybrana_skina[id]]);
- nvault_set(vault, vaultkey, vaultdata);
- }
- else
- {
- if(!(czy_ma_zalozonego[id][wybrana_kategoria[id]] == wybrana_skina[id]))
- {
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][czy_ma_zalozonego[id][wybrana_kategoria[id]]]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][wybrana_kategoria[id]][czy_ma_zalozonego[id][wybrana_kategoria[id]]], 0, licz_zabojstw_na_skinie[id][wybrana_kategoria[id]][wybrana_skina[id]]);
- nvault_set(vault, vaultkey, vaultdata);
- czy_ma_zalozonego[id][wybrana_kategoria[id]] = 0;
- }
- czy_ma_zalozonego[id][wybrana_kategoria[id]] = wybrana_skina[id];
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Zalozyles^x04 %s!", nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]], 1, licz_zabojstw_na_skinie[id][wybrana_kategoria[id]][wybrana_skina[id]]);
- nvault_set(vault, vaultkey, vaultdata);
- }
- zarzadzanie_skinem(id);
- }
- case 1:
- {
- pokaz_motd(id, wybrana_kategoria[id], wybrana_skina[id]);
- zarzadzanie_skinem(id);
- }
- case 2:
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]] == wybrana_skina[id])
- {
- czy_ma_zalozonego[id][wybrana_kategoria[id]] = 0;
- }
- czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]] = false;
- ffa_ustaw_walute(id, ffa_zwrot_waluty(id) + cena_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]], 0, licz_zabojstw_na_skinie[id][wybrana_kategoria[id]][wybrana_skina[id]]);
- nvault_set(vault, vaultkey, vaultdata);
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Sprzedales^x04 %s^x03 za^x04 %i monet!", nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]], cena_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- menu_wyboru_skina(id);
- }
- }
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- public zainteresowany_skin_menu(id)
- {
- new tytul[128];
- if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 1)
- {
- formatex(tytul, charsmax(tytul), "Bron: %s^nNazwa Skina: %s^nCena Skina: %i", nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]], cena_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 2)
- {
- formatex(tytul, charsmax(tytul), "Bron: %s^nNazwa Skina: %s^nFragi Skina: %i", nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]], kille_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 3)
- {
- formatex(tytul, charsmax(tytul), "Bron: %s^nNazwa Skina: %s", nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- }
- new menu = menu_create(tytul, "zainteresowany_skin_menu_hadler");
- if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 1)
- {
- menu_additem(menu, "KUP SKINA");
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 2)
- {
- menu_additem(menu, "ODBLOKUJ SKINA");
- }
- else if(ustawienia_skina[wybrana_kategoria[id]][wybrana_skina[id]] == 3)
- {
- menu_additem(menu, "ODBLOKUJ SKINA");
- }
- menu_additem(menu, "PODGLAD SKINA");
- menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
- menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
- menu_setprop(menu, MPROP_EXITNAME, "Powrot");
- if(is_user_connected(id))
- {
- menu_display(id, menu);
- }
- return PLUGIN_CONTINUE;
- }
- public zainteresowany_skin_menu_hadler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- co_zrobic_ze_skinem(id)
- return PLUGIN_CONTINUE;
- }
- switch(item)
- {
- case 0:
- {
- kupno_skina(id, wybrana_kategoria[id], wybrana_skina[id]);
- }
- case 1:
- {
- pokaz_motd(id, wybrana_kategoria[id], wybrana_skina[id]);
- zainteresowany_skin_menu(id);
- }
- }
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- public kupno_skina(id, kategoria, skin)
- {
- if(ustawienia_skina[kategoria][skin] == 1)
- {
- if(ffa_zwrot_waluty(id) >= cena_skina[wybrana_kategoria[id]][wybrana_skina[id]])
- {
- czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]] = true;
- ffa_ustaw_walute(id, ffa_zwrot_waluty(id) - cena_skina[wybrana_kategoria[id]][wybrana_skina[id]]);
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Kupiles^x04 %s!", nazwa_skina[kategoria][skin]);
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[kategoria][skin]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][kategoria][skin], 0, licz_zabojstw_na_skinie[id][kategoria][skin]);
- nvault_set(vault, vaultkey, vaultdata);
- zaloz_skina(id, kategoria, skin);
- }
- else
- {
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Masz za malo monet!");
- }
- }
- else if(ustawienia_skina[kategoria][skin] == 2)
- {
- new stats[8],bodyhits[8];
- get_user_stats(id, stats, bodyhits);
- if(stats[0] >= kille_skina[wybrana_kategoria[id]][wybrana_skina[id]])
- {
- czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]] = true;
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Odblokowales^x04 %s!", nazwa_skina[kategoria][skin]);
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[kategoria][skin]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][kategoria][skin], 0, licz_zabojstw_na_skinie[id][kategoria][skin]);
- nvault_set(vault, vaultkey, vaultdata);
- zaloz_skina(id, kategoria, skin);
- }
- else
- {
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Masz za malo fragow!");
- }
- }
- else if(ustawienia_skina[kategoria][skin] == 3)
- {
- new flagi = read_flags(flaga_skina[kategoria][skin]);
- if(get_user_flags(id) & flagi)
- {
- czy_ma_skina[id][wybrana_kategoria[id]][wybrana_skina[id]] = true;
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Odblokowales^x04 %s!", nazwa_skina[kategoria][skin]);
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[kategoria][skin]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][kategoria][skin], 0, licz_zabojstw_na_skinie[id][kategoria][skin]);
- nvault_set(vault, vaultkey, vaultdata);
- zaloz_skina(id, kategoria, skin);
- }
- else
- {
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Nie masz odpowiedniej flagi!");
- }
- }
- menu_wyboru_skina(id);
- }
- public zaloz_skina(id, kategoria, skin)
- {
- if(czy_ma_zalozonego[id][wybrana_kategoria[id]])
- {
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[wybrana_kategoria[id]][czy_ma_zalozonego[id][wybrana_kategoria[id]]]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][wybrana_kategoria[id]][czy_ma_zalozonego[id][wybrana_kategoria[id]]], 0, licz_zabojstw_na_skinie[id][czy_ma_zalozonego[id][wybrana_kategoria[id]]]);
- nvault_set(vault, vaultkey, vaultdata);
- czy_ma_zalozonego[id][kategoria] = 0;
- }
- czy_ma_zalozonego[id][kategoria] = skin;
- ColorChat(id, TEAM_COLOR, "^x04[System Skinow]^x03 Zalozyles^x04 %s!", nazwa_skina[kategoria][skin]);
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[wybrana_kategoria[id]], nazwa_skina[kategoria][skin]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][kategoria][skin], 1, licz_zabojstw_na_skinie[id][kategoria][skin]);
- nvault_set(vault, vaultkey, vaultdata);
- }
- #define g_Buffer 2536
- public pokaz_motd(id, kategoria, skin)
- {
- new Len;
- new Data[g_Buffer];
- Len = formatex(Data[Len], g_Buffer - Len, "<html><body style=^"padding: 0; margin: 0;^"><img style=^"width: 100%%; height: 100%%;^" src=^"%s^">", motd_skina[kategoria][skin]);
- Len += formatex(Data[Len],g_Buffer - Len,"</center></body></html>");
- show_motd(id, Data, nazwa_skina[kategoria][skin]);
- }
- public plugin_natives()
- {
- register_native("boski_skiny_startrack", "pobierz_startrack", 1);
- register_native("boski_skiny_startrack_czy_ma", "pobierz_czy_ma_startrack", 1);
- }
- public pobierz_startrack(id)
- {
- new wid = get_user_weapon(id);
- new zwrot;
- if(pobierz_czy_ma_startrack(id))
- {
- zwrot = licz_zabojstw_na_skinie[id][obecna_bron(wid)][czy_ma_zalozonego[id][obecna_bron(wid)]];
- }
- return zwrot;
- }
- public pobierz_czy_ma_startrack(id)
- {
- new zwrot;
- new wid = get_user_weapon(id);
- if(czy_ma_zalozonego[id][obecna_bron(wid)])
- {
- zwrot = true;
- }
- else
- {
- zwrot = false;
- }
- return zwrot;
- }
- public DeathMsg()
- {
- new kid = read_data(1);
- new wid = get_user_weapon(kid);
- if(czy_ma_zalozonego[kid][obecna_bron(wid)])
- {
- ++ licz_zabojstw_na_skinie[kid][obecna_bron(wid)][czy_ma_zalozonego[kid][obecna_bron(wid)]];
- zapisz_kile(kid, obecna_bron(wid), czy_ma_zalozonego[kid][obecna_bron(wid)])
- }
- }
- public zapisz_kile(id, kategoria, skin)
- {
- new sid[33];
- get_user_authid(id, sid, charsmax(sid));
- new vaultkey[128];
- formatex(vaultkey, charsmax(vaultkey), "%s-%s%s", sid, nazwa_kategoria_skina[kategoria], nazwa_skina[kategoria][skin]);
- new vaultdata[128];
- formatex(vaultdata, charsmax(vaultdata), "%i %i %i", czy_ma_skina[id][kategoria][skin], 1, licz_zabojstw_na_skinie[id][kategoria][skin]);
- nvault_set(vault, vaultkey, vaultdata);
- }
- /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
- *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1045\\ f0\\ fs16 \n\\ par }
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement