Raised This Month: $ Target: $400
 0% 

The best player of round


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
^^KaMaZZ~.^
Junior Member
Join Date: Jan 2009
Old 01-04-2009 , 06:56   Re: The best player of round
Reply With Quote #4

I remaked second plugin, because first don't work (show bad player and 0 frags), now I need to show number of headshot
ColorChat copied from WarmUPPro
PHP Code:
#include <amxmodx>

#define PLUGIN "BestPlayer"
#define VERSION "1.0"
#define AUTHOR "KaMaZZ"

new g_iKills[33]
new 
g_iDeaths[33]
new 
g_hs[33]

new 
bestplayer 0g_iMaxPlayers;

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_event("DeathMsg""death_event""a""1>0");
    
register_event("HLTV""eHLTV""a""1=0""2=0");
    
register_logevent("wiadomosc",2,"1=Round_End")
    
g_iMaxPlayers get_maxplayers();
}

/*================================================================================================*/
/*************************************** [Color Chat] *********************************************/
/*=============================================================================R=E=Y=M=O=N==A=R=G=*/


enum Color
{
    
NORMAL 1// clients scr_concolor cvar color
    
GREEN// Green Color
    
TEAM_COLOR// Red, grey, blue
    
GREY// grey
    
RED// Red
    
BLUE// Blue
}

new 
TeamName[][] = 
{
    
"",
    
"TERRORIST",
    
"CT",
    
"SPECTATOR"
}

ColorChat(idColor:type, const msg[], {Float,Sql,Result,_}:...)
{
    new 
message[256];

    switch(
type)
    {
        case 
NORMAL// clients scr_concolor cvar color
        
{
            
message[0] = 0x01;
        }
        case 
GREEN// Green
        
{
            
message[0] = 0x04;
        }
        default: 
// White, Red, Blue
        
{
            
message[0] = 0x03;
        }
    }

    
vformat(message[1], 251msg4);

    
// Make sure message is not longer than 192 character. Will crash the server.
    
message[192] = '^0';

    new 
teamColorChangeindexMSG_Type;
    
    if(
id)
    {
        
MSG_Type MSG_ONE;
        
index id;
    } else {
        
index FindPlayer();
        
MSG_Type MSG_ALL;
    }
    
    
team get_user_team(index);
    
ColorChange ColorSelection(indexMSG_Typetype);

    
ShowColorMessage(indexMSG_Typemessage);
        
    if(
ColorChange)
    {
        
Team_Info(indexMSG_TypeTeamName[team]);
    }
}

ShowColorMessage(idtypemessage[])
{
    static 
bool:saytext_used;
    static 
get_user_msgid_saytext;
    if(!
saytext_used)
    {
        
get_user_msgid_saytext get_user_msgid("SayText");
        
saytext_used true;
    }
    
message_begin(typeget_user_msgid_saytext_id);
    
write_byte(id)        
    
write_string(message);
    
message_end();    
}

Team_Info(idtypeteam[])
{
    static 
bool:teaminfo_used;
    static 
get_user_msgid_teaminfo;
    if(!
teaminfo_used)
    {
        
get_user_msgid_teaminfo get_user_msgid("TeamInfo");
        
teaminfo_used true;
    }
    
message_begin(typeget_user_msgid_teaminfo_id);
    
write_byte(id);
    
write_string(team);
    
message_end();

    return 
1;
}

ColorSelection(indextypeColor:Type)
{
    switch(
Type)
    {
        case 
RED:
        {
            return 
Team_Info(indextypeTeamName[1]);
        }
        case 
BLUE:
        {
            return 
Team_Info(indextypeTeamName[2]);
        }
        case 
GREY:
        {
            return 
Team_Info(indextypeTeamName[0]);
        }
    }

    return 
0;
}

FindPlayer()
{
    new 
= -1;

    while(
<= get_maxplayers())
    {
        if(
is_user_connected(++i))
            return 
i;
    }

    return -
1;
}

public 
client_connect(id
{
    
g_iKills[id] = 0
    g_iDeaths
[id] = 0
}

public 
death_event()
{
    new 
iKiller read_data(1), iVictim read_data(2), iHitplace read_data(4);
    
    if (
iKiller == iVictim)
    {
        
g_iDeaths[iKiller]++;
        return;
    }
    
    
g_iKills[iKiller]++;
    
g_iDeaths[iVictim]++;
    
    if(
iHitplace == HIT_HEAD)
    {
        
g_hs[iKiller]++;
    }
}
        
public 
wiadomosc() 
{    
    if(
get_playersnum() < 2)
        return
 
    for(new 
i=1<= g_iMaxPlayersi++)
    {
    if (
g_iKills[i] > g_iKills[bestplayer] || g_iKills[i] == g_iKills[bestplayer] && g_iDeaths[i] < g_iDeaths[bestplayer] || g_iKills[i] == g_iKills[bestplayer] && g_hs[i] > g_hs[bestplayer])
    {
        
bestplayer i;
    }
    }
    
    new 
name[32];
    
get_user_name(bestplayername31);
    
    new 
iKills g_iKills[bestplayer]
    new 
iHS g_hs[bestplayer]
    
    
ColorChat(0GREEN,"^x03 FragArena: Najlepszy gracz w tej rundzie: %s"name)
    if(
iKills >= || iKills == 0)
    {
         
ColorChat(0GREEN"^x03 FragArena: Zdobyl %d fragow"iKills)
    }
    else if(
iKills && iKills 5)
    {
    
ColorChat(0GREEN"^x03 FragArena: Zdobyl %d fragi"iKills)
    }
    else if(
iKills == 1)
    {
    
ColorChat(0GREEN"^x03 FragArena: Zdobyl 1 fraga")
    }
    
ColorChat(0GREEN"^x03 FragArena: Ustrzelil %d hsow"iHS)
}

public 
eHLTV()
{
    for( new 
<= g_iMaxPlayers i++ )
    {
        
g_iKills] = 0;
        
g_iDeaths] = 0;
        
g_hs] = 0;
    }

^^KaMaZZ~.^ is offline
 



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 09:06.


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