Jump to content
Ogen Dogen

Słowa kluczowe w AMXX

7 posts in this topic

Recommended Posts

W tym poradniku postaram się przybliżyć wam najważniejsze słowa kluczowe w AMXX.

Myślę że poradnik jest zarówno dla początkujących jak i dla doświadczonych skrypterów (może sie czegoś nauczą ^^)

Może na początek pytanie czym jest słowo kluczowe ?

Słowo kluczowe jest to słowo , które jest z góry zarezerwowane przez kompilator do wykonania danej instrukcji. Trzeba je użyć w konkretny narzucony sposób i nie możemy go użyć do nazywania własnych zmiennych , tablic , funkcji itd. Jeśli używamy AMXX-Studio to słowa kluczowe mamy kolorowane zawsze na zielono.

1. #include

Każde słowo kluczowe poprzedzone przez # (hash) jest to tzw. dyrektywa preprocesora i najczęściej używamy go na początku każdego pluginu / programu / biblioteki.

Tutaj mamy dyrektywę #include , która dołącza do pluginu biblioteki bez których ciężko by było cokolwiek zrobić :) Znajduje się zawsze na początku kodu.

Przykłady :

#include

#include

#include

#include

Biblioteki możemy również zapisywać inaczej :

#include "amxmodx"

#include "fun"

#include "fakemeta"

#include "colorchat"

Albo po co nam w ogóle te końcówki ? :D

#include amxmodx

#include fun

#include fakemeta

#include colorchat

2. #define

Następna dyrektywa w której definiujemy stałe wartości o dowolnym typie , obojętnie czy wpiszemy int,float czy stringa. Domyślnie pojawia się przy rejestracji pluginu na samym początku.

Rejestracja własnych stałych powinna się odbyć też na początku , tak żebyśmy mogli w całym kodzie z nich korzystać.

#define PLUGIN "Mój plugin"

#define VERSION "1.0"

#define AUTHOR "Ja"

3. new

To będzie chyba najczęściej stosowane słowo kluczowe. Służy ono do deklarowania zmiennych i tablic , czyli takich kontenerków z danymi (jeśli ktoś nie wie). Nie ma tutaj większej filozofii piszemy new i naszą nazwę np.

new a;

new liczba_graczy;

new tablica[32];

Ważne żeby zmienna nie zawierała w nazwie spacji ! Jeśli dokonamy takiego zapisu jak wyżej to domyślnie przyjmuje typ int (liczby całkowite) np. 5 , 10 , -4.

Inne typy deklarujemy w ten sposób :

new typ:nazwa;

Dwa inne podstawowe typy to Float (liczby rzeczywiste np. -1.4 , 3.76) i bool (typ logiczny TRUE/FALSE).

Do tego przy deklaracji możemy od razu ustawiać ich wartość. Sumując wszystko podam przykłady :

new liczba_graczy = 10;

new Float:PI = 3.14;

new bool:abc = false;

Wartością może też być funkcja :

max_graczy = get_maxplayers();

Za pomocą new możemy też deklarować stałe , które są szybsze niż te definiowane przez #define.

new const STAŁA[] = 123

4. IF / ELSE

Słowo IF występuje praktycznie w każdym języku programowania. Od Pascala , przez C/C++ aż nawet do Ruby. Jego ogólna składnia to :

if (warunek) instrukcja;

W warunku mogą się znaleść znów zmienne , komórki tablic czy funkcje np.

if (get_user_health(id) < 50) set_user_health(id,100);

Lub jeśli chcemy więcej instrukcji wykonać to zamykamy je w klamrach :

if (get_user_health(id) < 50)

{

client_print(id,print_chat,"Zostales uleczony !");

set_user_health(id,100);

}

A teraz co jeśli będzie inaczej zaplanowaliśmy i gracz będzie miał 50 lub więcej hp ? Tutaj przychodzi z pomocą słówko ELSE , które nie funkcjonuje samodzielnie bez if'a.

if (get_user_health(id) < 50)

{

client_print(id,print_chat,"Zostales uleczony !");

set_user_health(id,100);

}

else

{

client_print(id,print_chat,"Masz 50 hp lub wiecej !");

client_print(id,print_chat,"Nie nalezy ci sie leczenie !");

}

5. switch / case / default

Switch jest instrukcją wyboru , przedstawia w bardziej przejrzysty sposób możliwości wyboru niż if. Jednakże switch dotyczy tylko jednej wartości. Zaś case jest słowem które że tak powiem wyodrębnia każdą opcję. Najpopularniejszym zastosowaniem switch'a jest tworzenie menu. np.

// obliczenia liczace wartosc zmiennej a

switch (a)

{

case 1: log_amx("a = 1");

case 2: log_amx("a = 2");

case 3: log_amx("a = 3");

}

Tak samo jak przy if'ie możemy również stosować klamry.

Default zaś jest tutaj słówkiem pomocniczym , odpowiednikiem else.

Default = domyślny. Jeśli zmienna będzie różna od 1,2,3 i zostawimy to tak jak wyżej to po prostu cały kod zostanie pominięty , nie zależnie od tego jak długi i ważny będzie.

// obliczenia liczace wartosc zmiennej a

switch (a)

{

case 1: log_amx("a = 1");

case 2: log_amx("a = 2");

case 3: log_amx("a = 3");

default : log_amx("a!=1 , a!=2 , a!=3");

}

6. DO / WHILE

Jest to pierwsza z 3 instrukcji iteracyjnych czyli popularnie zwanych pętlami. Charakteryzuje się ona tym że sprawdza warunek na końcu działania i ZAWSZE wykona się przynajmniej raz. Dosłownie to oznacza wykonuj wtedy gdy

Składnia :

do

{

// kod

}

while (warunek);

Przykład :

new a = 5;

do

{

a++;

client_print(id,print_chat,"a = %i",a);

}

while (a 6

8. FOR

Najpopularniejsza pętla. Różni się od wcześniejszych tym że tutaj z góry wiemy ile wykonamy kroków pętli bądź będziemy wiedzieć przez przekazanie wartości w zmiennej. np.

new i;

for (i=1 ; i

Link to post
Share on other sites

wszystko ładnie pięknie, ale gdzie jest kurw* wódka?:D +

Link to post
Share on other sites

Dokładnie :D

Dopisałem tam coś breloczku ;d

Link to post
Share on other sites
Guest
This topic is now closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...