Prefix rank in chat

Categoria cu cereri de pluginuri si nu numai.

Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com

Forum rules
Accesează link-ul pentru a putea vedea regulile forumului

Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Post Reply
User avatar
lexzor
Membru, skill 0
Membru, skill 0
Posts: 19
Joined: 15 Jan 2020, 23:45
Detinator Steam: Da
CS Status: www.districth.ro/forum
SteamID: lexzor
Fond eXtream: 0
Has thanked: 3 times
Been thanked: 2 times

27 Jul 2020, 22:39

Plugin Cerut: Un plugin care arata locul din top in chat.
Descriere (adica ce face el mai exact): un plugin care arata rankul inaintea numelui. de ex daca eu sunt pe locul 1 in top: [TOP1] lexzor: blabla. unde [TOP1] este scris cu verde.
Eu am pluginul acesta de top: https://csblackdevil.com/forums/topic/1 ... gin-top15/ Daca puteti sa-mi lasati link si cu un plugin de top15 care functioneaza cu cel de chat ar fi perfect
Serverul impune conditii strict HLDS/REHLDS?: rehlds
Ai cautat pluginul?(daca da, precizeaza cum): google
Necesita mod special?: nu stiu.

Multumesc anticipat.
RoyalServer 2
Shadows Adi
Membru, skill +1
Membru, skill +1
Posts: 349
Joined: 26 Jan 2020, 18:52
Detinator Steam: Da
CS Status: 0x416469
SteamID: shadowsadi120
Fond eXtream: 0
Has thanked: 14 times
Been thanked: 50 times

27 Jul 2020, 23:28

csstats sql ?
sau crx rank system + chatmanager?
User avatar
robbencsgo
Membru, skill 0
Membru, skill 0
Posts: 96
Joined: 31 Aug 2019, 19:14
Detinator Steam: Da
CS Status: aimer
SteamID: an prevat
Fond eXtream: 0
Has thanked: 9 times
Been thanked: 11 times
Contact:

28 Jul 2020, 00:48

Code: Select all

#include <amxmodx>
#include <amxmisc>
#include <colorchat>
#include <cstrike>
#include <csx>

#pragma semicolon 1

new gNum;
new cvar_rank, cvar_rankstats, cvar_topnum, cvar_title, cvar_connect;

public plugin_init() {
    register_plugin("RRT", "0.3.1", "Ex3cuTioN/Arion");
    
    register_clcmd("say", "hookSay");
    
    register_clcmd("say /rankstats", "cmdRankstats");
    register_clcmd("say /rank", "cmdRank");
    register_clcmd("say /top15","cmdTop15");
    
    register_clcmd("amx_rank", "cmdRank");
    register_clcmd("amx_rankstats", "cmdRankstats");
    
    cvar_rank = register_cvar("rrt_rank","1");
    cvar_rankstats = register_cvar("rrt_rankstats","1");
    cvar_topnum = register_cvar("rrt_topnum", "10");
    cvar_title = register_cvar("rrt_title", "Top jucatori");
    cvar_connect = register_cvar("rrt_connect", "1");
}

public hookSay(id)
{
	if( is_user_bot( id ) )
		return PLUGIN_CONTINUE;
	
	static szChat[192];
	read_args(szChat, sizeof(szChat)- 1);
	remove_quotes(szChat);
	
	if(equali(szChat,""))
		return PLUGIN_CONTINUE;
	
	static szName[32];
	get_user_name(id, szName, sizeof(szName)-1);
	
	new izStats[8], izBody[8], iRankPos;

	iRankPos = get_user_stats(id, izStats, izBody);
		
	switch(cs_get_user_team(id))
	{
		case CS_TEAM_T:
		{
			ColorChat(0, RED,"^x04[TOP%d]^x03 %s^x01 : %s",iRankPos, szName, szChat);
		}
		case CS_TEAM_CT:
		{
			ColorChat(0, BLUE,"^x04[TOP%d]^x03 %s^x01 : %s",iRankPos, szName, szChat);
		}
		case CS_TEAM_SPECTATOR:
		{
			ColorChat(0, GREY,"^x04[TOP%d]^x03 %s^x01 : %s",iRankPos, szName, szChat);
		}
	}
	
	return PLUGIN_HANDLED_MAIN;
}

public client_disconnect(id){
    new connect = get_pcvar_num(cvar_connect);
    
    if(connect == 0) return PLUGIN_HANDLED;
    
    new name[32], izStats[8], izBody[8], iRankPos, iRankMax;

    iRankMax = get_statsnum();
    iRankPos = get_user_stats(id, izStats, izBody);
    get_user_name(id, name, 31);
    
    if(connect == 2)
        ColorChat(0, GREEN,"[RRT]^x03 %s^x01 a iesit, rank %d din %d cu %d fraguri si %d decese.", name, iRankPos, iRankMax, izStats[0], izStats[1]);
    else if(connect == 1)
        ColorChat(0, GREEN,"[RRT]^x03 %s^x01 a iesit, rank %d din %d.", name, iRankPos, iRankMax);
        
    return PLUGIN_CONTINUE;
}

public cmdRank(id) {
    new rrt_rank = get_pcvar_num(cvar_rank);
    
    if(rrt_rank == 0) {
        ColorChat(id, GREEN, "[Rank]^x01 Dezactivat.");
        return PLUGIN_HANDLED;
    }
    
    new izStats[8], izBody[8], iRankPos, iRankMax, name[32], arg[32];
    
    read_argv(1, arg, 31);
    iRankMax = get_statsnum();
    
    if(equali(arg, "")) {
        iRankPos = get_user_stats(id, izStats, izBody);
        
        get_user_name(id, name, 31);
        
        if(rrt_rank == 2)
            ColorChat(id, GREEN, "[Rank]^x03 %s,^x01 esti pe locul^x03 %d^x01 din^x03 %d^x01 cu^x03 %d^x01 fraguri si^x03 %d^x01 decese.",name,iRankPos,iRankMax,izStats[0],izStats[1]);
        else if(rrt_rank == 1)
            ColorChat(id, GREEN, "[Rank]^x03 %s,^x01 esti pe locul %d din %d",name, iRankPos, iRankMax);
        
        return PLUGIN_HANDLED;
    }
    new player = cmd_target(id, arg, 14);
    
    if(!is_user_connected(player) || !player) {
        ColorChat(id,GREEN,"[Rank]^x01 Acest jucator nu este conectat.");
        return PLUGIN_HANDLED;
    }

    iRankPos = get_user_stats(player, izStats, izBody);
    get_user_name(player, name, 31);
    
    if(rrt_rank == 2)
        ColorChat(id, GREEN, "[Rank]^x03 %s^x01 este pe locul^x03 %d^x01 din^x03 %d^x01 cu^x03 %d^x01 fraguri si^x03 %d^x01 decese.", name, iRankPos, iRankMax, izStats[0], izStats[1]);
    else if(rrt_rank == 1)
        ColorChat(id, GREEN, "[Rank]^x03 %s^x01 este pe locul %d din %d", name, iRankPos, iRankMax);
    
    return PLUGIN_HANDLED;
}

public cmdRankstats(id) {
    if(get_pcvar_num(cvar_rankstats) == 0) {
        ColorChat(id, GREEN, "[Rankstats]^x01 Dezactivat.");
        return PLUGIN_HANDLED;
    }
    
    static buffer[2368], name[32], len, arg[32], iRankPos, izStats[8], izBody[8];
    
    len = format(buffer[len], 2367-len, "<style>body{background:#112233;font-family:Arial}th{background:#2E2E2E;color:#FFF;padding:5px 2px;text-align:center}td{padding:5px 2px}table{width:50%%;background:#EEEECC;font-size:12px;}h2{color:#FFF;font-family:Verdana;text-align:center}#c{background:#E2E2BC}</style>");
    
    read_argv(1, arg, 31);
    new iRankMax = get_statsnum();
    
    if(equali(arg, "")) {
        iRankPos = get_user_stats(id, izStats, izBody);
        get_user_name(id, name, 31);
        len += format(buffer[len], 2367-len, "<h2>Esti pe locul %d din %d</h2>",iRankPos, iRankMax);
    }
    else {
        new player = cmd_target(id, arg, 14);
    
        if(!is_user_connected(player) || !player) {
            ColorChat(id, GREEN, "[Rank]^x01 Acest jucator nu este conectat.");
            return PLUGIN_HANDLED;
        }
        
        iRankPos = get_user_stats(player, izStats, izBody);
        get_user_name(player, name, 31);
        
        len += format(buffer[len], 2367-len, "<h2>%s este pe locul %d din %d</h2>", name, iRankPos, iRankMax);
    }
    
    new server_name[64];
    get_cvar_string("hostname", server_name, 63);
    
    len += format(buffer[len], 2367-len, "<table border=^"0^" align=^"center^" cellpadding=^"0^" cellspacing=^"1^"><tbody>");
    
    len += format(buffer[len], 2367-len, "<tr><th colspan=^"2^">Statistici %s", name);
    
    len += format(buffer[len], 2367-len, "<tr id=^"c^"><td>Ucideri<td>%d (cu %d HS)", izStats[0], izStats[2]);
    len += format(buffer[len], 2367-len, "<tr><td>Deaths<td>%d", izStats[1]);
    len += format(buffer[len], 2367-len, "<tr id=^"c^"><td>Hits<td>%d", izStats[5]);
    len += format(buffer[len], 2367-len, "<tr><td>Shots<td>%d", izStats[4]);
    len += format(buffer[len], 2367-len, "<tr id=^"c^"><td>Damage(HP)<td>%d", izStats[6]);
    len += format(buffer[len], 2367-len, "<tr><td>ACC. (%)<td>%.02f%", accuracy(izStats));
    len += format(buffer[len], 2367-len, "<tr id=^"c^"><td>EFF.<td>%.02f%", effec(izStats));
    len += format(buffer[len], 2367-len, "<tr><th colspan=^"2^">%s", server_name);
    
    len += format(buffer[len], 2367-len, "</tbody></table></body>");
    show_motd(id, buffer, "Top jucatori");
    
    return PLUGIN_CONTINUE;
}

Float:accuracy(izStats[8]) {
    if(!izStats[4])
        return (0.0);
    
    return (100.0 * float(izStats[5]) / float(izStats[4]));
}

Float:effec(izStats[8]) {
    if(!izStats[0])
        return (0.0);
    
    return (100.0 * float(izStats[0]) / float(izStats[0] + izStats[1]));
}

public cmdTop15(id) {
    new iMax = get_statsnum();
    new iNr = get_pcvar_num(cvar_topnum);
    
    if(iNr != 10 && iNr != 15)
        return PLUGIN_HANDLED;
            
    new start;
        
    if(gNum > 0 && gNum < 16) {
        start = 0;
        gNum = iNr;
    }
    else {
        if(gNum > iMax)
            gNum = iMax;
        else    
            start = gNum - iNr;
    }
            
    new title_data[128];
    new title = get_pcvar_string(cvar_title, title_data, 127);
        
    new buffer[2368], name[32], iBody[8], len, iStats[8];
        
    len = format(buffer[len], 2367-len, "<style>body{background:#112233;font-family:Arial}th{background:#2E2E2E;color:#FFF;padding:5px 2px;text-align:left}td{padding:5px 2px}table{width:100%%;background:#EEEECC;font-size:12px;}h2{color:#FFF;font-family:Verdana;text-align:center}#nr{text-align:center}#c{background:#E2E2BC}</style><h2>%s</h2><table border=^"0^" align=^"center^" cellpadding=^"0^" cellspacing=^"1^"><tbody>", title);
    len += format(buffer[len], 2367-len, "<tr><th id=nr>#</th><th>Name<th>Kills<th>Deaths<th>HS<th>Skill");
        
    for(new i = start; i < gNum; i++) {
        get_user_name(id, name, 31);
        get_stats(i, iStats, iBody, name, 31);
            
        new Float:fstats[8];
        for (new j = 0; j < 8; j++)
            fstats[j] = float(iStats[j]);
            
        while(containi(name, "<") != -1)
            replace(name, 31, "<", "<");
        while(containi(name, ">") != -1)
            replace(name, 31, ">", ">");
            
        len += format(buffer[len], 2367-len, "<tr %s><td id=nr>%d<td>%s<td>%d<td>%d<td>%d<td>%.02f",((i%2)==0) ? "" : " id=c", (i+1), name, iStats[0], iStats[1], iStats[2], ((fstats[0]-fstats[1])+fstats[2])/2);
    }
        
    new server_name[64];
    get_cvar_string("hostname", server_name, 63);
    len += format(buffer[len], 2367-len, "<tr><th colspan=^"7^" id=nr>%s", server_name);
        
    len += format(buffer[len], 2367-len, "</tbody></table></body>");
    show_motd(id, buffer, "Top jucatori");
    
    return PLUGIN_CONTINUE;
}
Daca te-am ajutat, lasa si tu un +1
Post Reply

Return to “Cereri”

  • Information