engclient_cmd wykonuje polecenie say, ale...
Robiin
22.05.2016
Cześć,
przykładowy kod;
case 0: { engclient_cmd(id, "say", "/czapki") }
jeden z case'ów menu, który ma wykonywać "say /czapki" u gracza, ale problem jest taki, że rzeczywiście "gracz pisze" na sayu /czapki, ale komenda nie jesy wychwytywana przez inny plugin, w tym przypadku czapki, które mają komendę /czapki.
Czyli na czacie jest wpisywane "say /czapki", bez błędów itp, tylko że nie wykrywa to komendy. Natomiast wpisanie ręcznie na say'u /czapki już daje efekt taki jaki bym chciał, czyli pokazuje menu czapek.
Linux'
22.05.2016
Wtedy będzie niepoprawnie wykonane i nie zadzaiała
Skoro wiesz lepiej, dlaczego ten temat? "say /czapki", a nie "say" "/czapki" bedzie dzialac poprawnie.
Robiin
22.05.2016
Wtedy będzie niepoprawnie wykonane i nie zadzaiała
Skoro wiesz lepiej, dlaczego ten temat? "say /czapki", a nie "say" "/czapki" bedzie dzialac poprawnie.
Temat po to żeby się dowiedzieć w czym problem, bo skoro "say" "/czapki" nie jest wyłapywane jako komenda, a "say /czapki" nie działa w ogóle, bo protectory na steamie, to więcej pomysłów nie mam. Próbowałem sposobów ze strony dark'a.
Linux'
22.05.2016
Co maja do tego protectory na steamie? Komenda typu say, moze byc bez problemowo wywolana u wszystkich graczy nie zaleznie od platformy gry. Jezeli uzycie komendy "say /czapki" nie wylapuje takowej, ktora zarejestrowana zostala przez taka sama nazwe to bledow upatrywalbym sie gdzies indziej. Jakis plugin do blokady komend, lub zmiany tekstu w say jest? wyłącz lub przypisz w plugins na samym dole.
Robiin
22.05.2016
Co maja do tego protectory na steamie? Komenda typu say, moze byc bez problemowo wywolana u wszystkich graczy nie zaleznie od platformy gry. Jezeli uzycie komendy "say /czapki" nie wylapuje takowej, ktora zarejestrowana zostala przez taka sama nazwe to bledow upatrywalbym sie gdzies indziej. Jakis plugin do blokady komend, lub zmiany tekstu w say jest? wyłącz lub przypisz w plugins na samym dole.
Czysty serwer z amxx'em (próbowałem 1.8.1, 1.8.2 i 1.8.3), prosty plugin
register_clcmd("say /test", "test", _, "testtt") public test(id) { client_cmd(id, "say Testuje") }
Koniec.
Nie działa. Pisałem już o tym temat. Próbowałem sposobów od Dark'a, pisałem na hostingach(pukawce i 1s1k), i nikt nie wpadł na nic bardziej kreatywnego niż użycie client_cmd przez engine'a.
Używałem pluginów które są na amxx'ie od paru lat, i działają na 100%. Nie zadziałały. Jedyne co osiągnąłem to właśnie użycie client_cmd przez engine'a, i problem jest opisany wyżej. Od hostingów i darkgl.pl dowiedziałem się że steam/ns mają protectory, a amxx 1.8.3 miało podobno wprowadzić jakąś łatkę, bo właśnie client_cmd i inne funkcje nie działały przez jakiś tam (chyba) update steam.
Naprawdę Twoja zarozumiałość nie pomaga, bo po pomoc tutaj przyszedłem. Bądź dalej Power Userem który wie wszystko, ale mi pomóż, co dalej już mnie nie obchodzi.
grankee
25.05.2016
Może już sporo zapomniałem, ale za moich czasów to amx nie wykrywał niczego co sam robił. Jeśli wykonujesz na graczu komendę amxem to amxem jej już nie wyłapiesz. Innymi słowy ona się wykona, ale nie zaalarmuje innych pluginów w amxie, że takową gracz wykonał. Możesz ewentualnie zmienić kolejność pluginów wykonującego i wyłapującego, ale nie sądzę, żeby to coś dało.
Master Yoga
25.05.2016
Zrób to w taki sposób do pluginy z czaspkami dodaj jeszcze jedna komendę.
NP. Register_concmd("moja_komenda", "funkcja11") zmierzam tutaj do tego by nie było komendy typu say + argument.
A potem za pomocą client_cmd wywołaj tą komendę czyli:
Client_cmd(id,"moja_komenda")
Robiin
25.05.2016
Wiem o co ci chodzi i z tego co pamiętam na 100% da się to osiągnąć w/w funkcją ( tj. Client_cmd ).
Zrób to w taki sposób do pluginy z czaspkami dodaj jeszcze jedna komendę.
NP. Register_concmd("moja_komenda", "funkcja11") zmierzam tutaj do tego by nie było komendy typu say + argument.
A potem za pomocą client_cmd wywołaj tą komendę czyli:
Client_cmd(id,"moja_komenda")
Może już sporo zapomniałem, ale za moich czasów to amx nie wykrywał niczego co sam robił. Jeśli wykonujesz na graczu komendę amxem to amxem jej już nie wyłapiesz. Innymi słowy ona się wykona, ale nie zaalarmuje innych pluginów w amxie, że takową gracz wykonał. Możesz ewentualnie zmienić kolejność pluginów wykonującego i wyłapującego, ale nie sądzę, żeby to coś dało.
Wyjaśnione, przez cmdExecute od Dark'a;
http://darkgl.pl/201...torow-i-blokad/
Na początku nie działało, bo raczej ctrl+c/v potrafię, ale ostatnio mi zadziałało po lekkiej zmianie kodu. Ten sposób jako jedyny zadziałał anyway