Jump to content
assignment_ind Existing user? Sign In

Sign In



person_add Sign Up
Go-Code.pl - Support SourceMod i Pluginy CS:GO
Sign in to follow this  
MAGNET

05. Funkcje, zmienne, typy danych

Recommended Posts

https://www.youtube.com/watch?v=uxvUUn9TxEI
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

 

Dokumentacja: https://go-code.pl/dokumentacja-sourcemod/
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

(znajdziecie ją na forum w pasku zakładek -> Sourcemod)

 

Dokumentacja -> OnPluginStart(): https://go-code.pl/dokumentacja-sourcemod/sourcemod/OnPluginStart
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

 

Funkcja - kawałek kodu, który może być wykonywany wielokrotnie. Ograniczany przez nawiasy klamrowe { }

Zawsze musi zwrócić wartość - "rezultat działania" (służy do tego wyrażenie return TWOJA_WARTOŚĆ). Odstępstwem od normy jest funkcja typu void, która takiego wymogu nie posiada.

WAŻNE: wykonanie akcji return oznacza przerwanie wykonywania się całej funkcji. Przykład:

void JakasFunkcja() {
	Operacja1;
  	Operacja2;
  	return; // zwracam rezultat. Funkcja jest void, więc nie zwraca niczego, jednak return może być użyte, aby zwyczajnie wcześniej przerwać funkcję
  	Operacja3; // nigdy się nie wykona; linijka powyżej zakończyła działanie całej funkcji
}

 

Typy danych:

int - typ całkowitoliczbowy. Przechowuje wartości całkowite (bez przecinka) np. 1, 5, 2214124, 6

float - liczby z wartościami po przecinku np. 1.2, 20.4134, 3.1319

bool - wartośći typy true/false, czyli prawda/fałsza

char - znaki. Służą do przechowywania tekstu. Dla jednego chara: 'A', 'f", '*'    |    Dla zbioru charów(tablic): "GO-code.pl", "mikrofon" (pamiętajmy, aby zarezerwować odpowiednio dużą przestrzeń, aby tekst mógł się zmieścić - 1 znak to jedna "szufladka")

 

Zmienna - można w niej tymczasowo przechowywać dane. Musi ona być określonego typu, które zostały opisane powyżej.

Deklaracja zmiennej typu całkowitoliczbowego:

int tutajNazwaNaszejZmiennej;

nazwa jest całkowicie dowolna

 

Deklaracje zmiennej typu bool:

bool mojaZmiennaPrawdaFalsz;

 

 

RegConsoleCmd - "wyłapuje" z czatu tekst napisany przez gracza i wywołuje funkcję, która tą wiadomość obsługuje (może ją na przykład zablokować). Poza obsługą wiadomości może robić cokolwiek innego - na przykład stworzyć menu.

 

Komentarze - służą do komentowania (obviously)

Możliwe warianty:

1. Komentarz jednej linii:

// To jest komentarz
a to już nie

 

2. Komentarz wieloliniowy:

/*
to jest komentarz
dalej komentarz...
*/
a tu już nie

 

GetClientAuthId
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!
- pobiera steamID

 

 

Reguły formatujące - podmieniają w stringu (czyli ciągu znaków) specjalny "zrost" %X na coś, co zostało podane w kolejnych argumentach (dla znających choć trochę angielski: LINK
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!
)

 

Podstawowe typy:

%d - podmienia liczbę całkowitą ("Moje zdrowie: %d", hp);

%f - podmienia floata (możemy sterować liczbą zer po przecinku, np. %.2f wypisze floata z dwoma miejscami) ("odległość: %.2f", jakasOdleglosc);

%s - podmienia stringa ("Twoja informacja: %s", jakasInformacja);

%N - w jego miejscu pojawi się nick gracza ("Nazywasz się: %N", client);

 

Akcja zwracana przez typ Action:

return Plugin_Continue - wypisz wiadomość, którą wprowadził gracz, np. jeśli zarejestrowana została komenda !info, zostanie ona pokaza na czacie

return Plugin_Handled - akcja zostanie zablokowana (wiadomość !info nie pokaże się na czacie)

  • Lubię to! 5

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.


O NAS Jesteśmy społecznością łączącą ludzi, którzy dzielą pasję poznawania CS:GO od strony programistycznej. Posiadamy duże zaplecze merytoryczne i zawsze cieszymy się, gdy dołączają do nas osoby gotowe do nauki. Gwarantujemy, że z odrobiną wytrwałości i otwartym umysłem bardzo szybko napiszesz swój pierwszy plugin. Zapraszamy! 🙂
Szablon wykonany z dużą ilością przez cyberpixelz / Mesharsky / Sitefuture
Forum dumnie napędzane przez: Invision Power Services, Inc.
×
×
  • Create New...