hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.28. 19:10



Jelenlévő felhasználók

Jelenleg 218 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 217 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 20 hozzászólás ]  Oldal 1 2 Következő
Szerző Üzenet
 Hozzászólás témája: Egyedi prefix
HozzászólásElküldve: 2018.09.18. 07:11 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
Sziasztok az lenne akérdésem hogy ebbe a Rangredszerbe bele lehtne irni az egyedi prefix lehetöséget hogy csak tulaj tudjon +prefiet adni a játékosoknak válaszokat elöre is köszönöm.


Csatolmányok:
rangok.sma [13.96 KiB]
Letöltve 136 alkalommal.

_________________
Kép
Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.01.27. 05:18 
Offline
Lelkes
Avatar

Csatlakozott: 2019.01.16. 10:17
Hozzászólások: 20
Megköszönték neki: 2 alkalommal
ROL_MESTER írta:
Sziasztok az lenne akérdésem hogy ebbe a Rangredszerbe bele lehtne irni az egyedi prefix lehetöséget hogy csak tulaj tudjon +prefiet adni a játékosoknak válaszokat elöre is köszönöm.


A kérdésedre a válasz, igen, bele lehet írni. Létrehozod a menüt --> A menübe, csak (a jogosultsággal) lehessen belépni. Innentől kezdve, azt a menüpontot, csak tulaj fogja tudni használni. Persze a concommandot érdemes előtte törölni ha van.

_________________
****


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.12. 05:52 
Offline
Senior Tag
Avatar

Csatlakozott: 2018.02.01. 16:27
Hozzászólások: 225
Megköszönt másnak: 14 alkalommal
Megköszönték neki: 18 alkalommal
Helló!

Ha még aktuális, akkor én szívesen elvállalnám a bele írását, ma az esti órákban. Sajnos most láttam a posztot.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.12. 07:04 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
Tomii írta:
Helló!

Ha még aktuális, akkor én szívesen elvállalnám a bele írását, ma az esti órákban. Sajnos most láttam a posztot.


Szia igen még aktuális én probáltam nekem nem sikerult :)

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.12. 07:05 
Offline
Senior Tag
Avatar

Csatlakozott: 2018.02.01. 16:27
Hozzászólások: 225
Megköszönt másnak: 14 alkalommal
Megköszönték neki: 18 alkalommal
Ma akkor elkészítem.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.12. 14:56 
Offline
Lelkes

Csatlakozott: 2019.03.04. 21:27
Hozzászólások: 17
Megköszönt másnak: 1 alkalommal
Üdv . Ebbe bene van a Prefix.
viewtopic.php?f=101&t=28576


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.12. 18:16 
Offline
Őstag
Avatar

Csatlakozott: 2017.08.21. 15:51
Hozzászólások: 1109
Megköszönt másnak: 36 alkalommal
Megköszönték neki: 195 alkalommal
Yyeryy írta:
Üdv . Ebbe bene van a Prefix.
viewtopic.php?f=101&t=28576


Szerintem ő egy saját játékon belüli menüből szeretné adni.

Ők köszönték meg Pika nek ezt a hozzászólást: ROL_MESTER (2019.03.13. 15:14)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.13. 15:15 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
Pika írta:
Yyeryy írta:
Üdv . Ebbe bene van a Prefix.
viewtopic.php?f=101&t=28576


Szerintem ő egy saját játékon belüli menüből szeretné adni.


Igy van külön menüből szeretnék adni prefix-et a játékosoknak :)

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.13. 19:15 
Offline
Senior Tag

Csatlakozott: 2017.04.30. 17:21
Hozzászólások: 286
Megköszönt másnak: 49 alkalommal
Megköszönték neki: 66 alkalommal
Helló én hozzá írtam csak nem menüből hanem chat vagy konzolból lehet adni játékosnak prefxet..

Parancs:
say /prefix játékos prefix

amx_addprefix játékos prefix

Tesztelni nem teszteltem de kéne működnie... ééés el is menti mikor épp hozzáadunk valakinek prefixet sqlbe.. ezért szükséges lesz elkészíteni manuálisan az sql táblát hozzá prefixek néven amiben 2 oszlop szerepeljen, steamid, prefix (Mindkettő szöveges oszlop legyen!! Azaz VARCHAR) . Ha valami probléma lenne vele irj privibe vagy itt és kijavítom.
Kód:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <csstats>
#include <sqlx>
 
#pragma tabsize 0
 
#define PLUGIN "Rankrendszer (HUD + prefix)"
#define VERSION "1.5"
#define AUTHOR "6lmasok,qKKKJ;>, RaZ_HU" ///Szerk:. Jucika
 
#define ACCESS_LEVEL ADMIN_CHAT
#define ADMIN_LISTEN ADMIN_CHAT
 
#define RANK_SILVER 0
#define RANK_SILVER2 1
#define RANK_SILVER3 2
#define RANK_SILVER4 3
#define RANK_SILVERE 4
#define RANK_SILVEREM 5
#define RANK_NOVA 6
#define RANK_NOVA2 7
#define RANK_NOVA3 8
#define RANK_NOVAM 9
#define RANK_AK 10
#define RANK_AK2 11
#define RANK_DAK 12
#define RANK_SHERIFF 13
#define RANK_SAS 14
#define RANK_SASM 15
#define RANK_SUPREME 16
#define RANK_GLOBAL 17
#define RANK_UBER 18
 
#define MAXRANKS 19

new message[192]
 
new strName[191]
new strText[191]
new sayText
new teamInfo
new maxPlayers
new PlayerRank[33]
new bool: g_bHud[ 33 ]
new Float:HUD_INTERVAL
 
new static color[10]
 
// prefix cucc
new g_prefix[33][100], bool:g_hasprefix[33], g_authid[33][100]
new Handle:g_SqlTuple

new const g_HOST[] = ""
new const g_USERNAME[] = ""
new const g_PASSWORD[] = ""
new const g_DATABASE[] = ""

new const RANKS[MAXRANKS][] =
{
    "Ăšjonc",
    "AmatĹ‘r",
    "HaladĂł",
    "Tud valamit",
    "Tag",
    "Gyilkos",
    "VĂ©rbeli gyilkos",
    "AlázĂł",
    "Profi",
    "Őrűlt",
    "KĂ­mĂ©letlen",
    "LegyĹ‘zhetetlen",
    "Psychopata",
    "FĂ©l Isten",
    "RadioaktĂ­v állat",
    "Pokolfajzat",
    "Őstag",
    "ŐskövĂĽlet",
    "LEGENDA"
}
 
#define size 18
 
new const szamok[size] =
{
    150,
    300,
    450,
    550,
    700,
    800,
    1250,
    1500,
    1700,
    1950,
    2300,
    2550,
    2600,
    2900,
    3300,
    3600,
    4100,
    8000,
}
 
public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
   g_SqlTuple = SQL_MakeDbTuple(g_HOST, g_USERNAME, g_PASSWORD, g_DATABASE)
   
   register_clcmd("say /prefix", "chat_prefix", ADMIN_IMMUNITY, "Celpont Prefix")
   
    register_clcmd("say /rang", "hud")
    register_clcmd("say rang", "hud")
    register_clcmd( "say /rangok", "cmdRangs" );
    register_clcmd( "say /hud", "cmdHud" );
    register_clcmd ("say", "hook_say")
    register_clcmd ("say_team", "hook_teamsay")
   
    register_concmd("amx_addprefix", "console_prefix", ADMIN_IMMUNITY, "Celpont Prefix")
   
    register_cvar("sv_rankrendszer","1") // A plugin be- illetve kikapcsolása
    register_cvar("sv_rankrendszer_HUD","1") // A HUD-ra valĂł kijelzĂ©s be- illetve kikapcsolása
    sethudtime()
   
    sayText = get_user_msgid ("SayText")
    teamInfo = get_user_msgid ("TeamInfo")
    maxPlayers = get_maxplayers()
   
    set_task(160.0, "korUzenet", 0, _, _, "b")
   
    register_message (sayText, "avoid_duplicated")
}
 
public cmdRangs( iPlayerId )
{
    static iLen = 0, sMotd[ 2048 ], iMotdLen = charsmax( sMotd );
   
    iLen = formatex( sMotd, iMotdLen, "<meta charset=utf-8><style>table{color:#FFB000;} td,th{border:1px solid #666;text-align:center;}</style><body bgcolor=#000000><center><table width='400'><tr><th>Rang</th><th>Ă–lĂ©s</th><tr>" );
    iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>0</td><tr>", RANKS[ 0 ] );
   
    for ( new i; i < size; ++i )
        iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>%d</td><tr>", RANKS[ i + 1 ], szamok[ i ] );
   
    show_motd( iPlayerId, sMotd, "Rangrendszer infĂł" );
}
 
public cmdHud( iPlayerId )
{
    ColorChat( iPlayerId, "^1A hud kijelzĹ‘ ^3%skapcsolva^1!", ( g_bHud[ iPlayerId ] ^= true ) ? "be" : "ki" );
   
    if ( !g_bHud[ iPlayerId ] ) remove_task( iPlayerId );
    else { if ( !task_exists( iPlayerId ) ) set_task( HUD_INTERVAL, "setDisplay", iPlayerId ); }
}
 
public sethudtime()
{
    new refreshtime = register_cvar("sv_rankrendszer_HUDtime","0.9") // A HUD-ra valĂł kijelzĂ©s frissĂ­tĂ©si ideje másodpercben
    if (refreshtime == 0.9)
    {
        HUD_INTERVAL = 0.9
    }
    else if (refreshtime != 0.9)
    {
        HUD_INTERVAL = get_pcvar_float(refreshtime)
    }
   
    return PLUGIN_CONTINUE
}
 
public avoid_duplicated (msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}
 
public korUzenet()
{
    ColorChat( 0, "^3ĂŤrd be ^4/rang ^3vagy ^4rang ^3hogy megnĂ©zd hány ölĂ©s kell a következĹ‘ ranghoz.")
    return PLUGIN_HANDLED;
}
 
public hud(id)
{
    new stats[8]
    new bodyhits[8]
    get_user_stats(id, stats, bodyhits)
   
    ColorChat( id, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d",RANKS[PlayerRank[id]], stats[0])
   
    if(PlayerRank[id] == MAXRANKS-1)
    {
        //client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d ^n^4A következĹ‘ szinthez kell mĂ©g: ^3%d",RANKS[PlayerRank[id]], stats[0],szamok[PlayerRank[id]]-stats[0])
        ColorChat( id, "^4Már elĂ©rted a legnagyobb ^4rangot.")
    }
    else
    {
        //client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d ^n^4Már elĂ©rted a legnagyobb rangot.",RANKS[PlayerRank[id]], stats[0])
        ColorChat( id, "^4KövetkezĹ‘ rang: ^3%s ^1| ^4A következĹ‘ szinthez kell mĂ©g: ^3%d",RANKS[PlayerRank[id]+1], szamok[PlayerRank[id]]-stats[0])
    }
}
 
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,
    return PLUGIN_CONTINUE
   
    new name[32]
    get_user_name (id, name, 31)
   
    new isAlive, alive[32]
   
    if (is_user_alive (id))
    {
        isAlive = 1
        alive = "^1*Él*"
    }
    else
    {
        isAlive = 0
        alive = "^1*Halott* "
    }
   
    //static color[10]
   
    if(get_user_flags(id)&ADMIN_CVAR)
    {
        //get_user_team (id, color, 9)
        getTeam(id)
        format (strName, 191, "%s^3[Tulaj]^4[%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    } 
   
    else if(get_user_flags(id)&ADMIN_MAP)
    {
        getTeam(id)
        format (strName, 191, "%s^4[Admin][%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }   
   
    else if(get_user_flags(id)&ADMIN_MENU)
    {
        getTeam(id)
        format (strName, 191, "%s^4[Vip][%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }
   
    else if(get_user_flags(id)&ADMIN_USER)
    {
        getTeam(id)
        format (strName, 191, "%s^4[%s] ^3%s:",alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   else if(g_hasprefix[id])
    {
        getTeam(id)
        format (strName, 191, "%s^4[%s][%s] ^3%s:",alive, g_prefix[id], RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   
    format (message, 191, "%s ^1%s", strName, strText)
    sendMessage (color, isAlive)
   
    return PLUGIN_CONTINUE
}
 
public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]
   
    switch (playerTeam)
    {
        case 1:
            copy (playerTeamName, 11, "Terrorista")
       
        case 2:
            copy (playerTeamName, 18, "Anti-Terrorista")
       
        default:
            copy (playerTeamName, 9, "NĂ©zĹ‘")
    }
   
    read_args (message, 191)
    remove_quotes (message)
   
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
    return PLUGIN_CONTINUE
   
    new isAlive, alive[32]
   
    if (is_user_alive (id))
    {
        isAlive = 1
        alive = "^1*Él*"
    }
    else
    {
        isAlive = 0
        alive = "^1*Halott* "
    }
   
    new name[32]
    get_user_name (id, name, 31)
   
    //static color[10]
   
    if(get_user_flags(id)&ADMIN_CVAR)
    {
        //get_user_team (id, color, 9)
        getTeam(id)
        format (strName, 191, "%s(%s)^3[Tulaj]^3[%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    } 
   
    else if(get_user_flags(id)&ADMIN_MAP)
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[Admin][%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }   
   
    else if(get_user_flags(id)&ADMIN_MENU)
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[Vip][%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }
   
    else if(get_user_flags(id)&ADMIN_USER)
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[%s] ^3%s:",alive ,playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   else if(g_hasprefix[id])
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[%s][%s] ^3%s:",alive ,playerTeamName, g_prefix[id], RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   
    format (message, 191, "%s ^1%s", strName, strText)
    sendTeamMessage (color,isAlive, playerTeam)
   
    return PLUGIN_CONTINUE
}
 
public sendMessage (color[], alive)
{
    new teamName[10]
   
    for (new player = 1; player < maxPlayers; player++)
    {
        if (!is_user_connected(player))
            continue
        if((alive && is_user_alive(player)) || (!alive && !is_user_alive(player)) || (get_user_flags(player) && ADMIN_LISTEN))
        {
            get_user_team (player, teamName, 9)
            changeTeamInfo (player, color)
            writeMessage (player, message)
            changeTeamInfo (player, teamName)
        }
    }
}
 
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 || get_user_flags(player) & ADMIN_LISTEN)
        {
            if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team (player, teamName, 9)
                changeTeamInfo (player, color)
                writeMessage (player, message)
                changeTeamInfo (player, teamName)
            }
        }
    }
}
 
public changeTeamInfo (player, team[])
{
    message_begin (MSG_ONE, teamInfo, _, player) 
    write_byte (player)
    write_string (team)
    message_end() 
}
 
public writeMessage (player, message[])
{
    message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
    write_byte (player)
    write_string (message)
    message_end ()
}
 
stock bool:is_user_steam(id)
{
    static dp_pointer;
   
    if (dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
    {
        server_cmd("dp_clientinfo %d", id);
        server_exec();
        return (get_pcvar_num(dp_pointer) == 2) ? true : false;
    }
 
    return false;
}
 
public client_putinserver(id)
{
    if(get_cvar_num("sv_rankrendszer")==0)
    {
        return PLUGIN_HANDLED
    }
    else if (get_cvar_num("sv_rankrendszer")==1 && get_cvar_num("sv_rankrendszer_HUD")==1)
    {
        g_bHud[ id ] = true;
        set_task(HUD_INTERVAL, "setDisplay", id)
    }
    else
    {
        set_task(0.5, "remTask", id)
    }
   
   get_user_authid(id, g_authid[id], charsmax(g_authid))
   sql_load_user(id)
    return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
   if(is_user_bot(id))
      return
      
   g_hasprefix[id] = false
   g_prefix[id] = ""
   g_authid[id] = ""
}
 
public remTask(id)
{
    remove_task(id, 0)
}
 
public getTeam(id)
{
    get_user_team (id, color, 9)
}
 
public setDisplay(id)
{
    if(!is_user_connected(id))
        return PLUGIN_CONTINUE
   
    new stats[8]
    new bodyhits[8]
    get_user_stats(id, stats, bodyhits)
   
    if(stats[0] < 50)
    {
        PlayerRank[id] = RANK_SILVER
    }
    else if(stats[0] >= 50 && stats[0] < 200)
    {
        PlayerRank[id] = RANK_SILVER2
    }
    else if(stats[0] >= 200 && stats[0] < 350)
    {
        PlayerRank[id] = RANK_SILVER3
    }
    else if(stats[0] >= 350 && stats[0] < 450)
    {
        PlayerRank[id] = RANK_SILVER4
    }
    else if(stats[0] >= 450 && stats[0] < 600)
    {
        PlayerRank[id] = RANK_SILVERE
    }
    else if(stats[0] >= 600 && stats[0] < 800)
    {
        PlayerRank[id] = RANK_SILVEREM
    }
    else if(stats[0] >= 800 && stats[0] < 1150)
    {
        PlayerRank[id] = RANK_NOVA
    }
    else if(stats[0] >= 1150&& stats[0] < 1400)
    {
        PlayerRank[id] = RANK_NOVA2
    }
    else if(stats[0] >= 1400 && stats[0] < 1600)
    {
        PlayerRank[id] = RANK_NOVA3
    }
    else if(stats[0] >= 1600 && stats[0] < 1850)
    {
        PlayerRank[id] = RANK_NOVAM
    }
    else if(stats[0] >= 1850 && stats[0] < 2200)
    {
        PlayerRank[id] = RANK_AK
    }
    else if(stats[0] >= 2200 && stats[0] < 2450)
    {
        PlayerRank[id] = RANK_AK2
    }
    else if(stats[0] >= 2450 && stats[0] < 2600)
    {
        PlayerRank[id] = RANK_DAK
    }
    else if(stats[0] >= 2600 && stats[0] < 2800)
    {
        PlayerRank[id] = RANK_SHERIFF
    }
    else if(stats[0] >= 2800 && stats[0] < 3200)
    {
        PlayerRank[id] = RANK_SAS
    }
    else if(stats[0] >= 3200 && stats[0] < 3500)
    {
        PlayerRank[id] = RANK_SASM
    }
    else if(stats[0] >= 3500 && stats[0] < 4000)
    {
        PlayerRank[id] = RANK_SUPREME
    }
    else if(stats[0] >= 4000 && stats[0] < 4500)
    {
        PlayerRank[id] = RANK_GLOBAL
    }
    else if(stats[0] >= 4500)
    {
        PlayerRank[id] = RANK_UBER
    }
   
    set_hudmessage(random_num(15, 255), random_num(15, 255), random_num(15, 255), 0.01, 0.20, 0, 6.0, 1.0, 0.0, 0.0, -1)
    show_hudmessage(id, "^nĂ–lĂ©seid: %i^nRangod: %s^nParancsok: /rang, /rangok, /hud", stats[0], RANKS[PlayerRank[id]])
    //show_hudmessage(id, "%s ^nĂ–lĂ©sek: %i ^nRang: %s", name, stats[0], RANKS[PlayerRank[id]])
   
    set_task(HUD_INTERVAL, "setDisplay", id)
   
    return PLUGIN_CONTINUE
}
public chat_prefix(id, lvl, cid)
{
   if(!cmd_access(id, lvl, cid, 0))
      return PLUGIN_HANDLED
   
   new Arg1[40], Arg2[40]
   read_argv(1, Arg1, charsmax(Arg1))
   read_argv(2, Arg2, charsmax(Arg2))
   
   new player = cmd_target(id, Arg1, 1)
   if (!player)
      return PLUGIN_HANDLED
      
   if(g_hasprefix[player])
   {
      g_prefix[player] = Arg2
      g_hasprefix[player] = true
      sql_user(player, 0)
      return PLUGIN_HANDLED
   }
   g_prefix[player] = Arg2
   g_hasprefix[player] = true
   sql_user(player, 1)
   return PLUGIN_HANDLED
}
public console_prefix(id, lvl, cid)
{
   if(!cmd_access(id, lvl, cid, 0))
      return PLUGIN_HANDLED
   
   new Arg1[40], Arg2[40]
   read_argv(1, Arg1, charsmax(Arg1))
   read_argv(2, Arg2, charsmax(Arg2))
   
   new player = cmd_target(id, Arg1, 1)
   if (!player)
      return PLUGIN_HANDLED
   
   if(g_hasprefix[player])
   {
      g_prefix[player] = Arg2
      g_hasprefix[player] = true
      sql_user(player, 0)
      return PLUGIN_HANDLED
   }
   g_prefix[player] = Arg2
   g_hasprefix[player] = true
   sql_user(player, 1)
   return PLUGIN_HANDLED
}
public sql_user(player, mode)
{
   static Query[256]

   if(mode == 0)
      formatex(Query, charsmax(Query), "UPDATE `prefixek` SET `prefix` = '%s' WHERE `steamid` = '%s';", g_prefix[player], g_authid[player]);
   else
      formatex(Query, charsmax(Query), "INSERT INTO `prefixek` (`steamid`, `prefix`) VALUES ('%s', '%s');", g_authid[player], g_prefix[player]);
   SQL_ThreadQuery(g_SqlTuple, "sql_user_thr", Query);
}
public sql_user_thr(FailState, Handle:Query, Error[], Errcode, DataSize, Float:Queuetime) {
   if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) {
      log_amx("%s", Error);
      return;
   }
}
public sql_load_user(id)
{
   static Query[512];
   static szData[2]
   szData[0] = id
   szData[1] = get_user_userid(id)
   
   formatex(Query, charsmax(Query), "SELECT * FROM `prefixek` WHERE `authid` = '%s';", g_authid[id])
   SQL_ThreadQuery(g_SqlTuple, "sql_load_user_thr", Query, szData, 2)
}
public sql_load_user_thr(FailState, Handle:Query, Error[], Errcode, szData[], DataSize, Float:Queuetime)
{
   if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) {
      log_amx("%s", Error);
      return;
   }
   else
   {
      new id = szData[0]
      
      if(szData[1] != get_user_userid(id))
         return
      
      if(SQL_NumRows(Query) > 0)
      {
         SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "prefix"), g_prefix[id], charsmax(g_prefix[]))
         g_hasprefix[id] = true
      }
   }
}
stock ColorChat(const id, const input[], any:...)
{
    new count = 1, players[32];
    static msg[191];
    vformat(msg, 190, input, 3);
   
    replace_all(msg, 190, "!g", "^4"); // Green Color
    replace_all(msg, 190, "!y", "^1"); // Default Color
    replace_all(msg, 190, "!t", "^3"); // Team Color
   
    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();
            }
        }
    }
}


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Egyedi prefix
HozzászólásElküldve: 2019.03.13. 19:47 
Offline
Fanatikus
Avatar

Csatlakozott: 2018.02.06. 14:07
Hozzászólások: 182
Megköszönt másnak: 19 alkalommal
Megköszönték neki: 12 alkalommal
aarpi. írta:
Helló én hozzá írtam csak nem menüből hanem chat vagy konzolból lehet adni játékosnak prefxet..

Parancs:
say /prefix játékos prefix

amx_addprefix játékos prefix

Tesztelni nem teszteltem de kéne működnie... ééés el is menti mikor épp hozzáadunk valakinek prefixet sqlbe.. ezért szükséges lesz elkészíteni manuálisan az sql táblát hozzá prefixek néven amiben 2 oszlop szerepeljen, steamid, prefix (Mindkettő szöveges oszlop legyen!! Azaz VARCHAR) . Ha valami probléma lenne vele irj privibe vagy itt és kijavítom.
Kód:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <csstats>
#include <sqlx>
 
#pragma tabsize 0
 
#define PLUGIN "Rankrendszer (HUD + prefix)"
#define VERSION "1.5"
#define AUTHOR "6lmasok,qKKKJ;>, RaZ_HU" ///Szerk:. Jucika
 
#define ACCESS_LEVEL ADMIN_CHAT
#define ADMIN_LISTEN ADMIN_CHAT
 
#define RANK_SILVER 0
#define RANK_SILVER2 1
#define RANK_SILVER3 2
#define RANK_SILVER4 3
#define RANK_SILVERE 4
#define RANK_SILVEREM 5
#define RANK_NOVA 6
#define RANK_NOVA2 7
#define RANK_NOVA3 8
#define RANK_NOVAM 9
#define RANK_AK 10
#define RANK_AK2 11
#define RANK_DAK 12
#define RANK_SHERIFF 13
#define RANK_SAS 14
#define RANK_SASM 15
#define RANK_SUPREME 16
#define RANK_GLOBAL 17
#define RANK_UBER 18
 
#define MAXRANKS 19

new message[192]
 
new strName[191]
new strText[191]
new sayText
new teamInfo
new maxPlayers
new PlayerRank[33]
new bool: g_bHud[ 33 ]
new Float:HUD_INTERVAL
 
new static color[10]
 
// prefix cucc
new g_prefix[33][100], bool:g_hasprefix[33], g_authid[33][100]
new Handle:g_SqlTuple

new const g_HOST[] = ""
new const g_USERNAME[] = ""
new const g_PASSWORD[] = ""
new const g_DATABASE[] = ""

new const RANKS[MAXRANKS][] =
{
    "Ăšjonc",
    "AmatĹ‘r",
    "HaladĂł",
    "Tud valamit",
    "Tag",
    "Gyilkos",
    "VĂ©rbeli gyilkos",
    "AlázĂł",
    "Profi",
    "Őrűlt",
    "KĂ­mĂ©letlen",
    "LegyĹ‘zhetetlen",
    "Psychopata",
    "FĂ©l Isten",
    "RadioaktĂ­v állat",
    "Pokolfajzat",
    "Őstag",
    "ŐskövĂĽlet",
    "LEGENDA"
}
 
#define size 18
 
new const szamok[size] =
{
    150,
    300,
    450,
    550,
    700,
    800,
    1250,
    1500,
    1700,
    1950,
    2300,
    2550,
    2600,
    2900,
    3300,
    3600,
    4100,
    8000,
}
 
public plugin_init()
{
    register_plugin(PLUGIN, VERSION, AUTHOR)
   g_SqlTuple = SQL_MakeDbTuple(g_HOST, g_USERNAME, g_PASSWORD, g_DATABASE)
   
   register_clcmd("say /prefix", "chat_prefix", ADMIN_IMMUNITY, "Celpont Prefix")
   
    register_clcmd("say /rang", "hud")
    register_clcmd("say rang", "hud")
    register_clcmd( "say /rangok", "cmdRangs" );
    register_clcmd( "say /hud", "cmdHud" );
    register_clcmd ("say", "hook_say")
    register_clcmd ("say_team", "hook_teamsay")
   
    register_concmd("amx_addprefix", "console_prefix", ADMIN_IMMUNITY, "Celpont Prefix")
   
    register_cvar("sv_rankrendszer","1") // A plugin be- illetve kikapcsolása
    register_cvar("sv_rankrendszer_HUD","1") // A HUD-ra valĂł kijelzĂ©s be- illetve kikapcsolása
    sethudtime()
   
    sayText = get_user_msgid ("SayText")
    teamInfo = get_user_msgid ("TeamInfo")
    maxPlayers = get_maxplayers()
   
    set_task(160.0, "korUzenet", 0, _, _, "b")
   
    register_message (sayText, "avoid_duplicated")
}
 
public cmdRangs( iPlayerId )
{
    static iLen = 0, sMotd[ 2048 ], iMotdLen = charsmax( sMotd );
   
    iLen = formatex( sMotd, iMotdLen, "<meta charset=utf-8><style>table{color:#FFB000;} td,th{border:1px solid #666;text-align:center;}</style><body bgcolor=#000000><center><table width='400'><tr><th>Rang</th><th>Ă–lĂ©s</th><tr>" );
    iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>0</td><tr>", RANKS[ 0 ] );
   
    for ( new i; i < size; ++i )
        iLen += formatex( sMotd[ iLen ], iMotdLen - iLen, "<tr><td>%s</td><td>%d</td><tr>", RANKS[ i + 1 ], szamok[ i ] );
   
    show_motd( iPlayerId, sMotd, "Rangrendszer infĂł" );
}
 
public cmdHud( iPlayerId )
{
    ColorChat( iPlayerId, "^1A hud kijelzĹ‘ ^3%skapcsolva^1!", ( g_bHud[ iPlayerId ] ^= true ) ? "be" : "ki" );
   
    if ( !g_bHud[ iPlayerId ] ) remove_task( iPlayerId );
    else { if ( !task_exists( iPlayerId ) ) set_task( HUD_INTERVAL, "setDisplay", iPlayerId ); }
}
 
public sethudtime()
{
    new refreshtime = register_cvar("sv_rankrendszer_HUDtime","0.9") // A HUD-ra valĂł kijelzĂ©s frissĂ­tĂ©si ideje másodpercben
    if (refreshtime == 0.9)
    {
        HUD_INTERVAL = 0.9
    }
    else if (refreshtime != 0.9)
    {
        HUD_INTERVAL = get_pcvar_float(refreshtime)
    }
   
    return PLUGIN_CONTINUE
}
 
public avoid_duplicated (msgId, msgDest, receiver)
{
    return PLUGIN_HANDLED
}
 
public korUzenet()
{
    ColorChat( 0, "^3ĂŤrd be ^4/rang ^3vagy ^4rang ^3hogy megnĂ©zd hány ölĂ©s kell a következĹ‘ ranghoz.")
    return PLUGIN_HANDLED;
}
 
public hud(id)
{
    new stats[8]
    new bodyhits[8]
    get_user_stats(id, stats, bodyhits)
   
    ColorChat( id, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d",RANKS[PlayerRank[id]], stats[0])
   
    if(PlayerRank[id] == MAXRANKS-1)
    {
        //client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d ^n^4A következĹ‘ szinthez kell mĂ©g: ^3%d",RANKS[PlayerRank[id]], stats[0],szamok[PlayerRank[id]]-stats[0])
        ColorChat( id, "^4Már elĂ©rted a legnagyobb ^4rangot.")
    }
    else
    {
        //client_print(id, print_chat, "^4Rangod: ^3%s ^1| ^4Ă–lĂ©sek: ^3%d ^n^4Már elĂ©rted a legnagyobb rangot.",RANKS[PlayerRank[id]], stats[0])
        ColorChat( id, "^4KövetkezĹ‘ rang: ^3%s ^1| ^4A következĹ‘ szinthez kell mĂ©g: ^3%d",RANKS[PlayerRank[id]+1], szamok[PlayerRank[id]]-stats[0])
    }
}
 
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,
    return PLUGIN_CONTINUE
   
    new name[32]
    get_user_name (id, name, 31)
   
    new isAlive, alive[32]
   
    if (is_user_alive (id))
    {
        isAlive = 1
        alive = "^1*Él*"
    }
    else
    {
        isAlive = 0
        alive = "^1*Halott* "
    }
   
    //static color[10]
   
    if(get_user_flags(id)&ADMIN_CVAR)
    {
        //get_user_team (id, color, 9)
        getTeam(id)
        format (strName, 191, "%s^3[Tulaj]^4[%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    } 
   
    else if(get_user_flags(id)&ADMIN_MAP)
    {
        getTeam(id)
        format (strName, 191, "%s^4[Admin][%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }   
   
    else if(get_user_flags(id)&ADMIN_MENU)
    {
        getTeam(id)
        format (strName, 191, "%s^4[Vip][%s] ^3%s:", alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }
   
    else if(get_user_flags(id)&ADMIN_USER)
    {
        getTeam(id)
        format (strName, 191, "%s^4[%s] ^3%s:",alive, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   else if(g_hasprefix[id])
    {
        getTeam(id)
        format (strName, 191, "%s^4[%s][%s] ^3%s:",alive, g_prefix[id], RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   
    format (message, 191, "%s ^1%s", strName, strText)
    sendMessage (color, isAlive)
   
    return PLUGIN_CONTINUE
}
 
public hook_teamsay(id)
{
    new playerTeam = get_user_team(id)
    new playerTeamName[19]
   
    switch (playerTeam)
    {
        case 1:
            copy (playerTeamName, 11, "Terrorista")
       
        case 2:
            copy (playerTeamName, 18, "Anti-Terrorista")
       
        default:
            copy (playerTeamName, 9, "NĂ©zĹ‘")
    }
   
    read_args (message, 191)
    remove_quotes (message)
   
    if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
    return PLUGIN_CONTINUE
   
    new isAlive, alive[32]
   
    if (is_user_alive (id))
    {
        isAlive = 1
        alive = "^1*Él*"
    }
    else
    {
        isAlive = 0
        alive = "^1*Halott* "
    }
   
    new name[32]
    get_user_name (id, name, 31)
   
    //static color[10]
   
    if(get_user_flags(id)&ADMIN_CVAR)
    {
        //get_user_team (id, color, 9)
        getTeam(id)
        format (strName, 191, "%s(%s)^3[Tulaj]^3[%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    } 
   
    else if(get_user_flags(id)&ADMIN_MAP)
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[Admin][%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }   
   
    else if(get_user_flags(id)&ADMIN_MENU)
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[Vip][%s] ^3%s:",alive , playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^4%s", message)
    }
   
    else if(get_user_flags(id)&ADMIN_USER)
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[%s] ^3%s:",alive ,playerTeamName, RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   else if(g_hasprefix[id])
    {
        getTeam(id)
        format (strName, 191, "%s(%s)^4[%s][%s] ^3%s:",alive ,playerTeamName, g_prefix[id], RANKS[PlayerRank[id]], name)
        format (strText, 191, "^1%s", message)
    }
   
    format (message, 191, "%s ^1%s", strName, strText)
    sendTeamMessage (color,isAlive, playerTeam)
   
    return PLUGIN_CONTINUE
}
 
public sendMessage (color[], alive)
{
    new teamName[10]
   
    for (new player = 1; player < maxPlayers; player++)
    {
        if (!is_user_connected(player))
            continue
        if((alive && is_user_alive(player)) || (!alive && !is_user_alive(player)) || (get_user_flags(player) && ADMIN_LISTEN))
        {
            get_user_team (player, teamName, 9)
            changeTeamInfo (player, color)
            writeMessage (player, message)
            changeTeamInfo (player, teamName)
        }
    }
}
 
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 || get_user_flags(player) & ADMIN_LISTEN)
        {
            if (alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_user_flags(player) & ADMIN_LISTEN)
            {
                get_user_team (player, teamName, 9)
                changeTeamInfo (player, color)
                writeMessage (player, message)
                changeTeamInfo (player, teamName)
            }
        }
    }
}
 
public changeTeamInfo (player, team[])
{
    message_begin (MSG_ONE, teamInfo, _, player) 
    write_byte (player)
    write_string (team)
    message_end() 
}
 
public writeMessage (player, message[])
{
    message_begin (MSG_ONE, sayText, {0, 0, 0}, player)
    write_byte (player)
    write_string (message)
    message_end ()
}
 
stock bool:is_user_steam(id)
{
    static dp_pointer;
   
    if (dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
    {
        server_cmd("dp_clientinfo %d", id);
        server_exec();
        return (get_pcvar_num(dp_pointer) == 2) ? true : false;
    }
 
    return false;
}
 
public client_putinserver(id)
{
    if(get_cvar_num("sv_rankrendszer")==0)
    {
        return PLUGIN_HANDLED
    }
    else if (get_cvar_num("sv_rankrendszer")==1 && get_cvar_num("sv_rankrendszer_HUD")==1)
    {
        g_bHud[ id ] = true;
        set_task(HUD_INTERVAL, "setDisplay", id)
    }
    else
    {
        set_task(0.5, "remTask", id)
    }
   
   get_user_authid(id, g_authid[id], charsmax(g_authid))
   sql_load_user(id)
    return PLUGIN_CONTINUE
}
public client_disconnect(id)
{
   if(is_user_bot(id))
      return
      
   g_hasprefix[id] = false
   g_prefix[id] = ""
   g_authid[id] = ""
}
 
public remTask(id)
{
    remove_task(id, 0)
}
 
public getTeam(id)
{
    get_user_team (id, color, 9)
}
 
public setDisplay(id)
{
    if(!is_user_connected(id))
        return PLUGIN_CONTINUE
   
    new stats[8]
    new bodyhits[8]
    get_user_stats(id, stats, bodyhits)
   
    if(stats[0] < 50)
    {
        PlayerRank[id] = RANK_SILVER
    }
    else if(stats[0] >= 50 && stats[0] < 200)
    {
        PlayerRank[id] = RANK_SILVER2
    }
    else if(stats[0] >= 200 && stats[0] < 350)
    {
        PlayerRank[id] = RANK_SILVER3
    }
    else if(stats[0] >= 350 && stats[0] < 450)
    {
        PlayerRank[id] = RANK_SILVER4
    }
    else if(stats[0] >= 450 && stats[0] < 600)
    {
        PlayerRank[id] = RANK_SILVERE
    }
    else if(stats[0] >= 600 && stats[0] < 800)
    {
        PlayerRank[id] = RANK_SILVEREM
    }
    else if(stats[0] >= 800 && stats[0] < 1150)
    {
        PlayerRank[id] = RANK_NOVA
    }
    else if(stats[0] >= 1150&& stats[0] < 1400)
    {
        PlayerRank[id] = RANK_NOVA2
    }
    else if(stats[0] >= 1400 && stats[0] < 1600)
    {
        PlayerRank[id] = RANK_NOVA3
    }
    else if(stats[0] >= 1600 && stats[0] < 1850)
    {
        PlayerRank[id] = RANK_NOVAM
    }
    else if(stats[0] >= 1850 && stats[0] < 2200)
    {
        PlayerRank[id] = RANK_AK
    }
    else if(stats[0] >= 2200 && stats[0] < 2450)
    {
        PlayerRank[id] = RANK_AK2
    }
    else if(stats[0] >= 2450 && stats[0] < 2600)
    {
        PlayerRank[id] = RANK_DAK
    }
    else if(stats[0] >= 2600 && stats[0] < 2800)
    {
        PlayerRank[id] = RANK_SHERIFF
    }
    else if(stats[0] >= 2800 && stats[0] < 3200)
    {
        PlayerRank[id] = RANK_SAS
    }
    else if(stats[0] >= 3200 && stats[0] < 3500)
    {
        PlayerRank[id] = RANK_SASM
    }
    else if(stats[0] >= 3500 && stats[0] < 4000)
    {
        PlayerRank[id] = RANK_SUPREME
    }
    else if(stats[0] >= 4000 && stats[0] < 4500)
    {
        PlayerRank[id] = RANK_GLOBAL
    }
    else if(stats[0] >= 4500)
    {
        PlayerRank[id] = RANK_UBER
    }
   
    set_hudmessage(random_num(15, 255), random_num(15, 255), random_num(15, 255), 0.01, 0.20, 0, 6.0, 1.0, 0.0, 0.0, -1)
    show_hudmessage(id, "^nĂ–lĂ©seid: %i^nRangod: %s^nParancsok: /rang, /rangok, /hud", stats[0], RANKS[PlayerRank[id]])
    //show_hudmessage(id, "%s ^nĂ–lĂ©sek: %i ^nRang: %s", name, stats[0], RANKS[PlayerRank[id]])
   
    set_task(HUD_INTERVAL, "setDisplay", id)
   
    return PLUGIN_CONTINUE
}
public chat_prefix(id, lvl, cid)
{
   if(!cmd_access(id, lvl, cid, 0))
      return PLUGIN_HANDLED
   
   new Arg1[40], Arg2[40]
   read_argv(1, Arg1, charsmax(Arg1))
   read_argv(2, Arg2, charsmax(Arg2))
   
   new player = cmd_target(id, Arg1, 1)
   if (!player)
      return PLUGIN_HANDLED
      
   if(g_hasprefix[player])
   {
      g_prefix[player] = Arg2
      g_hasprefix[player] = true
      sql_user(player, 0)
      return PLUGIN_HANDLED
   }
   g_prefix[player] = Arg2
   g_hasprefix[player] = true
   sql_user(player, 1)
   return PLUGIN_HANDLED
}
public console_prefix(id, lvl, cid)
{
   if(!cmd_access(id, lvl, cid, 0))
      return PLUGIN_HANDLED
   
   new Arg1[40], Arg2[40]
   read_argv(1, Arg1, charsmax(Arg1))
   read_argv(2, Arg2, charsmax(Arg2))
   
   new player = cmd_target(id, Arg1, 1)
   if (!player)
      return PLUGIN_HANDLED
   
   if(g_hasprefix[player])
   {
      g_prefix[player] = Arg2
      g_hasprefix[player] = true
      sql_user(player, 0)
      return PLUGIN_HANDLED
   }
   g_prefix[player] = Arg2
   g_hasprefix[player] = true
   sql_user(player, 1)
   return PLUGIN_HANDLED
}
public sql_user(player, mode)
{
   static Query[256]

   if(mode == 0)
      formatex(Query, charsmax(Query), "UPDATE `prefixek` SET `prefix` = '%s' WHERE `steamid` = '%s';", g_prefix[player], g_authid[player]);
   else
      formatex(Query, charsmax(Query), "INSERT INTO `prefixek` (`steamid`, `prefix`) VALUES ('%s', '%s');", g_authid[player], g_prefix[player]);
   SQL_ThreadQuery(g_SqlTuple, "sql_user_thr", Query);
}
public sql_user_thr(FailState, Handle:Query, Error[], Errcode, DataSize, Float:Queuetime) {
   if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) {
      log_amx("%s", Error);
      return;
   }
}
public sql_load_user(id)
{
   static Query[512];
   static szData[2]
   szData[0] = id
   szData[1] = get_user_userid(id)
   
   formatex(Query, charsmax(Query), "SELECT * FROM `prefixek` WHERE `authid` = '%s';", g_authid[id])
   SQL_ThreadQuery(g_SqlTuple, "sql_load_user_thr", Query, szData, 2)
}
public sql_load_user_thr(FailState, Handle:Query, Error[], Errcode, szData[], DataSize, Float:Queuetime)
{
   if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED) {
      log_amx("%s", Error);
      return;
   }
   else
   {
      new id = szData[0]
      
      if(szData[1] != get_user_userid(id))
         return
      
      if(SQL_NumRows(Query) > 0)
      {
         SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "prefix"), g_prefix[id], charsmax(g_prefix[]))
         g_hasprefix[id] = true
      }
   }
}
stock ColorChat(const id, const input[], any:...)
{
    new count = 1, players[32];
    static msg[191];
    vformat(msg, 190, input, 3);
   
    replace_all(msg, 190, "!g", "^4"); // Green Color
    replace_all(msg, 190, "!y", "^1"); // Default Color
    replace_all(msg, 190, "!t", "^3"); // Team Color
   
    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();
            }
        }
    }
}

Köszönöm megadja az sql-be a prefixet de a szeron meg nem megy :)

_________________
Kép


A hozzászólást 1 alkalommal szerkesztették, utoljára ROL_MESTER 2019.03.13. 20:25-kor.

Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 20 hozzászólás ]  Oldal 1 2 Következő


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 7 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole