Request edit c4 timer

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
Igivapto
Извън линия
Foreigner
Foreigner
Мнения: 31
Регистриран на: 08 Май 2020, 14:52
Се отблагодари: 13 пъти
Получена благодарност: 1 път

Request edit c4 timer

Мнение от Igivapto » 22 Апр 2021, 02:59

I like to show c4 timer on round time instead of hud message. Thanks in advice.

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

#include <amxmodx>
#include <reapi>

new g_iTimerEnt
new g_pC4Timer, g_iTimer, g_pCvarColor, g_pCvarPosition
new szColors[17], szRed[4], szGreen[4], szBlue[4], szPosition[33], szX[17], szY[17]

public plugin_init()
{
	register_plugin("C4Timer", "1.0", "mi0")
	
	RegisterHookChain(RG_PlantBomb, "RG_PlantBomb_Hook")
	RegisterHookChain(RG_RoundEnd, "RG_RoundEnd_Hook")
	RegisterHookChain(RG_CGrenade_DefuseBombEnd, "RG_CGrenade_DefuseBombEnd_Hook")
	
	g_iTimerEnt = rg_create_entity("info_target")
	set_entvar(g_iTimerEnt, var_classname, "Task_Ent")
	g_pC4Timer = get_cvar_pointer("mp_c4timer")
	g_pCvarColor = register_cvar("C4Color", "255 0 0")
	g_pCvarPosition = register_cvar("C4_Position", "0.45 0.97")
	
	SetThink(g_iTimerEnt, "Entity_Think")
}

public RG_PlantBomb_Hook(id)
{
	g_iTimer = get_pcvar_num(g_pC4Timer)
	
	get_pcvar_string(g_pCvarColor, szColors, 16)
	get_pcvar_string(g_pCvarPosition, szPosition, 32)

	parse(szColors, szRed, 3, szGreen, 3, szBlue, 3)
	parse(szPosition, szX, 16, szY, 16)

	set_dhudmessage(str_to_num(szRed), str_to_num(szGreen), str_to_num(szBlue), str_to_float(szX), str_to_float(szY), _, _, 1.0)
	show_dhudmessage(0, "C4Timer: %i", g_iTimer)

	set_entvar(g_iTimerEnt, var_nextthink, 1.0 + get_gametime())
}

public Entity_Think(iEntID)
{
	if(iEntID == g_iTimerEnt)
	{
		get_pcvar_string(g_pCvarColor, szColors, 16)
		get_pcvar_string(g_pCvarPosition, szPosition, 32)

		parse(szColors, szRed, 3, szGreen, 3, szBlue, 3)
		parse(szPosition, szX, 16, szY, 16)

		set_dhudmessage(str_to_num(szRed), str_to_num(szGreen), str_to_num(szBlue), str_to_float(szX), str_to_float(szY), _, _, 1.0)

		switch(g_iTimer)
		{
			case -1:
				show_dhudmessage(0, "C4Timer: END")
			case -2:
				show_dhudmessage(0, "C4Timer: DEF")
			case 1:
				show_dhudmessage(0, "C4Timer: BUM")
			default:
			{
				show_dhudmessage(0, "C4Timer: %i", --g_iTimer)
				set_entvar(g_iTimerEnt, var_nextthink, 1.0 + get_gametime())
			}
		}
	}
}

public RG_RoundEnd_Hook()
	g_iTimer = g_iTimer == -2 ? -2 : -1

public RG_CGrenade_DefuseBombEnd_Hook(this, player, bool:bDefused)
	if(bDefused) g_iTimer = g_iTimer == -1 ? -1 : -2

Аватар
Igivapto
Извън линия
Foreigner
Foreigner
Мнения: 31
Регистриран на: 08 Май 2020, 14:52
Се отблагодари: 13 пъти
Получена благодарност: 1 път

Request edit c4 timer

Мнение от Igivapto » 05 Май 2021, 00:52

Bump!

Аватар
menkisa
Извън линия
Потребител
Потребител
Мнения: 106
Регистриран на: 06 Яну 2020, 15:41
Се отблагодари: 21 пъти
Получена благодарност: 10 пъти

Request edit c4 timer

Мнение от menkisa » 05 Май 2021, 03:10

You could use this to display the C4 timer in round time.

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

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

Кой е на линия

Потребители разглеждащи този форум: Bing [Bot], Google [Bot] и 13 госта