Tiefe eines Raumes
Tiefe eines Raumes
Ich hab in der Hilfe gelesen, dass man die Tiefe einer Map verändern kann (also maximale Verkleinerung). Ich habe aber nicht gefunden, wie das geht. Ich kann zwar die Grenzen der Größenveränderung mit Hilfe der Tiefen-Grenzen-Einstellung ändern, aber die maximale Verkleinerung ist dann immer gleich...
Kann mir da einer vielleicht sagen wie das geht?
Kann mir da einer vielleicht sagen wie das geht?
Das hast Du bestimmt gelesen, oder?Manual.html wrote:Die Tiefenmap :
Die Tiefenmap besteht aus zwei vertikal verschiebbaren Linien und sind rein optischer Natur. Die Tiefe bestimmt von wo bis wo der Character kleiner zoomt. Ab Linie 2 beginnt er kleiner zu werden und ab Linie 1 hört er damit auf. Damit läßt sich die Wirkung des "nach hinten Gehens" erzielen.
Den Zoom-Faktor dazu stellst Du im Raumfenster ein.
Was ist jetzt nochmal genau die Frage? Bin nicht sicher, was Du mit maximaler Verkleinerung meinst.
Der Zoomfaktor des Chars selbst (charzoom) nimmt auch Einfluß auf die Tiefenmap.
Andere Frage: Ich habe vor es so wie in Monkey Island 3 zu machen, dass wenn der Spieler auf einen Raumausgang doubleclicked, dass sofort das beamen erfolgt.
Das versuche ich auch und mein Skript sieht wie folgt aus:
Das Problem ist: Obwohl beim walkto ein dontwait drin ist läuft er bei einem Doppelclick trotzdem bis zu dem Punkt, der bei on(click) angegeben ist und beamt erst dann.
Wie kann ich es machen, dass er bei Doppelclick sofort beamt?
Das versuche ich auch und mein Skript sieht wie folgt aus:
Code: Select all
on (mouse)
showinfo(Vor dem Haus;true)
on(click)
walkto(self;1;27;dontwait)
on(doubleclick)
beamto(self;Haus außen1;31;23;4)
on(look)
break()
on(pickup)
break()
on(talk)
break()
Wie kann ich es machen, dass er bei Doppelclick sofort beamt?
Ja, das hatte ich auch.
Das liegt glaub ich daran, dass beim Doppelclick, wie der Name schon sagt, auch ein Click ausgeführt wird.
Probier mal statt dessen nen Rechtsclick, damit sollte es funzen.
Folgendes geht auch:
Da ich den Rechtscklick anderweitig benötige, hab ich mir ne Taste auf der Tastatur definiert. Ich prüf, ob die Taste gedrückt ist, wenn ja wird sofort gebeamt.
Das liegt glaub ich daran, dass beim Doppelclick, wie der Name schon sagt, auch ein Click ausgeführt wird.
Probier mal statt dessen nen Rechtsclick, damit sollte es funzen.
Folgendes geht auch:
Da ich den Rechtscklick anderweitig benötige, hab ich mir ne Taste auf der Tastatur definiert. Ich prüf, ob die Taste gedrückt ist, wenn ja wird sofort gebeamt.
mmh.. ja das ist ein wenig doof on (doubleclick) wird wie ein Befehl behandelt d.H das Programm wartet bis der Char das Ziel erreicht hat. Aber ich wüsste vielleicht einen Work Around :
Damit könnte es gelingen im on (click) Teil einen Doppelklick nachzubauen der dann sofort reagiert. Weiss nicht obs geht.. probiers mal aus.
Code: Select all
on (click)
{
if_num (doppelklick ; 99)
beamto (self ; room ; x ; y)
if_num (doppelklick ; 0)
walkto (self ; x ; y)
setnum (doppelklick ; 99)
timer (0,5)
setnum (doppelklick ; 0)
}
Hm, ich finde, dass das mit der Taste irgendwie komisch ist... Da muss der Spieler noch eine extra Taste kennen... Den Doppelklick dagegen führt man immer unwillkürlich aus, wenn man schneller irgendwohin will. Vielleicht gibt es doch einen Kniff und jemand kommt drauf .
*nachdenk*
Edit: Huch... Zimond postet zur selben Zeit wie ich ... ok ich probiers mal
Edit2: Wow, das funktioniert einwandfrei... Obwohl ichs nicht kapiere. Könntest du vllt noch die Funktionsweise erläutern? Aber danke schonmal
*nachdenk*
Edit: Huch... Zimond postet zur selben Zeit wie ich ... ok ich probiers mal
Edit2: Wow, das funktioniert einwandfrei... Obwohl ichs nicht kapiere. Könntest du vllt noch die Funktionsweise erläutern? Aber danke schonmal
Code: Select all
on (click)
{
if_num (doppelklick ; 99)
beamto (self ; room ; x ; y)
if_num (doppelklick ; 0)
walkto (self ; x ; y)
setnum (doppelklick ; 99)
timer (0,5)
setnum (doppelklick ; 0)
}
Schreibe leider dank Internatsschule nicht mehr häufig und regelmäßig. :-(