Mehrere Namen für einen Hotspot

Fragen zu "Adventure Game Studio"? Hier rein!
Antworten
Benutzeravatar
Daniel_2003
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 132
Registriert: 22.01.2003, 18:22
Wohnort: Hornburg, Niedersachsen

Mehrere Namen für einen Hotspot

Beitrag von Daniel_2003 »

Ich habe jetz in einem Spiel einen Raum, wo es ein bischen dunkel ist und man nich alle sachen erkennen kann, und nun habe ich einen hotspot, wo man absolut nich weiss was es sein könnte, wenn man mit der maus gegen kommt soll beim ersten mal z.b. "Gehe zu Kerze?" beim zweiten mal "Gehe zu Stift?" und beim dritten mal noch was andres kommen. is sowas in ags möglich?
Sieht aus wie eine Warnung:


"Sie reißen dir die Knochen aus...
...und bauen einen Thron daraus.
Ihr Höllenfürst sitzt dann bei Festen...
auf deinen kläglich' Überresten.
Dieser Schlüssel öffnet das Tor...
zur Hölle, Reisender - sieh dich vor!"
Creedy
Süßwasserpirat
Süßwasserpirat
Beiträge: 443
Registriert: 22.09.2002, 12:53

Re:Mehrere Namen für einen Hotspot

Beitrag von Creedy »

Prinzipiell würde das durchaus mit einem Script zu realisieren sein, aber vergiss es: Da braucht man Variablen ;)

Ich schau mir das mal an, brauche ich wohl in meinem Spiel auch..
Benutzeravatar
Daniel_2003
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 132
Registriert: 22.01.2003, 18:22
Wohnort: Hornburg, Niedersachsen

Re:Mehrere Namen für einen Hotspot

Beitrag von Daniel_2003 »

ein weiterer beweis: ohne variabeln kann man garkein gutes adventure machen, also muss ich mal langsam anfangen wegen dem projekt zu lernen ;D ;D ;D
Sieht aus wie eine Warnung:


"Sie reißen dir die Knochen aus...
...und bauen einen Thron daraus.
Ihr Höllenfürst sitzt dann bei Festen...
auf deinen kläglich' Überresten.
Dieser Schlüssel öffnet das Tor...
zur Hölle, Reisender - sieh dich vor!"
Zurbuk
Logik-Lord
Logik-Lord
Beiträge: 1332
Registriert: 20.04.2002, 15:15
Wohnort: Berlin
Kontaktdaten:

Re:Mehrere Namen für einen Hotspot

Beitrag von Zurbuk »

@ daniel: Es wäre doch eine wesentlich einfachere Lösung, nur "Gehe zu ???" zu verwenden, wenn der Spieler sowieso nicht weiß, was es ist.
http://www.no-Bukz.de - Real Flash-Adventures
http://www.moon-mistake.de - A New Adventure!
http://www.zurbuk.de - Zurbuk is here!
Benutzeravatar
Daniel_2003
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 132
Registriert: 22.01.2003, 18:22
Wohnort: Hornburg, Niedersachsen

Re:Mehrere Namen für einen Hotspot

Beitrag von Daniel_2003 »

;D ;D ;D das wäre a billig und b mir zu einfach ;D ;D ;D


MFG Daniel
Sieht aus wie eine Warnung:


"Sie reißen dir die Knochen aus...
...und bauen einen Thron daraus.
Ihr Höllenfürst sitzt dann bei Festen...
auf deinen kläglich' Überresten.
Dieser Schlüssel öffnet das Tor...
zur Hölle, Reisender - sieh dich vor!"
theDon
Rätselmeister
Rätselmeister
Beiträge: 2219
Registriert: 11.06.2002, 18:22
Wohnort: gone (forever)
Kontaktdaten:

Re:Mehrere Namen für einen Hotspot

Beitrag von theDon »

"Gehe zu Variable"
ohne Worte.
Wer Ironie oder beleidigende Inhalte in diesem Beitrag findet, darf sie behalten.

http://www.thwboard.de | http://oph-qfb.sourceforge.net
Creedy
Süßwasserpirat
Süßwasserpirat
Beiträge: 443
Registriert: 22.09.2002, 12:53

Re:Mehrere Namen für einen Hotspot

Beitrag von Creedy »

*ROFL*
das wäre a billig und b mir zu einfach
Ich glaube kaum, dass dir das zu "einfach" wäre...

PS: Bitte las doch die übertriebene Verwendung der Tags. Ist zwar toll, dass du wenigstens das kannst, aber das musste hier keinem beweisen.

Um Variablen wirst aber nun mal nicht herumkommen, es sei denn du machst für jedes Objekt einmal einen HotSpot mit "?" und wenn Licht an ist, setzt du überall ein Objekt mit der richtigen Bezeichnung drüber.
Das wäre eine primitive Lösung...aber leider schon zu schwer für dich ::)
[ZENSIERT]

Beitrag von [ZENSIERT] »

Wie meint TheDon das? Das könnte mir auch noch sehr hilfreich sein. Ich weiß, wie man beim Sprechen Variablen einfügt (Display("Ich habe %d Punkte!", game.score);) aber wie macht man das bei Hotspots?
a-v-o
Süßwasserpirat
Süßwasserpirat
Beiträge: 258
Registriert: 22.09.2002, 21:28
Kontaktdaten:

Beitrag von a-v-o »

Also, die ursprüngliche Aufgabenstellung lässt sich so realisieren:


// room script file

int zaehler = 0;
int overhotspot = 0;

function room_a() {
// script for room: Player enters screen (before fadein)
overhotspot = GetHotspotAt (mouse.x, mouse.y) == 2;
}

function room_b() {
// script for room: Repeatedly execute
int oh = GetHotspotAt (mouse.x, mouse.y) == 2;
if (overhotspot != oh)
{
overhotspot = oh;
if (overhotspot)
{
zaehler++;
string itemname;
if (zaehler == 1) StrCopy (itemname, "Kerze");
else if (zaehler == 2) StrCopy (itemname, "Stift");
else StrCopy (itemname, "???");
StrFormat (itemname, "Gehe zu %s", itemname);
SetLabelText (0, 0, itemname);
}
}
}

Dadurch wird auf einem GUI-Label beim ersten Zeigen auf den Hotspot "Gehe zu Kerze", beim 2. Mal "Gehe zu Stift" und danach immer "Gehe zu ???" angezeigt.

Vielleicht kannst du's ja brauchen.
Benutzeravatar
Black Knight
Hobby-Archäologe
Hobby-Archäologe
Beiträge: 237
Registriert: 04.03.2004, 13:04
Wohnort: Görlitz

Beitrag von Black Knight »

Mich begeistert "a-v-o" immer wieder. Keiner weiß so richtig was los geht und wie man das realisieren soll/kann und dann kommt "a-v-o" dahergelaufen. Er weiß die Antwort. Einfach nur RESPEKT an "a-v-o" :D !

Wollt ich einfach mal loswerden.
Vision
Frischling
Frischling
Beiträge: 4
Registriert: 18.06.2004, 13:48

Beitrag von Vision »

Kann man es den nicht so machen, dass beim erstem Mouseover der Hotspot "Kerze?" aktiviert ist. Gleichzeitig deaktiviert man Ihn beim Mouseover und aktiviert den Hotspot "Stift?" etc.

Sollte so auch funktionieren, oder?
[ZENSIERT]

Beitrag von [ZENSIERT] »

Auch eine andere Idee: Du fügst statt Hotspots Objekte ein. Beim Betrachten lautet das Script so:

Code: Alles auswählen

if(GetGlobalInt(30) == 0) {
  Display("Das ist eine Kerze");
  ObjectOff(0); // 0 Heißt ???
  ObjectOn(1); // und 1 heißt dann Kerze?
  SetGlobalInt(30, 1); // Und jetzt weiß AGS: "Aha, zum ersten Mal geklickt!
  return; // Damit es auch schön aufhört
  }
else if(GetGlobalInt(30) == 1) {
  Display("Oder ist das ein Stift?");
  ObjectOff(1); // Die Kerze?
  ObjectOn(2); // Der Stift
  SetGlobalInt(30, 2);
  }
Hoffe, du kannst was damit anfangen
[ZENSIERT]

Beitrag von [ZENSIERT] »

Ich versuch mal, ein Template zu bauen...
[ZENSIERT]

Beitrag von [ZENSIERT] »

Geschafft. Kannst es dir hier runterladen! Auf die Art müsste es gehen
Antworten