Заявка за HNS Best Round Time Team Statistics

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
jumby1990
Извън линия
Потребител
Потребител
Мнения: 128
Регистриран на: 10 Фев 2019, 18:02
Местоположение: varna
Се отблагодари: 8 пъти
Получена благодарност: 4 пъти
Обратна връзка:

Заявка за HNS Best Round Time Team Statistics

Мнение от jumby1990 » 25 Ное 2019, 10:55

Здравейте ако може да направите след края на всеки рунд да се показва статистика за двата отбора (TT-Hiders , CT-Seekers).

Да показва най-доброя играч от TT-Hiders Team и от CT-Seekers Team.

За TT-Hiders: Отбора да показва най-доброто време на играча който е успял да оцелее най-дълго време.

За CT-Seekers: Отбора да показва ней-доброто време на играча който най - бързо е успял да залови противника и неговите хванати противници.

Ако може да го изкарва като menu отдясно на екрана малко по доло от радара да е (както се отваря amxmodmenu - така имам предвид да излгежда).

Да има опция да се затваря menu.

Example:
Best Round Time - Hiders , Seekers:
1.) Hiders - Best Time: Player1 Made A - 1:35 (1min : 35sec) !
2.) Seekers - Best Time: Player2 Made A - 1.20 (1min ; 20sec) With 2 Kills !
3.) Exit

Благодаря.

Аватар
mi0
Извън линия
AMXX Скриптър
AMXX Скриптър
Мнения: 534
Регистриран на: 09 Дек 2016, 22:02
Се отблагодари: 97 пъти
Получена благодарност: 120 пъти
Обратна връзка:

Заявка за HNS Best Round Time Team Statistics

Мнение от mi0 » 25 Ное 2019, 17:21

Не е възможно, да има меню на друго място, освен там, където е amxmodmenu.
aka kurdokoleno
Catch Mod - 87.121.112.232:27021

Аватар
Русский Мясник
Извън линия
Потребител
Потребител
Мнения: 36
Регистриран на: 14 Сеп 2019, 19:36
Се отблагодари: 7 пъти
Получена благодарност: 2 пъти

Заявка за HNS Best Round Time Team Statistics

Мнение от Русский Мясник » 25 Ное 2019, 18:06

Той там има предвид, май се е объркал просто. Иначе ако искаш отдясно става с dhudmessage, ама няма да е меню.
Basebuilder 6.5 CSO Mod -- 70%
Massive Public -- 90%

Аватар
jumby1990
Извън линия
Потребител
Потребител
Мнения: 128
Регистриран на: 10 Фев 2019, 18:02
Местоположение: varna
Се отблагодари: 8 пъти
Получена благодарност: 4 пъти
Обратна връзка:

Заявка за HNS Best Round Time Team Statistics

Мнение от jumby1990 » 25 Ное 2019, 18:53

може и като hud msg да го изкарва съобщението

Аватар
Autumn Shade
Извън линия
Потребител
Потребител
Мнения: 269
Регистриран на: 14 Мар 2019, 13:20
Се отблагодари: 48 пъти
Получена благодарност: 150 пъти

Заявка за HNS Best Round Time Team Statistics

Мнение от Autumn Shade » 25 Ное 2019, 20:26

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <cstrike>
#include <hamsandwich>

#define PLUGIN  "Best Player"
#define VERSION "1.0"
#define AUTHOR  "Autumn Shade"

new g_iPlayerKills[33];
new Float:g_iPlayerSurviveTime[33];
new Float:g_iPlayerKillTime[33];

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR);

    /*! Forwards */
    register_logevent("fwRoundEnd", 2, "1=Round_End");
    register_logevent("fwRoundStart", 2, "1=Round_Start") 

    /*! Ham */
    RegisterHam(Ham_Killed, "player", "fwPlayerKilled")
}

public fwRoundStart() {
    new iPlayers[32], iNum;

    get_players(iPlayers, iNum, "ach");

    for(new index = 0; index < iNum; index++) {
        new id = iPlayers[index];

        if(!is_user_alive(id) || !is_user_connected(id))
            return PLUGIN_CONTINUE;

        if(cs_get_user_team(id) == CS_TEAM_T) {
            g_iPlayerSurviveTime[id] = get_gametime();
        } else if(cs_get_user_team(id) == CS_TEAM_CT) {
            g_iPlayerKillTime[id] = get_gametime();
            g_iPlayerKills[id] = 0;
        }
    }

    return PLUGIN_HANDLED;    
}

public fwRoundEnd() {
    new iPlayers[32], iNum;

    get_players(iPlayers, iNum, "ch");

    for(new index = 0; index < iNum; index++) {
        new id = iPlayers[index];

        if(!is_user_connected(id))
            return PLUGIN_CONTINUE;

        showBestMenu(id);
    }

    return PLUGIN_HANDLED;
}

public fwPlayerKilled(iVictim, iAttacker, iCorpse) {

    if(!is_user_connected(iVictim) || !is_user_connected(iAttacker))
        return PLUGIN_CONTINUE;
        
    if(cs_get_user_team(iVictim) == CS_TEAM_T && cs_get_user_team(iAttacker) == CS_TEAM_CT) {
        g_iPlayerKillTime[iAttacker] = floatsub(get_gametime(), g_iPlayerKillTime[iAttacker]);
        g_iPlayerSurviveTime[iVictim] = floatsub(get_gametime(), g_iPlayerSurviveTime[iVictim]);
        g_iPlayerKills[iAttacker]++;
    }

    return HAM_HANDLED;
}

/*! Menu */
stock showBestMenu(id) {
    new iMenu = menu_create("\yBest players this round:", "iHandler");

    new iBestHiderId = getBestHider();
    new iBestSeekerId = getBestSeeker();
    new iHiderName[32], iSeekerName[32], iTemp[512], iHiderTime[23], iSeekerTime[23];

    convertTime(g_iPlayerSurviveTime[iBestHiderId], iHiderTime, charsmax(iHiderTime));
    convertTime(g_iPlayerKillTime[iBestSeekerId], iSeekerTime, charsmax(iSeekerTime));

    get_user_name(iBestHiderId, iHiderName, charsmax(iHiderName));
    get_user_name(iBestSeekerId, iSeekerName, charsmax(iSeekerName));

    formatex(iTemp, charsmax(iTemp), "\rBest Hider: \w%s^n\ySurvival Time: \w%s^n^n", iHiderName, iHiderTime);
    menu_additem(iMenu, iTemp);

    formatex(iTemp, charsmax(iTemp), "\rBest Seeker: \w%s ^n\yFirst Kill: \w%s ^n\yKills: \w%d", iSeekerName, iSeekerTime, g_iPlayerKills[iBestSeekerId]);
    menu_additem(iMenu, iTemp);

    menu_setprop(iMenu, MPROP_EXIT, MEXIT_ALL);

    menu_display(id, iMenu, 0);
}

public iHandler(id, iMenu, iItem) {
    menu_destroy(iMenu);

    return PLUGIN_HANDLED;
}

/*! Stocks */
stock getBestHider() {
    new iPlayers[32], iNum;

    get_players(iPlayers, iNum, "ceh", "TERRORIST");

    new iBestPlayerId = iPlayers[0];

    for(new index = 0; index < iNum; index++) {
        new id = iPlayers[index];

        if(!is_user_connected(id))
            return 0;

        if(g_iPlayerSurviveTime[id] > g_iPlayerSurviveTime[iBestPlayerId]) {
            iBestPlayerId = id;
        }
    }

    return iBestPlayerId;
}

stock getBestSeeker() {
    new iPlayers[32], iNum;

    get_players(iPlayers, iNum, "ceh", "CT");

    new iBestPlayerId = iPlayers[0];

    for(new index = 0; index < iNum; index++) {
        new id = iPlayers[index];

        if(!is_user_connected(id))
            return 0;

        if(g_iPlayerKillTime[id] < g_iPlayerKillTime[iBestPlayerId]) {
            iBestPlayerId = id;
        }
    }

    return iBestPlayerId;
}

stock convertTime(Float:iTime, iDest[], iLen ) {
	new iTemp[24];
	new Float:iSeconds = iTime, iMinutes;

	iMinutes		= floatround(iSeconds / 60.0, floatround_floor);
	iSeconds		-= iMinutes * 60.0;
	new intpart		= floatround(iSeconds, floatround_floor);
	new Float:decpart	= (iSeconds - intpart) * 100.0;
	intpart			= floatround(decpart);

	formatex(iTemp, charsmax(iTemp), "%02i:%02.0f.%d", iMinutes, iSeconds, intpart);
	formatex(iDest, iLen, iTemp);

	return PLUGIN_HANDLED;
}

Аватар
jumby1990
Извън линия
Потребител
Потребител
Мнения: 128
Регистриран на: 10 Фев 2019, 18:02
Местоположение: varna
Се отблагодари: 8 пъти
Получена благодарност: 4 пъти
Обратна връзка:

Заявка за HNS Best Round Time Team Statistics

Мнение от jumby1990 » 25 Ное 2019, 20:31

Много ти благодаря !

Заключено
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Заявки за плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 24 госта