zwei neue Fragen...

Fragen zu "Adventure Game Studio"? Hier rein!
Antworten
Neeree

zwei neue Fragen...

Beitrag von Neeree »

Wie kann man eine Objekt Animation stoppen?

Ich möchte, dass per "Interact" eine Lavalampe eingeschalten wird (das klappt) und per zweites "Interact" wieder ausgeschalten. (Hab ich natürlich mit einer Flag Variable gemacht, die überprüft ob die Lampe beim anklicken an oder aus ist)
Aber ich finde keinen Befehl, mit dem man im Prorammtext die Animation ausschalten kann.


Mein Charakter soll sich mit "SetCharacterView" auf einen Stuhl setzn und zwar solange, bis man in den Raum klickt. Dann soll der alte View wieder auferufen werden. Ich bin soweit:

// script for object8: Interact object
MoveCharacterBlocking(EGO,162,191,1);
SetCharacterView(EGO,22);
AnimateCharacter(EGO,0,0,0);

weiß aber nicht, wie ich ReleaseCharacterView einbinden soll oder ob ich es überhaupt brauch.

Was kann ich da tun?
strazer

Beitrag von strazer »

1.) - In AGS v2.7 ist das direkt möglich mit Object.StopAnimating(), in AGS v2.62 und vorher musst du das Objekt mit SetObjectFrame oder SetObjectGraphic (bei letzterem bin ich mir nicht sicher) wieder auf ein Einzelbild schalten.

- Oder du kannst statt dem nicht-animierten Objekt einen Hotspot benutzen und dann das animierte Objekt ein- und ausschalten.

2.) In Room scripts kannst du auch eine on_mouse_click Funktion reinschreiben, diese wird dann vor der globalen Funktion ausgeführt.
Wenn du es also nur in dem einen Raum brauchst, z.B. folgendes in das Room script schreiben (Room Settings -> "{}"-Knopf):

Code: Alles auswählen

function on_mouse_click(int button) {

  if (GetCursorMode() == MODE_WALK) { // wenn im Walk-Modus
    ReleaseCharacterView(GetPlayerCharacter()); // stoppe Spieleranimation und zurück zum normalen View
  }

  // globale on_mouse_click wird anschliessend ausgeführt (-> Spieler läuft zu Mausposition)

}
strazer

Beitrag von strazer »

P.S.: Statt dem Hotspot kannst du natürlich auch einfach ein anderes Objekt mit derselben Grafik nehmen.
Neeree

Beitrag von Neeree »

danke hat eklappt :)
Antworten