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.
|
Pytania o enum oraz tablice.
#1
Napisano 19.09.2012 06:16
#2
Napisano 19.09.2012 07:35
Najprostsze zastosowanie:
enum {
CYFRA0, //0
CYFRA1, //1
CYFRA2, //2
CYFRA3 //3
}
client_print(id,print_chat,"Twoja cyfra to: %d",CYFRA2);
W tym przykładzie zostanie wypisana cyfra 2.
W takim przykładzie każdy ciąg znaków ma kolejną liczbę, CYFRA0 - 0, CYFRA1 - 1, CYFRA3 - 3.
Oczywiście enuma można rozszerzyć aby np. liczenie będzie się zaczynało od innej liczby, lub liczba będzie się zwiększała np. o 3.
Przykład:
enum (+=3) {
CYFRA1, //3
CYFRA2, //6
CYFRA3 //9
}
W tym przypadku ciąg CYFRA1 jest jako liczba 3, kolejne ciągi mają wartości zwiększające się o 3.
Można także używać niestandardowych enumów, czyli dla każdego ciągu znaków przypisać dowolną liczbę, niezależną od poprzedniej. Przykład:
enum {
CYFRA1 = 4,
CYFRA2 = 7,
CYFRA3 = 22
}
Tablic na razie ci nie opiszę bo jestem w szkole i średnio mi się chce
#3
Napisano 19.09.2012 15:01
#4
Napisano 19.09.2012 16:33
Czyli zamienisz w tym wypadku mało mówiące Ci numery kolejnych klas na ich "nazwę".
DarkGL to mój autorytet.
skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować
#5
Napisano 19.09.2012 17:57
A te tablice opiszę ci jutro jeśli nie zapomnę
#6
Napisano 19.09.2012 19:37
new zmienna1, zmienna2, zmienna3, zmienna4, zmienna5; //itd.
można zebrać te zmienne do "kupy" (wygodniejsze )
new tablica[33] //max 32 graczy +1(dla wygody ponieważ tablica indeksowana jest od 0, czyli indeksy tej tablicy
//to 0,1,2,3,4,...,32 i na tym koniec, czyli razem 33 indeksy)
//i możemy sobie przypisać dane
tablica[4] = 5
tablica[id] = 99 //pod id kryje się index gracza, czyli od 1 do 32 i 0 jako serwer
Oczywiście można też zrobić tablice wielowymiarowe, lecz obrazowo Ci tego nie przedstawie (coś ala arkusz w Excel'u, czyli masz wymiar x i y, np. wykres drogi od czasu z fizyki )[poszukaj sobie jakiś poradnik o tablicach wielowymiarowych dla c++, tam powinny być obrazki dla lepszego ogaru]
I tu przykład, aby nie robić kilku osobnych zmiennych tego samego typu dla jednego gracza można utworzyć tablicę dwu wymiarową
new tablica[33][4] //chcemy aby dla każdego gracza zapisywało 4 różne wartości
//przypisanie wartości (przykład)
tablica[id][0] = 2
tablica[id][1] = 22
tablica[id][2] = 222
tablica[id][3] = 2222
Oczywiście można połączyć ze sobą enum i tablice (po prostu zamienisz nic nie mówiące Ci liczby na nazwy które skojarzysz)
enum {none=0, Mag, Mnich, Paladyn}
new exp_kazdej_klasy[33][4] // W tutorialu o strukturach jest lepiej opisane połączenie enum+tablic
//(daję tylko najprostszy przykład)
exp_kazdej_klasy[id][none] = 0
exp_kazdej_klasy[id][Mag] = 5424
exp_kazdej_klasy[id][Mnich] = 1564
exp_kazdej_klasy[id][Paladyn] = 348
Użytkownik K!113r edytował ten post 19.09.2012 19:39
DarkGL to mój autorytet.
skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować skomplikować
#7 Gość_21977_*
Napisano 16.10.2012 17:40
Te dane, jak również wartości poszczególnych wartości, mogą być modyfikowane.
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych