Anfängerfrage zu ON (pickup) und ON (Take)

Das Board für Schwierigkeiten beim Adventure-Machen und zum Melden von Bugs
Post Reply
meinereiner2901
PaC-DK Newby
Posts: 6
Joined: 26 May 2018, 00:16

Anfängerfrage zu ON (pickup) und ON (Take)

Post: # 90725Post meinereiner2901
06 Jan 2019, 22:18

Hallo,mal ne Anfängerfrage obwohl ich eigentlich jetzt auch schon eine Weile mit dem PacDK rummache.Hab auch schon ein paar komplexere Skripte gebaut.
Eigentlich sind es 4 Fragen xd.

1. Ich benutze um ein item einzusammeln den befehl on (pickup) obwohl in der hilfe steht das man den Befehl on (take) nehmen soll.
Pickup läuft ohne Probleme aber ersetze ich es durch take macht der charakter garnichts?Ich kann jetzt nicht feststellen das der befehl Pickup hier irgendwelche Probleme macht.Allerdings habe ich keine Nehmen Animation.
Der befehl pickup führt doch automatisch die nehmen animation aus wenn vorhanden?Für was dann bitte take?

2. Kann mir einer verraten wie ein Skript aussehen muss wenn ich eine bestimmte taste am Keyboard drücke um etwas zu starten aber die gleiche Taste wieder drücken will um es zu beenden?Ich kann keine If Befehle finden die sich direkt auf die tasten auswirken?
ich war am überlegen das über einen Counter zu lösen der immer wieder abgefragt wird ob er jetzt auf 1 oder 0 steht?

3. Ich habe manchmal Probleme Objekte so zu platzieren das ich an bestimmte noch mit der maus hinkomme,wegen der Überlagerung.
jetzt habe ich versucht ein grosses Objekt das nur kurz eingeblendet wird während einer Cutscene in einen Subroom zu machen das problem ist jetzt das er den Subroom ja nicht verlässt ohne das ich irgendwo hinklicken würde was ich aber nicht will?ich will den subroom automatisch verlassen?

4. ich verstehe auch nicht wenn ich rechts im editor ein Objekt anklicke die bedeutung von (Nach vorne und hinten setzen) ist?
Den die gleichen Einstellungen gibt es ja unten rechts auch wobei ich sie da verstehe.Vorne,mitte,hinten.
nur diese Rechtsklick Sache blicke ich nicht ganz?Aber ich bilde mir ein das ich genau deswegen Schonmal Schwierigkleiten mit einem Dummy Objekt hatte um einen Subroom zu verlassen?

Vincent
Adventure Enthusiast
Posts: 208
Joined: 30 Sep 2008, 18:28

Re: Anfängerfrage zu ON (pickup) und ON (Take)

Post: # 90726Post Vincent
07 Jan 2019, 10:55

Erstmal Hallo und Wilkommen im Forum. Schön immer wieder neue Enthusiasten zu sehen.


1: Siehe Anleitung:
on (take)
{
pickup (self)
setobj (DeinObjekt ; 0)
additem (self ; DeinGegenstand)
}
Du brauchst erst einen Spielbefehl, den du dir einrichten musst - normalerweise wird der "take" verwendet, du kannst ihn aber auch "nehmen" heißen oder "simsalabim". Vergiss nicht, irgendwo die option einzurichten, den Befehl auszulösen: Irgendwo muss "command (take)" stehen - normalerweise in einem Objekt im Hub.
Jetzt kommt das "pickup" ins Spiel - eine Funktion, mit der das Programm weiß: Spiele die Animation "pickup" ab. Mehr macht diese Funktion nicht! Wenn du keine Animation dafür hast, brauchst du diese Zeile nicht schreiben.
Erst mit der Funktion "additem" weiß das Programm, WAS ins Iventar kommt.

In First-Person-Spielen kannst du das Ganze z.B. auch so machen:
on (click)
{
setobj (DeinObjekt ; 0)
additem (self ; DeinGegenstand)
}
Nur um zu Zeigen, dass "click", "take" oder "simsalabim" nur Platzhalter für commands sind.
2.
mit "if_keydown (x)" kannste abfragen, ob die taste x gedrückt wird. Zu verwenden in einem Loop1 Teil im Raumscript oder im Mainscript. Richte dir einen Bool-Schalter ein, um zu erinnern, auf welchem Stand das Script ist.

if_keydown (m)
{

if_bool (menu; false)
{
subroom (Menü)
setbool (menu; true)
}

if_bool (menu; true)
{
return ()
setbool (menu; false)
}
}

Vergiss hier nicht, einen Merker zu machen, der auf false steht (Rechts von "Skript erstellen")!

3.
Versuch die Frage besser zu formulieren. Vll hilft das weiter: "Geschlossen wird ein subroom mit return () " (in der Anleitung)

4. Grandios!! Ich kannte diese Option nicht! Genau das, was ich brauche, DANKE!
Also im Grunde ist das "Eine Ebene nach vorne/hinten" wie etwa bei Bildern in Worddokumenten.


Ich hoffe, ich konnte etwas helfen. Ansonsten bitte nochmal nachstochern.

Zimond
Der Engine Papa
Posts: 3420
Joined: 06 Apr 2003, 19:34
Location: Krefeld
Contact:

Re: Anfängerfrage zu ON (pickup) und ON (Take)

Post: # 90727Post Zimond
08 Jan 2019, 22:52

Noch ein paar Nachträge :

1. Der Hinweis in der Anleitung ist dazu da damit es weniger Verwechslungsgefahr gibt weil es eben einen Skriptbefehl namens Pickup gibt. Technisch spricht aber nichts dagegen auch einen Spielbefehl "pickup" zu nennen. Wie schon gesagt musst du sicherstellen das der Befehl auch so als command () übergeben wird. Wenn du nur den On() Teil änderst gehts nicht.

2. Vincent hat ein kleines Detail vergessen :

if_keydown (m)
{

if_bool (menu; false)
{
subroom (Menü)
setbool (menu; true)
break()
}

if_bool (menu; true)
{
return ()
setbool (menu; false)
}
}

Ohne das break() würde das Menü sonst nach dem einschalten sofort wieder geschlossen werden. Entweder wie gesagt im Mainscript (Hauptskript) oder in einer Funktion. Der Loop1 Teil ist dafür nicht geeignet weil die Tastaturabfrage ja nicht nur in einem Raum funktionieren soll.

3. Jo, genau return ().

Also :

subroom (grafik) <-- optional mit millisekunden anzeige zum fade in und fade out)
wait (5)
return()

Man kann übrigens Objekte sowohl in der Spalte unten rechts auswählen als auch mit den Tasten Bild auf und Bild ab zwischen allen Objekten herschalten. Das hilft bei schwer erreichbaren Objekten.

4. Nach vorne und hinten setzen bedeutet eine zweitrangige Reihenfolge der Objekte. Heißt bei Objekten mit gleicher Tiefeneinstellung (Hinten, Vorne oder selbe MIttelposition) lassen sich so Objekte nach vorne oder hinten setzen. Ansonsten ist die Reihenfolge die in der du die Objekte in den Raum gezogen hast. Es könnte zB sein das du "Vorne" Objekte hast wo Teil von Objekt A Objekt B überdecken du es aber anders herum haben willst.
Image

Vincent
Adventure Enthusiast
Posts: 208
Joined: 30 Sep 2008, 18:28

Re: Anfängerfrage zu ON (pickup) und ON (Take)

Post: # 90730Post Vincent
09 Jan 2019, 08:27

Danke für die Korrekturen.

Post Reply