Skocz do zawartości
Przeglądasz forum jako gość, nie masz dostępu do większości funkcji! Zarejestruj się już teraz!
Witaj na Strefaskilla.pl

LETNI KONKURS

Uwiecznij najpękniejszą fotografię tego lata!

Weź udział

NOWY/STARY ODŚWIEŻONY STYL !

Właśnie wleciał odświeżony styl z kilkoma zmianiami i dodatkami

Zobacz szczegóły

FANPAGE

Dołącz do naszej społeczności na fanpage’u!!

DOŁĄCZ!

OTWARTA

Szybka rekrutacja na typera

Złóż podanie

OTWARTA

Szybka rekrutacja na redaktora

Złóż podanie








[ SM ] Poradnik pisania pluginów #1


D3X

Rekomendowane odpowiedzi

  • Użytkownik

Cześć!

Ostatnio zacząłem się uczyć nowej wersji sourcemoda 1.11, bo w tej wersji zmieniło się dużo a napewno różni się ta wersja od 1.10 więc postanowiłem że będę raz na jakiś czas wstawiał krótkie poradniki jak ten na temat nauki sourcemoda od podstaw żeby nowi użytkownicy którzy by chcieli zacząć swoją przygodę z sourcemodem mogli się też z tych poradników nauczyć.

 

PODSTAWY

Pierwszą podstawą aby napisać byle jaki plugin do sourcemoda należy pobrać jakiś program do pisania pluginów, ja polecam wam używać program "SPCode" ponieważ jest on stwrorzony w 100% myślą o sourcemodzie, ale możemy też wybrać Visual Studio Code i zainstalować tam wtyczkę do sourcemoda i też będzie wszystko działało. Kolejnym krokiem jest stworzenie pliku z końcówką ".sp" i dodanie do pierwszej linijki biblioteki sourcemod bez której żaden plugin nie będzie nam działał

#include <sourcemod>

 

Następnie zaczynamy pisać informacje o pluginie takie jak jego nazwa, autor, wersja bądź jego opis, a dodajemy to wszystko w ten sposób:

#include <sourcemod>

public Plugin myinfo = 
{
	name = "Przykładowa nazwa pluginu", 
	author = "Autor pluginu", 
	description = "Opis pluginu", 
	version = "Wersja pluginu np. 1.0", 
	url = "Kontakt do autora pluginu"
}

 

Okej, już wiemy jak przydzielić informacje o pluginie oraz jak dodawać biblioteki do pluginu, teraz zaczniemy od czegoś bardziej zaawansowanego, jak każdy plugin musi wczytać wszystkie eventy, komendy pluginu itp. a robimy to właśnie tak

#include <sourcemod>

public Plugin myinfo = 
{
	name = "Przykładowa nazwa pluginu", 
	author = "Autor pluginu", 
	description = "Opis pluginu", 
	version = "Wersja pluginu np. 1.0", 
	url = "Kontakt do autora pluginu"
}

public void OnPluginStart()
{
  RegConsoleCmd("sm_ping", PingCommand);
}

wpisując "public void OnPluginStart()" wysyłamy do serwera co plugin ma wczytać gdy zostanie odpalony, w tym przypadku ma registrować komende "sm_ping" (na serwerze: !ping), tera pewnie zastanawiacie się po co na końcu napisałem "PingCommand" już spieszę z odpowiedzią, każda komenda musi mieć jakąś akcje w której będą się działy wszystkie rzeczy które zostaną zrobione po wpisaniu komendy, my zrobimy to na już chyba podstawowym przykładzie w programowaniu czyli na komendzie !ping która ma nam zwracać na czacie bądź konsoli wiadomość "pong", a robimy to tak:

#include <sourcemod>
#include <multicolors>

public Plugin myinfo = 
{
	name = "Przykładowa nazwa pluginu", 
	author = "Autor pluginu", 
	description = "Opis pluginu", 
	version = "Wersja pluginu np. 1.0", 
	url = "Kontakt do autora pluginu"
}

public void OnPluginStart()
{
  RegConsoleCmd("sm_ping", PingCommand);
}

public Action PingCommand(int client, int args)
{
	CPrintToChat(client, "Pong!");
}

"public Action PingCommand(int client, int args) tworzy akcje PingCommand która będzie wywoływana po wpisaniu komendy !ping na serwerze w tym przypadku plugin ma nam zwrócić na czacie wiadomość "Pong!" do clienta który użył tej komendy, CPrintToChat wysyła wiadomość na czacie do klienta, jest z customowej biblioteki "multicolors" więc będziemy musieli ją pobrać z internetu.

 

I to by było na tyle z tego poradniku, dzięki temu poradnikowi nauczyłeś się właśnie jak napisać plugin na przykład na komende !forum która by wysyłała link do twojego forum ;)

  • Super 2
  • Dzięki 1

43456103_sygnaturadlamnie.png.f661c2bf0168aba6622df274f8b944cb.png

Odnośnik do komentarza
  • Użytkownik∙

Bardzo dobry poradnik!

Odnośnik do komentarza
  • Użytkownik∙

krótko i na temat, dobry poradnik

obraz_2024-03-15_002634697.png.9e939e5aa0329c7dbdc02ff1def4bd12.pngimage.png.12d62ef3275b69edca2ac656af09fed4.png

                                                                                                       image.png.12ede2e1ccb162a99c98987149eaf3ca.png

Odnośnik do komentarza
  • 4 tygodnie później...
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Zapoznaj się z polityką prywatności forum Polityka prywatności oraz regulaminem forum Regulamin

  • Opiekun [MIRAGE #1]
  • Opiekun [MIRAGE #2]
  • Opiekun [1VS1]
  • Opiekun [AWP #1]
  • Opiekun [AWP #2]
  • Opiekun [SURF]
  • Opiekun [MIR/CACH]
  • Opiekun [5VS5]
  • Opiekun [DR+KLASY]