Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

możliwość wyłączenia dmg u gracza + menu


Najlepsza odpowiedź Asiap, 13.08.2015 14:24

#include <amxmodx>
#include <hamsandwich>
 
new bool:g_bCantShoot[33];
new iMaxPlayers;
 
public plugin_init()
{
	register_plugin("Block Damage for Player", "0.1", "asiap");

	register_clcmd("amx_block_damage", "Clcmd_Admin", ADMIN_BAN);

	RegisterHam(Ham_TraceAttack, "player", "TraceAttack");

	iMaxPlayers = get_maxplayers();
}
 
public Clcmd_Admin(id, iBitFlag)
{
	if(~get_user_flags(id) & iBitFlag)
	{
		console_print(id,  "Nie masz dostepu do tej komendy.");
		return PLUGIN_HANDLED;
	}
	new szNum[3], szName[48];
	new menu = menu_create("\yWybierz gracza", "Handle_Admin");
	for(new i = 1; i <= iMaxPlayers; i++)
	{
		if(!is_user_connected(i) || is_user_hltv(i) || i == id)
		{
			continue;
		}
		get_user_name(i, szName, 31);

		if(g_bCantShoot[i])
		{
			add(szName, 47, " \R[ODBLOKUJ]");
		}

		num_to_str(i, szNum, 2);
		menu_additem(menu, szName, szNum);
	}
	menu_setprop(menu, MPROP_NUMBER_COLOR, "\y");
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	return menu_display(id, menu);
}
 
public Handle_Admin(id, menu, item)
{
	new iBitAccess, szData[2], szName[32], iPid;
	menu_item_getinfo(menu, item, iBitAccess, szData, 1, _, _, iPid);

	iPid = str_to_num(szData);
	get_user_name(iPid, szName, 31);

	g_bCantShoot[iPid] = !g_bCantShoot[iPid];
	client_print(id, print_chat, "%sblokowales mozliwosc zadawania obrazen graczowi ^"%s^"", g_bCantShoot[iPid] ? "Za" : "Od", szName);
}
 
public TraceAttack(id, iAttacker, Float:fDamage)
{
	if(!is_user_connected(iAttacker) || !is_user_connected(id) || !g_bCantShoot[iAttacker]) return HAM_IGNORED;

	SetHamParamFloat(3, 0.0);
	return HAM_SUPERCEDE;
}
Przejdź do postu


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
8 odpowiedzi w tym temacie

#1 MaxioR

    Wszechpomocny

  • Użytkownik

Reputacja: 83
Zaawansowany

  • Postów:352
  • Lokalizacja:Poland
Offline

Napisano 03.08.2015 21:30

Witam edytuje mi to ktoś tak aby zostawic z menu tylko 

ps

sory za dział lecz plugin znalazłem po tym jak napisałem temat 

"\rNo Damage",
 "\rSuicider",

Załączone pliki


Użytkownik MaxioR edytował ten post 03.08.2015 21:55

  • +
  • -
  • 0

#2 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 03.08.2015 22:06

#include <amxmodx>
#include <hamsandwich>

new g_bCantShoot[33];
new iMaxPlayers;

public plugin_init()
{
	register_plugin("Block Damage for Player", "0.1", "asiap");

	register_clcmd("amx_block_damage", "Clcmd_Admin", ADMIN_BAN);

	RegisterHam(Ham_TraceAttack, "player", "TraceAttack");

	iMaxPlayers = get_maxplayers();
}

public Clcmd_Admin(id, iBitFlag)
{
	if(~get_user_flags(id) & iBitFlag)
	{
		client_print(id, print_chat, "Nie masz dostepu do tej komendy.");
		return PLUGIN_HANDLED;
	}
	new szNum[3], szName[32];
	new menu = menu_create("\yWybierz gracza", "Handle_Admin");
	for(new i = 1; i <= iMaxPlayers; i++)
	{
		if(!is_user_connected(i) || is_user_hltv(i) || i == id || g_bCantShoot[i])
		{
			continue;
		}
		get_user_name(i, szName, 31);
		num_to_str(i, szNum, 2);
		menu_additem(menu, szName, szNum);
	}
	menu_setprop(menu, MPROP_NUMBER_COLOR, "\y");
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	return menu_display(id, menu);
}

public Handle_Admin(id, menu, item)
{
	new iBitAccess, iCallback, szData[2], szName[32];
	menu_item_getinfo(menu, item, iBitAccess, szData, 1, szName, 31, iCallback);

	g_bCantShoot[str_to_num(szData)] = true;
	client_print(id, print_chat, "Zablokowales mozliwosc zadawania obrazen graczowi ^"%s^"", szName);
}

public TraceAttack(id, iAttacker, Float:fDamage)
{
	if(!is_user_connected(iAttacker) || !is_user_connected(id) || !g_bCantShoot[iAttacker]) return HAM_IGNORED;

	SetHamParamFloat(3, 0.0);
	return HAM_SUPERCEDE;
}

  • +
  • -
  • 1

#3 MaxioR

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 83
Zaawansowany

  • Postów:352
  • Lokalizacja:Poland
Offline

Napisano 04.08.2015 13:33


a czy jest szansa abyś dodała możliwość cofania tego zabiegu oraz aby w menu pisało obok gracza "zablokuj" "odblokuj" gdyz teraz wszystko jest mało czytelne i gdy gracza zablokujemy trzeba go wywalić  z serwera aby znów dmg działało 


  • +
  • -
  • 0

#4 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 04.08.2015 14:57

#include <amxmodx>
#include <hamsandwich>
 
new g_bCantShoot[33];
new iMaxPlayers;
 
public plugin_init()
{
	register_plugin("Block Damage for Player", "0.1", "asiap");
 
	register_clcmd("amx_block_damage", "Clcmd_Admin", ADMIN_BAN);
 
	RegisterHam(Ham_TraceAttack, "player", "TraceAttack");
 
	iMaxPlayers = get_maxplayers();
}
 
public Clcmd_Admin(id, iBitFlag)
{
	if(~get_user_flags(id) & iBitFlag)
	{
		client_print(id, print_chat, "Nie masz dostepu do tej komendy.");
		return PLUGIN_HANDLED;
	}
	new szNum[3], szName[48];
	new menu = menu_create("\yWybierz gracza", "Handle_Admin");
	for(new i = 1; i <= iMaxPlayers; i++)
	{
		if(!is_user_connected(i) || is_user_hltv(i) || i == id || g_bCantShoot[i])
		{
			continue;
		}
		get_user_name(i, szName, 31);

		if(g_bCantShoot[i])
		{
			add(szName, 47, "\R[ODBLOKUJ]");
		}

		num_to_str(i, szNum, 2);
		menu_additem(menu, szName, szNum);
	}
	menu_setprop(menu, MPROP_NUMBER_COLOR, "\y");
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	return menu_display(id, menu);
}
 
public Handle_Admin(id, menu, item)
{
	new iBitAccess, iCallback, szData[2], szName[32], iPid;
	menu_item_getinfo(menu, item, iBitAccess, szData, 1, szName, 31, iCallback);

	iPid = str_to_num(szData);

	g_bCantShoot[iPid] = !g_bCantShoot[iPid];
	client_print(id, print_chat, "%sblokowales mozliwosc zadawania obrazen graczowi ^"%s^"", g_bCantShoot[iPid] ? "Za" : "Od", szName);
}
 
public TraceAttack(id, iAttacker, Float:fDamage)
{
	if(!is_user_connected(iAttacker) || !is_user_connected(id) || !g_bCantShoot[iAttacker]) return HAM_IGNORED;
 
	SetHamParamFloat(3, 0.0);
	return HAM_SUPERCEDE;
}

  • +
  • -
  • 1

#5 MaxioR

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 83
Zaawansowany

  • Postów:352
  • Lokalizacja:Poland
Offline

Napisano 12.08.2015 20:37

Asiap Problem polega na tym że gdy kogoś wybierzemy  z listy to on z niej znika i nie da się odblokować.


  • +
  • -
  • 0

#6 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 13.08.2015 00:06

usun

 || g_bCantShoot[i]

  • +
  • -
  • 1

#7 MaxioR

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 83
Zaawansowany

  • Postów:352
  • Lokalizacja:Poland
Offline

Napisano 13.08.2015 12:13

 

usun

 || g_bCantShoot[i]

Po tym zabiegu nie działa możliwość blokowania dmg tzn. na sayu pisze że zablokowano lecz funkcja nie działa

 

oraz gdy komuś kogoś wybierzemy aby wyłączyć mu dmg to gdy wejdziemy znów w menu nie ma informacji o tym aby odblokować 


  • +
  • -
  • 0

#8 Asiap

    Wszechpomocny

  • Girl

Reputacja: 171
Profesjonalista

  • Postów:323
  • Lokalizacja:Kętrzyn
Offline

Napisano 13.08.2015 14:24   Najlepsza odpowiedź

#include <amxmodx>
#include <hamsandwich>
 
new bool:g_bCantShoot[33];
new iMaxPlayers;
 
public plugin_init()
{
	register_plugin("Block Damage for Player", "0.1", "asiap");

	register_clcmd("amx_block_damage", "Clcmd_Admin", ADMIN_BAN);

	RegisterHam(Ham_TraceAttack, "player", "TraceAttack");

	iMaxPlayers = get_maxplayers();
}
 
public Clcmd_Admin(id, iBitFlag)
{
	if(~get_user_flags(id) & iBitFlag)
	{
		console_print(id,  "Nie masz dostepu do tej komendy.");
		return PLUGIN_HANDLED;
	}
	new szNum[3], szName[48];
	new menu = menu_create("\yWybierz gracza", "Handle_Admin");
	for(new i = 1; i <= iMaxPlayers; i++)
	{
		if(!is_user_connected(i) || is_user_hltv(i) || i == id)
		{
			continue;
		}
		get_user_name(i, szName, 31);

		if(g_bCantShoot[i])
		{
			add(szName, 47, " \R[ODBLOKUJ]");
		}

		num_to_str(i, szNum, 2);
		menu_additem(menu, szName, szNum);
	}
	menu_setprop(menu, MPROP_NUMBER_COLOR, "\y");
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	return menu_display(id, menu);
}
 
public Handle_Admin(id, menu, item)
{
	new iBitAccess, szData[2], szName[32], iPid;
	menu_item_getinfo(menu, item, iBitAccess, szData, 1, _, _, iPid);

	iPid = str_to_num(szData);
	get_user_name(iPid, szName, 31);

	g_bCantShoot[iPid] = !g_bCantShoot[iPid];
	client_print(id, print_chat, "%sblokowales mozliwosc zadawania obrazen graczowi ^"%s^"", g_bCantShoot[iPid] ? "Za" : "Od", szName);
}
 
public TraceAttack(id, iAttacker, Float:fDamage)
{
	if(!is_user_connected(iAttacker) || !is_user_connected(id) || !g_bCantShoot[iAttacker]) return HAM_IGNORED;

	SetHamParamFloat(3, 0.0);
	return HAM_SUPERCEDE;
}

  • +
  • -
  • 1

#9 MaxioR

    Wszechpomocny

  • Autor tematu
  • Użytkownik

Reputacja: 83
Zaawansowany

  • Postów:352
  • Lokalizacja:Poland
Offline

Napisano 13.08.2015 16:20

#include <amxmodx>
#include <hamsandwich>
 
new bool:g_bCantShoot[33];
new iMaxPlayers;
 
public plugin_init()
{
	register_plugin("Block Damage for Player", "0.1", "asiap");

	register_clcmd("amx_block_damage", "Clcmd_Admin", ADMIN_BAN);

	RegisterHam(Ham_TraceAttack, "player", "TraceAttack");

	iMaxPlayers = get_maxplayers();
}
 
public Clcmd_Admin(id, iBitFlag)
{
	if(~get_user_flags(id) & iBitFlag)
	{
		console_print(id,  "Nie masz dostepu do tej komendy.");
		return PLUGIN_HANDLED;
	}
	new szNum[3], szName[48];
	new menu = menu_create("\yWybierz gracza", "Handle_Admin");
	for(new i = 1; i <= iMaxPlayers; i++)
	{
		if(!is_user_connected(i) || is_user_hltv(i) || i == id)
		{
			continue;
		}
		get_user_name(i, szName, 31);

		if(g_bCantShoot[i])
		{
			add(szName, 47, " \R[ODBLOKUJ]");
		}

		num_to_str(i, szNum, 2);
		menu_additem(menu, szName, szNum);
	}
	menu_setprop(menu, MPROP_NUMBER_COLOR, "\y");
	menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona");
	menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona");
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	return menu_display(id, menu);
}
 
public Handle_Admin(id, menu, item)
{
	new iBitAccess, szData[2], szName[32], iPid;
	menu_item_getinfo(menu, item, iBitAccess, szData, 1, _, _, iPid);

	iPid = str_to_num(szData);
	get_user_name(iPid, szName, 31);

	g_bCantShoot[iPid] = !g_bCantShoot[iPid];
	client_print(id, print_chat, "%sblokowales mozliwosc zadawania obrazen graczowi ^"%s^"", g_bCantShoot[iPid] ? "Za" : "Od", szName);
}
 
public TraceAttack(id, iAttacker, Float:fDamage)
{
	if(!is_user_connected(iAttacker) || !is_user_connected(id) || !g_bCantShoot[iAttacker]) return HAM_IGNORED;

	SetHamParamFloat(3, 0.0);
	return HAM_SUPERCEDE;
}

Wszystko działa wiec dzięki wielkie :)


  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych