Moin,
ich hab vor ein paar Tagen angefangen und kämpf mich durch die Tutorials.
Ich habe auch ein eigenes Adventure angefangen, habe aber da schon das Problem das der Charackter halt wie im Tutorial nur durch die geöffnete Tür in den nächsten Raum gelangen soll. Aber wenn die Tür offen ist steht er nur davor und wenn die Tür zu ist, dann rennt er auf die Tür,aber dafür in den nächsten Raum.
Und im Tutorial #2 bin ich dabei herbert rum rennen zu lassen ich habe auch schon es direkt aus der Tutorialbeschreibung kopiert, aber er bleit einfach nur auf der Stelle stehen.
Allgemeine Anfänger Probleme.
Re: Allgemeine Anfänger Probleme.
Hallo und willkommen in unserer Runde,
zu deinen Fragen :
Wenn dein Character durch die Tür rennt, obwohl diese zu ist, dann ist wahrscheinlich die Objektabfrage nicht richtig.
Einer der einfachsten Wege ist , das "Objekt" Tür zu prüfen, in welchem Zustand es sich befindet.
Beispiel : das Türobjekt hat 2 Zustände : Zustand 1 enthält das Bild der geschlossenen Tür, Zustand 2 das Bild einer offenen Tür.
Wenn Die Tür jetzt zu ist,soll der Char nicht durchgehen.Also schreibst Du ins Türobjekt eine
Abfrage, die bestimmt, wann man durchgehen kann, oder nicht.
Beispiel :
on (mouse)
showinfo ( Tür;true)
on (walk)
{
if_obj (Tür;1)
{
showinfo (Da kann ich nicht durchgehen;true)
break()
}
if_obj (Tür;2)
walkto (self;22;30;3)
}
on (use)
{
if_obj (Tür;1)
{
setobj (Tür;2)
setwalkmap (22;30;true)
break()
}
if_obj (Tür;1)
{
setobj (Tür;2)
setwalkmap (22;30;false)
}
}
Damit wird beim Anzeigen der geschlossenen Tür der Punkt zum Durchgehen gesperrt.
Wenn die Tür aber offen ist, wird der Punkt freigegeben.
Die Befehle walk und use musst Du in den Grundeinstellungen aber vorher definieren.
Du kannst die natürlich auch anders nennen, das ist Deine Sache.
Wichtig sind die break () Befehle. Wenn die nicht vorher die Befehlsreihe beenden, würde der Zustand sofort wieder geändert und die Tür bleibt zu. Da nach der letzten Abfrage Nichts mehr folgt, kann das break() dort entfallen.
Was Herbert angeht :
Prüfe, ob die Walkmappunkte, zu denen Herbert gehen soll, frei sind.
Natürlich muss der Befehl auch stimmen. Walkto ( Herbert;22:30;3) zum Beispiel.
Wenn der Punkt 22/30 aber auf false steht, kann Herbert nicht hingehen.
zu deinen Fragen :
Wenn dein Character durch die Tür rennt, obwohl diese zu ist, dann ist wahrscheinlich die Objektabfrage nicht richtig.
Einer der einfachsten Wege ist , das "Objekt" Tür zu prüfen, in welchem Zustand es sich befindet.
Beispiel : das Türobjekt hat 2 Zustände : Zustand 1 enthält das Bild der geschlossenen Tür, Zustand 2 das Bild einer offenen Tür.
Wenn Die Tür jetzt zu ist,soll der Char nicht durchgehen.Also schreibst Du ins Türobjekt eine
Abfrage, die bestimmt, wann man durchgehen kann, oder nicht.
Beispiel :
on (mouse)
showinfo ( Tür;true)
on (walk)
{
if_obj (Tür;1)
{
showinfo (Da kann ich nicht durchgehen;true)
break()
}
if_obj (Tür;2)
walkto (self;22;30;3)
}
on (use)
{
if_obj (Tür;1)
{
setobj (Tür;2)
setwalkmap (22;30;true)
break()
}
if_obj (Tür;1)
{
setobj (Tür;2)
setwalkmap (22;30;false)
}
}
Damit wird beim Anzeigen der geschlossenen Tür der Punkt zum Durchgehen gesperrt.
Wenn die Tür aber offen ist, wird der Punkt freigegeben.
Die Befehle walk und use musst Du in den Grundeinstellungen aber vorher definieren.
Du kannst die natürlich auch anders nennen, das ist Deine Sache.
Wichtig sind die break () Befehle. Wenn die nicht vorher die Befehlsreihe beenden, würde der Zustand sofort wieder geändert und die Tür bleibt zu. Da nach der letzten Abfrage Nichts mehr folgt, kann das break() dort entfallen.
Was Herbert angeht :
Prüfe, ob die Walkmappunkte, zu denen Herbert gehen soll, frei sind.
Natürlich muss der Befehl auch stimmen. Walkto ( Herbert;22:30;3) zum Beispiel.
Wenn der Punkt 22/30 aber auf false steht, kann Herbert nicht hingehen.
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: Allgemeine Anfänger Probleme.
Falls der Walkmappunkt aus irgendeinem Grund trotzdem frei bleiben sollte, kannst du auch vor dem beamto-Befehl eine if-Abfrage legen.
Code: Select all
if_obj (Tür ; 2)
beamto (...)
Re: Allgemeine Anfänger Probleme.
Neue Frage kann man den Standart Mauszeiger irgendwie deaktivieren, also das man nur auf dieser Taskleiste halt die Befehle hat wie Gehen,Sprechen,Untersuchen usw. ?
Re: Allgemeine Anfänger Probleme.
Bin mir nicht sicher, weil mir das in einem POINT and Click Adventure komisch vorkommen würde... Aber ein Zeiger, der aus nur einem 1 Pixel grossen Objekt bestehen würde, wäre quasi unsichtbar...
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: Allgemeine Anfänger Probleme.
Ich mein es eher so, dass man den Standart-Zeiger eher nicht zum rum laufen benutzen soll, also quasi, dass der Bewegungsbefehl auch einen eigenen Knopf hat.
Re: Allgemeine Anfänger Probleme.
dann musst du nur den fokus auf NONE lassen, dann läuft bei Klicks auch niemand. Nur dann musst du halt alle Gehbewegungen per Skript ausführen, auch wenn zb eine Figur einen Raum verlassen soll und du mit Walkmapskripten arbeiten willst.