Seite 1 von 1

Welche "GlobalInts" belegen die Starterpacks von M

Verfasst: 01.09.2005, 09:32
von Mister L
Hi,

Ich stell die Frage mal hier, da sie sich speziell auf MMM bezieht:
Kann man eigentlich irgendwo in AGS abrufen, welche GI bereits belegt sind?
Wenn man nun eine Episode mit einem der Packs macht, wie soll man dann wissen, welche GIs man noch einsetzen darf?

Bei meiner 1. Episode hab ich einfach bei 499 angefangen und runtergezählt. Geht das auch einfacher?

Verfasst: 01.09.2005, 09:39
von KhrisMUC
Schau ins global script. Einfach in AGS Strg+g drücken. Jetzt suchst Du nach "SetGlobalInt(".
Soweit ich weiß, verwendet das Starterpack nur die GIs bis 20 oder 25.
Fang einfach bei 50 an, dann bist Du auf der sicheren Seite.

Ansonsten musst Du nicht unbedingt die systeminternen global ints verwenden.
Wenn Du z.B. am Anfang eines room scripts vor der ersten Funktion eine Variable definierst, behält diese ihren Wert und kann von allen Funktionen des Raumes abgefragt und verändert werden.
Wenn Du eine Variable brauchst, die überall gilt, definiere sie im am Anfang des global scripts, dann importiere sie im script header.
Nun hast Du wirklich von überall Zugriff darauf.

Verfasst: 01.09.2005, 11:17
von DernetteEddy
Ich bin bei 30 angefangen und habe keine Problem bisher gehabt. Habe aber das ganz alte Starterpack von Lucasfan.

Verfasst: 01.09.2005, 11:58
von Gast
wozu sind im AGS eigentlich global ints?
haben die irgendwie bessere eigenschaften als "normale" variablen? werden die "normalen" variablen in den savegames
etwa nicht mitgespeichert?

Verfasst: 01.09.2005, 12:06
von KhrisMUC
Savegames speichern selbverständlich alle Variablen mit.

GlobalInts sind für Anfänger leichter zu handhaben. Zumindest war das wohl der Grundgedanke?

Verfasst: 01.09.2005, 12:38
von [ZENSIERT]
Wenn du nicht unbedingt alle Variablen im Global Script erstellen, exportieren und wieder auffangen willst, sind GlobalInts wirklich was feines

Verfasst: 01.09.2005, 12:41
von KhrisMUC
Variablen, die man nur in einem Raum braucht, muss man ja eh nicht ins global script schreiben.
Und exportieren muss man seit 2.7 auch nicht mehr. (Zumindest Funktionen nicht, denke, dass das auch auf Variablen zutrifft.)

Verfasst: 01.09.2005, 12:44
von [ZENSIERT]
Aber diese Variablen kannst du eben nur in diesem Raum abfragen ;) Ist dann ziemlich unpraktisch

Und: Doch, Objekte müssen immer wieder exportiert und abgefangen werden... ;)

Verfasst: 01.09.2005, 12:48
von KhrisMUC
Objekte? Was für Objekte?

Edit: Hab gerade gesehen, dass Variablen doch weiterhin exportiert werden müssen. Na gut, trotzdem verwende ich GIs garnicht mehr. Eine Variable "bool schrank_offen;", die true oder false ist, finde ich praktischer, als eine GlobalInt(3), die 0 oder 1 ist.
Damit spart man sich auch die Zuordnungsliste.

Verfasst: 01.09.2005, 12:52
von [ZENSIERT]
Jetzt bin ich aber enttäuscht von dir ;)

Objekte aus Strukturen:

Code: Alles auswählen

struct lalala {
  int lala;
  };
Und die müssen im Global Script immer exportiert und importiert werden:

Code: Alles auswählen

lalala TestObject;
export TestObject;

Verfasst: 01.09.2005, 12:53
von KhrisMUC
Achso. Hab ich mir fast gedacht. Ich hätte sie als Instanzen bezeichnet, deswegen war ich nicht sicher, was Du meinst :)

Verfasst: 01.09.2005, 12:56
von [ZENSIERT]
Sie heißen aber Objekte und sind Instanzen von Klassen oder Strukturen. Ich wusste nur leider nicht, wie man das schreibt... :oops: