Raised This Month: $51 Target: $400
 12% 

Hud Message (More than 4 Channels) read first


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
^SmileY
Veteran Member
Join Date: Jan 2010
Location: Brazil [<o>]
Old 05-16-2014 , 14:24   Hud Message (More than 4 Channels) read first
Reply With Quote #1

Hi, i tried to put more than 4 channes in hudlist using this way:

PHP Code:
#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

#pragma semicolon 1

#define PUG_TASK_AUTO 1990
#define PUG_MINPLAYERS_CAPTAIN 4
#define isTeam(%0) (CS_TEAM_T <= cs_get_user_team(%0) <= CS_TEAM_CT)

new g_iCaptain[2];
new const 
g_sHead[] = "[PUG]";

new 
g_pSvRestart;

public 
plugin_init()
{
    
register_plugin("Captains",AMXX_VERSION_STR,"SmileY");
    
    
register_concmd("pug_captains","PugCaptains");
    
    
g_pSvRestart get_cvar_pointer("sv_restart");
}

public 
PugCaptains()
{
    new 
iPlayers[32],iNum;
    
get_players(iPlayers,iNum,"h");
    
    new 
iPlayer,sName[2][32];
    
    if(
iNum PUG_MINPLAYERS_CAPTAIN)
    {
        
arrayset(g_iCaptain,0,sizeof(g_iCaptain));
        
        for(new 
i;iNum;i++)
        {
            
iPlayer iPlayers[i];
            
            if(!
g_iCaptain[0])
            {
                
g_iCaptain[0] = iPlayer;
                
get_user_name(iPlayer,sName[0],charsmax(sName[]));
                
                
cs_set_user_team(iPlayer,CS_TEAM_T);
                
                continue;
            }
            
            if(!
g_iCaptain[1])
            {
                
g_iCaptain[1] = iPlayer;
                
get_user_name(iPlayer,sName[1],charsmax(sName[]));
                
                
cs_set_user_team(iPlayer,CS_TEAM_CT);
                
                continue;
            }
            
            
user_silentkill(iPlayer);
            
cs_set_user_team(iPlayer,CS_TEAM_SPECTATOR);
        }
        
        
set_pcvar_num(g_pSvRestart,1);
        
set_task(0.5,"PugHudList",PUG_TASK_AUTO, .flags="b");
        
set_task(2.0,"PugCaptainMenu",g_iCaptain[random_num(0,1)]);
        
        
client_print_color(0,print_team_grey,"^4%s^1 Os Capitaes sao: %s (TRs), %s (CTs)",g_sHead,sName[0],sName[1]);
    }
    else
    {
        
client_print_color(0,print_team_grey,"^4%s^1 Precisamos de %i Players para escolha por Capitaes.",g_sHead,PUG_MINPLAYERS_CAPTAIN);
    }
}

public 
PugCaptainMenu(id)
{
    if(!
is_user_connected(id))
    {
        new 
iPlayers[32],iNum,iPlayer;
        
get_players(iPlayers,iNum,"eh","SPECTATOR");
        
        
iPlayer iPlayers[random(iNum)];
        
        new 
sName[32];
        
get_user_name(iPlayer,sName,charsmax(sName));
    
        if(
id == g_iCaptain[0])
        {
            
g_iCaptain[0] = iPlayer;
            
cs_set_user_team(iPlayer,CS_TEAM_T);
            
            
client_print_color(0,print_team_grey,"^4%s^1 O novo Capitao do time TRs: %s",g_sHead,sName);
        }
        else if(
id == g_iCaptain[1])
        {
            
g_iCaptain[1] = iPlayer;
            
cs_set_user_team(iPlayer,CS_TEAM_CT);
            
            
client_print_color(0,print_team_grey,"^4%s^1 O novo Capitao do time CTs: %s",g_sHead,sName);
        }
        
        
set_pcvar_num(g_pSvRestart,1);
        
set_task(2.0,"PugCaptainMenu",iPlayer);
        
        return;
    }
    
    new 
iPlayers[32],iNum;
    
get_players(iPlayers,iNum,"eh","SPECTATOR");
    
    if(
iNum)
    {
        if(
is_user_bot(id)) PugCaptainAutoPick(id);
        
        else
        {
            
show_menu(id,0,"^n",1);
            
            new 
iMenu menu_create("Players:","PugMenuHandler",1);
            
            new 
iPlayer,sName[32],sNum[3];
            
            for(new 
i;iNum;i++)
            {
                
iPlayer iPlayers[i];
                
                
num_to_str(iPlayer,sNum,charsmax(sNum));
                
get_user_name(iPlayer,sName,charsmax(sName));
                
                
menu_additem(iMenu,sName,sNum);
            }
            
            
menu_setprop(iMenu,MPROP_EXIT,MEXIT_NEVER);
            
menu_display(id,iMenu);
            
            
set_task(10.0,"PugCaptainAutoPick",id);
        }
    }
    else
    {
        
remove_task(PUG_TASK_AUTO);
        
set_pcvar_num(g_pSvRestart,1);
        
        
client_print_color(0,print_team_grey,"^4%s^1 A escolha por Capitaes terminou.",g_sHead,PUG_MINPLAYERS_CAPTAIN);
    }
}

public 
PugMenuHandler(id,iMenu,iKey)
{
    if(
iKey != MENU_EXIT)
    {
        new 
iAccess,sData[3],sOption[32],iBack;
        
menu_item_getinfo(iMenu,iKey,iAccess,sData,charsmax(sData),sOption,charsmax(sOption),iBack);
        
        new 
iPlayer str_to_num(sData);
        
        if(
is_user_connected(iPlayer) && is_user_connected(id))
        {
            
remove_task(id);
            
            
cs_set_user_team(iPlayer,cs_get_user_team(id));
            
ExecuteHamB(Ham_CS_RoundRespawn,iPlayer);
            
            new 
sName[2][32];
            
get_user_name(id,sName[0],charsmax(sName[]));
            
get_user_name(iPlayer,sName[1],charsmax(sName[]));
            
            
client_print_color(0,print_team_grey,"^4%s^1 %s escolheu %s",g_sHead,sName[0],sName[1]);
        }
        
        
set_task(2.0,"PugCaptainMenu",(id == g_iCaptain[0]) ? g_iCaptain[1] : g_iCaptain[0]);
    }
    
    return 
PLUGIN_HANDLED;
}

public 
PugCaptainAutoPick(id)
{
    
show_menu(id,0,"^n",1);
    
    new 
iPlayers[32],iNum;
    
get_players(iPlayers,iNum,"eh","SPECTATOR");
    
    if(
iNum)
    {
        new 
iPlayer iPlayers[random(iNum)];
        
        if(
is_user_connected(iPlayer) && is_user_connected(id))
        {
            
cs_set_user_team(iPlayer,cs_get_user_team(id));
            
ExecuteHamB(Ham_CS_RoundRespawn,iPlayer);
            
            new 
sName[2][32];
            
get_user_name(id,sName[0],charsmax(sName[]));
            
get_user_name(iPlayer,sName[1],charsmax(sName[]));
            
            
client_print_color(0,print_team_grey,"^4%s^1 %s escolheu %s",g_sHead,sName[0],sName[1]);
        }
        
        
set_task(2.0,"PugCaptainMenu",(id == g_iCaptain[0]) ? g_iCaptain[1] : g_iCaptain[0]);
    }
    else
    {
        
remove_task(PUG_TASK_AUTO);
        
set_pcvar_num(g_pSvRestart,1);
        
client_print_color(0,print_team_grey,"^4%s^1 A escolha por Capitaes terminou.",g_sHead,PUG_MINPLAYERS_CAPTAIN);
    }
}

public 
PugHudList()
{
    new 
iPlayers[32],iNum,iPlayer;
    
get_players(iPlayers,iNum,"h");
    
    new 
sTRs[512],sCTs[512],sSPECs[512],sName[32];
    
    for(new 
i;iNum;i++)
    {
        
iPlayer iPlayers[i];
        
        
get_user_name(iPlayer,sName,charsmax(sName));
        
        if((
g_iCaptain[0] == iPlayer) || (g_iCaptain[1] == iPlayer))
        {
            
format(sName,charsmax(sName),"%s (C)",sName);
        }
        
        switch(
cs_get_user_team(iPlayer))
        {
            case 
CS_TEAM_T:
            {
                
format(sTRs,charsmax(sTRs),"%s%s^n",sTRs,sName);
            }
            case 
CS_TEAM_CT:
            {
                
format(sCTs,charsmax(sCTs),"%s%s^n",sCTs,sName);
            }
            case 
CS_TEAM_SPECTATOR:
            {
                
format(sSPECs,charsmax(sSPECs),"%s%s^n",sSPECs,sName);
            }
        }
    }

    
set_hudmessage(0,255,0,0.7,0.1,0,0.0,0.6,0.0,0.0,1);
    
show_hudmessage(0,"Terrorists:^n^n^n^n^n^n^n^nCounter-Terrorists:^n^n^n^n^n^n^n^nSpectators:");
    
    
set_hudmessage(255,255,255,0.7,0.13,0,0.0,0.6,0.0,0.0,2);
    
show_hudmessage(0,sTRs);
    
    
set_hudmessage(255,255,255,0.7,0.40,0,0.0,0.6,0.0,0.0,3);
    
show_hudmessage(0,sCTs);
    
    
set_hudmessage(255,255,255,0.7,0.67,0,0.0,0.6,0.0,0.0,4);
    
show_hudmessage(0,sSPECs);

Buy when i changed my resolution to 1024 or more, the hudmessage is not appears correctly, any suggestion?

Screen-shot of looked result attached.
Attached Thumbnails
Click image for larger version

Name:	de_dust20004.jpg
Views:	162
Size:	82.7 KB
ID:	133554  
__________________
Projects:

- See my Git Hub: https://github.com/SmileYzn
PHP Code:
set_pcvar_num(pCvar, !get_pcvar_num(pCvar)); 
^SmileY is offline
Send a message via MSN to ^SmileY Send a message via Skype™ to ^SmileY
Reply



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 13:24.


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