Заявка за Spawn Protection за 5 убийства.

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1318
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 244 пъти
Получена благодарност: 42 пъти

Заявка за Spawn Protection за 5 убийства.

Мнение от cgozzie » 26 Авг 2018, 18:54

Така значи дойде ми идея за направата на плъгин,Spawn Protection за 5 поредни кила независимо как ще са те.Най важното което искам да стане е,знаете когато играчите се прераждат и светят за х сек в синьо за цт и червени за теро.Тук идеята ми е когато убиеш играч в 5 поредни кила да получи автоматично Spawn Protection и да свети с същата аура както в прераждането но,е важно да е в друг цвят да кажем жълто ако може ако не вие кажете в какъв цвят може да бъде.И да трае 10сек защитата му и да не могат да му нанасят никаква щета,докато не му изтекът 10сек защитата.Надявам се да го направите за Деатмач става на въпрос. :beer: Да може да се ползва и за 2-та отбора.
Изображение

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Заявка за Spawn Protection за 5 убийства.

Мнение от OciXCrom » 26 Авг 2018, 20:25

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

#include <amxmodx>
#include <cromchat>
#include <fun>
#include <hamsandwich>

#define DEATHS_REQUIRED 5
#define PROTECTION_COLOR 255, 255, 0
#define PROTECTION_BRIGHTNESS 40
#define PROTECTION_DURATION 10.0

new g_iDeaths[33];
new bool:g_bProtected[33];

public plugin_init()
{
	register_plugin("Victim Protection", "1.0", "OciXCrom");
	RegisterHam(Ham_Spawn, "player", "OnPlayerSpawn", 1);
	RegisterHam(Ham_TakeDamage, "player", "PreTakeDamage", 0);
	register_event("DeathMsg", "OnPlayerKilled", "a");
	CC_SetPrefix("&x04[Victim Protection]");
}

public client_putinserver(id)
{
	g_iDeaths[id] = 0;
	g_bProtected[id] = false;
}

public OnPlayerSpawn(id)
{
	if(!is_user_alive(id))
		return;

	if(!g_bProtected[id] && g_iDeaths[id] >= DEATHS_REQUIRED)
	{
		g_iDeaths[id] = 0;
		g_bProtected[id] = true;
		CC_SendMessage(id, "Bezsmurten si v sledvashtite &x03%.0f sekundi &x01tui kato beshe ubit &x03%i puti &x01podred.", PROTECTION_DURATION, DEATHS_REQUIRED)
		set_user_rendering(id, kRenderFxGlowShell, PROTECTION_COLOR, kRenderTransAlpha, PROTECTION_BRIGHTNESS);
		set_task(PROTECTION_DURATION, "RemoveProtection", id);
	}
}

public RemoveProtection(id)
{
	if(!is_user_connected(id))
		return;

	set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 255);
	CC_SendMessage(id, "Veche ne si bezsmurten.");
	g_bProtected[id] = false;
}

public PreTakeDamage(iVictim, iInflictor, iAttacker)
	return g_bProtected[iVictim] ? HAM_SUPERCEDE : HAM_IGNORED;

public OnPlayerKilled()
{
	new iAttacker = read_data(1), iVictim = read_data(2);
	
	if(!is_user_connected(iAttacker) || iAttacker == iVictim || g_bProtected[iVictim])
		return;

	g_iDeaths[iVictim]++
}

Аватар
cgozzie
Извън линия
Потребител
Потребител
Мнения: 1318
Регистриран на: 13 Окт 2016, 22:10
Местоположение: Варна
Се отблагодари: 244 пъти
Получена благодарност: 42 пъти

Заявка за Spawn Protection за 5 убийства.

Мнение от cgozzie » 27 Авг 2018, 01:28

Направил си го като те убият 5 поредни пъти да имаш протекция,може по горе да не съм се изразил правилно,исках когато ти убиеш 5 поредни кила на теб да има протекцията,не те като те убият да имаш.И съобщенията в чата да си ги вижда само въпросния протектор не сички.
Изображение

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Заявка за Spawn Protection за 5 убийства.

Мнение от OciXCrom » 27 Авг 2018, 03:14

"идеята ми е когато убиеш играч в 5 поредни кила да получи автоматично Spawn Protection"

Ама не, никак не си се изразил неправилно... Утре ще го променя.

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 7206
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 117 пъти
Получена благодарност: 1295 пъти
Обратна връзка:

Заявка за Spawn Protection за 5 убийства.

Мнение от OciXCrom » 27 Авг 2018, 16:43

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

#include <amxmodx>
#include <cromchat>
#include <fun>
#include <hamsandwich>

#define REQUIRED_KILLS 5
#define PROTECTION_COLOR 255, 255, 0
#define PROTECTION_BRIGHTNESS 40
#define PROTECTION_DURATION 10.0

new g_iKills[33];
new bool:g_bProtected[33];

public plugin_init()
{
	register_plugin("Protection on X Kills", "1.0", "OciXCrom");
	RegisterHam(Ham_TakeDamage, "player", "PreTakeDamage", 0);
	register_event("DeathMsg", "OnPlayerKilled", "a");
	CC_SetPrefix("&x04[Protection]");
}

public client_putinserver(id)
{
	g_iKills[id] = 0;
	g_bProtected[id] = false;
}

public PreTakeDamage(iVictim, iInflictor, iAttacker)
	return g_bProtected[iVictim] ? HAM_SUPERCEDE : HAM_IGNORED;

public OnPlayerKilled()
{
	new iAttacker = read_data(1), iVictim = read_data(2);
	
	if(!is_user_connected(iAttacker) || iAttacker == iVictim || g_bProtected[iVictim])
		return;

	if(++g_iKills[iAttacker] >= REQUIRED_KILLS)
	{
		g_iKills[iAttacker] = 0;
		g_bProtected[iAttacker] = true;
		CC_SendMessage(iAttacker, "Bezsmurten si v sledvashtite &x03%.0f sekundi &x01tui kato ubi &x03%i igrachi &x01podred.", PROTECTION_DURATION, REQUIRED_KILLS)
		set_user_rendering(iAttacker, kRenderFxGlowShell, PROTECTION_COLOR, kRenderTransAlpha, PROTECTION_BRIGHTNESS);
		set_task(PROTECTION_DURATION, "RemoveProtection", iAttacker);
	}
}

public RemoveProtection(id)
{
	if(!is_user_connected(id))
		return;

	set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderNormal, 255);
	CC_SendMessage(id, "Veche ne si bezsmurten.");
	g_bProtected[id] = false;
}

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

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

Кой е на линия

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