[URL] https://amxx.pl/topic/142756-losowanie-v...-serwerze/
**Losowanie VIP'a/SVIP'a w X rundzie w zależności od liczby graczy na
serwerze**
Jako, że święta już trwają, doszedłem do wniosku, że dam się ponieść Magii
Świąt i udostępnię jeden z pluginów, który zrobiłem kiedyś.
![[Image: swieta.gif]](https://amxx.pl/public/style_emoticons/default/swieta.gif)
![[Image: swieta.gif]](https://amxx.pl/public/style_emoticons/default/swieta.gif)
![[Image: swieta.gif]](https://amxx.pl/public/style_emoticons/default/swieta.gif)
_**
![[Image: opis.png]](http://amxx.pl/foty/grafikap/opis.png)
**Polega on na tym, że w X rundzie ( wybranej przez nas ) odbywa się losowanie
na vipa w zależności od liczby graczy. Może to być VIP lub SVIP.**
**Ja na swoim serwerze przykładowo miałem vipa od 15 osób, zaś svipa od 28 i
losowanie w 3 rundzie ( takie też są wartości podstawowe ).**
**Vip przyznawany jest na okres jednej mapy ( aktualnej ), 30s przed jej
końcem jest zabierany.**
**Jeżeli zostanie wylosowana osoba z vipem, wtedy losowanie przepada na tą
mapę.**
**Oczywiście podane są informacje, kto wylosował vipa w hud i say poprzez
moduł colorchat.**
**Co 120 sekund jest informacja o tym, że taki plugin istnieje i będzie
losowany vip co mapę.**
**Domyślnie VIP \- ADMIN_LEVEL_H ( flaga t )**
**Domyślnie SVIP - ADMIN_LEVEL_G ( flaga s )**
_**Ważne - przyznawana jest flaga od vipa/svipa a nie svip/ vip!**_
**Dodałem drugą wersję, losowanie tylko na jedną flagę ( nie na dwie ) -
załącznik losowanievip**
![[Image: instalacja.png]](http://amxx.pl/foty/grafikap/instalacja.png)
**Jedyne co musisz zrobić to wrzucić plugin na serwer, no i w zależności od
vipa jakiego używasz ( a zakładam, że vipa z vipgeneratora, będzie trzeba w
nim dokonać trochę zmian, gdyż ten z generatora przyznaję vipa tylko raz, no a
skoro w moim pluginie vip jest przyznawany w 3 rundzie to mamy problem
![[Image: haha.gif]](https://amxx.pl/public/style_emoticons/default/haha.gif)
ważne, przyznawana jest sama flaga, na którą zwykle są vipy.**
**Niedługo dodam post, w którym wytłumaczę co trzeba zrobić.**
_**
![[Image: konfiguracja.png]](http://amxx.pl/foty/grafikap/konfiguracja.png)
#define LOSOWANIE_VIP_OD 15
#define LOSOWANIE_VIP_DO_SVIP_OD 28
#define LOSOWANIE_W_KTOREJ_RUNDZIE 3
#define FLAGA_VIP ADMIN_LEVEL_H
#define FLAGA_SVIP ADMIN_LEVEL_G
**Mamy 5 takich "definicje" na górze pluginu, które jasno opisują, która za co
odpowiada ( zmieniamy tylko liczbę )!**
**Przy flaga_vip podajemy naszą flagę vipowska (domyślnie T)**
**Przy flaga_Svip podajemy naszą flagę svipowską ( domyślnie S)**
_**
![[Image: inneinformacje.png]](http://amxx.pl/foty/grafikap/inneinformacje.png)
**Kompatybilność z vipem z generatora**
**Przypadek nr 1. Nie mamy w vipie żadnego dodatku dla gracza uruchamiającego
się w X rundzie**
1\. Dodajemy jedną zmienną, która będzie się nazywała przykładowo: **gRunda;**
2\. Dodajemy do **plugins_init()** ten oto kod
register_logevent("Poczatek_Rundy", 2, "1=Round_Start")
3\. Na samym dole kodu dajemy taką o to funkcję
public Poczatek_Rundy(){
if(++gRunda == 3){
for(new i=1; i<=32; i++){
if(is_user_connected(i) && !g_Vip[i] && get_user_flags(i) & ADMIN_LEVEL_H)
g_Vip[i] = true;
}
}
}
**Przypadek nr 2. Mamy w vipie dodatek, który uruchamia się dla gracza od X
rundy.**
Zamieniamy w funkcji **public event_new_round()**
Podmieniamy **++gRound** na taki oto kod:
if(++gRound == 4){ // dajmy flage po rundzie, w ktorej zostal rozlosowany vip, czyli jezeli masz losowanie w 3, tutaj daj 4.
for(new i=1; i<=32; i++){
if(is_user_connected(i) && !g_Vip[i] && get_user_flags(i) & ADMIN_LEVEL_H) // tutaj wlasna flaga dowolna dla vipa ( ADMIN_LEVEL_H)
g_Vip[i] = true;
}
}
}
**Wesołych Świąt!**
Załączniki:
FreeVip.sma
losowanievip.sma