W tym krótkim tutorialu postaram pokazać się Wam jak stworzyć wielojęzyczny plugin (np. po angielsku oraz polsku).
Przedstawione tu treści są dla troszeczkę bardziej zaawansowanych, więc jeżeli nigdy nie miałeś do czynienia z pisaniem plugin'ów, zabierz się za moje wcześniejsze tutoriale ;].
Zaczynamy!
Piszemy wielojęzyczny plugin!
Najpierw musimy sporządzić jakiś słownik (plik .txt z którego plugin będzie brał teksty wyświetlane graczowi).
Przykładowy słownik może wyglądać tak :
[pl] MSG_DEAD_PLAYER = cos
Będą to wiadomości wyświetlane, czy język gracza to polski.
Dla języka angielskiego będzie to :
[en] MSG_DEAD_PLAYER = something
Jak już pewnie zauważyliście wiadomość zapisana w słowniku składa się z jej nazwy (MSG_DEAD_PLAYER) i treści (cos).
Teraz możecie stworzyć już własny słownik .
Aby nasz plugin mógł być wielojęzyczny, musimy najpierw zarejestrować słownik dla niego.
Robimy to dzięki komendzie :
register_dictionary("nazwa_słownika.txt")nazwa_slownika to nazwa pliku słownika.
Plik .txt musi znajdować się a w
addons/amxmodx/data/langTeraz chcemy, aby wiadomość wypisywana dla gracza była pobierana z naszego słownika.
Robimy to wywołując instrukcję :
client_print(id,print_center,"%L",LANG_PLAYER,"MSG_DEAD_PLAYER")Pewnie po obejrzeniu tego kawałka kodu złapaliście się za głowę, ale już spieszę z wyjaśnieniem go.
Instrukcję client_print zapewne już znacie. id to identyfikator gracza. %L mówi silnikowi gry, że ta wiadomość ma zostać pobrana ze słownika.
LANG_PLAYER to instrukcja określająca, że wiadomość ma być w takim języku, jaki gracz ma ustawiony w amx_langmenu.
Ostatni, ale najważniejszy parametr ("JAKAS_WIAD") to nazwa wiadomości w słowniku .
Słowem zakończenia
Mam nadzieję, że ten krótki tutorial pomógł Wam i rozjaśnij sprawę pisania plugin'ów wielojęzycznych.