#include <amxmodx>
#include <cstrike>
#include <engine>
#include <fun>
#include <hamsandwich>
forward amxbans_admin_connect(id);
new bool:g_Vip[33], gRound=0, weapon_id;
public plugin_init(){
register_plugin("VIP Ultimate", "12.3.0.2", "benio101 & speedkill");
RegisterHam(Ham_Spawn, "player", "SpawnedEventPre", 1);
register_event("HLTV", "event_new_round", "a", "1=0", "2=0");
register_logevent("GameCommencing", 2, "1=Game_Commencing");
}
public client_authorized(id){
if(get_user_flags(id) & 524288 == 524288){
client_authorized_vip(id);
}
}
public client_authorized_vip(id){
g_Vip[id]=true;
}
public client_disconnect(id){
if(g_Vip[id]){
client_disconnect_vip(id);
}
}
public client_disconnect_vip(id){
g_Vip[id]=false;
}
public SpawnedEventPre(id){
if(g_Vip[id]){
if(is_user_alive(id)){
SpawnedEventPreVip(id);
}
}
}
public SpawnedEventPreVip(id){
set_user_health(id, get_user_health(id)+10);
new henum=(user_has_weapon(id,CSW_HEGRENADE)?cs_get_user_bpammo(id,CSW_HEGRENADE):0);
give_item(id, "weapon_hegrenade");
++henum;
if(get_pdata_cbase(id, 368)==-1){
if(gRound>=2){
if(get_user_team(id)==1){
give_item(id, "weapon_ak47");
give_item(id, "ammo_762nato");
weapon_id=find_ent_by_owner(-1, "weapon_ak47", id);
if(weapon_id)cs_set_weapon_ammo(weapon_id, 30);
cs_set_user_bpammo(id, CSW_AK47, 90);
}
if(get_user_team(id)==2){
give_item(id, "weapon_m4a1");
give_item(id, "ammo_556nato");
weapon_id=find_ent_by_owner(-1, "weapon_m4a1", id);
if(weapon_id)cs_set_weapon_ammo(weapon_id, 30);
cs_set_user_bpammo(id, CSW_M4A1, 90);
}
}
}
if(get_user_team(id)==2){
give_item(id, "item_thighpack");
}
}
public event_new_round(){
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;
}
}
}
public GameCommencing(){
gRound=0;
}
public amxbans_admin_connect(id){
client_authorized(id);
}
public Poczatek_Rundy(){
if(++gRound == 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;
}
}
}