W tym artykule zaprezentuję wam podstawowy kod pluginu, jedynie rejestrujący plugin. Wyjaśnię jaka część za co odpowiada. Wydaje mi się że jest to dosyć łatwy temat. Tak wygląda standardowy kod generowany przy tworzeniu nowego projektu w Amxx Studio:
Co to /* Plugin generated by AMXX-Studio */ ?
Jest to komentarz. Dzięki pisaniu komentarzy po przerwie w programowaniu możemy łatwiej odnaleźć się w swoim kodzie. Komentarz nie jest brany przez plugin pod uwagę, jest to jedynie wizualna pomoc dla programisty. Lub kiedy udostępnimy gdzieś nasz kod i zawiera on komentarze osoba czytająca je jest w stanie w prosty sposób zrozumieć działanie pluginu i jego funkcje.
Komentarze stworzymy na kilka sposobów, ja pokażę dwa które osobiście preferuję. Kiedy chcesz aby twój komentarz rozciągał się od konkretnego miejsca aż do końca lini użyj tej metody:
Oczywiście możemy zacząć komentarz od dowolnej części linii, np:
Jest jeszcze druga metoda pisania komentarzy, dająca moim zdaniem większą elastyczność. Mianowicie możemy w dowolnym miejscu rozpocząć jak i zakończyć komentarz dzięki czemu pomiędzy różnymi danymi w linii możemy mieć komentarze, np:
Jeżeli nadal masz jakieś wątpliwości lub niejasności co do tematu używania komentarzy, opisz to poniżej.
Czym jest dyrektywa include ?
Dzięki tej dyrektywie możesz w prosty sposób pobrać funkcje z bibliotek, definicje etc. do własnego użytku. Biblioteki udostępniają nam naprawdę wiele natywów, forwardów etc. Biblioteką bez, której ciężko jest napisać plugin o ile to możliwe jest amxmodx, która umożliwa nam podstawowe funkcje typu rejestracja pluginy czy podstawowe forwardy typu plugin_init.
Możemy używać dyrektywy #include na dwa sposoby. Nie wiele się od siebie różnią. Pierwszy polega na umieszczeniu między znakami <> jedynie nazwy biblioteki, a drugi na umieszczeniu między "" pliku .inc biblioteki. Przykład:
Czym jest dyrektywa define ?
Dzięki dyrektywie define możemy w prosty sposób powiedzieć kompilatorowi, aby przy każdym spotkaniu konkretnego ciągu, liczby etc. zamienił to na coś innego. Wtedy dla nas to będzie jedynie sprawa wizualnej wygody i lepszej kontroli kodu. Przykładowo:
Drugim możliwym użyciem będzie po prostu zdefiniowanie "nazwy", dzięki czemu później będziemy mogli skrócić kod za pomocą sprawdzania np. czy MYSQL jest zdefiniowane czy nie.
Czym jest public plugin_init ?
Public oznacza tu funkcję publiczną, ja preferuję takie rejestrowanie funkcji. Plugin_init jest forwardem wywoływanym podczas "startu mapy". W nim rejestrujemy plugin, możemy również w nim rejestrować cvary etc.
register_plugin jest wywołaniem funkcji rejestrującej naszą wtyczkę. Jeżeli chcesz poznać więcej funkcji wejdź w element menu pt. "Dokumentacja".
Jeżeli nadal masz jakieś niejasności to śmiało mów o nich w komentarzach.