Discord sunucumuz açılmıştır, hepinizi bekleriz

https://discord.gg/43gGDQe6tS

Tag'ı düzenleme ( çok küçük bir istek )

Eklenti sorunlarınız ve özel eklenti istekleriniz

Moderatör: Moderatörler


Konu Sahibi
` White*
Mesajlar: 501
Kayıt: Çrş Tem 24, 2019 9:04 pm
Server Ip/DNS: Cs1453.CSDuragi.COM

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen ` White* »

Verdiğim eklentideki, tagı nerden değişiriz ?

https://imgyukle.com/i/image.EJd4nq

burdaki silver 1 yazan yeri nerden bulurum? onu söylesiniz kafii.

Yapmak istediğim

silver 1 değil [ Silver 1 ] -> White : Bla bla

Kod: Tümünü seç

}
enum _: Level {
    g_LEVEL,
    g_EXP,
    g_TOPLAMKILL
}
/*-----------------------------------------------------------------------------------------------*/
/*-----------------------------------------{/-Newler\-}------------------------------------------*/
/*-----------------------------------------------------------------------------------------------*/

new g_Level[ 33 ][ Level ]

new g_username[ 33 ][ 50 ], k_username[ 33 ][ 50 ], sifre[ 33 ][ 50 ], g_sifre[ 33 ][ 50 ],username[ 33 ][ 50], k_sifre[ 33 ][ 50 ];

new g_login, g_register , g_vault,g_szName[33][32],g_hud,g_killxp,g_deathxp

#define ACCESS_LEVEL    ADMIN_RESERVATION
#define ADMIN_LISTEN    ADMIN_ALL

new message[192]
new sayText
new teamInfo
new maxPlayers

new g_MessageColor
new g_NameColor
new g_AdminListen

new strName[191]
new strText[191]
new alive[11]

public plugin_init() 
{
    register_plugin(PLUGIN, VERSION, AUTHOR);
    
    register_clcmd("say /hesap", "menu_ac" );
    
    register_clcmd( "KullaniciAdi_Sec", "user_name2" );
    register_clcmd( "Sifre_Yaz", "sifre_sec" );
    register_clcmd( "Kullanici_Adi", "user_name" );
    register_clcmd( "Sifreni_Gir", "sifrexd" );
    
    register_event( "DeathMsg" , "olunce" , "a" );
    
    g_hud = CreateHudSyncObj( );
    g_killxp = register_cvar( "csa_killxp", "25" );
    g_deathxp = register_cvar( "csa_deathxp", "0" )
    
    g_MessageColor = register_cvar ("amx_color", "2") // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red

    g_NameColor = register_cvar ("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
    
    g_AdminListen = register_cvar ("amx_listen", "1") // Set whether admins see or not all messages (Alive, dead and team-only)
    
    
    sayText = get_user_msgid ("SayText")
    teamInfo = get_user_msgid ("TeamInfo")
    maxPlayers = get_maxplayers()
    
    
    register_message (sayText, "avoid_duplicated")
    
    register_clcmd ("amx_color", "set_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
    
    register_clcmd ("say", "hook_say")
    register_clcmd ("say_team", "hook_teamsay")
    ;
}

public avoid_duplicated (msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}


public hook_say(id)
{
    read_args (message, 191)
    remove_quotes (message)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands, 
                                                   // Gungame commands and empty messages
        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:admin = false
    
    if (get_user_flags(id) & ACCESS_LEVEL)
        admin = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01*OLU* "
        }
    
    static color[10]

    
    if (admin)
        {
            // Name
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "^x04%s %s[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)

                    case 2:
                        format (strName, 191, "^x04%s %s^x04[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }
                }
            
            
            // Message
            switch (get_pcvar_num (g_MessageColor))
                {
                    case 1:    // Yellow
                        format (strText, 191, "%s", message)
                        
                    case 2:    // Green
                        format (strText, 191, "^x04%s", message)
                        
                    case 3:    // White
                        {
                            copy (color, 9, "SPECTATOR")
                            format (strText, 191, "^x03%s", message)
                        }

                    case 4:    // Blue
                        {
                            copy (color, 9, "CT")
                            format (strText, 191, "^x03%s", message)
                        }
                        
                    case 5:    // Red
                        {
                            copy (color, 9, "TERRORIST")
                            format (strText, 191, "^x03%s", message)
                        }
                }
        }
    
    else     // Player is not admin. Team-color name : Yellow message
        {
            get_user_team (id, color, 9)
            
            format (strName, 191, "^x04%s %s^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
            
            format (strText, 191, "[ %s ]", message)
        }

    format (message, 191, "%s^x01 :  %s", strName, strText)
            
    sendMessage (color, isAlive)    // Sends the colored message
    
    return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]
    
    switch (playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy (playerTeamName, 11, "TEROR")
                
            case 2:
                copy (playerTeamName, 18, "POLIS")
                
            default:
                copy (playerTeamName, 9, "IZLEYICI")
        }
        
    read_args (message, 191)
    remove_quotes (message)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands, 
                                                   // Gungame commands and empty messages
        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:admin = false
    
    if (get_user_flags(id) & ACCESS_LEVEL)
        admin = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01*OLU* "
        }
    
    static color[10]
    
    if (admin)
        {
            // Name
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "^x04%s %s(%s)  %s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)

                    case 2:
                        format (strName, 191, "^x04%s %s(%s)  ^x04%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }
                }
            
            
            // Message
            switch (get_pcvar_num (g_MessageColor))
                {
                    case 1:    // Yellow
                        format (strText, 191, "%s", message)
                        
                    case 2:    // Green
                        format (strText, 191, "^x04%s", message)
                        
                    case 3:    // White
                        {
                            copy (color, 9, "SPECTATOR")
                            format (strText, 191, "^x03%s", message)
                        }

                    case 4:    // Blue
                        {
                            copy (color, 9, "CT")
                            format (strText, 191, "^x03%s", message)
                        }
                        
                    case 5:    // Red
                        {
                            copy (color, 9, "TERRORIST")
                            format (strText, 191, "^x03%s", message)
                        }
                }
        }
    
    else     // Player is not admin. Team-color name : Yellow message
        {
            get_user_team (id, color, 9)
            
            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
            
            format (strText, 191, "%s", message)
        }
    
    format (message, 191, "%s ^x01:  %s", strName, strText)
    
    sendTeamMessage (color, isAlive, playerTeam)    // Sends the colored message
    
    return PLUGIN_CONTINUE    
}


public set_color (id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED
        
    new arg[1], newColor
    read_argv (1, arg, 1)
    
    newColor = str_to_num (arg)
    
    if (newColor >= 1 && newColor <= 5)
        {
            set_cvar_num ("amx_color", newColor)
            set_pcvar_num (g_MessageColor, newColor)
    
            if (get_pcvar_num (g_NameColor) != 1 &&
                   ((newColor == 3 &&  get_pcvar_num (g_NameColor) != 3)
                 || (newColor == 4 &&  get_pcvar_num (g_NameColor) != 4)
                 || (newColor == 5 &&  get_pcvar_num (g_NameColor) != 5)))
                {
                    set_cvar_num ("amx_namecolor", 2)
                    set_pcvar_num (g_NameColor, 2)
                }
        }
        
    return PLUGIN_HANDLED
}


public set_name_color (id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED
        
    new arg[1], newColor
    read_argv (1, arg, 1)
    
    newColor = str_to_num (arg)
    
    if (newColor >= 1 && newColor <= 6)
        {
            set_cvar_num ("amx_namecolor", newColor)
            set_pcvar_num (g_NameColor, newColor)
            
            if ((get_pcvar_num (g_MessageColor) != 1
                && ((newColor == 3 &&  get_pcvar_num (g_MessageColor) != 3)
                 || (newColor == 4 &&  get_pcvar_num (g_MessageColor) != 4)
                 || (newColor == 5 &&  get_pcvar_num (g_MessageColor) != 5)))
                 || get_pcvar_num (g_NameColor) == 6)
                {
                    set_cvar_num ("amx_color", 2)
                    set_pcvar_num (g_MessageColor, 2)
                }
        }
    
    return PLUGIN_HANDLED
}


public set_listen (id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED
        
    new arg[1], newListen
    read_argv(1, arg, 1)
    
    newListen = str_to_num (arg)
    
    set_cvar_num ("amx_listen", newListen)
    set_pcvar_num (g_AdminListen, newListen)
    
    return PLUGIN_HANDLED
}


public sendMessage (color[], alive)
{
    new teamName[10]
    
    for (new player = 1; player < maxPlayers; player++)
        {
            if (!is_user_connected(player))
                continue
            if(is_user_alive(player))
                {
                    get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                    
                    changeTeamInfo (player, color)        // Changes user's team according to color choosen
                    
                    writeMessage (player, message)        // Writes the message on player's chat
                
                    changeTeamInfo (player, teamName)    // Changes user's team back to original
                }
            else
                {
                    get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                    
                    changeTeamInfo (player, color)        // Changes user's team according to color choosen
                    
                    writeMessage (player, message)        // Writes the message on player's chat
                    
                    changeTeamInfo (player, teamName)    // Changes user's team back to original

                }            
        }
}


public sendTeamMessage (color[], alive, playerTeam)
{
    new teamName[10]
    
    for (new player = 1; player < maxPlayers; player++)
        {
            if (!is_user_connected(player))
                continue

            if (get_user_team(player) == playerTeam)
                {
                    if (is_user_alive(player))
                        {
                            get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                            
                            changeTeamInfo (player, color)        // Changes user's team according to color choosen
                            
                            writeMessage (player, message)        // Writes the message on player's chat
                            
                            changeTeamInfo (player, teamName)    // Changes user's team back to original
                        }
                    else
                        {
                            get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                            
                            changeTeamInfo (player, color)        // Changes user's team according to color choosen
                            
                            writeMessage (player, message)        // Writes the message on player's chat
                    
                            changeTeamInfo (player, teamName)    // Changes user's team back to original
                        }
                }
        }
}


public changeTeamInfo (player, team[])
{
    message_begin (MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo (Which is responsable for which time player is)
    write_byte (player)                // Write byte needed
    write_string (team)                // Changes player's team
    message_end()                    // Also Needed
}


public writeMessage (player, message[])
{
    message_begin (MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText (Which is responsable for writing colored messages)
    write_byte (player)                    // Write byte needed
    write_string (message)                    // Effectively write the message, finally, afterall
    message_end ()                        // Needed as always
}

public client_putinserver( id ) 
{
    set_task(1.0, "goster", id, _, _, "b")
}
public client_disconnected(id)
{
    kayit( id )
    sifirla( id )
}
/*-----------------------------------------------------------------------------------------------*/
/*---------------------------------------{/-Hud Mesaji\-}----------------------------------------*/
/*-----------------------------------------------------------------------------------------------*/
public goster( id )
{
    set_hudmessage(0, 255, 255, 0.01, 0.18, 0, 6.0, 1.0, 0.0, 0.0, -1 );
    if( g_Level[ id ][ g_LEVEL ] < MAX_RANKS )
    {
        ShowSyncHudMsg( id,g_hud, "Exp : [ %i / %i ] ^nRankin [ %s ] ^nBir Ust Rank [ %s ]^nToplam Fragin [ %i ]", 
        g_Level[ id ][ g_EXP ],
        szRanklar[ g_Level[ id ][ g_LEVEL ] + 1 ][ szRankXp ], 
        szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ],
        szRanklar[ g_Level[ id ][ g_LEVEL ] + 1 ][ szRankName ],
        g_Level[ id ][ g_TOPLAMKILL ]);
    }
}
/*-----------------------------------------------------------------------------------------------*/
/*---------------------------------------{/-Level Sistemi\-}----------------------------------------*/
/*-----------------------------------------------------------------------------------------------*/
public olunce(  )
{
    new victim = read_data( 2 );
    new killer = read_data( 1 );
    
    new name[ 32 ]
    get_user_name( killer, name, 31 );
    if( killer != victim )
    {
        g_Level[ killer ][ g_EXP ] += get_pcvar_num( g_killxp );
        g_Level[ killer][ g_TOPLAMKILL ] += 1;
        kaydet( killer );
        rutbe_kontrol( killer );
        g_Level[ victim ][ g_EXP ] -= get_pcvar_num( g_deathxp );
        if( g_Level[ victim ][ g_EXP ] < 0 )
        {
            g_Level[ victim ][ g_EXP ] = 0;
        }
        if( g_Level[ victim ][ g_LEVEL ] != 0 )
        {
            if( g_Level[ victim ][ g_EXP ] < szRanklar[ g_Level[ victim ][ g_LEVEL ] ][ szRankXp ] )
            {
                g_Level[ victim ][ g_LEVEL ] -= 1 
                renkli_yazi( victim, "!n[ !t%s !n] !gRank Dustun. Yeni rankin !n[ !t%s !n].", TAG, szRanklar[ g_Level[ victim ][ g_LEVEL ] ][ szRankName ] ); 
                kaydet( victim );
            }
        }
    }
}
public rutbe_kontrol( id )
{
    if( g_Level[ id ][ g_LEVEL ] < MAX_RANKS )
    {
        if( g_Level[ id ][ g_EXP ] >= szRanklar[ g_Level[ id ][ g_LEVEL ] + 1 ][ szRankXp ] )
        {
            g_Level[ id ][ g_LEVEL ] += 1;
            renkli_yazi( id, "!n[ !t%s !n] !gRank Atladin. Yeni rankin !n[ !t%s !n].", TAG, szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ] );
            kaydet( id );
        }
    }
    
}
/*----------------------------------------------------------------------------------------------*/
/*-------------------------------------{/-Hesap Sistemi\-}--------------------------------------*/
/*----------------------------------------------------------------------------------------------*/
public plugin_cfg()
{
    g_vault = nvault_open( "LeveLLKayitt" );
    if( g_vault == INVALID_HANDLE )
    {
        set_fail_state( "Vault dosyasi acilamadi" );
    }
}

public plugin_end( )
{
    nvault_close( g_vault );
}

public kaydet( id )
{
    if( g_login & ( 1 << id ) )
    {
        new key1[ 64 ], data1[ 256 ], iPos1;
        formatex( key1, 63, "%s-LeveL", g_username[ id ] )
        for( new i = 0; i < ENUM; i++ )
        {
            iPos1 += formatex( data1[ iPos1 ], 255 - iPos1, "%i ", g_Level[ id ][ i ] )
        }
        nvault_set( g_vault, key1, data1 );
    }
    if( g_register & ( 1 << id ) )
    {
        new key1[ 64 ], data1[ 256 ], iPos1;
        formatex( key1, 63, "%s-LeveL", k_username[ id ] )
        for( new i = 0; i < ENUM; i++ )
        {
            iPos1 += formatex( data1[ iPos1 ], 255 - iPos1, "%i ", g_Level[ id ][ i ] )
        }
        nvault_set( g_vault, key1, data1 );
    }
}
public user_name2( id )
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi !n[ !t5 !n] !gkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode KullaniciAdi_Sec" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode KullaniciAdi_Sec" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( g_username[ id ], 49, "" );
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, say );
    copy( k_sifre[ id ], 49, "" );
    client_cmd( id, "messagemode Sifre_Yaz" );
    return PLUGIN_HANDLED;
}

public sifre_sec( id )    
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gSifre !n[ !t5 !n] !gkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode Sifre_Yaz" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gSifre Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode Sifre_Yaz" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) || equali( k_username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( k_sifre[ id ], 49, say );
    kayit_yap( id, k_username[ id ], k_sifre[ id ] ); 
    copy( g_username[ id ], 49, "" );
    copy( g_sifre[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    return PLUGIN_HANDLED;
}
public kayit_yap( id, szName[ ], szSifre[ ] )
{
    new getPw[32], IDFormat[64]
    formatex( IDFormat, 63,"%s-LeveL-Kayit", szName );
    nvault_get( g_vault, IDFormat, getPw,31 );
    if( equali( getPw, "" ) )
    {
        new key[ 64 ];
        copy( username[ id ], 49, szName );
        copy( sifre[ id ], 49, szSifre );
        formatex( key, 63, "%s-LeveL-Kayit", szName );
        nvault_set( g_vault, key, szSifre )
        
        g_register |= ( 1 << id )
        new text[64];
        read_args(text,63)
        remove_quotes(text)
        copy(g_szName[id],31,text)    
        renkli_yazi( id, "!n[ !t%s !n] !gBasarili bir sekilde hesabiniz acilmistir.", TAG );
        renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adiniz !n[ !t%s !n] !gSifreniz !n[ !t%s !n].", TAG, szName, szSifre );
    }
    else
    {
        renkli_yazi( id, "!n[ !g%s !n] !tBu Kullanici Adinda Zaten Hesap Var.", TAG );
    }
    return PLUGIN_HANDLED;
}
public user_name( id )
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi !n[ !t5 !n] !tkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode Kullanici_Adi" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode Kullanici_Adi" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( g_username[ id ], 49, say );
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    client_cmd( id, "messagemode Sifreni_Gir" );
    return PLUGIN_HANDLED;
}
public sifrexd( id )    
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gSifre !n[ !t5 !n] !gkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode Sifreni_Gir" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gSifre Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode Sifreni_Gir" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) || equali( g_username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( g_sifre[ id ], 49, say );
    giris_yap( id, g_username[ id ], g_sifre[ id ] ); 
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    return PLUGIN_HANDLED;
}        
public giris_yap( id, szName[ ], szSifre[ ] )
{
    new getPw[32], IDFormat[64]
    formatex( IDFormat, 63,"%s-LeveL-Kayit", szName );
    nvault_get( g_vault, IDFormat, getPw,31 );
    if( equali( getPw, szSifre ) )
    {
        new key1[ 64 ], data1[ 256 ],szVal1[ 6 ];
        copy( username[ id ], 49, szName );
        copy( sifre[ id ], 49, szSifre );
        
        formatex( key1, 63, "%s-LeveL", szName );
        nvault_get( g_vault, key1, data1, 255 );
        for( new i; i < ENUM; i++ )
        {
            argbreak( data1, szVal1, 5, data1, 255 );
            g_Level[ id ][ i ] = str_to_num( szVal1 );
        }
        g_login |= ( 1 << id );
        renkli_yazi( id, "!n[ !t%s !n] !gBasarili bir sekilde hesabiniza giris yaptiniz.", TAG );
    }
    else
    {
        renkli_yazi( id, "!n[ !t%s !n] !gYanlis !n[ !tKullanici Adi !n] !gya da !n[ !tSifre !n] !ggirdin.", TAG );
    }
    return PLUGIN_HANDLED;
}    

public menu_ac( id ) 
{
    if( !is_user_connected( id ) ) return PLUGIN_HANDLED;
    new menu = menu_create( "\rLevel Sistemi \d|| \yHesap Kayit Sistemi","menu_devam");
    if( equali( username[ id ], "" )  )
    {
        
        menu_additem( menu, "\yGiris Yap", "1" );
        menu_additem( menu, "\yKayit Ol^n", "2" );
    }
    else
    {
        menu_additem( menu, "\yAwp Menu", "4" );
        menu_additem( menu, "\yBicak Menu", "5" );
        menu_additem( menu, "\yYetkili OL", "6" );
        menu_additem( menu, "\ySunucudaki Online Sureniz^n", "7" );        
        menu_additem( menu, "\yCikis Yap", "3" );
    }
    
    menu_setprop( menu, MPROP_EXIT, MEXIT_ALL )
    menu_display( id, menu, 0 );
    return PLUGIN_HANDLED;
}
public menu_devam( id, menu, item )
{
    if ( item == MENU_EXIT) 
    { 
        menu_destroy( menu ) 
        return PLUGIN_HANDLED;
    } 
    
    new data[ 6 ], name[ 32 ], access, callback;
    menu_item_getinfo(menu, item, access, data,5, name, 31, callback ); 
    
    new key = str_to_num( data ) 
    
    switch( key )
    {
        
        case 1:
        {
            client_cmd( id, "messagemode Kullanici_Adi" );
        }
        case 2:
        {
            client_cmd( id, "messagemode KullaniciAdi_Sec" );
        }
        case 3:
        {
            kaydet( id );
            remove_task( id );
            copy( username[ id ], 49, "" );
            copy( sifre[ id ], 49, "" );
            copy( g_username[ id ], 49, "" );
            copy( g_sifre[ id ], 49, "" );
            copy( k_username[ id ], 49, "" );
            copy( k_sifre[ id ], 49, "" );
            g_login &= ~( 1 << id );
            g_register &= ~( 1 << id );
            set_task(1.0,"sifirla",id);
            renkli_yazi( id, "!n[ !t%s !n] !gButun bilgileriniz kaydedilip hesabinizdan cikis yapilmistir.", TAG );
        }
        case 4 : {
            client_cmd(id,"say /awp");
        }
        case 5 : {
            client_cmd(id,"say /knife");
        }
        case 6 : {
            client_cmd(id,"say /slotol");
        }
        case 7 : {
            client_cmd(id,"say /online");
        }
    }
    menu_destroy( menu );
    return PLUGIN_HANDLED;
}
public sifirla(id)
{
    for( new i; i < Level; i++ )
    {
        g_Level[ id ][ i ] = 0
    }
}
public client_authorized(id){
    
    set_task(10.0,"menu_ac",id)
    return PLUGIN_HANDLED
    
}

public kayit( id )
{
    kaydet( id );
    remove_task( id );
    copy( username[ id ], 49, "" );
    copy( sifre[ id ], 49, "" );
    copy( g_username[ id ], 49, "" );
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    g_login &= ~( 1 << id );
    g_register &= ~( 1 << id );
    for( new i; i < Level; i++ )
    {
        g_Level[ id ][ i ] = 0
    }    
}
/*----------------------------------------------------------------------------------------------*/
/*--------------------------------------{/-Renkli Yazi\-}---------------------------------------*/
/*----------------------------------------------------------------------------------------------*/
stock renkli_yazi(const id, const input[], any:...)
{
    new count = 1, players[32];
    static msg[191];
    vformat(msg, 190, input, 3);
    
    replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sarı)
    replace_all(msg, 190, "!g", "^x04"); // Yeşil Renk
    replace_all(msg, 190, "!t", "^x03"); // Takım Renk( CT mavi , T kırmızı )
    
    if (id) players[0] = id; else get_players(players, count, "ch"); {
        for (new i = 0; i < count; i++)
        {
            if (is_user_connected(players[i]))
            {
                
                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
            
        }
    }

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

PouexOfficial
Mesajlar: 318
Kayıt: Sal Şub 26, 2019 5:20 pm
Server Ip/DNS: 213.238.173.111
Clan İsmi: NivaGaming
İletişim:

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen PouexOfficial »

` White* yazdı: Pzr Eki 06, 2019 6:30 pm Verdiğim eklentideki, tagı nerden değişiriz ?

https://imgyukle.com/i/image.EJd4nq

burdaki silver 1 yazan yeri nerden bulurum? onu söylesiniz kafii.

Yapmak istediğim

silver 1 değil [ Silver 1 ] -> White : Bla bla

Kod: Tümünü seç

}
enum _: Level {
    g_LEVEL,
    g_EXP,
    g_TOPLAMKILL
}
/*-----------------------------------------------------------------------------------------------*/
/*-----------------------------------------{/-Newler\-}------------------------------------------*/
/*-----------------------------------------------------------------------------------------------*/

new g_Level[ 33 ][ Level ]

new g_username[ 33 ][ 50 ], k_username[ 33 ][ 50 ], sifre[ 33 ][ 50 ], g_sifre[ 33 ][ 50 ],username[ 33 ][ 50], k_sifre[ 33 ][ 50 ];

new g_login, g_register , g_vault,g_szName[33][32],g_hud,g_killxp,g_deathxp

#define ACCESS_LEVEL    ADMIN_RESERVATION
#define ADMIN_LISTEN    ADMIN_ALL

new message[192]
new sayText
new teamInfo
new maxPlayers

new g_MessageColor
new g_NameColor
new g_AdminListen

new strName[191]
new strText[191]
new alive[11]

public plugin_init() 
{
    register_plugin(PLUGIN, VERSION, AUTHOR);
    
    register_clcmd("say /hesap", "menu_ac" );
    
    register_clcmd( "KullaniciAdi_Sec", "user_name2" );
    register_clcmd( "Sifre_Yaz", "sifre_sec" );
    register_clcmd( "Kullanici_Adi", "user_name" );
    register_clcmd( "Sifreni_Gir", "sifrexd" );
    
    register_event( "DeathMsg" , "olunce" , "a" );
    
    g_hud = CreateHudSyncObj( );
    g_killxp = register_cvar( "csa_killxp", "25" );
    g_deathxp = register_cvar( "csa_deathxp", "0" )
    
    g_MessageColor = register_cvar ("amx_color", "2") // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red

    g_NameColor = register_cvar ("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
    
    g_AdminListen = register_cvar ("amx_listen", "1") // Set whether admins see or not all messages (Alive, dead and team-only)
    
    
    sayText = get_user_msgid ("SayText")
    teamInfo = get_user_msgid ("TeamInfo")
    maxPlayers = get_maxplayers()
    
    
    register_message (sayText, "avoid_duplicated")
    
    register_clcmd ("amx_color", "set_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
    register_clcmd ("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
    
    register_clcmd ("say", "hook_say")
    register_clcmd ("say_team", "hook_teamsay")
    ;
}

public avoid_duplicated (msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}


public hook_say(id)
{
    read_args (message, 191)
    remove_quotes (message)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands, 
                                                   // Gungame commands and empty messages
        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:admin = false
    
    if (get_user_flags(id) & ACCESS_LEVEL)
        admin = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01*OLU* "
        }
    
    static color[10]

    
    if (admin)
        {
            // Name
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "^x04%s %s[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)

                    case 2:
                        format (strName, 191, "^x04%s %s^x04[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "^x04%s %s^x03[ %s ]", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
                        }
                }
            
            
            // Message
            switch (get_pcvar_num (g_MessageColor))
                {
                    case 1:    // Yellow
                        format (strText, 191, "%s", message)
                        
                    case 2:    // Green
                        format (strText, 191, "^x04%s", message)
                        
                    case 3:    // White
                        {
                            copy (color, 9, "SPECTATOR")
                            format (strText, 191, "^x03%s", message)
                        }

                    case 4:    // Blue
                        {
                            copy (color, 9, "CT")
                            format (strText, 191, "^x03%s", message)
                        }
                        
                    case 5:    // Red
                        {
                            copy (color, 9, "TERRORIST")
                            format (strText, 191, "^x03%s", message)
                        }
                }
        }
    
    else     // Player is not admin. Team-color name : Yellow message
        {
            get_user_team (id, color, 9)
            
            format (strName, 191, "^x04%s %s^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, name)
            
            format (strText, 191, "[ %s ]", message)
        }

    format (message, 191, "%s^x01 :  %s", strName, strText)
            
    sendMessage (color, isAlive)    // Sends the colored message
    
    return PLUGIN_CONTINUE
}


public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]
    
    switch (playerTeam) // Team names which appear on team-only messages
        {
            case 1:
                copy (playerTeamName, 11, "TEROR")
                
            case 2:
                copy (playerTeamName, 18, "POLIS")
                
            default:
                copy (playerTeamName, 9, "IZLEYICI")
        }
        
    read_args (message, 191)
    remove_quotes (message)
    
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands, 
                                                   // Gungame commands and empty messages
        return PLUGIN_CONTINUE

        
    new name[32]
    get_user_name (id, name, 31)
    
    new bool:admin = false
    
    if (get_user_flags(id) & ACCESS_LEVEL)
        admin = true
        
    
    new isAlive
    
    if (is_user_alive (id))
        {
            isAlive = 1
            alive = "^x01"
        }
    else
        {
            isAlive = 0
            alive = "^x01*OLU* "
        }
    
    static color[10]
    
    if (admin)
        {
            // Name
            switch (get_pcvar_num (g_NameColor))
                {
                    case 1:
                        format (strName, 191, "^x04%s %s(%s)  %s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)

                    case 2:
                        format (strName, 191, "^x04%s %s(%s)  ^x04%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        
                    case 3:
                        {
                            color = "SPECTATOR"
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }
                        
                    case 4:
                        {
                            color = "CT"
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }

                    case 5:
                        {
                            color = "TERRORIST"
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }
                    
                    case 6:
                        {
                            get_user_team (id, color, 9)
                                
                            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
                        }
                }
            
            
            // Message
            switch (get_pcvar_num (g_MessageColor))
                {
                    case 1:    // Yellow
                        format (strText, 191, "%s", message)
                        
                    case 2:    // Green
                        format (strText, 191, "^x04%s", message)
                        
                    case 3:    // White
                        {
                            copy (color, 9, "SPECTATOR")
                            format (strText, 191, "^x03%s", message)
                        }

                    case 4:    // Blue
                        {
                            copy (color, 9, "CT")
                            format (strText, 191, "^x03%s", message)
                        }
                        
                    case 5:    // Red
                        {
                            copy (color, 9, "TERRORIST")
                            format (strText, 191, "^x03%s", message)
                        }
                }
        }
    
    else     // Player is not admin. Team-color name : Yellow message
        {
            get_user_team (id, color, 9)
            
            format (strName, 191, "^x04%s %s(%s)  ^x03%s", szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ], alive, playerTeamName, name)
            
            format (strText, 191, "%s", message)
        }
    
    format (message, 191, "%s ^x01:  %s", strName, strText)
    
    sendTeamMessage (color, isAlive, playerTeam)    // Sends the colored message
    
    return PLUGIN_CONTINUE    
}


public set_color (id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED
        
    new arg[1], newColor
    read_argv (1, arg, 1)
    
    newColor = str_to_num (arg)
    
    if (newColor >= 1 && newColor <= 5)
        {
            set_cvar_num ("amx_color", newColor)
            set_pcvar_num (g_MessageColor, newColor)
    
            if (get_pcvar_num (g_NameColor) != 1 &&
                   ((newColor == 3 &&  get_pcvar_num (g_NameColor) != 3)
                 || (newColor == 4 &&  get_pcvar_num (g_NameColor) != 4)
                 || (newColor == 5 &&  get_pcvar_num (g_NameColor) != 5)))
                {
                    set_cvar_num ("amx_namecolor", 2)
                    set_pcvar_num (g_NameColor, 2)
                }
        }
        
    return PLUGIN_HANDLED
}


public set_name_color (id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED
        
    new arg[1], newColor
    read_argv (1, arg, 1)
    
    newColor = str_to_num (arg)
    
    if (newColor >= 1 && newColor <= 6)
        {
            set_cvar_num ("amx_namecolor", newColor)
            set_pcvar_num (g_NameColor, newColor)
            
            if ((get_pcvar_num (g_MessageColor) != 1
                && ((newColor == 3 &&  get_pcvar_num (g_MessageColor) != 3)
                 || (newColor == 4 &&  get_pcvar_num (g_MessageColor) != 4)
                 || (newColor == 5 &&  get_pcvar_num (g_MessageColor) != 5)))
                 || get_pcvar_num (g_NameColor) == 6)
                {
                    set_cvar_num ("amx_color", 2)
                    set_pcvar_num (g_MessageColor, 2)
                }
        }
    
    return PLUGIN_HANDLED
}


public set_listen (id, level, cid)
{
    if (!cmd_access(id, level, cid, 2))
        return PLUGIN_HANDLED
        
    new arg[1], newListen
    read_argv(1, arg, 1)
    
    newListen = str_to_num (arg)
    
    set_cvar_num ("amx_listen", newListen)
    set_pcvar_num (g_AdminListen, newListen)
    
    return PLUGIN_HANDLED
}


public sendMessage (color[], alive)
{
    new teamName[10]
    
    for (new player = 1; player < maxPlayers; player++)
        {
            if (!is_user_connected(player))
                continue
            if(is_user_alive(player))
                {
                    get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                    
                    changeTeamInfo (player, color)        // Changes user's team according to color choosen
                    
                    writeMessage (player, message)        // Writes the message on player's chat
                
                    changeTeamInfo (player, teamName)    // Changes user's team back to original
                }
            else
                {
                    get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                    
                    changeTeamInfo (player, color)        // Changes user's team according to color choosen
                    
                    writeMessage (player, message)        // Writes the message on player's chat
                    
                    changeTeamInfo (player, teamName)    // Changes user's team back to original

                }            
        }
}


public sendTeamMessage (color[], alive, playerTeam)
{
    new teamName[10]
    
    for (new player = 1; player < maxPlayers; player++)
        {
            if (!is_user_connected(player))
                continue

            if (get_user_team(player) == playerTeam)
                {
                    if (is_user_alive(player))
                        {
                            get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                            
                            changeTeamInfo (player, color)        // Changes user's team according to color choosen
                            
                            writeMessage (player, message)        // Writes the message on player's chat
                            
                            changeTeamInfo (player, teamName)    // Changes user's team back to original
                        }
                    else
                        {
                            get_user_team (player, teamName, 9)    // Stores user's team name to change back after sending the message
                            
                            changeTeamInfo (player, color)        // Changes user's team according to color choosen
                            
                            writeMessage (player, message)        // Writes the message on player's chat
                    
                            changeTeamInfo (player, teamName)    // Changes user's team back to original
                        }
                }
        }
}


public changeTeamInfo (player, team[])
{
    message_begin (MSG_ONE, teamInfo, _, player)    // Tells to to modify teamInfo (Which is responsable for which time player is)
    write_byte (player)                // Write byte needed
    write_string (team)                // Changes player's team
    message_end()                    // Also Needed
}


public writeMessage (player, message[])
{
    message_begin (MSG_ONE, sayText, {0, 0, 0}, player)    // Tells to modify sayText (Which is responsable for writing colored messages)
    write_byte (player)                    // Write byte needed
    write_string (message)                    // Effectively write the message, finally, afterall
    message_end ()                        // Needed as always
}

public client_putinserver( id ) 
{
    set_task(1.0, "goster", id, _, _, "b")
}
public client_disconnected(id)
{
    kayit( id )
    sifirla( id )
}
/*-----------------------------------------------------------------------------------------------*/
/*---------------------------------------{/-Hud Mesaji\-}----------------------------------------*/
/*-----------------------------------------------------------------------------------------------*/
public goster( id )
{
    set_hudmessage(0, 255, 255, 0.01, 0.18, 0, 6.0, 1.0, 0.0, 0.0, -1 );
    if( g_Level[ id ][ g_LEVEL ] < MAX_RANKS )
    {
        ShowSyncHudMsg( id,g_hud, "Exp : [ %i / %i ] ^nRankin [ %s ] ^nBir Ust Rank [ %s ]^nToplam Fragin [ %i ]", 
        g_Level[ id ][ g_EXP ],
        szRanklar[ g_Level[ id ][ g_LEVEL ] + 1 ][ szRankXp ], 
        szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ],
        szRanklar[ g_Level[ id ][ g_LEVEL ] + 1 ][ szRankName ],
        g_Level[ id ][ g_TOPLAMKILL ]);
    }
}
/*-----------------------------------------------------------------------------------------------*/
/*---------------------------------------{/-Level Sistemi\-}----------------------------------------*/
/*-----------------------------------------------------------------------------------------------*/
public olunce(  )
{
    new victim = read_data( 2 );
    new killer = read_data( 1 );
    
    new name[ 32 ]
    get_user_name( killer, name, 31 );
    if( killer != victim )
    {
        g_Level[ killer ][ g_EXP ] += get_pcvar_num( g_killxp );
        g_Level[ killer][ g_TOPLAMKILL ] += 1;
        kaydet( killer );
        rutbe_kontrol( killer );
        g_Level[ victim ][ g_EXP ] -= get_pcvar_num( g_deathxp );
        if( g_Level[ victim ][ g_EXP ] < 0 )
        {
            g_Level[ victim ][ g_EXP ] = 0;
        }
        if( g_Level[ victim ][ g_LEVEL ] != 0 )
        {
            if( g_Level[ victim ][ g_EXP ] < szRanklar[ g_Level[ victim ][ g_LEVEL ] ][ szRankXp ] )
            {
                g_Level[ victim ][ g_LEVEL ] -= 1 
                renkli_yazi( victim, "!n[ !t%s !n] !gRank Dustun. Yeni rankin !n[ !t%s !n].", TAG, szRanklar[ g_Level[ victim ][ g_LEVEL ] ][ szRankName ] ); 
                kaydet( victim );
            }
        }
    }
}
public rutbe_kontrol( id )
{
    if( g_Level[ id ][ g_LEVEL ] < MAX_RANKS )
    {
        if( g_Level[ id ][ g_EXP ] >= szRanklar[ g_Level[ id ][ g_LEVEL ] + 1 ][ szRankXp ] )
        {
            g_Level[ id ][ g_LEVEL ] += 1;
            renkli_yazi( id, "!n[ !t%s !n] !gRank Atladin. Yeni rankin !n[ !t%s !n].", TAG, szRanklar[ g_Level[ id ][ g_LEVEL ] ][ szRankName ] );
            kaydet( id );
        }
    }
    
}
/*----------------------------------------------------------------------------------------------*/
/*-------------------------------------{/-Hesap Sistemi\-}--------------------------------------*/
/*----------------------------------------------------------------------------------------------*/
public plugin_cfg()
{
    g_vault = nvault_open( "LeveLLKayitt" );
    if( g_vault == INVALID_HANDLE )
    {
        set_fail_state( "Vault dosyasi acilamadi" );
    }
}

public plugin_end( )
{
    nvault_close( g_vault );
}

public kaydet( id )
{
    if( g_login & ( 1 << id ) )
    {
        new key1[ 64 ], data1[ 256 ], iPos1;
        formatex( key1, 63, "%s-LeveL", g_username[ id ] )
        for( new i = 0; i < ENUM; i++ )
        {
            iPos1 += formatex( data1[ iPos1 ], 255 - iPos1, "%i ", g_Level[ id ][ i ] )
        }
        nvault_set( g_vault, key1, data1 );
    }
    if( g_register & ( 1 << id ) )
    {
        new key1[ 64 ], data1[ 256 ], iPos1;
        formatex( key1, 63, "%s-LeveL", k_username[ id ] )
        for( new i = 0; i < ENUM; i++ )
        {
            iPos1 += formatex( data1[ iPos1 ], 255 - iPos1, "%i ", g_Level[ id ][ i ] )
        }
        nvault_set( g_vault, key1, data1 );
    }
}
public user_name2( id )
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi !n[ !t5 !n] !gkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode KullaniciAdi_Sec" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode KullaniciAdi_Sec" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( g_username[ id ], 49, "" );
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, say );
    copy( k_sifre[ id ], 49, "" );
    client_cmd( id, "messagemode Sifre_Yaz" );
    return PLUGIN_HANDLED;
}

public sifre_sec( id )    
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gSifre !n[ !t5 !n] !gkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode Sifre_Yaz" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gSifre Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode Sifre_Yaz" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) || equali( k_username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( k_sifre[ id ], 49, say );
    kayit_yap( id, k_username[ id ], k_sifre[ id ] ); 
    copy( g_username[ id ], 49, "" );
    copy( g_sifre[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    return PLUGIN_HANDLED;
}
public kayit_yap( id, szName[ ], szSifre[ ] )
{
    new getPw[32], IDFormat[64]
    formatex( IDFormat, 63,"%s-LeveL-Kayit", szName );
    nvault_get( g_vault, IDFormat, getPw,31 );
    if( equali( getPw, "" ) )
    {
        new key[ 64 ];
        copy( username[ id ], 49, szName );
        copy( sifre[ id ], 49, szSifre );
        formatex( key, 63, "%s-LeveL-Kayit", szName );
        nvault_set( g_vault, key, szSifre )
        
        g_register |= ( 1 << id )
        new text[64];
        read_args(text,63)
        remove_quotes(text)
        copy(g_szName[id],31,text)    
        renkli_yazi( id, "!n[ !t%s !n] !gBasarili bir sekilde hesabiniz acilmistir.", TAG );
        renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adiniz !n[ !t%s !n] !gSifreniz !n[ !t%s !n].", TAG, szName, szSifre );
    }
    else
    {
        renkli_yazi( id, "!n[ !g%s !n] !tBu Kullanici Adinda Zaten Hesap Var.", TAG );
    }
    return PLUGIN_HANDLED;
}
public user_name( id )
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi !n[ !t5 !n] !tkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode Kullanici_Adi" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gKullanici Adi Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode Kullanici_Adi" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( g_username[ id ], 49, say );
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    client_cmd( id, "messagemode Sifreni_Gir" );
    return PLUGIN_HANDLED;
}
public sifrexd( id )    
{
    new say[ 192 ]
    read_args( say, 191 );
    remove_quotes( say )
    
    new len = strlen( say )
    
    if( len < 5 || len > 32 )
    {
        renkli_yazi( id, "!n[ !t%s !n] !gSifre !n[ !t5 !n] !gkarakterden buyuk ve !n[ !t32 !n] !gkarakterden kucuk olmalidir.", TAG );
        client_cmd( id, "messagemode Sifreni_Gir" );
        return PLUGIN_HANDLED;
    }
    for( new i; i < sizeof yasakli_semboller; i++ )
    {
        if( containi( say, yasakli_semboller[ i ] ) != -1 )
        {
            renkli_yazi( id, "!n[ !t%s !n] !gSifre Sembol Iceremez.", TAG );
            client_cmd( id, "messagemode Sifreni_Gir" );
            return PLUGIN_HANDLED;
        }
    }
    if( !equali( username[ id ], "" ) || equali( g_username[ id ], "" ) )
    {
        copy( g_username[ id ], 49, "" );
        copy( g_sifre[ id ], 49, "" );
        copy( k_username[ id ], 49, "" );
        copy( k_sifre[ id ], 49, "" );
        return PLUGIN_HANDLED;
    }
    copy( g_sifre[ id ], 49, say );
    giris_yap( id, g_username[ id ], g_sifre[ id ] ); 
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    return PLUGIN_HANDLED;
}        
public giris_yap( id, szName[ ], szSifre[ ] )
{
    new getPw[32], IDFormat[64]
    formatex( IDFormat, 63,"%s-LeveL-Kayit", szName );
    nvault_get( g_vault, IDFormat, getPw,31 );
    if( equali( getPw, szSifre ) )
    {
        new key1[ 64 ], data1[ 256 ],szVal1[ 6 ];
        copy( username[ id ], 49, szName );
        copy( sifre[ id ], 49, szSifre );
        
        formatex( key1, 63, "%s-LeveL", szName );
        nvault_get( g_vault, key1, data1, 255 );
        for( new i; i < ENUM; i++ )
        {
            argbreak( data1, szVal1, 5, data1, 255 );
            g_Level[ id ][ i ] = str_to_num( szVal1 );
        }
        g_login |= ( 1 << id );
        renkli_yazi( id, "!n[ !t%s !n] !gBasarili bir sekilde hesabiniza giris yaptiniz.", TAG );
    }
    else
    {
        renkli_yazi( id, "!n[ !t%s !n] !gYanlis !n[ !tKullanici Adi !n] !gya da !n[ !tSifre !n] !ggirdin.", TAG );
    }
    return PLUGIN_HANDLED;
}    

public menu_ac( id ) 
{
    if( !is_user_connected( id ) ) return PLUGIN_HANDLED;
    new menu = menu_create( "\rLevel Sistemi \d|| \yHesap Kayit Sistemi","menu_devam");
    if( equali( username[ id ], "" )  )
    {
        
        menu_additem( menu, "\yGiris Yap", "1" );
        menu_additem( menu, "\yKayit Ol^n", "2" );
    }
    else
    {
        menu_additem( menu, "\yAwp Menu", "4" );
        menu_additem( menu, "\yBicak Menu", "5" );
        menu_additem( menu, "\yYetkili OL", "6" );
        menu_additem( menu, "\ySunucudaki Online Sureniz^n", "7" );        
        menu_additem( menu, "\yCikis Yap", "3" );
    }
    
    menu_setprop( menu, MPROP_EXIT, MEXIT_ALL )
    menu_display( id, menu, 0 );
    return PLUGIN_HANDLED;
}
public menu_devam( id, menu, item )
{
    if ( item == MENU_EXIT) 
    { 
        menu_destroy( menu ) 
        return PLUGIN_HANDLED;
    } 
    
    new data[ 6 ], name[ 32 ], access, callback;
    menu_item_getinfo(menu, item, access, data,5, name, 31, callback ); 
    
    new key = str_to_num( data ) 
    
    switch( key )
    {
        
        case 1:
        {
            client_cmd( id, "messagemode Kullanici_Adi" );
        }
        case 2:
        {
            client_cmd( id, "messagemode KullaniciAdi_Sec" );
        }
        case 3:
        {
            kaydet( id );
            remove_task( id );
            copy( username[ id ], 49, "" );
            copy( sifre[ id ], 49, "" );
            copy( g_username[ id ], 49, "" );
            copy( g_sifre[ id ], 49, "" );
            copy( k_username[ id ], 49, "" );
            copy( k_sifre[ id ], 49, "" );
            g_login &= ~( 1 << id );
            g_register &= ~( 1 << id );
            set_task(1.0,"sifirla",id);
            renkli_yazi( id, "!n[ !t%s !n] !gButun bilgileriniz kaydedilip hesabinizdan cikis yapilmistir.", TAG );
        }
        case 4 : {
            client_cmd(id,"say /awp");
        }
        case 5 : {
            client_cmd(id,"say /knife");
        }
        case 6 : {
            client_cmd(id,"say /slotol");
        }
        case 7 : {
            client_cmd(id,"say /online");
        }
    }
    menu_destroy( menu );
    return PLUGIN_HANDLED;
}
public sifirla(id)
{
    for( new i; i < Level; i++ )
    {
        g_Level[ id ][ i ] = 0
    }
}
public client_authorized(id){
    
    set_task(10.0,"menu_ac",id)
    return PLUGIN_HANDLED
    
}

public kayit( id )
{
    kaydet( id );
    remove_task( id );
    copy( username[ id ], 49, "" );
    copy( sifre[ id ], 49, "" );
    copy( g_username[ id ], 49, "" );
    copy( g_sifre[ id ], 49, "" );
    copy( k_username[ id ], 49, "" );
    copy( k_sifre[ id ], 49, "" );
    g_login &= ~( 1 << id );
    g_register &= ~( 1 << id );
    for( new i; i < Level; i++ )
    {
        g_Level[ id ][ i ] = 0
    }    
}
/*----------------------------------------------------------------------------------------------*/
/*--------------------------------------{/-Renkli Yazi\-}---------------------------------------*/
/*----------------------------------------------------------------------------------------------*/
stock renkli_yazi(const id, const input[], any:...)
{
    new count = 1, players[32];
    static msg[191];
    vformat(msg, 190, input, 3);
    
    replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sarı)
    replace_all(msg, 190, "!g", "^x04"); // Yeşil Renk
    replace_all(msg, 190, "!t", "^x03"); // Takım Renk( CT mavi , T kırmızı )
    
    if (id) players[0] = id; else get_players(players, count, "ch"); {
        for (new i = 0; i < count; i++)
        {
            if (is_user_connected(players[i]))
            {
                
                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
                write_byte(players[i]);
                write_string(msg);
                message_end();
            }
            
        }
    }
Eklentinin tam halini atarsan yardımcı olabilirim gözükmüyor burada.

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
` White*
Mesajlar: 501
Kayıt: Çrş Tem 24, 2019 9:04 pm
Server Ip/DNS: Cs1453.CSDuragi.COM

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen ` White* »

Diğer kısmını da attım.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

PouexOfficial
Mesajlar: 318
Kayıt: Sal Şub 26, 2019 5:20 pm
Server Ip/DNS: 213.238.173.111
Clan İsmi: NivaGaming
İletişim:

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen PouexOfficial »

` White* yazdı: Pzr Eki 06, 2019 7:36 pm Diğer kısmını da attım.
Bu şekilde istiyosunuz doğrumu ?

Link:
Linklerini gizle
Linki Kopyala

Dragon ~ Fearless
Mesajlar: 408
Kayıt: Cmt Ağu 31, 2019 5:56 pm

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen Dragon ~ Fearless »

Sanirim Öyle İstiyor

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
` White*
Mesajlar: 501
Kayıt: Çrş Tem 24, 2019 9:04 pm
Server Ip/DNS: Cs1453.CSDuragi.COM

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen ` White* »

PouexOfficial yazdı: Pzr Eki 06, 2019 9:35 pm
` White* yazdı: Pzr Eki 06, 2019 7:36 pm Diğer kısmını da attım.
Bu şekilde istiyosunuz doğrumu ?
Evet ömden yada burdan düzenlediğin yeri atar mısın?

Link:
Linklerini gizle
Linki Kopyala

Konu Sahibi
` White*
Mesajlar: 501
Kayıt: Çrş Tem 24, 2019 9:04 pm
Server Ip/DNS: Cs1453.CSDuragi.COM

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen ` White* »

PouexOfficial yazdı: Pzr Eki 06, 2019 9:35 pm
` White* yazdı: Pzr Eki 06, 2019 7:36 pm Diğer kısmını da attım.
Bu şekilde istiyosunuz doğrumu ?
Teşekkür ederim. Birde Global olunca yandaki mavi yazılar kayboluyor. Onu yapabilir misin ?

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

PouexOfficial
Mesajlar: 318
Kayıt: Sal Şub 26, 2019 5:20 pm
Server Ip/DNS: 213.238.173.111
Clan İsmi: NivaGaming
İletişim:

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen PouexOfficial »

` White* yazdı: Pzt Eki 07, 2019 6:08 pm Teşekkür ederim. Birde Global olunca yandaki mavi yazılar kayboluyor. Onu yapabilir misin ?
Tam olarak anlamadım detaylı anlatabilirmisiniz veya fotograf varsa daha iyi olur.

Link:
Linklerini gizle
Linki Kopyala
Kullanıcı avatarı

hayku
Mesajlar: 297
Kayıt: Çrş Tem 17, 2019 6:45 pm
Konum: Ordu
Clan İsmi: Alpha Game Clan

Tag'ı düzenleme ( çok küçük bir istek )

Mesaj gönderen hayku »

değiştirmek istediğin kısmı "hook_say" public'inden "format" kısmından düzenli bir şekilde editleyebilirsin fakat yüzdelik değerleri yanlışlıkla silersen eklentiyi bozabilirsin dikkat et.

Link:
Linklerini gizle
Linki Kopyala
Cevapla