Hauptmenü

Neuigkeiten:

Bitte unterstützt uns und bestellt über diese Links bei Amazon  oder HumbleBumble!

Hilfe für Indy

Begonnen von Indy, 24. November 2007, 10:31:47

Vorheriges Thema - Nächstes Thema

NsMn

Einfach eine Endung an den namen des Hotspots/des objekts anhängen - die Liste der endungen weiß ich jetzt leider nicht auswendig.

Siel

also die wichtigste dürfte seien:
(Description)>v == öffnen
Die Vergangenheit ist im Nachhinein meist eine schlechte Idee.

Bòógieman

also >v steht nicht für öffnen sondern für variabel  ;)
also zB eine tür die man je nach globalInt mal öffnen oder schliessen will
>o = open
>c = close
>u = use
>t = talk to
>l = look at
>g = give to
>p = pick up
>s = push
>y = pull
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

Indy

Und wo muss ich die Variable anhängen?
Please don't feed trolls.

Bissiger Witzbold

Wer lesen kann ist klar im Vorteil.

Zitat von: edna_mausi in 26. November 2008, 19:04:28
Einfach eine Endung an den namen des Hotspots/des objekts anhängen


Indy

Please don't feed trolls.

KhrisMUC

Damit die variable Endung (>v) funktioniert, muss sie mit der GlobalInt, die den Zustand (offen oder zu) speichert, verbunden werden. Das geschieht durch eine entsprechende Zeile in der Funktion VariableExtensions(), zu finden ca. bei Zeile 300 im global script.
Somit wird dann bei einem Rechtsklick automatisch geöffnet oder geschlossen, genau wie bei vorhandenen Türen.

NsMn

muss man dass dann auch anhängen,wenn man AddExtension benutzen will?

Indy

Ich habe ein neues Problem:

Ich habe als Hotspot eine Tür und das Script für AnyClickOn Hotspot sieht folgendermaßen aus:

if (UsedAction (A_OPEN))
{
if (player.Walk (120,124,eBlock,eWalkableAreas))
{
FaceDirection (player.ID,DIR_UP);
Wait (5);
ObjectOn (0);
PlaySound(1);
}
}

else if (UsedAction (A_CLOSE))
{
  if (player.Walk (120, 124, eBlock, eWalkableAreas))
  {
    FaceDirection (player.ID, DIR_UP);
    Wait (5);
    player.Say ("Die ist schon zu.");
  }
}

else if (UsedAction(A_LOOK_AT))
{
  if (player.Walk(120, 124, eBlock, eWalkableAreas))
  {
    FaceDirection (player.ID, DIR_UP);
    Wait(5);
    player.Say("Da geht's zur Küche.");
  }
}

else if (UsedAction (A_PICK_UP))
{
  if (player.Walk (120, 124, eBlock, eWalkableAreas))
  {
    FaceDirection (player.ID, DIR_UP);
    Wait (5);
    player.Say ("Ich glaube nicht, dass ich das nehmen kann.");
  }
}

else if (UsedAction (A_USE))
{
  if (player.Walk (120, 124, eBlock, eWalkableAreas))
  {
    FaceDirection (player.ID, DIR_UP);
    Wait(5);
    player.Say ("Ich wüsste nicht wozu.");
  }
}

else if (UsedAction (A_PULL))
{
  if (player.Walk (120, 124, eBlock, eWalkableAreas))
  {
    FaceDirection (player.ID, DIR_UP);
    Wait(5);
    player.Say ("Wozu? Man könnte es doch einfach öffnen.");
  }
}

else if (UsedAction (A_PUSH))
{
  if (player.Walk (120, 124, eBlock, eWalkableAreas))
  {
    FaceDirection (player.ID, DIR_UP);
    Wait(5);
    player.Say ("Wozu? Man könnte es doch einfach öffnen.");
  }
}

else Unhandled ();


AGS meldet mir nun aber einen Fehler:
Zitat von: AGS 3room24.asc(5): Error (line 5): undefined symbol 'A_OPEN'
Ich weiß nicht, was ich falsch gemacht habe, mit AGS 2.72 hat das noch funktioniert... ???
Please don't feed trolls.

Indy

#39
Und wie schreibt man jetzt
FaceDirection (player.ID, DIR_UP);
mit AGS 3?

EDIT: Hat sich erledigt, aber ich habe eine neue Frage: Womit wird "ObjectOn" ersetzt?

Hat sich auch erledigt.
Please don't feed trolls.

Indy

So, jetzt habe ich ein Problem mit den Dialogen:

Wie heißt bei AGS 3 der Befehl, mit dem ein Dialog gestartet wird? In der Hilfedatei steht was vonDialog.Start ()
aber wenn man diesen Befehl nutzt kommt eine Fehlermeldung:
Zitat von: AGS 3Error (line 2287): "[" expected
Please don't feed trolls.

Rocco

vergib einfach Namen für deine Dialoge.
Danach kannst du den Dialog zB mit dMami.Start(); starten.

Indy

Ja, wieder eine Frage zu dem neuen Starterpack:

wie werden die Befehle GUIOn (); und GUIOff (); ersetzt?
Please don't feed trolls.

NsMn

#43
oObjectname.Visible=true //ObjectOn();
oObjectname.Visible=false //ObjectOff();


Aber falls du dich mit dem alten (viel kürzerem ;) ) Code besser fühlst, aoclhe Standartfunktionen müssten auch noch gehen.  ;)  ;)

Edit: Oh, GUIOn meinst du.
da gilt aber das gleiche , nur statt oObjectname oGUIName nehmen , und GUIOff usw. geht auch noch.

Rocco

Bitte poste die Sachen die sich durch das neue Starterpack ergeben haben, im Starterpack Thread. Danke