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

dPI Game 1.2 - 1.4.1

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #21
Re: [CSGO] dPI Game v1.4.1

Исправлены некоторые ошибки.
 
Последнее редактирование модератором:

Hejter

xor ebx, ebx
Сообщения
1,759
Реакции
393
Re: [CSGO] dPI Game v1.4.1

Как насчет для CS:S такое?
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #23
Re: [CSGO] dPI Game v1.4.1

Hejter, он работает на ксс
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #24
Re: [CSGO] dPI Game v1.4.1

Как насчет для CS:S такое?

Честно говоря, я даже не проверял на css, ибо нет сервера для тестирования, да и если бы даже был, то мне жутко лень тестировать.

Если кто-то проверит на css, будьте добры, отпишитесь, я хоть помечу, что работает на css :)
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #25
Re: [CSGO] dPI Game v1.4.1

Primo, судя по коду - работает.
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #26
Re: [CSGO; CS:S] dPI Game v1.4.1

Добрый день пользователи hlmod.
Решил немного развлечься и сделать простую игру.
Представляю вам плагин, который добавит на сервер игру случайностей.
Когда игрок появляется ему выдаётся случайный класс. Если вам повезёт, то вам выпадет класс, который даёт по 25 здоровья за убийство, а если же не повезёт, то вы будете умирать при убийстве в голову, проще говоря совершать суицид.

В данный момент это ну о...чень сырой плагин, т.е. пробная версия, чтобы представить мою задумку в свет.

В данный момент я сделал 5 возможных случайностей (далее класс):

Личико. Вы умрёте при попадании в голову
Каннибал. Вы получаете по 25 здоровья за каждое убийство.
Блинк. Вы будете телепортированы на место убитого вами игрока
Нежинка. У вас всего 1 здоровье
Вор. Ваш класс будет сменён на класс убитого вами игрока

В планах:
*- Больше классов
*- Дополнительные режимы игры

Классов слишком мало, а фантазии на новые у меня не хватает, поэтому как такового экшена не ждите.
 
Последнее редактирование модератором:

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Re: [CSGO; CS:S] dPI Game v1.4.1

Вы умрёте при попадании в голову
Сделай ещё, например, класс наоборот. Убийство только в голову.
Нежинка. У вас всего 1 здоровье
150 и более, как класс.
Ещё повышенный дамаг, уменьшенный. Названия сам. :)
Класс "Зажигатель" можно - его пули поджигают противника. На скорость, на гравитацию, на регенерацию...
"Попрыгунчик" - с небольшим банихопом.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #28
Re: [CSGO; CS:S] dPI Game v1.4.1

Оффтоп

Primo, ну я как обычно:
PHP:
enum PlayerInfo
{
	pClass,
}

new Player[PlayerInfo][MAXPLAYERS];
Это бред.
Сделай так:
PHP:
enum PlayerClass
{
	INVALID_CLASS = -1
}

new PlayerClass:g_PlayerClass[MAXPLAYERS];
А потом просто юзаешь g_PlayerClass[client]

Хотя судя по коду это тебе тоже не нужно. Потому еще проще сделать так:
PHP:
new g_iPlayerClass[MAXPLAYERS];
И всё. Без enum и прочего.

PHP:
HookEvent("round_end", VErtoe_Round_End);
public OnClientDisconnect(client) 
{ 
/*	if(0 < client <= MaxClients && !IsFakeClient(client)) 
	{ 

    }*/ 
}
Зачем так делать? Закомментировал бы сам хук и калббек весь, а не тело.
Еще используй EventHookMode_PostNoCopy в round_end и round_start т.к. ты не используешь передавемые параметы. Это будет работать быстре (должно).

...
PHP:
public OnClientDisconnect(client) 
{ 
/*	if(0 < client <= MaxClients && !IsFakeClient(client)) 
	{ 

    }*/ 
}
Комментируй всю функцию:
PHP:
/*public OnClientDisconnect(client) 
{ 
	if(0 < client <= MaxClients && !IsFakeClient(client)) 
	{ 

    }
}*/

PHP:
new attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
	new victim = GetClientOfUserId(GetEventInt(event, "userid"));
	new bool:headshot = GetEventBool(event, "headshot");
	new Float:abs[3];
	GetClientAbsOrigin(victim, abs);
	if(IsClientInGame(victim))
	{
Обять логики нет.
Насоздавал переменных, а потом сделал проверки.
Ты получаешь координаты игрока, а после уже проверяешь IsClientInGame(victim). Это же бредово.
Создал переменную, проверил всё что нужно - создал следуюющую, опять проверил - опять создал.
PHP:
new bool:headshot = GetEventBool(event, "headshot");
Зачем создавать переменную если она используется 1 раз. Да и создал еще за долго до её использования и судя по проверкам чаще всего зря.

Еще постоянно if if if
Юзай else if.
PHP:
new a = 2;
if(a == 1)
{
	/* Код */
}
if(a == 2)
{
	/* Код */
}
if(a == 3)
{
	/* Код */
}
if(a == 4)
{
	/* Код */
}

Когда выполнится код после if(a == 2) проверкипо пойдут дальше проверять на 3, 4 и т.д.
А если так:
PHP:
new a = 2;
if(a == 1)
{
	/* Код */
}
else if(a == 2)
{
	/* Код */
}
else if(a == 3)
{
	/* Код */
}
else if(a == 4)
{
	/* Код */
}
То как только одна из проверок выполнится остальные проверки выполнены не будут.

Еще лучше использовать switch

И того такой код намного лучше и оптимальней:
PHP:
public VErtoe_PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
	new attacker = GetClientOfUserId(GetEventInt(event, "attacker")),
		victim = GetClientOfUserId(GetEventInt(event, "userid"));

	if(attacker && victim && attacker != victim && GetClientTeam(attacker) != GetClientTeam(victim))
	{
		switch(g_PlayerClass[attacker])
		{
			case 1:
			{
				if(GetEventBool(event, "headshot")) ForcePlayerSuicide(attacker);
			}
			case 2: SetEntityHealth(attacker, GetClientHealth(attacker)+25);
			case 3:
			{
				decl Float:abs[3];
				GetClientAbsOrigin(victim, abs);
				TeleportEntity(attacker, abs, NULL_VECTOR, NULL_VECTOR); 
			}
			case 5: g_PlayerClass[attacker] = g_PlayerClass[victim];
		}
    }
}
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #29
Re: [CSGO; CS:S] dPI Game v1.4.1

R1KO, я ваш фанат :3
А вообще, я сделал enum, как и создал переменную headshot для будущих моих задумок.

Написал в эту тему, т.к. это относится к моему предыдущему плагину, позднее это будет как дополнение к нему. Да и, вообще, я ждал вашей проверки)
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #30
Re: [CSGO; CS:S] dPI Game v1.4.1

Primo, ну тогда сразу объединяй.

А вообще, я сделал enum, как и создал переменную headshot для будущих моих задумок.

Я написал как сделать класс через enum. Он будет типом переменных.

Оффтоп
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #31
Re: [CSGO; CS:S] dPI Game v1.4.1

dPI Random v1.0.1 - Поиграем со случайностью.

Изменения:
-* Оптимизирован код
-* Добавлено 4 класса:
Крепыш. Вы получаете 150 здоровья
Пронзающий. Вы будете наносить дополнительный урон по врагам
Параноик. Не попав в голову вы совершаете самоубийство
Рэмбо. Убийство с ножа требует минимум усилий
-* Убрано взаимодействие с ботами, т.е. на ботов игра не распространяется.
-* Изменено название класса "Вор" на "Подражатель"
 
Последнее редактирование модератором:

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #32
Re: [CSGO; CS:S] dPI Game v1.4.1

Оффтоп
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #34
Re: [CSGO; CS:S] dPI Game v1.4.1

Primo, Ну опять 25.
Создаешь переменные еще за долго до их использование и до проверок, после которых их сделовало создавать.
PHP:
	new attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
	new victim = GetClientOfUserId(GetEventInt(event, "userid"));
	new health = GetClientHealth(victim);
	new String:weapon[32];
	GetEventString(event, "weapon", weapon, sizeof(weapon));
	//new dmg_health = GetEventInt(event, "dmg_health");
	if(IsClientInGame(victim) && !IsFakeClient(attacker) && !IsFakeClient(victim))
	{

В общем ничего не изменилось :no: :stink:
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #35
Re: [CSGO; CS:S] dPI Game v1.4.1

R1KO, я только где-то час назад это заметил и исправил :D Не отвык еще от этого)
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #36
Re: [CSGO; CS:S] dPI Game v1.4.1

dPI Random v1.1 - Поиграем со случайностью

Изменения:
-* Исправлены некоторые ошибки
-* Добавлен режим игры "Командная случайность". Шанс срабатывания 20%. Каждой команде даётся свой случайный класс.
-* Добавлен квар, регулирующий вкл\выкл режима "Командная случайность"
C-подобный:
[B]sm_random_afterkill[/B] [I]1 - включить; 0 - отключить.[/I]
-* Добавлено 2 класса:
Маньяк. Вы подсчитываете количество ваших жертв, тем самым вдвойне увеличиваете своё здоровье
Мазохист. Вы бессмертны, пока вам не нанесут 450 урона. Если это случится, вы совершите самоубийство
 
Последнее редактирование модератором:

AlmazON

Не путать с самим yand3xmail
Сообщения
5,099
Реакции
2,755
Re: [CSGO; CS:S] dPI Game v1.4.1

Оффтоп
Вы бессмертны, пока вам не нанесут 450 урона. Если это случится, вы совершите самоубийство
Не знаю, может ты и хорошо реализовал, а так - бред. То же самое, что просто иметь 450 HP.
 

Primo

типа серьёзный тип
Сообщения
1,532
Реакции
759
  • Автор ресурса
  • #38
Re: [CSGO; CS:S] dPI Game v1.4.1

Оффтоп

Не знаю, может ты и хорошо реализовал, а так - бред. То же самое, что просто иметь 450 HP.

Не вникал в орфографию, точно такая же проблема была с "Каннибал")

Да и к тому же, это же случайность, может тебе жутко повезет и тебе дадут халявные 50 здоровья, или же, наоборот, оставят 1 здоровье.
Это случайность.
 
Последнее редактирование:

Похожие темы

Сверху Снизу