Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Niektóre funkcje


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
8 odpowiedzi w tym temacie

#1 kaszewczyk

    Pomocny

  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:42
Offline

Napisano 30.01.2009 10:35

Witam, postanowiłem się zaznajomić z pawn'em i pisaniem pluginów pod amx chciałem podzielić się z wami moimi doświadczeniami jak dotąd (jeszcze są nie wielkie) ;) może się komuś przydadzą.

Funkcje z czym to się je?


Pawn umożliwia używania funkcji bibliotecznych jak i zarówno pozwala na tworzenie własnych funkcji, funkcje powinny zwracać jakąś wartość, aby funkcja zwracała wartość należy użyć słowa return które natychmiast zatrzymuje funkcje i zwraca wartość wyrażoną zaraz po tym słowie np. return 1; czyli po uruchomieniu funkcji będzie zwracana jedynka. Uwaga! w funkcji po słowie return nie powinniśmy zawierać żadnego dalszego kodu ponieważ nie będzie on wykonany. Funkcje są używane po to aby nie powielać tego samego kodu wiele razy, co oszczędza nam wiele czasu i trudu jak i znacznie skraca pisane przez nas programy.


Oto przykład funkcji pokazująca napis "witam w konsoli" i zwróci jedynkę


pokaz_w_konsoli()
{
   console_print(id,"witam w konsoli");
   return 1;   
}

aby uruchomić funkcję:


pokaz_w_konsoli();


oto przykład funkcji przyjmującej parametry

suma(liczba_a,liczba_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='B)' />
{
new sum = liczba_a + liczba_b;
return sum;
// lub po prostu można zrobić tak aby skrócić kod
return liczba_a + liczba_b;
}

aby uruchomić funkcję:

new a,b;
a=4;
b=5;
new c;
c = suma(a,<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='B)' />
//c równa się 9

można także nadać funkcji typ który będzie ograniczał argumenty jakie będzie mogła przyjąć funkcja do określonego typu, użyjemy tej samej funkcji tylko dla liczb zmiennoprzecinkowych

Float:suma_float(liczba_a,liczba_<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='B)' />
{
new Float:sum = liczba_a + liczba_b;
return sum;
}

aby uruchomić funkcję:

Float:new a,b;
a=4.0;
b=5.5;
new Float:c;
c = suma_float(a,<img src='https://amxx.pl/public/style_emoticons/<#EMO_DIR#>/cool.gif' class='bbc_emoticon' alt='B)' />
//c równa się 9.5

poniżej opis niektórych funkcji bibliotecznych:


Core




Funkcja: abs
abs(x);
Opis:
funkcja jednoparametrowa zwracająca całkowitą wartość intigera

Funkcja: access
access(id_gracza,flaga_admina)
Opis:
funkcja dwuparametrowa sprawdzająca gracza czy ma odpowiednią flagę administratora serwera np: ADMIN_KICK

Funkcja: add

add ( string_pierwszy[], dlugosc, const string_drugi[], [ max ] ) 
Opis:
funkcja 3 parametowa ponieważ ostatni parametr jest nie wymagany. Funkcja dodaje do siebie dwa stringi i zwraca ilość znaków połączonych, jeżeli ostatni parametr jest podany wyznacza on ile znaków ma dodać funkcja

Funkcja: arrayset
arrayset ( tablica[], wartosc, rozmiar)
Opis:
funkcja trójparametrowa ustawiająca całą tablice do wybranej wartości w szybki sposób.

Funkcja: get_user_frags
get_user_frags ( id_gracza ) 
Opis:
funkcja jednoparametrowa zwracajaca ilość punktów (fragów)

Funkcja: isalpha
isalpha ( ch ) 
Opis:
funkcja zwraca prawde jezeli parametr to litera

Funkcja: isdigit
isdigit ( ch ) 
Opis:
funkcja zwraca prawde jezeli parametr to liczba

Funkcja: make_deathmsg
make_deathmsg ( zabojca, ofiara, headshot, bron[] ) 
Opis:
funkcja czteroparametrowa tworząca wiadomość o śmierci gracza


Funkcja: random_num
random_num ( a,b ) 
Opis:
funkcja przyjmuje dwa parametry które są minimalną i maxymalną granicą przedziału a funkcja zwraca losową liczbę całkowitą z tego przedziału

Funkcja: random
random ( max ) 
Opis:
funkcja przyjmuje jeden parametr który wyznacza górną granice przedziału ze wzoru max-1 dolna granica to 0, funkcja zwraca pseudo-losową liczbę z tego przedziału

Funkcja: random_float
Float: random_float ( Float:a,Float:b ) 
Opis:

funkcja przyjmuje dwa parametry które są minimalną i maxymalną granicą przedziału a funkcja zwraca losową liczbę zmiennoprzecinkową z tego przedziału

Funkcja: date

date ( [ &rok, &miesiac, &dzien ] )
Opis:
Funkcja przywraca date poprzez parametry podane przez referencje, które będą przekazywać części daty zapisanej wewnątrz funkcji.

Funkcja: funcidx

funcidx ( const nazwa[] )
Opis:
funkcja zwraca jako index publiczne funkcje, jeżeli nie ma takich zwracane jest -1

Funkcja:

getarg ( argument, [ index_argumentów ] ) 
Opis:
funkcja przywraca argument z listy argumentów, jeżeli argument to tablica musimy sprecyzwować także pierwszy element tablicy.

Funkcja: heapspace

heapspace ( ) 
Opis:
funkcja bezparametrowa zwracająca ilość wolnego miejsca na stosie, przydaje się do znajdywania jakichkolwiek przecieków pamięci stosu.

Funkcja: max

max ( wartosc1, wartosc2 ) 
Opis:
funkcja zwraca parametr który ma większą wartość

Funkcja: min

max ( wartosc1, wartosc2 ) 
Opis:
funkcja zwraca parametr który ma miejszą wartość

Funkcja: numargs

numargs ( ) 
Opis:
funkcja zwraca ilość parametrów przekazanych do aktualnej funkcji

Funkcja: power

power ( wartosc1, wartosc2 ) 
Opis:
funkcja dwuparametrowa zwiększająca wartość 1 do wartości2

Funkcja: setarg

setarg ( argument, index=0, nowa_wartosc_argumentu ) 
Opis:
funkcja ustawia nową wartość dla pdanego argumentu z listy argumentów

Funkcja: strlen

strlen ( const string[] ) 
Opis:
funkcja zwraca długość podanego stringa



Cstrike




Funkcja: cs_get_user_team
cs_get_user_team(id_gracza)
Opis:
funkcja przyjmuje jako parametr id gracza i zwraca jedna z 3 wartości: CS_TEAM_T, CS_TEAM_CT, CS_TEAM_SPECTATOR.

Funkcja: cs_get_hostage_foll

cs_get_hostage_foll ( nr ) 
Opis:
funkcja zwraca index jednostkowy zakładników którzy podążają za anty-terrystą, nr to index zakładników, jeżeli nr = 0 żaden z zakładników nie podąża za nami

Funkcja: cs_get_hostage_id

cs_get_hostage_id ( nr) 
Opis:
funkcja zwraca unkatowy numer idetyfikujący zakładnika

Funkcja: cs_get_no_knives

cs_get_no_knives ( ) 
Opis:
funkcja zwraca 1 kiedy tryb nożowy jest włączony, a 0 jeśli nie jest aktywny


add:
będę się starał w miarę możliwości dodawać więcej opisów funkcji, mam nadzieję że to komuś pomoże, jeżeli uznacie ten post za mało pożyteczny to po prostu usuńcie go :)

~pozdrawiam
  • +
  • -
  • 0

#2 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 30.01.2009 13:57

client_score
Z tego co widze to nie jest funkcja dla modu counter-strikie (wypada to dopowiedziec - dodx).

Po prostu moze podaj z jakiej biblioteki pochodza dane funkce bo i tak trzeba to wiedziec zanim sie uzyje.

PS. z takim podejsciem do pawna wroze ci wiele sukcesow.
  • +
  • -
  • 0

#3 darkman

    Wszechwiedzący

  • Przyjaciel

Reputacja: 87
Zaawansowany

  • Postów:553
  • Lokalizacja:inactive
Offline

Napisano 30.01.2009 14:35

wszystko dobrze, ale takie pojedyńcze tutoriale nikomu nic nie dają. każdy woli zajrzeć do funcwiki, bo jest to tam lepiej opisane. btw. w swoim czasie będzie dokumentacja po polsku, więc jak na razie nie widze innej możliwości jak kosz?
  • +
  • -
  • 0

#4 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 30.01.2009 14:43

Puki nie ma wiki PL, to zignoruj darkman
  • +
  • -
  • 0

#5 darkman

    Wszechwiedzący

  • Przyjaciel

Reputacja: 87
Zaawansowany

  • Postów:553
  • Lokalizacja:inactive
Offline

Napisano 30.01.2009 14:51

na następny raz jak robisz to jakoś podziel tematycznie, bo teraz to takie ni z gruchy ni z pietruchy
  • +
  • -
  • 0

#6 Miczu

    Godlike

  • Przyjaciel

Reputacja: 657
Wszechmogący

  • Postów:2 862
Offline

Napisano 30.01.2009 14:57

Faktycznie, alfabet niewiele pomaga w pawnie ^^
  • +
  • -
  • 0

#7 kaszewczyk

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 13
Początkujący

  • Postów:42
Offline

Napisano 30.01.2009 17:08

Poprawione, czy tak może być? Wcześniej nigdy nie pisałem tutoriali więc trochę wyrozumiałości ;)

a co do wiki to nawet nie ma porządnego tutoriala o pawnie w języku polskim a co dopiero o funkcjach amx mod x ;)

more 2 come...
  • +
  • -
  • 0

#8 JEF

    Nowy

  • Użytkownik

Reputacja: 0
Nowy

  • Postów:7
Offline

Napisano 14.02.2009 10:25

1) abs() to zapewne wartość bezwględna
2) wspominacie o jakimś Wiki z funkcjami. Gdzie link?
3) czemu by nie skopiować wpisów z tego Wiki
3.1) przetłumaczyć na polski przynajmniej kilka najważniejszych funkcji
3.2) funkcja po funkcji i kiedyś bedziemy mieć wszystko
  • +
  • -
  • 0

#9 darkman

    Wszechwiedzący

  • Przyjaciel

Reputacja: 87
Zaawansowany

  • Postów:553
  • Lokalizacja:inactive
Offline

Napisano 14.02.2009 13:21

1) abs() to zapewne wartość bezwględna
2) wspominacie o jakimś Wiki z funkcjami. Gdzie link?
3) czemu by nie skopiować wpisów z tego Wiki
3.1) przetłumaczyć na polski przynajmniej kilka najważniejszych funkcji
3.2) funkcja po funkcji i kiedyś bedziemy mieć wszystko


nasze forum w niedługim okresie czasu wyda funcwiki PL
  • +
  • -
  • 0




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych