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

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #1
Описание:
Данный плагин позволяет сделать любую карту, будь то $2000$ или же aim_, fy_, похожую на 35hp.
Функции:
Плагин запрещает: Зону покупки; Точки планта, Заложников, Урон от падения с большой высоты; Любое оружие, лежащее на карте.
Плагин разрешает: Выдачу оружия игрокам, но в следующем раунде оно все равно пропадет.
Плагин дает: 35 hp при спавне и нож.
Требования:
SourceMod, конечно же, последней версии.
SDKHooks.

Может по тому, что автор оставил за собой право не выкладывать исходник, а вы пользуетесь этим плагином на свой страх и риск.
Исходник есть
 
Последнее редактирование модератором:

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #3
Hejter, написано же что автор зажал. Могу написать с 0.
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #4
До чего же люди жадные, всем исходники подавай)
Ну да ладно, скушал булочку, добавил исходник.
 

rotmir

Участник
Сообщения
138
Реакции
25
Этот мод в адм включается или он как установил все все карты под этот мод адаптируются????
 

krasawchik

Участник
Сообщения
60
Реакции
6
как этот плагин реагирует на KnifeFight v.1.3.8 который выдает игрокам по 100 хп при сражении ??? и будет ли исчезать оружие в плагине weapon-fight-1.3.8.4 ???
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #8
Исчезать ничего не будет, я же указал, игроку можно выдавать оружие.
Если установить 100 хп, то будет 100 хп, потому что я не делал таймера на проверку 35 ли хп у игрока.
 
Последнее редактирование:

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
как этот плагин реагирует на KnifeFight v.1.3.8 который выдает игрокам по 100 хп при сражении ??? и будет ли исчезать оружие в плагине weapon-fight-1.3.8.4 ???

Как реагировать? Какой плагин последним загрузится, тот и поставит своё хп.
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #10
Как реагировать? Какой плагин последним загрузится, тот и поставит своё хп.
Там по событиям, либо если игроков < x.
У меня событие стоит "player_spawn", значит ему не может помешать плагин KnifeFight или WeaponFight, потому что меню с предложением включается только тогда, когда остается в живых только 2 игрока.
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Там по событиям, либо если игроков < x.
У меня событие стоит "player_spawn", значит ему не может помешать плагин KnifeFight или WeaponFight, потому что меню с предложением включается только тогда, когда остается в живых только 2 игрока.

Я не задавал вопроса.
Т.к. тут всё по алгоритмам, то какой-то плагин всё-равно сделает работу раньше другого.
А какой плагин установит окончательное хп, стоит гадать.
К примеру.
Твой плагин поставил 35 хп игроку, а потом другой плагин поставил этому же игроку 100 хп. Я имею ввиду, если событие одно и то же, а ты выставляешь здоровье при выполнении этого события.
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #12
Я не задавал вопроса.
Т.к. тут всё по алгоритмам, то какой-то плагин всё-равно сделает работу раньше другого.
А какой плагин установит окончательное хп, стоит гадать.
К примеру.
Твой плагин поставил 35 хп игроку, а потом другой плагин поставил этому же игроку 100 хп. Я имею ввиду, если событие одно и то же, а ты выставляешь здоровье при выполнении этого события.
Никто не будет ставить плагин, который выставляет в одном и том же событии игроку 100 хп на ножевой сервер. Потому что карты 35hp_ сами выставляют и надобности в плагинах просто нет.
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Никто не будет ставить плагин, который выставляет в одном и том же событии игроку 100 хп на ножевой сервер. Потому что карты 35hp_ сами выставляют и надобности в плагинах просто нет.

Я прям и вижу, как все плагины для knife серверов прям таки и сделаны только для карт 35hp_
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #14
Я прям и вижу, как все плагины для knife серверов прям таки и сделаны только для карт 35hp_
Ладно, допустим, плагин не только для карт 35hp_, но какому дураку понадобится делать плагин, который будет при спавне выставлять 100 хп, если по дефолту игрок спавнится со 100 хп?
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
То был пример, тут дело не в кол-ве хп, а в фукнциях, и какая из них будет вызвана первой.
 

Konstantin

Участник
Сообщения
1,775
Реакции
759
Оффтоп
 
  • Мне нравится
Реакции: FBZA

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #17
Ничего подобного с ХП не будет.
Игрок появился. получил свои 35 хп и бегает.
Остались 1 на 1. Получили по 100, сыграли поединок. Начался новый раунд и у всех снова по 35 хп.
Проблема может возникнуть только если в knifefight включен бонус хп за победу. Но все проблемы решаются исправлением исходника knifefight
 

FBZA

Участник
Сообщения
58
Реакции
8
  • Автор ресурса
  • #18
Ничего подобного с ХП не будет.
Игрок появился. получил свои 35 хп и бегает.
Остались 1 на 1. Получили по 100, сыграли поединок. Начался новый раунд и у всех снова по 35 хп.
Проблема может возникнуть только если в knifefight включен бонус хп за победу. Но все проблемы решаются исправлением исходника knifefight
Проблем может не быть, если бонус за победу (в хп) делается не через
SetEntityHealth(client, 120), а через SetEntityHealth(GetClientHealth(client) + 20)
Там от кодера зависит, главное, чтобы не превышало 65-ти хп, иначе нельзя будет убить с одного удара.
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
Ничего подобного с ХП не будет.
Игрок появился. получил свои 35 хп и бегает.
Остались 1 на 1. Получили по 100, сыграли поединок. Начался новый раунд и у всех снова по 35 хп.
Проблема может возникнуть только если в knifefight включен бонус хп за победу. Но все проблемы решаются исправлением исходника knifefight

Да с чего?

2 совершенно разных плагина, каждый по событию player_spawn выдаёт игроку разное кол-во хп. Какое хп будет у игрока?
Я не говорю про этот плагин. Я говорю про сам факт, что хп поставится того плагина, который последним будет загружен, или же последним будет выполнять функцию по событию.

Добавлено через 13 минут
Проблем может не быть, если бонус за победу (в хп) делается не через
SetEntityHealth(client, 120), а через SetEntityHealth(GetClientHealth(client) + 20)
Там от кодера зависит, главное, чтобы не превышало 65-ти хп, иначе нельзя будет убить с одного удара.

Не поленился, посмотрел код.
Постарался, молодец. Однако, то, что я процитировал является неверным в том случае, если:

Если админ хочет, чтобы knifefight давал бонус хп за победу.
В этом случае с твоим плагином будет "конфликт". В чем он заключается? Твой плагин в любом случае ставит 35хп при респавне.
Если KnifeFight выполняет фукнцию раньше твоего плагина, то этого бонуса не будет. Поставится 35 хп. Это, кстати, может быть примером того, что я писал до этого.

Объясню на примере:

KnifeFight грузится первым, и он может выполнять SetEntityHealth(client, 120); или SetEntityHealth(client, GetClientHealth(client) + 20);, в общем, без разницы, это не играет роли.
Он в любом случае поставит 120хп, т.к. грузится самым первым, а изначально у игрока 100 хп.
Т.к. ты ставишь SetEntityHealth(client, 35); ты просто забиваешь на KnifeFight, и выставляешь свои условия, т.е. нагло выставляешь ему 35 хп.
Однако, если твой плагин будет первым грузиться, то KnifeFight будет выставлять своё хп.

Как решить эту проблему в твоём плагине?
Делай фукнцию SetEntityHealtH(client, GetClientHealth(client)-65); Логично, что со стандартным кол-ом хп у тебя будет 35. Ну а с KnifeFight будет работать бонус хп, к этим 35 хп будут добавляться те хп, которые являются дополнительными в посторонних плагинах. Однако, если будет в KnifeFight SetEntityHealth(client, 120); то этот код бессмыслен, как и твой.
Добавлено через 26 минут
PHP:
public Action:_35hp(Handle:event, const String:name[], bool:dontBroadcast)
{
	new i = GetClientOfUserId(GetEventInt(event, "userid"));
	new Slot0 = GetPlayerWeaponSlot(i, 0);
	new Slot1 = GetPlayerWeaponSlot(i, 1);
	new Slot2 = GetPlayerWeaponSlot(i, 2);
	new Slot3 = GetPlayerWeaponSlot(i, 3);
	new Slot4 = GetPlayerWeaponSlot(i, 4);
	new Slot5 = GetPlayerWeaponSlot(i, 5);
	new health = GetClientHealth(i);
	if( IsClientInGame(i) && IsPlayerAlive(i) && i != 0)
	{
		if (Slot0 > 0) RemovePlayerItem(i, Slot0);
		if (Slot1 > 0) RemovePlayerItem(i, Slot1);
		if (Slot2 > 0) RemovePlayerItem(i, Slot2);
		if (Slot3 > 0) RemovePlayerItem(i, Slot3);
		if (Slot4 > 0) RemovePlayerItem(i, Slot4);
		if (Slot5 > 0) RemovePlayerItem(i, Slot5);
		if(health > 35) SetEntityHealth(i, 35);
	}

	if (i != 0) GivePlayerItem(i, "weapon_knife"); 
}

Меняй на

PHP:
public Action:_35hp(Handle:event, const String:name[], bool:dontBroadcast)
{
	new i = GetClientOfUserId(GetEventInt(event, "userid"));
	RemoveAllWeap(i);
	SetEntityHealth(i, GetClientHealth(i)-65);
}


public RemoveAllWeap(client)
{
	new current0 = GetPlayerWeaponSlot(client, 0);

	new current1 = GetPlayerWeaponSlot(client, 1);
	if(IsValidEntity(current0) && current0 != INVALID_ENT_REFERENCE)
	{
		RemovePlayerItem(client, current0);
	}
	if(IsValidEntity(current1) && current1 != INVALID_ENT_REFERENCE)
	{
		RemovePlayerItem(client, current1);
	}
}

Поясню, почему я так предлагаю.
Зачем чистить слот ножа, если его можно оставить? Да, может быть тазер, но это в csgo, если хочешь, сделай проверку на движок игры, и очищай слот с ножом.
Гранаты? По вкусу, ну тоже очищай. А вообще, предлагаю сделать квары, чтобы угодить каждому админу :3
 
Последнее редактирование:
Сверху Снизу