←  Pluginy

AMXX.pl: Support AMX Mod X i SourceMod

»

Tablice - pytanie

Zablokowany

  • +
  • -
G[o]Q - zdjęcie G[o]Q 16.12.2009

Mam maly problem typu nie wiem jak to zrobic ...
wiec tak mam jakas tablice np

new race_heal[9] = { 100,105,140,130,100,90,110,170,120 }


przyklad tablicy z diablo. Powiedzcie mi czy jesli chce sie odwolac do np elementu 105 to mam wpisac race_heal[2] ?? aha i jakby ktos mogl mniej wiecej wytlumaczyc mi jak dodwac dane do pustej tablicy

np
new tablica[4]

czy wystarczy

tablica[1] = 4

No i najwazniejsze czy w tablicy mozna przechowywac dane roznych typow?? bo nie wiem jak to jest w cpp

czyli czy moge zapisac takie cos

tablica[1] = 5
tablica[2] = "string"
Odpowiedz

  • +
  • -
mgr inż. Pavulon - zdjęcie mgr inż. Pavulon 16.12.2009

elementu 105 to mam wpisac race_heal[2]

race_heal[1] bo numerowane są od 0

wystarczy
Kod:
tablica[1] = 4

Ale nie możesz powiększać tablicy w ten sposób. Wcześniej musisz mieć zadeklarowany jej rozmiar i jego się trzymać.

czy w tablicy mozna przechowywac dane roznych typow??

NIE. Nie w jednej.
Odpowiedz

  • +
  • -
Miczu - zdjęcie Miczu 16.12.2009

w klamrze kwadratowej masz numer elementu tablicy (przy deklaracji liczba elementow), a w nawiasie {} masz wypisane elementy, w ilosci elementow tablicy...

Jak chcesz sie dostac do pierwszego (zerowgo) dajesz [0].

Jako ze to masz z diablo, to uzywasz to razem z klasa postaci race_heal[player_class[id]] (lub napisane bez literowki :F), co daje nam wartosc podstawawa hp danej klasy, klasy ktora ma obecnie gracz o podanym id.
Odpowiedz

  • +
  • -
R3X - zdjęcie R3X 16.12.2009

tablica w pawnie (nie tylko) to zestaw zmiennych tego samego typu ułożonych w pamięci obok siebie (tu nie ma to takiego znaczenia jak w c/c++)

indeks elementu tablicy to 0 dla pierwszego elementu, 1 dla drugiego itd

stąd
(race_heal[1] == 105) //true

bez podania typu dane w tablicy mają postać liczbową

new gTab[10]; // liczby i znaki


tablica stringów to tablica 2-wymiarowa

new gszTab[10][32];

czyli 10 stringów po max 31 znaków




możesz wykorzystać dowolny indeks stringa jako pojedynczą liczbę:

gszTab[0] = "test";
gszTab[1][0] = 1;

tak w tablicy stringów można przechowywać liczby
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 16.12.2009

aha czyli jesli wpisze tak jak napisales miczu to to sprawdzi jakiej gosc klasy uzywa pobierze wartosc dla tej klasy a potem tam gdzies dalej ustawi mu tyle hp jesli ma 0 sily?
[quote]
Ale nie możesz powiększać tablicy w ten sposób. Wcześniej musisz mieć zadeklarowany jej rozmiar i jego się trzymać. [/quote]


[quote]

new tablica[4]
tablica[1] = 4
[/quote]


przeciez mialem zadeklarowany rozmiar 4 i pytanie czy moge elementowi nr 1 (drugiemu) przypisac 4 i czy to bedzie poprawne[/quote]
Odpowiedz

  • +
  • -
Knopers - zdjęcie Knopers 16.12.2009

new gszTab[10][32];

Chciałem tylko zaznaczyć że takie coś nazywamy Macierzą , może ktoś nie wie i mu się przyda :D
Odpowiedz

  • +
  • -
G[o]Q - zdjęcie G[o]Q 16.12.2009

dzięki
Odpowiedz
Zablokowany