Wszystko się już prawie zgadza, oprócz tego, że losuje vipa dla dwóch osób
Tak powinno być w tym pluginie bo jest svip i vip. Jak nie chcesz to łap to powinno pomóc.
#include <amxmodx> #include <fun> #include <colorchat> #define LOSOWANIE_VIP_OD 15 #define LOSOWANIE_VIP_DO_SVIP_OD 28 #define FLAGA_VIP ADMIN_LEVEL_H #define FLAGA_SVIP ADMIN_LEVEL_G new iPlayer new tmp; public plugin_init(){ register_plugin("Losowanie vipa", "1.0", "Wielkie Jooool"); register_logevent("Poczatek_Rundy", 2, "1=Round_Start") set_task(30.0, "UsunVipa", .flags="d") //set_task(120.0, "advert", _, _, _, "b") } /* public advert() ColorChat(0, GREEN, "[FREE VIP]^x01 Zawsze w %d rundzie bedzie losowany^x03 VIP.^x01 Na serwerze musi byc conajmniej %d graczy, by losowanie sie odbylo!", LOSOWANIE_W_KTOREJ_RUNDZIE, LOSOWANIE_VIP_OD); */ public Poczatek_Rundy() { set_task(20.0, "sprawdz") } public sprawdz() { ColorChat(0, GREEN, "[DARMOWY VIP]^x01 Uwaga! za moment zostanie rozlosowany^x03 darmowy vip^x01 na ta mape!"); if(get_playersnum()>=LOSOWANIE_VIP_DO_SVIP_OD){ Losuj_Vipa(FLAGA_SVIP) tmp = FLAGA_SVIP; return PLUGIN_HANDLED } else if(LOSOWANIE_VIP_DO_SVIP_OD > get_playersnum()>= LOSOWANIE_VIP_OD) { Losuj_Vipa(FLAGA_VIP) tmp = FLAGA_VIP return PLUGIN_HANDLED } for(new i=1; i<=32; i++){ if(is_user_connected(i)) ColorChat(i, GREEN, "[DARMOWY VIP]^x01 Niestety, na serwerze nie bylo %d osob! Losowanie nie odbedzie sie", LOSOWANIE_VIP_OD); } return PLUGIN_CONTINUE } public client_disconnect(id){ if(id == iPlayer){ remove_user_flags(iPlayer, tmp) } } public Losuj_Vipa(FLAGA) { new players[32], count; get_players(players, count, "ch"); if(count) { iPlayer = players[random(count)]; if(get_user_flags(iPlayer) & FLAGA_VIP || get_user_flags(iPlayer) & FLAGA_SVIP){ ColorChat(0, RED, "[FREE VIP]^x01 Zostala wylosowana osoba, ktora jest VIPEM! Losowanie przepada.^x04 Do nastepnej mapy!"); return PLUGIN_HANDLED } new Name[32]; get_user_name(iPlayer, Name, charsmax(Name)) set_user_flags(iPlayer, get_user_flags(iPlayer) | FLAGA); ColorChat(0, TEAM_COLOR, "^x04[DARMOWY VIP]^x01 Gratulacje dla gracza ^x03 %s, ktory uzyskal w wyniku losowania darmowego %s na tej mapie!", Name, FLAGA == FLAGA_VIP ? "VIPA":"S-VIPA"); set_hudmessage(255, 125, 0, -1.0, 0.40) show_hudmessage(0, "Gratulacje dla gracza %s, ktory uzyskal w wyniku losowania darmowego %s na tej mapie!", Name, FLAGA == FLAGA_VIP ? "VIPA":"S-VIPA") } return PLUGIN_CONTINUE; } public UsunVipa(){ ColorChat(0, TEAM_COLOR, "[KONIEC] Dziekujemy za udzial w zabawie. Vip zostal usuniety. Nastepne losowanie na nastepnej mapie w zaleznosci od ilosci graczy"); remove_user_flags(iPlayer, tmp); }