преработка на PlayerTime

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
Marinovv
Извън линия
Потребител
Потребител
Мнения: 511
Регистриран на: 19 Сеп 2017, 10:01
Местоположение: България
Се отблагодари: 530 пъти
Получена благодарност: 13 пъти
Обратна връзка:

преработка на PlayerTime

Мнение от Marinovv » 17 Юни 2021, 20:54

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

#include <amxmodx>
#include <engine>
#include <fvault>

new const szFVaultName[] = "played_time";
new const szHudClass[] = "hud_think_class_ptime";

new g_iPlayedSeconds[33];
new g_iMaxPlayers, g_iSyncChannel;

public plugin_init()
{
    register_plugin("Played time", "1.0", "AMXX-BG.info");
    
    new iEnt = create_entity("info_target");
    
    if (iEnt)
    {
        register_think(szHudClass, "FwHudThink");
        
        entity_set_string(iEnt, EV_SZ_classname, szHudClass);
        entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 0.1);
    }
    
    g_iMaxPlayers = get_maxplayers();
    g_iSyncChannel = CreateHudSyncObj();
}

public FwHudThink(iEnt)
{
    if (!is_valid_ent(iEnt)) return;
    
    new szTimeFormat[32];
    
    for (new i = 1; i <= g_iMaxPlayers; i++)
    {
        if (!is_user_connected(i)) continue;
        
        formatex(szTimeFormat, charsmax(szTimeFormat), "");
        
        g_iPlayedSeconds[i]++;
        
        GetTimeFormat(g_iPlayedSeconds[i], szTimeFormat);
        
        set_hudmessage(0, 150, 200, 0.01, 0.2, 0, .channel=-1);
        ShowSyncHudMsg(i, g_iSyncChannel, "Played time: %s", szTimeFormat);
    }
    
    entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 1.0);
}

public client_putinserver(id)
{
    new szName[32];
    get_user_name(id, szName, charsmax(szName));
    
    LoadData(id, szName);
}

public client_disconnected(id)
{
    new szName[32];
    get_user_name(id, szName, charsmax(szName));
    
    SaveData(id, szName);
}

LoadData(id, szName[])
{
    new szData[32];
    
    if (fvault_get_data(szFVaultName, szName, szData, charsmax(szData)))
    {
        g_iPlayedSeconds[id] = str_to_num(szData);
    }
    else
    {
        g_iPlayedSeconds[id] = 0;
    }
}

SaveData(id, szName[])
{
    new szData[32];
    num_to_str(g_iPlayedSeconds[id], szData, charsmax(szData));
    
    fvault_set_data(szFVaultName, szName, szData);
}

GetTimeFormat(iSeconds, szFormat[32])
{
    new iHours = iSeconds / 3600;
    formatex(szFormat, charsmax(szFormat), "%s%i", (iHours < 10) ? "0" : "", iHours);
    
    new iMinutes = iSeconds % 3600 / 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iMinutes < 10) ? "0" : "", iMinutes);
    
    iSeconds = iSeconds % 3600 % 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iSeconds < 10) ? "0" : "", iSeconds);
} 
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Може ли да се редактира обаче по начин, който да не запазва времето, единствено да показва колко време играеш докато не лефнеш.
Иван Маринов,

лицензиран оператор и пилот на професионални дронове клас C1 за всички държави в EU.

DJI Mavic 3 Classic | DJI Mavic 3 PRO - погледни света от различна перспектива.

Последвайте ме във Facebook

Аватар
hackera457
Извън линия
Модератор
Модератор
Мнения: 768
Регистриран на: 01 Ное 2016, 09:46
Местоположение: София
Се отблагодари: 1 път
Получена благодарност: 124 пъти
Обратна връзка:

преработка на PlayerTime

Мнение от hackera457 » 17 Юни 2021, 22:19

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

#include <amxmodx>
#include <engine>
#include <fvault>

new const szFVaultName[] = "played_time";
new const szHudClass[] = "hud_think_class_ptime";

new g_iPlayedSeconds[33];
new g_iMaxPlayers, g_iSyncChannel;

public plugin_init()
{
    register_plugin("Played time", "1.0", "AMXX-BG.info");
    
    new iEnt = create_entity("info_target");
    
    if (iEnt)
    {
        register_think(szHudClass, "FwHudThink");
        
        entity_set_string(iEnt, EV_SZ_classname, szHudClass);
        entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 0.1);
    }
    
    g_iMaxPlayers = get_maxplayers();
    g_iSyncChannel = CreateHudSyncObj();
}

public FwHudThink(iEnt)
{
    if (!is_valid_ent(iEnt)) return;
    
    new szTimeFormat[32];
    
    for (new i = 1; i <= g_iMaxPlayers; i++)
    {
        if (!is_user_connected(i)) continue;
        
        formatex(szTimeFormat, charsmax(szTimeFormat), "");
        
        g_iPlayedSeconds[i]++;
        
        GetTimeFormat(g_iPlayedSeconds[i], szTimeFormat);
        
        set_hudmessage(0, 150, 200, 0.01, 0.2, 0, .channel=-1);
        ShowSyncHudMsg(i, g_iSyncChannel, "Played time: %s", szTimeFormat);
    }
    
    entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 1.0);
}

public client_putinserver(id)
{
    new szName[32];
    get_user_name(id, szName, charsmax(szName));
    
}

public client_disconnected(id)
{
    new szName[32];
    get_user_name(id, szName, charsmax(szName));
    

}

/*LoadData(id, szName[])
{
    new szData[32];
    
    if (fvault_get_data(szFVaultName, szName, szData, charsmax(szData)))
    {
        g_iPlayedSeconds[id] = str_to_num(szData);
    }
    else
    {
        g_iPlayedSeconds[id] = 0;
    }
}

SaveData(id, szName[])
{
    new szData[32];
    num_to_str(g_iPlayedSeconds[id], szData, charsmax(szData));
    
    fvault_set_data(szFVaultName, szName, szData);
}*/

GetTimeFormat(iSeconds, szFormat[32])
{
    new iHours = iSeconds / 3600;
    formatex(szFormat, charsmax(szFormat), "%s%i", (iHours < 10) ? "0" : "", iHours);
    
    new iMinutes = iSeconds % 3600 / 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iMinutes < 10) ? "0" : "", iMinutes);
    
    iSeconds = iSeconds % 3600 % 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iSeconds < 10) ? "0" : "", iSeconds);
} 
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Моите плъгини

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

#include <hambeer>

RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);

public GivePlayerBeer(Pl){
    if(!is_user_alive(Pl)){
        ham_give_beer(Pl, 5)
        client_print(Pl, print_chat, "Go Go Go"){
}  


Аватар
Marinovv
Извън линия
Потребител
Потребител
Мнения: 511
Регистриран на: 19 Сеп 2017, 10:01
Местоположение: България
Се отблагодари: 530 пъти
Получена благодарност: 13 пъти
Обратна връзка:

преработка на PlayerTime

Мнение от Marinovv » 18 Юни 2021, 05:54

hackera457 написа: 17 Юни 2021, 22:19

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

#include <amxmodx>
#include <engine>
#include <fvault>

new const szFVaultName[] = "played_time";
new const szHudClass[] = "hud_think_class_ptime";

new g_iPlayedSeconds[33];
new g_iMaxPlayers, g_iSyncChannel;

public plugin_init()
{
    register_plugin("Played time", "1.0", "AMXX-BG.info");
    
    new iEnt = create_entity("info_target");
    
    if (iEnt)
    {
        register_think(szHudClass, "FwHudThink");
        
        entity_set_string(iEnt, EV_SZ_classname, szHudClass);
        entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 0.1);
    }
    
    g_iMaxPlayers = get_maxplayers();
    g_iSyncChannel = CreateHudSyncObj();
}

public FwHudThink(iEnt)
{
    if (!is_valid_ent(iEnt)) return;
    
    new szTimeFormat[32];
    
    for (new i = 1; i <= g_iMaxPlayers; i++)
    {
        if (!is_user_connected(i)) continue;
        
        formatex(szTimeFormat, charsmax(szTimeFormat), "");
        
        g_iPlayedSeconds[i]++;
        
        GetTimeFormat(g_iPlayedSeconds[i], szTimeFormat);
        
        set_hudmessage(0, 150, 200, 0.01, 0.2, 0, .channel=-1);
        ShowSyncHudMsg(i, g_iSyncChannel, "Played time: %s", szTimeFormat);
    }
    
    entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 1.0);
}

public client_putinserver(id)
{
    new szName[32];
    get_user_name(id, szName, charsmax(szName));
    
}

public client_disconnected(id)
{
    new szName[32];
    get_user_name(id, szName, charsmax(szName));
    

}

/*LoadData(id, szName[])
{
    new szData[32];
    
    if (fvault_get_data(szFVaultName, szName, szData, charsmax(szData)))
    {
        g_iPlayedSeconds[id] = str_to_num(szData);
    }
    else
    {
        g_iPlayedSeconds[id] = 0;
    }
}

SaveData(id, szName[])
{
    new szData[32];
    num_to_str(g_iPlayedSeconds[id], szData, charsmax(szData));
    
    fvault_set_data(szFVaultName, szName, szData);
}*/

GetTimeFormat(iSeconds, szFormat[32])
{
    new iHours = iSeconds / 3600;
    formatex(szFormat, charsmax(szFormat), "%s%i", (iHours < 10) ? "0" : "", iHours);
    
    new iMinutes = iSeconds % 3600 / 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iMinutes < 10) ? "0" : "", iMinutes);
    
    iSeconds = iSeconds % 3600 % 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iSeconds < 10) ? "0" : "", iSeconds);
} 
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par }
*/
Отново запазва времето? Аз не искам да запазва нищо, защото не е нужно.Просто искам обикновено плъгинче, което показва текущото изиграно време в сървъра. И след реконект просто да се занулява. Отново отначало..
Иван Маринов,

лицензиран оператор и пилот на професионални дронове клас C1 за всички държави в EU.

DJI Mavic 3 Classic | DJI Mavic 3 PRO - погледни света от различна перспектива.

Последвайте ме във Facebook

Аватар
hackera457
Извън линия
Модератор
Модератор
Мнения: 768
Регистриран на: 01 Ное 2016, 09:46
Местоположение: София
Се отблагодари: 1 път
Получена благодарност: 124 пъти
Обратна връзка:

преработка на PlayerTime

Мнение от hackera457 » 18 Юни 2021, 16:12

не беше уточнил, че искаш да се занулява при реконект затова само съм махнал fvault. Ето ти го, вече ще нулира при влизане в сървъра

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

#include <amxmodx>
#include <engine>


new const szFVaultName[] = "played_time";
new const szHudClass[] = "hud_think_class_ptime";

new g_iPlayedSeconds[33];
new g_iMaxPlayers, g_iSyncChannel;

public plugin_init()
{
    register_plugin("Played time", "1.0", "AMXX-BG.info");
    
    new iEnt = create_entity("info_target");
    
    if (iEnt)
    {
        register_think(szHudClass, "FwHudThink");
        
        entity_set_string(iEnt, EV_SZ_classname, szHudClass);
        entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 0.1);
    }
    
    g_iMaxPlayers = get_maxplayers();
    g_iSyncChannel = CreateHudSyncObj();
}

public FwHudThink(iEnt)
{
    if (!is_valid_ent(iEnt)) return;
    
    new szTimeFormat[32];
    
    for (new i = 1; i <= g_iMaxPlayers; i++)
    {
        if (!is_user_connected(i)) continue;
        
        formatex(szTimeFormat, charsmax(szTimeFormat), "");
        
        g_iPlayedSeconds[i]++;
        
        GetTimeFormat(g_iPlayedSeconds[i], szTimeFormat);
        
        set_hudmessage(0, 150, 200, 0.01, 0.2, 0, .channel=-1);
        ShowSyncHudMsg(i, g_iSyncChannel, "Played time: %s", szTimeFormat);
    }
    
    entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 1.0);
}

public client_putinserver(id)
{
	g_iPlayedSeconds[id] = 0;
    
}

GetTimeFormat(iSeconds, szFormat[32])
{
    new iHours = iSeconds / 3600;
    formatex(szFormat, charsmax(szFormat), "%s%i", (iHours < 10) ? "0" : "", iHours);
    
    new iMinutes = iSeconds % 3600 / 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iMinutes < 10) ? "0" : "", iMinutes);
    
    iSeconds = iSeconds % 3600 % 60;
    format(szFormat, charsmax(szFormat), "%s:%s%i", szFormat, (iSeconds < 10) ? "0" : "", iSeconds);
} 
Моите плъгини

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

#include <hambeer>

RegisterHamBeer(HamBeer_Spawn, "player", "GivePlayerBeer", 1);

public GivePlayerBeer(Pl){
    if(!is_user_alive(Pl)){
        ham_give_beer(Pl, 5)
        client_print(Pl, print_chat, "Go Go Go"){
}  


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

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

Кой е на линия

Потребители разглеждащи този форум: Semrush [Bot] и 23 госта