Преработка на WarmUP Round

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Отговори
Потребителски аватар

Автор на темата
Mariela
Потребител
Потребител
Мнения: 148
Регистриран: 13 окт 2016, 00:32
Местоположение: гр. София
Се отблагодари: 9 пъти
Получена благодарност: 7 пъти
Години: 26
Контакти:

Преработка на WarmUP Round

Мнение от Mariela » 17 май 2018, 22:40

Здравейте,
ако може някой да ми преработи плъгина който съм дал по-долу, докато тече загряващия рунд, малко над средата на екрана да излиза таймер, колко време остава до края на загряващия рунд. В началото на рунда да излизат 3 съобщения, че това е загряващ рунд. Да бъде премахнато това съобщение "Warmup round is over, restarting...", също така, има проблем с дропването на оръжията. При компилация ми показва тази грешка "(48) warning 209: function "OnDrop" should return a value". След като те убият си остават по мапа, ако може да се премахнат и те (след като те убият да изчезват). Като свърши загряващия рунд да излизат в чата 3 последнователни съобщения, няма значение какви, аз ще си ги редактирам.
Благодаря предварително!

Код: Избери всички

#include <amxmodx>
#include <reapi>
#include <WPMGPrintChatColor>

new p_flWarmUpTime, p_flForceRespawn, p_flBuyTime;
new Float:g_flOldBuyTime, Float:g_flOldForceRespawn;
new HookChain:fwdPlayerSpawn;
new bool:g_bWarmup

new const g_szWeapons[][] =
{
    "weapon_ak47", "weapon_m4a1", "weapon_aug", "weapon_awp", "weapon_famas", "weapon_galil",
    "weapon_m249", "weapon_scout", "weapon_m3", "weapon_xm1014", "weapon_mac10", "weapon_p90"
};

new const g_szPistols[][] =
{
    "weapon_glock18", "weapon_usp",    "weapon_deagle", "weapon_elite", "weapon_p228"
};

new const g_iWeaponsBpAmmo[] =
{
    90, 90, 90, 30, 90, 90, 200, 90, 32, 32, 100, 100
}

new const g_iPistolsBpAmmo[] =
{
    120, 100, 35, 120, 52
}

public plugin_init()
{
    register_plugin("Warm UP", "1.0", "TheRedShoko @ AMXX-BG.info");
    register_clcmd("drop", "OnDrop")
    
    DisableHookChain((fwdPlayerSpawn = RegisterHookChain(RG_CBasePlayer_Spawn, "FwPlayerSpawnPost", 1)));
    
    p_flWarmUpTime = register_cvar("warmup_time", "180.0");
    
    p_flForceRespawn = get_cvar_pointer("mp_forcerespawn");
    p_flBuyTime = get_cvar_pointer("mp_buytime");
}

public OnDrop(id)
{
    if(g_bWarmup)
    return PLUGIN_HANDLED
}

public plugin_cfg()
{
    g_flOldBuyTime = get_pcvar_float(p_flForceRespawn);
    g_flOldBuyTime = get_pcvar_float(p_flBuyTime);
    
    set_pcvar_num(p_flBuyTime, 0);
    set_pcvar_float(p_flForceRespawn, 0.1);
    
    new Float:flWarmUpTime = get_pcvar_float(p_flWarmUpTime);
    
    set_task(flWarmUpTime, "EndWarmUp");
    g_bWarmup = true
    
    EnableHookChain(fwdPlayerSpawn);
    
    set_hudmessage(0, 255, 0, .holdtime = 10.0);
    show_hudmessage(0, "Warmup round will end in %.f seconds!", flWarmUpTime);
    
    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!g[WarmUp]!y Warmup round will end in %.f seconds!", flWarmUpTime);
}

public EndWarmUp()
{
    DisableHookChain(fwdPlayerSpawn);
    
    set_pcvar_float(p_flBuyTime, g_flOldBuyTime);
    set_pcvar_float(p_flForceRespawn, g_flOldForceRespawn);
    
    set_hudmessage(0, 255, 0, .holdtime = 10.0);
    show_hudmessage(0, "Warmup round is over, restarting...");
    
    server_cmd("sv_restart 3");
    g_bWarmup = false
    
    PrintChatColor(0, PRINT_COLOR_PLAYERTEAM, "!g[WarmUp]!y Warm up is over, restarting...");
}

public FwPlayerSpawnPost(id)
{
    if (!is_user_alive(id))
    {
        return;
    }
    
    rg_remove_all_items(id);
    rg_give_item(id, "weapon_knife");
    
    new iPrimaryWeapon = random(sizeof g_szWeapons);
    new iSecondaryWeapon = random(sizeof g_szPistols);
    
    rg_give_item(id, g_szWeapons[iPrimaryWeapon]);
    rg_give_item(id, g_szPistols[iSecondaryWeapon]);
    rg_set_user_bpammo(id, rg_get_weapon_info(g_szWeapons[iPrimaryWeapon], WI_ID), g_iWeaponsBpAmmo[iPrimaryWeapon]);
    rg_set_user_bpammo(id, rg_get_weapon_info(g_szPistols[iSecondaryWeapon], WI_ID), g_iPistolsBpAmmo[iSecondaryWeapon]);
}


Последно избутана от Mariela на 17 май 2018, 22:40.
И имайте предвид, че никой след време няма да дойде и да ви каже "Благодаря ти, че пренебрегна себе си, за да ми е добре на мен. :)

Отговори

Върни се в “Заявки за плъгини”

Кой е на линия

Потребители, разглеждащи този форум: Няма регистрирани потребители и 1 гост