Заявка за два плъгина Bonus Money и Team Flash.

В този раздел можете да подавате всякакви заявки за намиране, изработка или преработка на плъгини/модове.
Заключено
Аватар
M.K.
Извън линия
Потребител
Потребител
Мнения: 38
Регистриран на: 09 Окт 2016, 01:25
Обратна връзка:

Заявка за два плъгина Bonus Money и Team Flash.

Мнение от M.K. » 02 Мар 2018, 17:04

Здравейте, тъй като нямам опит в писането на плъгини ще помоля ако има някой желаещ да напише тези два плъгина или да ми препоръча сродни плъгини които вършат същата работа, за плъгините имам активен реапи модул в сървъра, ето и какво искам да представляват плъгините:

Bonus Money: При 3 падащи роунда на отбора който пада 3 пъти под ред да дава пари от 1500$ до 2000$ на рандом, а за победителите които бият 3 роунда подред от 1000$ до 1500$ рандом да е също.

Team Flash: При 2 флаша да му забранява да копува флаш за 3 роунда, брояча да се рестартира на 5 роунда админите с флаг "b" да имат имунтет срещи този плъгин, благодаря ви предварително.

Аватар
Fr0sTt
Извън линия
Потребител
Потребител
Мнения: 137
Регистриран на: 16 Фев 2018, 19:11

Заявка за два плъгина Bonus Money и Team Flash.

Мнение от Fr0sTt » 02 Мар 2018, 18:24

Това ти трябва - viewtopic.php?f=21&t=1551

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

Заявка за два плъгина Bonus Money и Team Flash.

Мнение от OciXCrom » 02 Мар 2018, 20:16

Вторият (изисква AMXX 1.8.3 & ReGameDLL):

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

#include <amxmodx>
#include <cstrike>
#include <reapi>

#define FLASH_MAX 2
#define FLASH_BAN 3
#define FLASH_IMMUNITY ADMIN_RESERVATION

new g_iRoundCount[33]
new g_iTeamFlashes[33]

public plugin_init()
{
	register_plugin("Flash Restrict", "1.0", "OciXCrom")
	RegisterHookChain(RG_PlayerBlind, "OnPlayerBlind", 1)
	RegisterHookChain(RG_CSGameRules_RestartRound, "OnRoundStart", 1)
}

public client_putinserver(id)
{
	g_iRoundCount[id] = 0
	g_iTeamFlashes[id] = 0
}

public OnPlayerBlind(const id, const iInflictor, const iAttacker)
{
	if((id != iAttacker) && (get_member(id, m_iTeam) == get_member(iAttacker, m_iTeam)) && !has_immunity(iAttacker) && (g_iTeamFlashes[iAttacker] < FLASH_MAX))
	{
		g_iTeamFlashes[iAttacker]++
		
		if(g_iTeamFlashes[iAttacker] >= FLASH_MAX)
		{
			g_iRoundCount[iAttacker] = FLASH_BAN
			client_print(iAttacker, print_center, "You can't buy a flash for %i rounds because you flashed %i teammates!", FLASH_BAN, FLASH_MAX)
		}
	}
}

public CS_OnBuyAttempt(id, iItem)
{
	if(g_iRoundCount[id] && iItem == CSW_FLASHBANG)
	{
		client_print(id, print_center, "You're not allowed to buy a flashbang right now. Wait %i rounds.", g_iRoundCount[id])
		return PLUGIN_HANDLED
	}
	
	return PLUGIN_CONTINUE
}

public OnRoundStart()
{
	new iPlayers[32], iPnum
	get_players(iPlayers, iPnum)
	
	for(new i, iPlayer; i < iPnum; i++)
	{
		iPlayer = iPlayers[i]
		
		if(g_iRoundCount[iPlayer])
			g_iRoundCount[iPlayer]--
	}
}

bool:has_immunity(const id)
	return bool:(get_user_flags(id) & FLASH_IMMUNITY)

Аватар
M.K.
Извън линия
Потребител
Потребител
Мнения: 38
Регистриран на: 09 Окт 2016, 01:25
Обратна връзка:

Заявка за два плъгина Bonus Money и Team Flash.

Мнение от M.K. » 02 Мар 2018, 20:44

Аз съм с 1.8.2 ,да се надяваме че няма да има проблем?

Аватар
DoPe ;]]
Извън линия
Потребител
Потребител
Мнения: 402
Регистриран на: 27 Фев 2017, 22:10
Обратна връзка:

Заявка за два плъгина Bonus Money и Team Flash.

Мнение от DoPe ;]] » 02 Мар 2018, 21:28

Ще има проблеми :)
The Best Deathrun Server: 79.124.49.91:27019
The Best Respawn Server: 79.124.49.88:27021

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

Заявка за два плъгина Bonus Money и Team Flash.

Мнение от OciXCrom » 02 Мар 2018, 23:45

Ами щом съм написал, че изиксва 1.8.3, много ясно, че ще има проблеми. Функцията която се ползва в кода (CS_OnBuyAttempt) е достъпна само в 1.8.3. Другият метод, който е за ReAPI, не работи за гранати. Третият метод е да може да купуваш гранатата, обаче да не може да я ползваш. Опитай така:

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

#include <amxmodx>
#include <fakemeta>
#include <hamsandwich>
#include <reapi>

#define FLASH_MAX 2
#define FLASH_BAN 3
#define FLASH_IMMUNITY ADMIN_RESERVATION

new g_iRoundCount[33]
new g_iTeamFlashes[33]

public plugin_init()
{
	register_plugin("Flash Restrict", "1.0", "OciXCrom")
	RegisterHookChain(RG_PlayerBlind, "OnPlayerBlind", 1)
	RegisterHookChain(RG_CSGameRules_RestartRound, "OnRoundStart", 1)
	RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_flashbang", "OnThrowFlash")
}

public client_putinserver(id)
{
	g_iRoundCount[id] = 0
	g_iTeamFlashes[id] = 0
}

public OnPlayerBlind(const id, const iInflictor, const iAttacker)
{
	if((id != iAttacker) && (get_member(id, m_iTeam) == get_member(iAttacker, m_iTeam)) && !has_immunity(iAttacker) && (g_iTeamFlashes[iAttacker] < FLASH_MAX))
	{
		g_iTeamFlashes[iAttacker]++
		
		if(g_iTeamFlashes[iAttacker] >= FLASH_MAX)
		{
			g_iRoundCount[iAttacker] = FLASH_BAN
			client_print(iAttacker, print_center, "You can't use flashbangs for %i rounds because you flashed %i teammates!", FLASH_BAN, FLASH_MAX)
		}
	}
}

public OnThrowFlash(iEnt)
{
	new id = pev(iEnt, pev_owner)
	
	if(g_iRoundCount[id])
	{
		client_print(id, print_center, "You're not allowed to throw a flashbang for %i more rounds!", g_iRoundCount[id])
		return HAM_SUPERCEDE
	}
	
	return HAM_IGNORED
}

public OnRoundStart()
{
	new iPlayers[32], iPnum
	get_players(iPlayers, iPnum)
	
	for(new i, iPlayer; i < iPnum; i++)
	{
		iPlayer = iPlayers[i]
		
		if(g_iRoundCount[iPlayer])
			g_iRoundCount[iPlayer]--
	}
}

bool:has_immunity(const id)
	return bool:(get_user_flags(id) & FLASH_IMMUNITY)

Аватар
M.K.
Извън линия
Потребител
Потребител
Мнения: 38
Регистриран на: 09 Окт 2016, 01:25
Обратна връзка:

Заявка за два плъгина Bonus Money и Team Flash.

Мнение от M.K. » 04 Мар 2018, 00:39

Благодаря, всичо е точно слагайте катинара.

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

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

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 19 госта