Иконка ресурса

Who's faster? 19-09-2014

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #1
Who's faster?
Описание:
Не знаю, можно использовать как мод для игры, можно просто использовать как плагин, регулирует полученный урон. + что-то типа вампиризма.

CVARs:
wf_dps
— Количество урона за попадание.(Def. 2)
wf_hps — Количество полученного hp за попадание. (Def. 1)

Примечания:
Что можно добавить и где можно применить?
 
Последнее редактирование модератором:

Danyas

Участник
Сообщения
2,173
Реакции
1,072
Можно еще дописать для headshot'a
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #3
Danyas, в каком плане для headshot'а? Чтобы регулировалось только для хедшота, а в остальные части тела как был дамаг, таким и оставить?

Добавлено через 2 минуты
В принципе, если повозиться немного, можно попробовать сделать CVAR для включения регулировки только при стрельбе в определенную часть тела…
 
Последнее редактирование:

TolikCorp

Участник
Сообщения
874
Реакции
334
PHP:
wf_dps1 = CreateConVar("wf_dps", "2", "Количество урона за попадание.", FCVAR_PLUGIN);
wf_hps1 = CreateConVar("wf_hps", "1", "Количество полученного hp за попадание.", FCVAR_PLUGIN);
Лучше их сделать константами.
Шутишь?
if(IsClientInGame(i) && IsPlayerAlive(i) && i != 0) SetEntityHealth(a, hpa + GetConVarInt(wf_hps1));
 

acik_traiks

Что нибудь напишем?)
Сообщения
770
Реакции
627
можно еще и на attackera в последней строке
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #6
TolikCorp, что такое константа? Я не шучу, я не знаю что это, я с языком мало работаю.
 

AMD

Участник
Сообщения
180
Реакции
18
TolikCorp, что такое константа? Я не шучу, я не знаю что это, я с языком мало работаю.

Константа это постоянно не изменяемое значение, есть ещё переменное значение, которое может меняться в зависимости от, событий происходящих в программе.
 

TolikCorp

Участник
Сообщения
874
Реакции
334
PHP:
#include <sdktools>

#define wf_dps1 2
#define wf_hps1 1

public OnPluginStart()
    HookEvent("player_hurt", _LetTheCarnageBegin);

public Action:_LetTheCarnageBegin(Handle:event, const String:name[], bool:dontBroadcast)
{
    new i = GetClientOfUserId(GetEventInt(event, "userid"));
    new a = GetClientOfUserId(GetEventInt(event, "attacker"));
    if(i && IsClientInGame(i) && IsPlayerAlive(i))
        SetEntityHealth(i, GetClientHealth(i) + GetEventInt(event, "dmg_health") - wf_dps1);
    if(a && IsClientInGame(a) && IsPlayerAlive(a))
        SetEntityHealth(a, GetClientHealth(a) + wf_hps1);
}
+ Используй не табуляцию, а 4 пробела. А то получится так, что в одних текстовиках будет выглядеть по-одному, в другом по-другому.
 
Последнее редактирование:

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #11
PHP:
#include <sdktools>

#define wf_dps1 2
#define wf_hps1 1

public Plugin:myinfo =
{
    name = "Who's faster",
    author = "11plawyer",
    version = "1.0",
}

public OnPluginStart()
    HookEvent("player_hurt", _LetTheCarnageBegin);

public Action:_LetTheCarnageBegin(Handle:event, const String:name[], bool:dontBroadcast)
{
    new i = GetClientOfUserId(GetEventInt(event, "userid"));
    new a = GetClientOfUserId(GetEventInt(event, "attacker"));
    if(i > 0 && IsClientInGame(i) && IsPlayerAlive(i))
        SetEntityHealth(i, GetClientHealth(i) + GetEventInt(event, "dmg_health") - wf_dps1);
    if(i > 0 && IsClientInGame(i) && IsPlayerAlive(i))
        SetEntityHealth(a, GetClientHealth(a) + wf_hps1);
}
+ Используй не табуляцию, а 4 пробела. А то получится так, что в одних текстовиках будет выглядеть по-одному, в другом по-другому.
Я верен табуляции и изменять ей с пробелами не собираюсь.
Куда ты дел ConVar'ы?
 

TolikCorp

Участник
Сообщения
874
Реакции
334
Я их сделал константами, вооон сверху они. Далее - зачем заводить переменную, если ты её используешь один раз?
Про табуляцию ты так говоришь, потому что с ней мало работал. Как говорится: "Повзрослеешь - поймешь".
Библиотеку sourcemod нет необходимости подключать, т.к. она автоматически сама подключается.
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Оффтоп
Оффтоп
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #15
Оффтоп
 

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
заменяет пробелы на табуляцию
Ему же наоборот нравится.
А это ТС:
PHP:
new Handle:wf_dps1, Handle:wf_hps1;

public Plugin:myinfo =
{
	name = "Who's faster",
	author = "11plawyer",
	version = "1.0",
}

public OnPluginStart()
{
	HookEvent("player_hurt", LetTheCarnageBegin);
	wf_dps1 = CreateConVar("wf_dps", "2", "Количество урона за попадание.", FCVAR_PLUGIN);
	wf_hps1 = CreateConVar("wf_hps", "1", "Количество полученного hp за попадание.", FCVAR_PLUGIN);
}

public LetTheCarnageBegin(Handle:event, const String:name[], bool:dontBroadcast)
{
	new a = GetClientOfUserId(GetEventInt(event, "attacker")), i = GetClientOfUserId(GetEventInt(event, "userid"));
	if (i && IsPlayerAlive(i)) SetEntityHealth(i, GetClientHealth(i) + GetEventInt(event, "dmg_health") - GetConVarInt(wf_dps1));
	if (a && IsPlayerAlive(a) && a != i) SetEntityHealth(a, GetClientHealth(a) + GetConVarInt(wf_hps1));
}
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #19
Ребят, может туплю из-за того, что лег в 4, встал в 5, но почему у Толика нету CreateConVar'а?


Добавлено через 1 минуту
Вопросы по оптимизации кода: Почему GetEventInt(event, "dmg_health"), допустим, лучше, чем new dmg = GetEventInt(event, "dmg_health")?

Добавлено через 3 минуты
И, ребят, из кода убирайте
PHP:
public Plugin:myinfo =
{
    name = "Who's faster",
    author = "11plawyer",
    version = "1.0",
}
Ведь код уже изменен, а автором я не являюсь. Если только автором начального кода, потому прошу, либо добавляйте свое авторство, либо не указывать его вообще, лол.
 
Последнее редактирование:

TolikCorp

Участник
Сообщения
874
Реакции
334
Ну смотри, ты один раз GetEventInt(event, "dmg_health") используешь. Рациональнее не создавать переменную и в нее писать, а использовать по месту сразу.

Там константы
#define wf_dps1 2
#define wf_hps1 1
 
Последнее редактирование:
Сверху Снизу