←  Pytania dotyczące pluginów

AMXX.pl: Support AMX Mod X i SourceMod

»

Włączenie pluginu innym pluginem

Zablokowany

  • +
  • -
Obelix - zdjęcie Obelix 28.06.2020

Witam, mam nietypowe pytanie. 
W 1 pluginie mam taki kod który włącza daną zabawe: 

register_clcmd("jail_wlacz", "jb_day_mode_start");
register_clcmd("jail_wylacz", "jb_day_mode_ended");
 
W jaki sposób włączyć tą zabawę innym pluginem? tzw. Chcę dodać do innego pluginu, aby gdy gracz wybierze tą zabawę z menu to serwer uruchomi ją wpisując "jail_wlacz" w konsoli. Potrzebuję lekkiej instrukcji w jaki sposób dodać to, ponieważ plugin będzie wywalał błąd odnośnie nieznanej komendy "jail_włącz"
Odpowiedz

  • +
  • -
Rivit - zdjęcie Rivit 28.06.2020

ponieważ plugin będzie wywalał błąd odnośnie nieznanej komendy "jail_włącz"

 
Brzmi jak brak 

return PLUGIN_HANDLED

w handlerze od komendy.
 
zobacz jeszcze na server_cmd

 

oraz dodam jeszcze na koniec że można zrobić dwa natywy do włączania i wyłączania i po sprawie

Odpowiedz

  • +
  • -
Obelix - zdjęcie Obelix 28.06.2020

 

ponieważ plugin będzie wywalał błąd odnośnie nieznanej komendy "jail_włącz"

 
Brzmi jak brak 

return PLUGIN_HANDLED

w handlerze od komendy.
 
zobacz jeszcze na server_cmd

 

oraz dodam jeszcze na koniec że można zrobić dwa natywy do włączania i wyłączania i po sprawie

 

Zrobiłem coś takiego, dodałem natywy, aby silnik JB uruchamiał zabawę (zabawa jest w innym pluginie) 

native jail_wlacz();
native jail_wylacz();

oraz w miejscu w którym zabawa powinna się uruchamiać dodałem ten kod: 
jail_wlacz;
 
Plugin z tym kodem kompiluje się prawidłowo, lecz na serwerze cały plugin się wyłącza przez ten kod, nie wiem co robię źle :/
Odpowiedz

  • +
  • -
Rivit - zdjęcie Rivit 29.06.2020

zarejestrowales natywy w plugin_natives?
Odpowiedz

  • +
  • -
Obelix - zdjęcie Obelix 29.06.2020

zarejestrowales natywy w plugin_natives?

Tak, 

register_native("jail_wlacz", "jbe_day_mode_start", 1);

 

Plugin nie działa, a w menu zatrzymywania pluginów, jest pokazany jako UNKNOWN 

Odpowiedz

  • +
  • -
Rivit - zdjęcie Rivit 29.06.2020

to popatrz w 'amxx plugins' oraz error logi, może coś sknociłeś :D

Odpowiedz

  • +
  • -
Obelix - zdjęcie Obelix 29.06.2020

to popatrz w 'amxx plugins' oraz error logi, może coś sknociłeś :D

 

Function "jail_wlacz" was not found

[AMXX] Plugin "silnikjb.amxx" failed to load: Plugin uses an unknown function (name "jail_wlacz") - check your modules.ini.

 

Źle dodałem coś najwyraźniej, niżej wrzucę jeszcze raz wszystko to, co dodałem z tą funkcją, jeżeli wyłapiesz jakiś błąd, to będę wdzięczny! 

 

W pluginie od zabawy mam ten kod, który uruchamia zabawę: 

register_clcmd("jail_wlacz", "jb_day_mode_start");
register_clcmd("jail_wylacz", "jb_day_mode_ended");

W silniku mam natywy odnośnie tej zabawy: 
native jail_wlacz();
native jail_wylacz();
 
-----
public plugin_natives() {
register_native("jail_wlacz", "jb_day_mode_start", 1);
 
----
jail_wlacz;   //To mam dodane w silniku w miejscu, gdzie ma się uruchamiać zabawa 

 
Odpowiedz

  • +
  • -
Rivit - zdjęcie Rivit 29.06.2020

natywy rejestrujesz w pluginie, który ma je obsługiwać czyli w zabawie. W silniku tylko dodajesz same deklaracje natywu oraz wywołanie

jail_wlacz;

to nic nie znaczy, funkcje wywołuje się za pomocą operatora () czyli 

jail_wlacz();


W pluginie od zabawy mam ten kod, który uruchamia zabawę: 

register_clcmd("jail_wlacz", "jb_day_mode_start");
register_clcmd("jail_wylacz", "jb_day_mode_ended");

Jak robisz natywy to to jest zbędne.

 

 

 


Rivit (30.06.2020 13:20):
server_cmd to słabe rozwiązanie :P, ale jak działa i jesteś zawodolony to spoko
Odpowiedz

  • +
  • -
Obelix - zdjęcie Obelix 30.06.2020

Okej dzięki, w miarę zrozumiałem wszystko i poradziłem sobie! 
Włączam zabawę stosując - server_cmd("jail_wlacz"); i wszystko działa! 
Temat do zamknięcia

Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 30.06.2020

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Temat zamknięty na prośbę użytkownika.


Z pozdrowieniami,
Zespół AMXX.PL
Odpowiedz
Zablokowany