Hauptmenü

Neuigkeiten:

Bitte unterstützt uns und bestellt über diese Links bei Amazon  oder HumbleBumble!

mukks Fragethread ^^

Begonnen von mukk, 07. Mai 2007, 18:19:49

Vorheriges Thema - Nächstes Thema

steve-o-mat

Zitat von: Timer in 22. Mai 2007, 18:49:43
Meinst du, wenn man z.B. vor Bernards Haus ist und dann nach links läuft und irgendwo hinkommt?
Genau das mein ich!
Zitat von: Wegbegleiter in 22. Mai 2007, 18:50:59
2 sinnvolle Möglichkeiten:
- Leg einfach am Bildrand eine Area an, mit dem Befehl, daß beim Betreten ebendieser ein Raumwechsel stattfinden soll.
- Alternativ kann sich am Bildrand auch ein Hotspot befinden (z.B. mit dem Namen "Haltestelle") und dem darauf liegenden Befehl, daß die Person zum Bildrand laufen soll und dann ein Raumwechsel stattfindet. Dies hat den Vorteil, daß der Spieler besser erkennt, daß es dort noch weitergeht.
Danke für den Tip!

KhrisMUC

Dafür gibt es eine spezielle Funktion:
any_click_walk_look (x, y, dir, lookat)

Mach einen Hotspot, dann benutzt Du diese Funktion in "any click on hotspot" (statt den üblichen Reaktionen).
Z.B. so:if (any_click_walk_look (10, 145, DIR_LEFT, "Da geht's zur Bushaltestelle.") == 0) Unhandled ();
Nun machst Du noch eine Region(!) (ein kleiner Bereich um die Koordinaten reicht), die den Spieler bei Betreten in den nächsten Raum schickt.

steve-o-mat

Hab's schon hin gekriegt... hab ne weile probiert und dann mit nem HotSpot und folgendem Script bei Interaction -> Any click on hotspot -> RunScript   hat es dann geklappt:

if (any_click_move (15, 125, DIR_LEFT))
player.ChangeRoom (17, 600, 135);

KhrisMUC

1. Die von mir genannte Funktion wurde extra für diesen Zweck geschrieben, also warum sie nicht benutzen?

2. Mit der Funktion kann man den Hotspot automatisch anschauen und erhält die bei look_at angegebene Beschreibung. Praktischer geht's wohl kaum.

(Wir sind hier doch im Newbie-Forum, oder? Warum lässt Du Dir dann nix sagen? Ist nicht persönlich gemeint, aber ich verstehs nicht ganz.)

Kaktus

KhrisMUC, ich will ein Kind von dir!

Timer

Ohje, ohje... Was hat denn das mal wieder mit dem Thema zu tun? Kaktus, du hättest einen neuen Thread eröffnen müssen! ;)

KhrisMUC

Meine Mumu is in der Werkstatt, sorry ;)

steve-o-mat

Sorry KhrisMUC!
Das sollte jetzt nicht irgendwie abwertend gemeint sein, ich hab ewig versucht das hinzukriegen und war froh, als es endlich geklappt hat. Da ich auch keine richtige Ahnung habe, habe ich die Vorteile deiner Herangehensweise nicht gleich in vollem Maße erfasst, sondern gedacht, es käme auf dasselbe hinaus. Natürlich werde ich mich sofort dran machen, deinen Ansatz auszuprobieren!!!  ;)   Vielen Dank!!!   

KhrisMUC

Jo, kein Thema :)

Kuck auch mal hier:
http://www.adventure-treff.de/forum/viewtopic.php?t=7529

Da werden die MMM-Funktionen von den Autoren selbst erklärt.

steve-o-mat

Ich nochmal. Danke für den Link!!!  ;D
Ich dachte mir vorhin nur, dass ich mir mit meiner Methode etwas Arbeit erspare (da weniger Script) und wenn ich den Zeiger über den HotSpot (den ich "m Tollhaus" genannt habe) ziehe, dann steht da ja direkt "Gehe zum Tollhaus". Das war für meine Ansprüche vorhin eigentlich ausreichend...  ;)




mukk

So nu ich wieder ^^

also kann ich n object gleichzeitig bewegen und animieren?
ich habs jetz so versucht:

            object[3].SetView(72);
       object[3].Animate(0,5,eRepeat, eNoBlock);
       object[3].Move(1, 155, 3, eBlock);
       player.ChangeRoom(12);

aber damit erscheint nur das ausgangsbild und die szene wechselt in raum 12
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

KhrisMUC

Der Code sieht völlig in Ordnung aus.
Mir fallen momentan nur zwei Möglichkeiten ein, entweder hast Du das falsche Objekt erwischt oder es befindet sich bereits an den Koordinaten 1, 155.

Gib sicherheitshalber den Objekten Scriptnamen und benutz oBall.Move(), etc. (geht aber nur im room script).

mukk

nee, leider stimmt alles...also es kann nich sein, das durch die animation das eigtl. object ausgeblendet wird und sozusagen unsichtbar zur koord. läuft, während die animation stehen bleibt?
das wär jetz irgendwie meine einzige erklärung...
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

KhrisMUC

Ne, auf keinen Fall, der Animate-Befehl bewirkt in diesem Fall lediglich, dass AGS intern beim Zeichnen des Objekts die die Sprites durchwechselt, die in der View eingetragen sind.

Andere Frage: wo hast Du dieses Skript verwendet?

mukk

#44
ne nacht drüber schlafen bringts... da hat n eAnywhere gefehlt...die grafik war zwar auf der walkable, aber nicht die koordinate *peinlich*
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.