Raised This Month: $32 Target: $400
 8% 

VIP Plugin Also Restart With Cvar sv_restart


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Alber9091
Veteran Member
Join Date: Jun 2014
Location: Karachi, Pakistan
Old 06-11-2017 , 08:28   VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #1

Hello Guyzz ..!!

This is normal vip plugin script, actually I run warmup config on my server. So, once, sv_restart "1" cvar is executed. The Plugin don't restart and it starts giving equips like nades, normally which is for 2nd round, if there is no warmp up round. Similarly, plugin instead of giving weapons after 3 rounds, starts giving weapons after 2 rounds, means plugin counts warmup round as actual round. So, I just want little modification in this script that once sv_restart cvar is executed, VIP plugin also restarts.

PHP Code:
#define DAMAGE_RECIEVED
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

static const COLOR[] = "^x04" //green
static const CONTACT[] = ""
new maxplayers
new gmsgSayText
new mpdmkbmhb
new g_MsgSync
new health_add
new health_hs_add
new health_max
new nKiller
new nKiller_hp
new nHp_add
new nHp_max
new g_awp_active
new g_menu_active
new CurrentRound
new bool:HasC4[33]
#define Keysrod (1<<0)|(1<<1)|(1<<9) // Keys: 1234567890
#if defined DAMAGE_RECIEVED
    
new g_MsgSync2
#endif

public plugin_init()
{
    
register_plugin("VIP Eng Version""3.0""Dunno")
    
mpd register_cvar("money_per_damage","3")
    
mkb register_cvar("money_kill_bonus","200")
    
mhb register_cvar("money_hs_bonus","500")
    
health_add register_cvar("amx_vip_hp""15")
    
health_hs_add register_cvar("amx_vip_hp_hs""30")
    
health_max register_cvar("amx_vip_max_hp""100")
    
g_awp_active register_cvar("awp_active""0")
    
g_menu_active register_cvar("menu_active""1")
    
register_event("Damage","Damage","b")
    
register_event("DeathMsg","death_msg","a")
    
register_menucmd(register_menuid("rod"), Keysrod"Pressedrod")
    
register_clcmd("awp","HandleCmd")
        
register_clcmd("sg550","HandleCmd")
        
register_clcmd("g3sg1","HandleCmd")
    
register_clcmd("say /wantvip","ShowMotd")
    
maxplayers get_maxplayers()
    
gmsgSayText get_user_msgid("SayText")
    
register_clcmd("say""handle_say")
    
register_cvar("amx_contactinfo"CONTACTFCVAR_SERVER)
    
register_logevent("LogEvent_RoundStart"2"1=Round_Start" );
    
register_event("TextMsg","Event_RoundRestart","a","2&#Game_w")
    
register_event("TextMsg","Event_RoundRestart","a","2&#Game_C");
    
register_event("DeathMsg""hook_death""a""1>0")
    
register_event("Damage""on_damage""b""2!0""3=0""4!0")
    
g_MsgSync CreateHudSyncObj()
#if defined DAMAGE_RECIEVED
    
g_MsgSync2 CreateHudSyncObj()
#endif    
}

public 
on_damage(id)
{
    new 
attacker get_user_attacker(id)

#if defined DAMAGE_RECIEVED
    // id should be connected if this message is sent, but lets check anyway
    
if ( is_user_connected(id) && is_user_connected(attacker) )
    if (
get_user_flags(attacker) & ADMIN_LEVEL_H)
    {
        new 
damage read_data(2)

        
set_hudmessage(255000.450.5020.14.00.10.1, -1)
        
ShowSyncHudMsg(idg_MsgSync2"%i^n"damage)
#else
    
if ( is_user_connected(attacker) && if (get_user_flags(attacker) & ADMIN_LEVEL_H) )
    {
        new 
damage read_data(2)
#endif
        
set_hudmessage(0100200, -1.00.5520.14.00.020.02, -1)
        
ShowSyncHudMsg(attackerg_MsgSync"%i^n"damage)
    }
}

public 
Damage(id)
{
    new 
weaponhitpointattacker get_user_attacker(id,weapon,hitpoint)
    if(
attacker<=maxplayers && is_user_alive(attacker) && attacker!=id)
    if (
get_user_flags(attacker) & ADMIN_LEVEL_H
    {
        new 
money read_data(2) * get_pcvar_num(mpd)
        if(
hitpoint==1money += get_pcvar_num(mhb)
        
cs_set_user_money(attacker,cs_get_user_money(attacker) + money)
    }
}

public 
death_msg()
{
    if(
read_data(1)<=maxplayers && read_data(1) && read_data(1)!=read_data(2)) cs_set_user_money(read_data(1),cs_get_user_money(read_data(1)) + get_pcvar_num(mkb) - 300)
}

public 
LogEvent_RoundStart()
{
    
CurrentRound++;
    new 
players[32], playerpnum;
    
get_players(playerspnum"a");
    for(new 
0pnumi++)
    {
        
player players[i];
        if(
is_user_alive(player) && get_user_flags(player) & ADMIN_LEVEL_H)
        {
            
give_item(player"weapon_hegrenade")
            
give_item(player"weapon_flashbang")
            
give_item(player"weapon_flashbang")
            
give_item(player"weapon_smokegrenade")
            
give_item(player"item_assaultsuit")
            
give_item(player"item_thighpack")
            
            if (!
get_pcvar_num(g_menu_active))
                return 
PLUGIN_CONTINUE
            
            
if(CurrentRound >= 3)
            {
                
Showrod(player);
            }
        }
    }
    return 
PLUGIN_HANDLED
}

public 
Event_RoundRestart()
{
    
CurrentRound=0;
}

public 
hook_death()
{
   
// Killer id
   
nKiller read_data(1)
   
   if ( (
read_data(3) == 1) && (read_data(5) == 0) )
   {
      
nHp_add get_pcvar_num (health_hs_add)
   }
   else
      
nHp_add get_pcvar_num (health_add)
   
nHp_max get_pcvar_num (health_max)
   
// Updating Killer HP
   
if(!(get_user_flags(nKiller) & ADMIN_LEVEL_H))
   return;

   
nKiller_hp get_user_health(nKiller)
   
nKiller_hp += nHp_add
   
// Maximum HP check
   
if (nKiller_hp nHp_maxnKiller_hp nHp_max
   set_user_health
(nKillernKiller_hp)
   
// Hud message "Healed +15/+30 hp"
   
set_hudmessage(02550, -1.00.1501.01.00.10.1, -1)
   
show_hudmessage(nKiller"Healed +%d hp"nHp_add)
   
// Screen fading
   
message_begin(MSG_ONEget_user_msgid("ScreenFade"), {0,0,0}, nKiller)
   
write_short(1<<10)
   
write_short(1<<10)
   
write_short(0x0000)
   
write_byte(0)
   
write_byte(0)
   
write_byte(200)
   
write_byte(75)
   
message_end()
 
}

public 
Showrod(id) {
    
show_menu(idKeysrod"Free VIP Guns^n\w1. Get M4A1+Deagle ^n\w2. Get AK47+Deagle^n0. Exit^n", -1"rod"// Display menu
}
public 
Pressedrod(idkey) {
    
/* Menu:
    * VIP Menu
    * 1. Get M4A1+Deagle
    * 2. Get AK47+Deagle
    * 0. Exit
    */
    
switch (key) {
        case 
0: { 
            if (
user_has_weapon(idCSW_C4) && get_user_team(id) == 1)
                
HasC4[id] = true;
            else
                
HasC4[id] = false;
            
            
strip_user_weapons (id)
            
give_item(id,"weapon_m4a1")
            
give_item(id,"ammo_556nato")
            
give_item(id,"ammo_556nato")
            
give_item(id,"ammo_556nato")
            
give_item(id,"weapon_deagle")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"weapon_knife")
            
give_item(id,"weapon_hegrenade")
            
give_item(id"weapon_flashbang");
            
give_item(id"weapon_flashbang");
            
give_item(id"weapon_smokegrenade");
            
give_item(id"item_assaultsuit");
            
give_item(id"item_thighpack");
            
client_print(idprint_center"You Taked Free M4A1 and Deagle")
            
            if (
HasC4[id])
            {
                
give_item(id"weapon_c4");
                
cs_set_user_plantid );
            }
            }
        case 
1: { 
            if (
user_has_weapon(idCSW_C4) && get_user_team(id) == 1)
                
HasC4[id] = true;
            else
                
HasC4[id] = false;
            
            
strip_user_weapons (id)
            
give_item(id,"weapon_ak47")
            
give_item(id,"ammo_762nato")
            
give_item(id,"ammo_762nato")
            
give_item(id,"ammo_762nato")
            
give_item(id,"weapon_deagle")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"ammo_50ae")
            
give_item(id,"weapon_knife")
            
give_item(id,"weapon_hegrenade")
            
give_item(id"weapon_flashbang");
            
give_item(id"weapon_flashbang");
            
give_item(id"weapon_smokegrenade");
            
give_item(id"item_assaultsuit");
            
give_item(id"item_thighpack");
            
client_print(idprint_center"You Taked Free AK47 and Deagle")
            
            if (
HasC4[id])
            {
                
give_item(id"weapon_c4");
                
cs_set_user_plantid );
            }
            }
        case 
9: {             
        }
    }
    return 
PLUGIN_CONTINUE
}

public 
HandleCmd(id){
    if (!
get_pcvar_num(g_awp_active))
      return 
PLUGIN_CONTINUE
    
if(get_user_flags(id) & ADMIN_LEVEL_H
        return 
PLUGIN_CONTINUE
    client_print
(idprint_center"Sniper's Only For VIP's")
    return 
PLUGIN_HANDLED
}

public 
ShowMotd(id)
{
 
show_motd(id"vip.txt")
}
public 
client_authorized(id)
{
 
set_task(30.0"PrintText" ,id)
}
public 
PrintText(id)
{
 
client_print(idprint_chat"[VIP] write /wantvip and u will see how get VIP and VIP privilegies.")
}

public 
handle_say(id) {
    new 
said[192]
    
read_args(said,192)
    if( ( 
containi(said"who") != -&& containi(said"admin") != -) || contain(said"/vips") != -)
        
set_task(0.1,"print_adminlist",id)
    return 
PLUGIN_CONTINUE
}

public 
print_adminlist(user
{
    new 
adminnames[33][32]
    new 
message[256]
    new 
contactinfo[256], contact[112]
    new 
idcountxlen
    
    
for(id id <= maxplayers id++)
        if(
is_user_connected(id))
            if(
get_user_flags(id) & ADMIN_LEVEL_H)
                
get_user_name(idadminnames[count++], 31)

    
len format(message255"%s VIP ONLINE: ",COLOR)
    if(
count 0) {
        for(
count x++) {
            
len += format(message[len], 255-len"%s%s "adminnames[x], < (count-1) ? ", ":"")
            if(
len 96 ) {
                
print_message(usermessage)
                
len format(message255"%s ",COLOR)
            }
        }
        
print_message(usermessage)
    }
    else {
        
len += format(message[len], 255-len"No VIP online.")
        
print_message(usermessage)
    }
    
    
get_cvar_string("amx_contactinfo"contact63)
    if(
contact[0])  {
        
format(contactinfo111"%s Contact Server Admin -- %s"COLORcontact)
        
print_message(usercontactinfo)
    }
}

print_message(idmsg[]) {
    
message_begin(MSG_ONEgmsgSayText, {0,0,0}, id)
    
write_byte(id)
    
write_string(msg)
    
message_end()
}

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1063\\ f0\\ fs16 \n\\ par }
*/ 
Alber9091 is offline
Alber9091
Veteran Member
Join Date: Jun 2014
Location: Karachi, Pakistan
Old 06-11-2017 , 22:31   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #2

Sorry for doing addition, but rather, trying to explain my things bit more clearly, some what regestering an events.like this?

PHP Code:
public LogEvent_GameRestart()
{
CurrentRound 0;
if (
g_bFirstRound)
g_bFirstRound false;

A friend of me helped me with some of the multiple events like this, but it didn't helped and things were still same.

We also tried this in warm up config: [neither it helped]

Quote:
//show
amx_task 1 "amxx pause Khan_VIP.amxx" s
amx_task 41 "sv_restartround 1" s
amx_task 42 "amxx unpause VIP.amxx" s
So, if u guyzz have any alternate solution or way to help, please help, if u can.

P.S: There were no debug/error, logs.

Last edited by Alber9091; 06-11-2017 at 22:37.
Alber9091 is offline
EFFx
Veteran Member
Join Date: Feb 2016
Location: São Paulo, Brasil
Old 06-11-2017 , 22:36   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #3

PHP Code:
public Event_RoundRestart() 

    
CurrentRound=0

It runs when sv_restart and Game commecing are executed. As far I can see, the menu only open when that interger is 3 or more than this.

PHP Code:
public LogEvent_RoundStart() 

    
CurrentRound++; 
    new 
players[32], playerpnum
    
get_players(playerspnum"a"); 
    for(new 
0pnumi++) 
    { 
        
player players[i]; 
        if(
is_user_alive(player) && get_user_flags(player) & ADMIN_LEVEL_H
        { 
            
give_item(player"weapon_hegrenade"
            
give_item(player"weapon_flashbang"
            
give_item(player"weapon_flashbang"
            
give_item(player"weapon_smokegrenade"
            
give_item(player"item_assaultsuit"
            
give_item(player"item_thighpack"
             
            if (!
get_pcvar_num(g_menu_active)) 
                return 
PLUGIN_CONTINUE 
             
            
if(CurrentRound >= 3
            { 
                
Showrod(player); 
            } 
        } 
    } 
    return 
PLUGIN_HANDLED 

As you can see, there's no check to see if that interger is 3 or more than 3 for give the grenades. Only a check for open the menu.
__________________
• Ranking System • AutoMix 5vs5 System
• Web Ban System • Plugins for free

____________________________________________
For private works:
• Discord: EFFEXo#8850 • Steam: EFFEXo
EFFx is offline
Old 06-13-2017, 19:19
Alber9091
This message has been deleted by Alber9091. Reason: Nvm
Alber9091
Veteran Member
Join Date: Jun 2014
Location: Karachi, Pakistan
Old 06-13-2017 , 20:39   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #4

Quote:
Originally Posted by EFFx View Post
PHP Code:
public Event_RoundRestart() 

    
CurrentRound=0

But this thing don't work, I don't know, why?

Last edited by Alber9091; 06-13-2017 at 20:46.
Alber9091 is offline
EFFx
Veteran Member
Join Date: Feb 2016
Location: São Paulo, Brasil
Old 06-13-2017 , 20:46   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #5

PHP Code:
public LogEvent_RoundStart() 

    
CurrentRound++; 
    
    if(
CurrentRound >= 3)
    {
        new 
players[32], playerpnum
        
get_players(playerspnum"a"); 
        for(new 
0pnumi++) 
        { 
            
player players[i]; 
            if(
is_user_alive(player) && get_user_flags(player) & ADMIN_LEVEL_H
            { 
                
give_item(player"weapon_hegrenade"
                
give_item(player"weapon_flashbang"
                
give_item(player"weapon_flashbang"
                
give_item(player"weapon_smokegrenade"
                
give_item(player"item_assaultsuit"
                
give_item(player"item_thighpack"
                
                if(
get_pcvar_num(g_menu_active)) 
                {
                    
Showrod(player); 
                }
            } 
        } 
    }
    return 
PLUGIN_HANDLED 

It'll only give the grenades and will open the menu when CurrentRound is 3 or more than 3.
__________________
• Ranking System • AutoMix 5vs5 System
• Web Ban System • Plugins for free

____________________________________________
For private works:
• Discord: EFFEXo#8850 • Steam: EFFEXo
EFFx is offline
Alber9091
Veteran Member
Join Date: Jun 2014
Location: Karachi, Pakistan
Old 06-13-2017 , 21:24   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #6

Quote:
Originally Posted by EFFx View Post
PHP Code:
public LogEvent_RoundStart() 

    
CurrentRound++; 
    
    if(
CurrentRound >= 3)
    {
        new 
players[32], playerpnum
        
get_players(playerspnum"a"); 
        for(new 
0pnumi++) 
        { 
            
player players[i]; 
            if(
is_user_alive(player) && get_user_flags(player) & ADMIN_LEVEL_H
            { 
                
give_item(player"weapon_hegrenade"
                
give_item(player"weapon_flashbang"
                
give_item(player"weapon_flashbang"
                
give_item(player"weapon_smokegrenade"
                
give_item(player"item_assaultsuit"
                
give_item(player"item_thighpack"
                
                if(
get_pcvar_num(g_menu_active)) 
                {
                    
Showrod(player); 
                }
            } 
        } 
    }
    return 
PLUGIN_HANDLED 

It'll only give the grenades and will open the menu when CurrentRound is 3 or more than 3.
Normally, plugin gives nades and armor after first round [if no warm up cfg] and after 3 rounds it shows menu and still gives armor + nades.

If warm up cfg, it gives nades and armor after warm up round [i.e: sv_restart "1"] instead of giving them in 2nd round, its starts giving from 1st round and seems like no works
PHP Code:
public*Event_RoundRestart() 

Last edited by Alber9091; 06-13-2017 at 22:18. Reason: Fixed Position Of Letter Works.
Alber9091 is offline
EFFx
Veteran Member
Join Date: Feb 2016
Location: São Paulo, Brasil
Old 06-13-2017 , 21:42   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #7

Worked?
__________________
• Ranking System • AutoMix 5vs5 System
• Web Ban System • Plugins for free

____________________________________________
For private works:
• Discord: EFFEXo#8850 • Steam: EFFEXo
EFFx is offline
Alber9091
Veteran Member
Join Date: Jun 2014
Location: Karachi, Pakistan
Old 06-13-2017 , 22:16   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #8

Quote:
Originally Posted by EFFx View Post
Worked?
Your coding some what gives details that it will work totally after 3 rounds. But what I wanted is, after warmup round.
Actaully when warmup round is ended sv_restart "1" cvar is executed by the server. So, I want is that plugin starts giving armor and nades skipping the first round [i.e: pistol round, after warmup round (sv_restart "1")] and menu appears after 3 rounds with equips (nades and armor) still provided to the player. Some what, conclusion, Plugin also restarts with sv_restart cvar.
Alber9091 is offline
EFFx
Veteran Member
Join Date: Feb 2016
Location: São Paulo, Brasil
Old 06-13-2017 , 23:44   Re: VIP Plugin Also Restart With Cvar sv_restart
Reply With Quote #9

PHP Code:
if(CurrentRound >= 4
__________________
• Ranking System • AutoMix 5vs5 System
• Web Ban System • Plugins for free

____________________________________________
For private works:
• Discord: EFFEXo#8850 • Steam: EFFEXo

Last edited by EFFx; 06-13-2017 at 23:44.
EFFx is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 18:49.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode