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.
Zitat von: KhrisMUC in 13. November 2007, 05:24:14
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.