Witam, mam takie śmieszne a zapewne banalne pytanie, w jaki sposób można ustawić aby komenda, np. /menu, nie wyświetlała sie na czacie? Może to być plugin usuwający komendy z czatu, ale najlepiej jakby to był dopisek do pluginu
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.
|
Co zrobić by wpisane komendy znikały?
#1
Napisano 03.03.2021 23:19
#2
Napisano 03.03.2021 23:33
Daj
return PLUGIN_HANDLED;
zamiast
return PLUGIN_CONTINUE;
w funkcji która otwiera się po wpisaniu komendy.
#3
Napisano 04.03.2021 00:12
W drużynie spectator, komenda /menu sie nie wyświetla, wygląda tak:
public MenuGraczaNieZywego(id) { new menu = menu_create("\w[\rJailbreak\w] Menu \rWidza", "Handel_Menu"); menu_additem(menu, "\w[\r~\w] Info \rVIP", "0"); menu_additem(menu, "\w[\r~\w] Info \rSUPER VIP", "1"); menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); menu_setprop(menu, MPROP_BACKNAME, "Poprzednia"); menu_setprop(menu, MPROP_NEXTNAME, "Nastepna"); menu_display(id, menu); return PLUGIN_HANDLED; }
W druzynie TT:
public MenuGraczaTT(id) { new menu = menu_create("\w[\rJailbreak\w] Menu \rWieznia", "Handel_Menu"); new cb = menu_makecallback("Menu_Callback"); menu_additem(menu, "\w[\r~\w] Czapki \y- Wybierz czapke", "3"); menu_additem(menu, "\w[\r~\w] Sklep \y- Sklep za szlugi", "19"); menu_additem(menu, "\w[\r~\w] Ukradnij bron \y- Kradziez broni CT", "4"); menu_additem(menu, "\w[\r~\w] Ruletka \y- Wylosuj bonus", "20"); menu_additem(menu, "\w[\r~\w] \rZyczenie \y- Dla ostatniego wieznia", "18", 4, cb); menu_additem(menu, "\w[\r~\w] Info \rVIP", "0"); menu_additem(menu, "\w[\r~\w] Info \rSUPER VIP", "1"); menu_additem(menu, "\w[\r~\w] Serwerowy \rRegulamin", "2"); menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); menu_setprop(menu, MPROP_BACKNAME, "Poprzednia"); menu_setprop(menu, MPROP_NEXTNAME, "Nastepna"); menu_setprop(menu, MPROP_PERPAGE, 7); menu_display(id, menu); return PLUGIN_HANDLED; }
CT
public MenuGraczaCT(id) { new menu = menu_create("\w[\rJailbreak\w] Menu \rStraznika:", "Handel_Menu"); new cb = menu_makecallback("Menu_Callback"); menu_additem(menu, "\w[\r~\w] Wez \rProwadzenie", "6", 1, cb); menu_additem(menu, "\w[\r~\w] Przeszukaj \rWieznia","5"); menu_additem(menu, "\w[\r~\w] Otworz \rCele", "7"); menu_additem(menu, "\w[\r~\w] Walka \rwiezniow\w: \rON/OFF", "8", 3, cb); menu_additem(menu, "\w[\r~\w] Mikrofon dla \rWiezniow\w: \rON/OFF", "9"); menu_additem(menu, "\w[\r~\w] Wbierz \rZabawy \y- Wlacz zabawe", "10", 3, cb); menu_additem(menu, "\w[\r~\w] Wlacz \rGong \y- Sygnal gongu","17", 3, cb); menu_additem(menu, "\w[\r~\w] Oznacz wieznia \rkolorem", "43"); menu_additem(menu, "\w[\r~\w] Wylosuj \rWieznia", "44"); menu_additem(menu, "\w[\r~\w] Daj: \yFreeDay'a lub Duszka","11"); menu_additem(menu, "\w[\r~\w] Daj \rDeagle'a\w Wiezniowi","21", 3, cb); menu_additem(menu, "\w[\r~\w] Podziel \rWiezniow","22", 3, cb); menu_additem(menu, "\w[\r~\w] Info \rVIP", "0"); menu_additem(menu, "\w[\r~\w] Info \rSUPER VIP", "1"); menu_additem(menu, "\w[\r~\w] Serwerowy \rRegulamin", "2"); menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); menu_setprop(menu, MPROP_BACKNAME, "Poprzednia"); menu_setprop(menu, MPROP_NEXTNAME, "Nastepna"); menu_display(id, menu); return PLUGIN_HANDLED; }
Komenda na spec sie nie wyświetla, a w TT i CT już sie wyświetla
#4
Napisano 04.03.2021 10:15
Jest też na to jeden sprytny plugin https://darkgl.pl/20...rywanie-komend/
PoGrywamy.pl - Pograj Razem Z Nami
Tatusiek serwerów:
Przyjmuje płatne zlecenia!
#5
Napisano 04.03.2021 12:16
register_clcmd("say", "cmdSay") register_clcmd("say_team", "cmdSay")Po 2. Funkcja cmdSay
public cmdSay(id){ new szMessage[124]; read_args(szMessage, sizeof( szMessage )); remove_quotes(szMessage); if( szMessage[0] == '/') if( equal(szMessage, "/menu"){ if( !is_user_alive(id) ) MenuDlaTrupa(id) else{ switch(get_user_team(id)){ case 1: MenuDlaTT(id) case 2: MenuDlaCT(id) } } }else if( equal(szMessage, "/innemenu"){ TuInneMenu(id) } return PLUGIN_HANDLED // Byl slash na poczatku wiec nie wysylam wiadomosci na czat. } return PLUGIN_CONTINUE //Nie bylo slasha na poczatku wiec wysylam wiadomosc na czat }Wszystkie wiadomości których pierwszy znak to / nie zostaną wyświetlone na say. Polecam od razu wykorzystać te funkcje do dodawania komend do pluginu zamiast pisać dla każdej komendy register_clcmd("say /Komenda", "funckja")
Dzięki takiej obsłudze komend zaoszczędzisz sporo nerwów i możesz dodać parę fajnych możliwości np jeżeli masz tylko 2 komendy
/menu
/konto
to możesz zrobić aby te komendy wyświetlały się kiedy ktoś wpisze skrót np dla menu: /me, /menu, /men, /MENUUUU
Jednak jak widzisz zadziała także gdy wpiszesz /me, a taka komenda też jest z innego pluginu bodajże. ale mimo wszystko chyba rozumiesz o co mi chodzi.
if( containi(szMessage, "/m") != -1 ){ } //Te same menu pod dwie komendy: /sklep, /shop if( containi(szMessage, "/sk") != -1 || equali(szMessage, "/shop")){ MenuSklepu(id) }Polecam używać equali, oraz containi te funkcje nie biorą pod uwage wielkości liter,
Użytkownik Zuzza edytował ten post 04.03.2021 12:17
#6
Napisano 05.03.2021 08:30
@up ja to bym jednak zwracał PLUGIN_HANDLED_MAIN aby nie bylo jakichkolwiek problemow z komendami innych pluginów
Cześć
#7
Napisano 05.03.2021 12:24
Mi zawsze
return PLUGIN_HANDLED;
pomagało. Zauważ że po wpisaniu komendy /menu wykonuje się funkcja, która 'odsyła' nas do innej funkcji, która wyświetla odpowiednie menu w zależności w jakiej drużynie jesteśmy i właśnie w tej funkcji sprawdź czy masz to co podałem wyżej.
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych