Hallo Leute,
bitte nicht gleich steinigen... ich habe die Basic Tutorials nachgemacht, alles funktioniert.
Mit den Scripten habe ich zwar so einige probleme aber es bessert sich
Jetzt zu meinem Problem:
ich bastel gerade ein neues Maniac Mansion, dort gibt es ein Kassettenspieler in einem Schrank.
Beides sind Objekte. Wenn ich den Schrank öffne, klappt dieser auf und man kann den
Kassettenspieler sehen, aber NICHT anklicken, die Abfrage des Schranks bleibt
über dem Kassettenspieler.
Das Objekt "Kassettenspieler" hat allerdings einen funktionierenden Script.
Wenn ich im Editor den Schrank wegschiebe funktioniert der Kassettenpieler.
Was mache ich falsch? Was habe ich übersehen? So schwer kann das doch nicht sein, oder?
Mit dem Befehl moveobject habe ich schon rumgetestet, bekomme aber kein schönes Ergebnis hin.
Bitte um HILFE...
gruss
Carsten
Object hinter Objekt
-
- Experienced PaC-DK User
- Posts: 561
- Joined: 07 Sep 2011, 21:33
- Location: In der Ortenau
- Contact:
Re: Object hinter Objekt
ich würde den Kassettenspieler über das Objekt Schrank legen und diesen in Zustand 0 Anzeigen lassen. Dann solltest du durch das Objekt auf den Schrank klicken können, um ihn zu öffnen. Wenn der Schrank dann offen ist, den Zustand des Kassettenspieler auf 1 stellen und du solltest den Kassettenspieler anklicken können.
Re: Object hinter Objekt
Hi und willkommen,
wahrscheinlich liegt das anzuklickende Objekt hinter einem Anderen. So kann es z.B. sein, dass Du BEIDE Objekte auf "Vorne" stehen hast, dann verdeckt das obere Objekt das Untere.
Vergiß an dieser Stelle Moveobject.
Versuche Folgendes : Nutze von einem Objekt einfach mehrere Zustände ( ist einfacher )
Es gibt natürlich auch noch Möglichkeiten, Objekte einzublenden im Vordergrund oder ein Item einzublenden, ist aber für den Anfang noch etwas viel zum Erklären....
Erstelle EIN Objekt ( z.B. Schrank )
Zustand 1 des Objektes ist der einfache, geschlossene Schrank den man anklicken kann.
Wenn man ihn anklickt, wechselst Du in den Zustand 2. -> setobj (Schrank;2)
In Zustand 2 des Objektes siehst Du dann den offenen Schrank mit dem Kassettenspieler drin.
Jetzt kannst Du zum Schrank gehen und folgende Abfrage starten :
Ist der Schrank im Zustand 2 ?
Wenn nein ->
{
Kommentar "geht nicht"
break()
}
Sonst : Kassettenspieler benutzen/ nehmen oder was - auch-immer.
Dann kommst Du mit einem Objekt aus.
Noch etwas grafisch eleganter geht es so :
Zustand 1 : geschlossener Schrank
Zustand 2 : die Schranktüren öffnen sich und im letzten Frameskript ( ein Feld Feld unter einem Bild im Objektfenster kann einen Befehl aufnehmen und ausführen ) steht drin : Wechsele jetzt auf Zustand 3
Zustand 3 : offener Schrank mit sichtbarem Player
Wenn Du den Schrank anklickst, spielt der Player.
Oder , wenn Du ihn nehmen willst :
Nehmen geht nur , wenn das Objekt Zustand 3 hat.
Wenn der Player genommen wird, wechselt der Schrank in Zustand 4 ( offen und leer )
So kannst Du auch abfragen, ob der Schrank schon offen ist oder nicht.
Ich nehme mal an, dass Du den Schrank nicht wieder schließen musst...
Viel Erfolg
Manni
wahrscheinlich liegt das anzuklickende Objekt hinter einem Anderen. So kann es z.B. sein, dass Du BEIDE Objekte auf "Vorne" stehen hast, dann verdeckt das obere Objekt das Untere.
Vergiß an dieser Stelle Moveobject.
Versuche Folgendes : Nutze von einem Objekt einfach mehrere Zustände ( ist einfacher )
Es gibt natürlich auch noch Möglichkeiten, Objekte einzublenden im Vordergrund oder ein Item einzublenden, ist aber für den Anfang noch etwas viel zum Erklären....
Erstelle EIN Objekt ( z.B. Schrank )
Zustand 1 des Objektes ist der einfache, geschlossene Schrank den man anklicken kann.
Wenn man ihn anklickt, wechselst Du in den Zustand 2. -> setobj (Schrank;2)
In Zustand 2 des Objektes siehst Du dann den offenen Schrank mit dem Kassettenspieler drin.
Jetzt kannst Du zum Schrank gehen und folgende Abfrage starten :
Ist der Schrank im Zustand 2 ?
Wenn nein ->
{
Kommentar "geht nicht"
break()
}
Sonst : Kassettenspieler benutzen/ nehmen oder was - auch-immer.
Dann kommst Du mit einem Objekt aus.
Noch etwas grafisch eleganter geht es so :
Zustand 1 : geschlossener Schrank
Zustand 2 : die Schranktüren öffnen sich und im letzten Frameskript ( ein Feld Feld unter einem Bild im Objektfenster kann einen Befehl aufnehmen und ausführen ) steht drin : Wechsele jetzt auf Zustand 3
Zustand 3 : offener Schrank mit sichtbarem Player
Wenn Du den Schrank anklickst, spielt der Player.
Oder , wenn Du ihn nehmen willst :
Nehmen geht nur , wenn das Objekt Zustand 3 hat.
Wenn der Player genommen wird, wechselt der Schrank in Zustand 4 ( offen und leer )
So kannst Du auch abfragen, ob der Schrank schon offen ist oder nicht.
Ich nehme mal an, dass Du den Schrank nicht wieder schließen musst...
Viel Erfolg
Manni
Es gibt 10 Arten von Usern :
die, die Binärcode verstehen und die, die es nicht tun....
----------------------------------------------------------
STAR TREK FYNE :
http://www.fynegames.homepage.t-online.de
die, die Binärcode verstehen und die, die es nicht tun....
----------------------------------------------------------
STAR TREK FYNE :
http://www.fynegames.homepage.t-online.de
Re: Object hinter Objekt
vielen Dank für die schnelle Hilfe.
ich werde mich gleich mal ranmachen,
werde dann berichten.
ich werde mich gleich mal ranmachen,
werde dann berichten.
Re: Object hinter Objekt
Danke, es funktioniert
ich kann den Schrank nun öffnen und den player benutzen! WOW er hat eine Abfrage !
wenn ich mit dem Scripten besser werde, mache ich das so, das man den Schrank auch wieder schliessen kann.
MANN... 3 Wochen hing ich an dem Problem...
Vielen Dank an "DeinTroll" mit der Idee Zustand 0 mit einzubeziehen.
Vielen Dank an "japanhonk" mit dem weglassen von MOVEOBJ, damit habe ich mir die Haare grau gemacht
ich kann den Schrank nun öffnen und den player benutzen! WOW er hat eine Abfrage !
wenn ich mit dem Scripten besser werde, mache ich das so, das man den Schrank auch wieder schliessen kann.
MANN... 3 Wochen hing ich an dem Problem...
Vielen Dank an "DeinTroll" mit der Idee Zustand 0 mit einzubeziehen.
Vielen Dank an "japanhonk" mit dem weglassen von MOVEOBJ, damit habe ich mir die Haare grau gemacht