Maniac Mansion Mania Forum
MMM-Werkzeugkiste => Technik => Newbies => Thema gestartet von: Indy am 12. November 2007, 18:14:00
-
Wie kann man einen nicht-Spieler-Charakter einen Raum betreten lassen und wie zeigt man einen Raum, in dem sich der Spieler-Charakter nicht befindet? ???
Wäre nett, wenn jemand hilft.
-
Du könnntest den Spieler kurzzeitig ausblenden
player.on=false;
oder player.Transparency=100;
oder kurz diesen Charakter zum Spielercharakter machen.
-
Und wie mache ich kurzzeitig einen anderen Charakter zum Spieler-Charakter?
-
cAndererSpieler.SetAsPlayer ();
(Glaube ich, so aus dem Gedächtnis)
-
Ich glaub
SetPlayerCharakter (...);
geht auch!
-
Aber:
cAndererCharakter.SetAsPlayer ()
ist neuer Code!
Nachtrag: Noch besser ist natürlich: SetPlayer (...). Muss nur noch importiert werden. In den Script Header schreiben: import function SetPlayer (int charid);
Dann kannst du diese Funktion verwenden.
-
Um jegliche Verwirrung auszuschließen (oder zu vervielfachen ;)):
Die Verwendung von neuem Code wird ausdrücklich empfohlen.
Also SetPlayerCharacter() ganz schnell wieder vergessen ;)
Die Funktion SetPlayer() ist keine AGS-interne Funktion sondern Bestandteil des Starterpacks.
Sie wechselt zwar auch den Spieler; falls sich jedoch der neue Spieler im selben Raum befindet und dieser scrollbar ist, scrollt die "Kamera" automatisch rüber. Was natürlich nicht immer wünschenswert ist.
Zur allerersten Frage: einen NPC den aktuellen Raum betreten lassen geht z.B. so:
cNpc.ChangeRoom(3, 180, 135);
Es empfielt sich, den Charakter vorher in die richtige Richtung schauen zu lassen.
-
Die Funktion SetPlayer() ist keine AGS-interne Funktion sondern Bestandteil des Starterpacks.
Jedes Starterpacks oder nur von bestimmten?
-
Müsste eigentlich in jedem Starterpack dabei sein, muss aber (wie gesagt) noch importiert werden.