←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Jak dodać prefixy na Admin Chat?


Najlepsza odpowiedź Zuzza 22.02.2021 20:10

W pluginie adminchat.sma masz kod odpowiedzialny za wyświetlanie wiadomości na @@

To jest kawałek kodu z tego pluginu w którym trzeba dokonać zmiany:

switch ( get_pcvar_num(amx_show_activity) )
	{
		case 3, 4:
		{
			new maxpl = get_maxplayers();
			for (new pl = 1; pl <= maxpl; pl++)
			{
				if (is_user_connected(pl) && !is_user_bot(pl))
				{
					if (is_user_admin(pl))
					{
						show_hudmessage(pl, "%s :   %s", name, message[i + n])
						client_print(pl, print_notify, "%s :   %s", name, message[i + n])
					}
					else
					{
						show_hudmessage(pl, "%s", message[i + n])
						client_print(pl, print_notify, "%s", message[i + n])
					}
				}
			}
		}
		case 2:
		{
			show_hudmessage(0, "%s :   %s", name, message[i + n])
			client_print(0, print_notify, "%s :   %s", name, message[i + n])
		}
		default:
		{
			show_hudmessage(0, "%s", message[i + n])
			client_print(0, print_notify, "%s", message[i + n])
		}
	}

Polecam stworzyć funkcje która będzie zwracać odpowiedni prefix dla odpowiedniej flagi o na przykład tako:

public RetunrPrefix(id){
	new szPrefix[11]
	if( has_flag(id, "a" ) )
		format(szPrefix, 10, "HEADADMIN ")
	else if( has_flag(id, "c") )
		format(szPrefix, 10, "ADMIN ")
	return szPrefix
}

Teraz skoro funkcja na prefix już jest wystarczy to połączyć tak o:

case 2:
{
	show_hudmessage(0, "%s%s :   %s", RetunrPrefix(id), name, message[i + n])
	client_print(0, print_notify, "%s :   %s", name, message[i + n])
}

W case 3, 4 również jest wyświetlany nick admina tylko adminom więc można by to tam również dodać ale to już wierze że dasz rade samodzielnie :)

Przejdź do postu

  • +
  • -
Vanilla - zdjęcie Vanilla 21.02.2021

Witam, mam pytanie: W jaki sposób można ustawić prefixy przed nick w wiadomościach admina (na @@)?

np. [ADMIN] Nick: Cele mapy albo ban!

 

Najlepiej aby można to było ustawić na flage, np.

ADMIN - flaga C

HEADADMIN - flaga A

Odpowiedz

  • +
  • -
Najlepsza odpowiedź Zuzza - zdjęcie Zuzza 22.02.2021

W pluginie adminchat.sma masz kod odpowiedzialny za wyświetlanie wiadomości na @@

To jest kawałek kodu z tego pluginu w którym trzeba dokonać zmiany:

switch ( get_pcvar_num(amx_show_activity) )
	{
		case 3, 4:
		{
			new maxpl = get_maxplayers();
			for (new pl = 1; pl <= maxpl; pl++)
			{
				if (is_user_connected(pl) && !is_user_bot(pl))
				{
					if (is_user_admin(pl))
					{
						show_hudmessage(pl, "%s :   %s", name, message[i + n])
						client_print(pl, print_notify, "%s :   %s", name, message[i + n])
					}
					else
					{
						show_hudmessage(pl, "%s", message[i + n])
						client_print(pl, print_notify, "%s", message[i + n])
					}
				}
			}
		}
		case 2:
		{
			show_hudmessage(0, "%s :   %s", name, message[i + n])
			client_print(0, print_notify, "%s :   %s", name, message[i + n])
		}
		default:
		{
			show_hudmessage(0, "%s", message[i + n])
			client_print(0, print_notify, "%s", message[i + n])
		}
	}

Polecam stworzyć funkcje która będzie zwracać odpowiedni prefix dla odpowiedniej flagi o na przykład tako:

public RetunrPrefix(id){
	new szPrefix[11]
	if( has_flag(id, "a" ) )
		format(szPrefix, 10, "HEADADMIN ")
	else if( has_flag(id, "c") )
		format(szPrefix, 10, "ADMIN ")
	return szPrefix
}

Teraz skoro funkcja na prefix już jest wystarczy to połączyć tak o:

case 2:
{
	show_hudmessage(0, "%s%s :   %s", RetunrPrefix(id), name, message[i + n])
	client_print(0, print_notify, "%s :   %s", name, message[i + n])
}

W case 3, 4 również jest wyświetlany nick admina tylko adminom więc można by to tam również dodać ale to już wierze że dasz rade samodzielnie :)


Użytkownik Zuzza edytował ten post 22.02.2021 20:11
Odpowiedz