[CS: Source] ShowDamage for RPG

Статус
В этой теме нельзя размещать новые ответы.

Xummuk97

Programmer
Сообщения
309
Реакции
75
Сделайте пожалуйста ShowDamage для RPG (Чтоб урон показывался настоящий + урон РПГ)
 

Danyas

Участник
Сообщения
2,173
Реакции
1,072
А в чём проблема обыкновенного?
 

Xummuk97

Programmer
Сообщения
309
Реакции
75
Показывает только настоящий урон

Добавлено через 19 часов 48 минут
Ну так не кто не поможет?
 
Последнее редактирование:

Reiko1231

AlexTheRegent
Сообщения
508
Реакции
1,335
Довольно долго это делать, поскольку дамаг от rpg проходит без вызова события нанесения урону игроку. Нужно в каждом модуле дописывать, чтобы такой урон считался, и комбинировать его вместе с showdamage (который так же придется исправлять).
 

Саша Шеин

Кому костылей?
Сообщения
1,697
Реакции
621
А если считать хп? С начало получить значение в Pre хуке, а потом получить значение оставшихся хп в Post хуке (GetClientHealth). Ну и вычесть из первого второе.
 

Xummuk97

Programmer
Сообщения
309
Реакции
75
А если считать хп? С начало получить значение в Pre хуке, а потом получить значение оставшихся хп в Post хуке (GetClientHealth). Ну и вычесть из первого второе.
Что?

Можешь написать что мне написать в коде?)
 

fallen1994

Участник
Сообщения
2,357
Реакции
538
А если считать хп? С начало получить значение в Pre хуке, а потом получить значение оставшихся хп в Post хуке (GetClientHealth). Ну и вычесть из первого второе.
зачем лишняя нагрузка? в замесе 10х10 будут тики проседать скорее всего
 

Саша Шеин

Кому костылей?
Сообщения
1,697
Реакции
621
Вот примерно так Оффтоп
PHP:
new g_iOldHealth[MAXPLAYERS+1] = -1;

public OnPluginStart()
{
	HookEvent("player_hurt", EV_Hurt_Pre, EventHookMode_Pre);
	HookEvent("player_hurt", EV_Hurt, EventHookMode_Post);
}

public Action:EV_Hurt_Pre(Handle:event, const String:name[], bool:dontBroadcast)
{
	new client = GetClientOfUserId(GetEventInt(event,"userid"));
	if(client) g_iOldHealth[client] = GetClientHealth(client);
}

public Action:EV_Hurt(Handle:event, const String:name[], bool:dontBroadcast)
{
	new client = GetClientOfUserId(GetEventInt(event,"userid")),
		attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
	if(client&&attacker)
	{
		new HP = GetClientHealth(client);
		new DMG = g_iOldHealth[client] - HP;
		PrintToChat(attacker,"[ DMG ] Урон: %d",DMG);
		g_iOldHealth[client] = GetClientHealth(client);
	}
}
 
Последнее редактирование:

Xummuk97

Programmer
Сообщения
309
Реакции
75
Прошу закрыть тему по причине что: 2 человека предлагают цену за плагин.
 

acik_traiks

Что нибудь напишем?)
Сообщения
770
Реакции
627
заменить в папке thc_rpg/upgrades и скомпилить rpg
 

Вложения

  • damage.inc
    7.3 КБ · Просмотры: 7
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу