kills counter

Šiame forume rašomi vartotojų klausimai/problemos su kuriomis jie susidūrė kuriant pluginus.
Post Reply
morka
Gana aktyvus vartotojas
Posts: 292
Joined: 2011 Jan 08 00:21

kills counter

Post by morka »

Galite kas pataisyt plugina kad irasinetu IP nes dabar iraso i nvault ip su portu 27050 ir t.t. Dar nelabai aisku ar jis realiu laiku uzfiksuoja duomenis

Code: Select all

#include <amxmodx>#include <cstrike>#include <nvault> new const Version[] = "0.2"; enum KillLevels{    Newbie,    SemiPro,    Pro,    Veteran} new KillLevelRange[ KillLevels ][ 2 ] = {    { 0 , 499 },    { 500 , 749 },    { 750 , 999 },    { 1000 , 999999 }}; new KillLevelName[ KillLevels ][] = {    "!",    "*",    "**",    "***"}; enum DeathMsg_Arg{    KillerID,    VictimID,    IsHeadshot,    WeaponName} enum PlayerInfo{    Name[ 32 ],    AuthID[ 34 ],    NumKills,    KillLevels:CurrentLevel} new g_PlayerData[ 33 ][ PlayerInfo ];new g_iVault;new g_MsgSayText; public plugin_init() {    register_plugin( "Kill Levels" , Version , "bugsy" );        register_event( "DeathMsg" , "fw_EvDeathMsg" , "a" , "1>0" );        register_clcmd( "say" , "fw_CmdSay" );    register_clcmd( "say_team" , "fw_CmdSayTeam" );        g_MsgSayText = get_user_msgid( "SayText" );        if ( ( ( g_iVault = nvault_open( "klevels" ) ) == INVALID_HANDLE ) )        set_fail_state( "Error opening vault" );} public plugin_end(){    nvault_close( g_iVault );} public client_putinserver( id ){    get_user_name( id , g_PlayerData[ id ][ Name ] , charsmax( g_PlayerData[][ Name ] ) );    get_user_authid( id , g_PlayerData[ id ][ AuthID ] , charsmax( g_PlayerData[][ AuthID ] ) );        if ( ( g_PlayerData[ id ][ NumKills ] = nvault_get( g_iVault , g_PlayerData[ id ][ AuthID ] ) ) )    {        SetPlayerLevel( id );        set_task( 7.0 , "AnnounceJoin" , id );    }} public client_disconnect( id ){    new szKills[ 6 ];    num_to_str( g_PlayerData[ id ][ NumKills ] , szKills , charsmax( szKills ) );    nvault_set( g_iVault , g_PlayerData[ id ][ AuthID ] , szKills );        g_PlayerData[ id ][ Name ][ 0 ] = EOS;    g_PlayerData[ id ][ AuthID ][ 0 ] = EOS;    g_PlayerData[ id ][ NumKills ] = 0;    g_PlayerData[ id ][ CurrentLevel ] = _:Newbie;} public fw_EvDeathMsg(){    new id = read_data( _:KillerID );        g_PlayerData[ id ][ NumKills ]++;    SetPlayerLevel( id );} public fw_CmdSay(id){    static szMessage[ 192 ] , iPlayers[ 32 ];    new bool:bIsAlive , iPos , iNum , iPlayer;        bIsAlive = bool:is_user_alive( id );        iPos = formatex( szMessage , charsmax( szMessage ) , "%s[%s] ^x03%s ^x01:  ", bIsAlive ? "^x04 " : "^x01*DEAD*^x04 " , KillLevelName[ g_PlayerData[ id ][ CurrentLevel ] ] , g_PlayerData[ id ][ Name ] , szMessage );        read_args( szMessage[ iPos ] , charsmax( szMessage ) - iPos );    remove_quotes( szMessage[ iPos ] );        get_players( iPlayers , iNum );        for ( new i = 0 ; i < iNum ; i++ )    {        iPlayer = iPlayers[ i ];                if( ( bIsAlive && is_user_alive( iPlayer ) ) || ( !bIsAlive && !is_user_alive( iPlayer ) ) )        {            message_begin( MSG_ONE_UNRELIABLE , g_MsgSayText , {0, 0, 0} , iPlayer );            write_byte( id );            write_string( szMessage );            message_end();        }    }        return PLUGIN_HANDLED;} public fw_CmdSayTeam( id ){    static szMessage[ 192 ] , iPlayers[ 32 ];    new bool:bIsAlive , iPos , iNum , iPlayer , CsTeams:iTeam;        new const szTeams[ CsTeams ][] =     {        "",        "Terrorist",        "Counter-Terrorist",        "Spectator"    };        bIsAlive = bool:is_user_alive( id );    iTeam = cs_get_user_team( id );        iPos = formatex( szMessage , charsmax( szMessage ) , "^x01%s^x01(%s) ^x04[%s] ^x03%s ^x01:  " , bIsAlive ? "" : "*DEAD*" , szTeams[ iTeam ] , KillLevelName[ g_PlayerData[ id ][ CurrentLevel ] ] , g_PlayerData[ id ][ Name ] , szMessage );        read_args( szMessage[ iPos ] , charsmax( szMessage ) - iPos );    remove_quotes( szMessage[ iPos ] );        get_players( iPlayers , iNum );        for ( new i = 0 ; i < iNum ; i++ )    {        iPlayer = iPlayers[ i ];                if ( ( iTeam == cs_get_user_team( iPlayer ) ) && ( ( bIsAlive && is_user_alive( iPlayer ) ) || ( !bIsAlive && !is_user_alive( iPlayer ) ) ) )        {            message_begin( MSG_ONE_UNRELIABLE , g_MsgSayText , {0, 0, 0} , iPlayer );            write_byte( id );            write_string( szMessage );            message_end();        }    }        return PLUGIN_HANDLED;} SetPlayerLevel( id ){    for ( new KillLevels:iLevel = Newbie ; iLevel < KillLevels ; iLevel++ )    {        if ( KillLevelRange[ iLevel ][ 0 ] <= g_PlayerData[ id ][ NumKills ] <= KillLevelRange[ iLevel ][ 1 ] )         {            g_PlayerData[ id ][ CurrentLevel ] = _:iLevel;            break;        }    }} public AnnounceJoin( id ){    client_print( 0 , print_chat , "* %s is a %s in this server!" , g_PlayerData[ id ][ Name ] , KillLevelName[ g_PlayerData[ id ][ CurrentLevel ] ] );}   
Image

User avatar
aaarnas
Vyr. diskusijų administratorius
Posts: 3891
Joined: 2010 Aug 31 13:21
Skype: fiarno
Contact:

Re: kills counter

Post by aaarnas »

get_user_authid(
--->
get_user_ip(... , ... , ... , 1)
Palikau CS pasaulį ;/ . Nebepasiekiamas.

Post Reply

Who is online

Users browsing this forum: Semrush [Bot] and 1 guest