Den Game Maker benutzen
Raster
Ein Raster ist ein einfaches zweidimensionales Array. Ein Raster hat eine Breite und eine Höhe. Die Struktur erlaubt es Zellen im Raster mit Werten zu befüllen und diese wieder auszulesen, indem deren Index angegeben wird (Welcher bei x und y bei 0 anfängt. Du kannst aber auch den Wert von Gebieten angeben, Werte hinzufügen und die Summe, das Maximum, das Minimun und den Durchschnitt eines Gebietes auslesen. Die Struktur ist nützlich um beispielsweise ein Spielfeld darzustellen. Auch wenn alle Funktionen auch über ein zweidimensionales Array gelöst werden können ist es dennoch besser das Raster zu nehmen, da es sehr viel schneller ist. Die folgenden Funktionen existieren:
ds_grid_create(w, h) Erstellt ein neues Raster mit der angegebenen Höhe und Breite. Die Funktion gibt eine ID als Zahl zurück, die in allen anderen Funktionen angegeben werden muss.
ds_grid_destroy(id) Vernichtet das Raster mit der angegebenen id; dabei wird der belegte Speicher freigegeben. Vergiss nicht diese Funktion aufzurufen, wenn die Struktur nicht mehr brauchst.
ds_grid_resize(id, w, h) Ändert die Rastergröße auf w und h. Bestehende Zelle behalten ihren Wert.
ds_grid_width(id) Gibt die Breite des angegebenen Rasters zurück.
ds_grid_height(id) Die die Höhe des angegegebenen Rasters zurück.
ds_grid_clear(id, val) Leert das angegebene Raster mit dem Wert (kann eine Zahl oder ein String sein).
ds_grid_set(id, x, y, val) Setzt den wert der angegebenen Zelle (kann eine Zahl oder ein String sein)
ds_grid_add(id, x, y, val) Fügt den angegebenen Wert dem Raster hinzu.
ds_grid_multiply(id, x, y, val) Multipliziert den Wert der angegebenen Zelle mit Val. Nur für Zahlen gültig.
ds_grid_set_region(id, x1, y1, x2, y2, val) Setzt alle Zellen des angegebenen Bereiches auf einen Wert (kann eine Zahl oder ein String sein).
ds_grid_add_region(id, x1, y1, x2, y2, val) Fügt den angegebenen Wert in den Bereich des Rasters hinzu.
ds_grid_multiply_region(id, x1, y1, x2, y2, val) Multipliziert die Werte der angegebenen Zellen mit val. Nur für Zahlen gültig.
ds_grid_set_disk(id, xm, ym, r, val) Setzt die Werte aller Zellen im Kreis mit Mittelpunkt (xm,ym) und Radius r.
ds_grid_add_disk(id, xm, ym, r, val) Fügt val allen Werten des Kreises mit Mittelpunk (xm,ym) und Radius r hinzu.
ds_grid_multiply_disk(id, xm, ym, r, val) Multipliziert die Werte des Kreises mit Mittelpunkt (xm,ym) und Radius r mit val.
ds_grid_get(id, x, y) Gibt den Wert der angegebenen Zelle im Raster id zurück.
ds_grid_get_sum(id, x1, y1, x2, y2) Gibt die Summe der Werte in der angegeben Region zurück. Funktioniert nur mit Zahlen.
ds_grid_get_max(id, x1, y1, x2, y2) Gibt den Maximalwert der Zellen in der angegeben Region zurück. Funktioniert nur mit Zahlen.
ds_grid_get_min(id, x1, y1, x2, y2) Gibt den Minimalwert der Zellen in der angegeben Region zurück. Funktioniert nur mit Zahlen.
ds_grid_get_mean(id, x1, y1, x2, y2) Gibt den Durschnittswert der Zellen in der angegeben Region zurück. Funktioniert nur mit Zahlen.
ds_grid_get_disk_sum(id, xm, ym, r) Gibt die Summe der Werte der Zellen im Kreis zurück.
ds_grid_get_disk_min(id, xm, ym, r) Gibt den Minimalwert der Zellen im Kreis zurück.
ds_grid_get_disk_max(id, xm, ym, r) Gibt den Maximalwert der Zellen im Kreis zurück.
ds_grid_get_disk_mean(id, xm, ym, r) Gibt den Durchschnittswert der Zellen im Kreis zurück.
ds_grid_value_exists(id, x1, y1, x2, y2, val) Gibt an ob der Wert in der Region existiert.
ds_grid_value_x(id, x1, y1, x2, y2, val) Gibt die x-Koordinate der Zelle an, in der der Wert existiert.
ds_grid_value_y(id, x1, y1, x2, y2, val) Gibt die y-Koordinate der Zelle an, in der der Wert existiert.
ds_grid_value_disk_exists(id, xm, ym, r, val) Gibt an ob der Wert im Kreis existiert.
ds_grid_value_disk_x(id, xm, ym, r, val) Gibt die x-Koordinate der Zelle an, in der der Wert existiert.
ds_grid_value_disk_y(id, xm, ym, r, val) Gibt die y-Koordinate der Zelle an, in der der Wert existiert.
Alternative Versionen
Du kannst dieses Handbuch auch auf einer langen Seite (± 1.5 mb) ansehen.
Auch verfügbar in:
Download helpfile
Auch verfügbar in:
Download helpfile