offen/geschlossen abfragen

Fragen zu "Adventure Game Studio"? Hier rein!
Antworten
Boeser Watz
Frischling
Frischling
Beiträge: 4
Registriert: 17.09.2003, 12:23

offen/geschlossen abfragen

Beitrag von Boeser Watz »

Moin!
Ich möchte eine Abfrage schalten, die angibt, ob ein Schrank, eine Kiste oder sonswas offen bzw. geschlossen ist, damit man bereits geschlossene Gegenstände nicht wieder schliessen kann, sondern eben "Das ist schon zu!" als Antwort bekommt. Mit <öffne> natürlich entsprechend umgekehrt. Ich möchte aber keine Globalen Variablen dafür verwenden. Gibt es da eine andere Möglichkeit?
LucasFan
Tastatursteuerer
Tastatursteuerer
Beiträge: 535
Registriert: 02.03.2002, 14:40
Wohnort: Ronville

Re:offen/geschlossen abfragen

Beitrag von LucasFan »

Ich möchte aber keine Globalen Variablen dafür verwenden.
Hehe. GlobalInts sind nun mal dazu da, um Abfragen zu basteln. Sind es religiöse Gründe weshalb du sie nicht benutzen möchtest? ;)
Boeser Watz
Frischling
Frischling
Beiträge: 4
Registriert: 17.09.2003, 12:23

Re:offen/geschlossen abfragen

Beitrag von Boeser Watz »

Nein, natürlich nix religiöses. Hmm, gibt es eine Religion die GlobaInits verbietet?
Ich möchte einfach keine GlobalInits verwenden, weil Ihre Anzahl meines Wissens begrenzt ist, und wenn ich für jeden Hotspot bzw. Gegenstand, den ich öffnen oder irgenwie anders manipulieren kann, Hotspots verwende, gehen die schnell zu Ende. Türen, Schränke, Kisten, Flaschen usw. Dazu kommt, dass man auch für bestimmte Ereignisse, die erst eintreten müssen, bevor etwas bestimmtes passieren soll, GlobalInits verwendet, oder? Kann man den Zustand eines Schranks (offen oder zu) nicht über die Darstellung abfragen? Wird die offene oder die geschlossene Tür dargestellt.. Ich mein ja nur. Ansonsten muss ich es wohl über GlobalInits versuchen. Vielleicht reichen die 500 ja doch.
LucasFan
Tastatursteuerer
Tastatursteuerer
Beiträge: 535
Registriert: 02.03.2002, 14:40
Wohnort: Ronville

Re:offen/geschlossen abfragen

Beitrag von LucasFan »

Kann man den Zustand eines Schranks (offen oder zu) nicht über die Darstellung abfragen?
Klar, aber dazu bräuchte man ja auch keine Abfrage. Der geschlossene Schrank bekommt einen Hotspot und wenn man diesen Hotspot "öffnet", wird ein Object mit einem Bild eines offenen Schrankes aufgerufen. Da der Hotspot durch das neue Objekt verdeckt wird, könntest du ihn nicht nochmal öffnen. Es gibt übrigens auch Befehle wie IsObjectOn, wenn du z.B. überprüfen willst, ob ein bestimmtes Objekt da ist.
Vielleicht reichen die 500 ja doch.
Na das wird ja ein Spiel… :D
Boeser Watz
Frischling
Frischling
Beiträge: 4
Registriert: 17.09.2003, 12:23

Re:offen/geschlossen abfragen

Beitrag von Boeser Watz »

An DIE Idee habe ich noch garnicht gedacht. Na klar. Der offene Schrank verdeckt den geschlossenen, und wenn der wieder geschlossen wird, wird das Objekt ausgeblendet. Genial einfach, einfach genial *freu* Genauso werd ich's machen. Vielen Dank. Was würde ich nur ohne Euch und dieses Forum machen...
a-v-o
Süßwasserpirat
Süßwasserpirat
Beiträge: 258
Registriert: 22.09.2002, 21:28
Kontaktdaten:

Re:offen/geschlossen abfragen

Beitrag von a-v-o »

Wenn ich sowieso ein Objekt für bspw. die Schranktüre verwende, dann tausche ich die Grafiken einfach mit SetObjectGraphic aus. Mit GetObjectGraphic läßt sich abfragen, welche Grafik aktuell angezeigt wird.

Dadurch spare ich mir den Hotspot.
Boeser Watz
Frischling
Frischling
Beiträge: 4
Registriert: 17.09.2003, 12:23

Re:offen/geschlossen abfragen

Beitrag von Boeser Watz »

Ja nee, is klar. Geht natürlich auch. Und wie kann ich festlegen, welches Sprite vor welchen dargestellt wird? Schließlich soll ja in dem Schrank auch etwa stehen - ein weiteres Sprite nämlich. Irgendwie wird mir immer wieder der offene Schrank vor seinen Inhalt geblendet.
LucasFan
Tastatursteuerer
Tastatursteuerer
Beiträge: 535
Registriert: 02.03.2002, 14:40
Wohnort: Ronville

Re:offen/geschlossen abfragen

Beitrag von LucasFan »

Dadurch spare ich mir den Hotspot.
Apropos Sparen. Ab AGS 2.57 wird das Object-Limit auf 20 hochgesetzt. Na wenn das kein Grund zum Feiern ist…

*Champagner köpf und Jubelgesang anstimm* :D
Apo
Verpackungs-Wegwerfer
Verpackungs-Wegwerfer
Beiträge: 85
Registriert: 07.09.2003, 22:39
Wohnort: Magdeburg
Kontaktdaten:

Re:offen/geschlossen abfragen

Beitrag von Apo »

au ja das is wirklich fein!
*mitanstoss*
vor allem in meiner Biblothek könnte ich mehr hotspots und Objects gebrauchen!
*freu*
a-v-o
Süßwasserpirat
Süßwasserpirat
Beiträge: 258
Registriert: 22.09.2002, 21:28
Kontaktdaten:

Re:offen/geschlossen abfragen

Beitrag von a-v-o »

[quote author=Boeser Watz link=board=7;threadid=1829;start=0#msg23604 date=1066071378]Und wie kann ich festlegen, welches Sprite vor welchen dargestellt wird? [/quote]
Dazu verwendest du die Baseline: Je weiter unten die Baseline ist, desto weiter vorne ist das Objekt (oder der Character). Ist keine Baseline eingegeben, dann befindet sie sich (unsichtbar) automatisch am unteren Ende des Objekts / Characters.

In deinem Fall würde ich den offenen Schrank in den Hintergrund zeichnen, den Inhalt als Objekt darauf legen und darüber das Objekt mit Bild des geschlossenen Schranks. Dieses zweite Objekt geht weiter nach unten, als das Inhalt-Objekt, darum wird es über dem Inhalt gemalt. Du brauchst also nicht extra eine Baseline festlegen.
Mit ObjectOn/Off kannst du den Schrank bequem öffnen und schließen. Entsprechend wird der Inhalt angezeigt oder nicht.
zak
Frischling
Frischling
Beiträge: 3
Registriert: 15.01.2004, 19:12

Beitrag von zak »

Angenommen der Schrank hat eine Tür, die nach rechts aufschwingt. Das würde bedeuten, dass die Tür also rechts im offenen Zustand über den Schrank herausragt. Wenn ich nun das Bild eines geschlossenen Schrankes drüberlege, muss dieses ja nach rechts neben dem schrank noch z.B. ein Stück Wand haben, da man sonst die offene Tür sehen würde.
Wäre ja alles kein Problem, aber bei mir zeigt er dann mit dem Mauszeiger immer schon rechts neben dem Schrank, obwohl die Maus den Schrank net berührt "Schrank" an.. weil das Sprite grösser ist als der eigentliche Schrank.
Kann man das irgendwie umgehen?

Ich hoffe ihr versteht, was ich meine.. :))
Gruss
Zak
a-v-o
Süßwasserpirat
Süßwasserpirat
Beiträge: 258
Registriert: 22.09.2002, 21:28
Kontaktdaten:

Beitrag von a-v-o »

Zeichne doch in den Hintergrund den geschlossenen Schrank und lege eine Object mit offenem Schrank darüber, dann stimmt es doch wieder.
Gast

Beitrag von Gast »

hmm ja.. von der theorie her schon.. aber erinnere dich z.B. an die Spüle in Zak McKracken. Das war ein Schrank, in dem das abflussrohr war. das rohr (hotspot) und der Schrank-geschlossen (auch hotspot) beides zusammen würde bedeuten, dass man, an der Stelle wo das Rohr sich hinter dem Schrank befindet, den schrank nicht öffnen kann, weil dort der Schrank-Hotspot unterbrochen ist.
Oder gibts dafür auch ne einfache möglichkeit ? :)
LucasFan
Tastatursteuerer
Tastatursteuerer
Beiträge: 535
Registriert: 02.03.2002, 14:40
Wohnort: Ronville

Beitrag von LucasFan »

Das Rohr ist ein Hotspot, der geschlossene Schrank ein Objekt und wenn der Schrank offen sein soll, bekommt dieses Objekt halt ein anderes Bild zugewiesen.
a-v-o
Süßwasserpirat
Süßwasserpirat
Beiträge: 258
Registriert: 22.09.2002, 21:28
Kontaktdaten:

Beitrag von a-v-o »

Vielleicht ist es auch eine Möglichkeit, wenn du mehrere Objekte übereinander legst:

Der geschlossene Schrank ist der Hintergrund.
Darüber wird der geöffnete Schrank eingeblendet.
Darüber wird das Rohr angezeigt.

Um zu entscheiden, was wohl die einfachste Lösung wäre,kommt es darauf an, was für einen Effekt du genau erreichen willst
Antworten