Autor Thema: Ein paar Script-Fragen  (Gelesen 2686 mal)

Der Kompaniechef

  • volljähriger Tentakel
  • *****
  • Beiträge: 689
    • Profil anzeigen
Ein paar Script-Fragen
« am: 22. Juni 2013, 16:59:59 »
Moin,
ich bin es wieder!
Habe ein paar Fragen:

1. Problem: Benutzen von mehreren gegständen an Personen /// anklicken um Code anzuzeigen
Spoiler (hover to show)

Ich will das man bei 2 Gegenständen eine bestimmte Aktion hat und beim Rest einen Standart-Satz
Habe schon gefühlt als versucht. Entweder funzt dann nur ein Gegenstand(der andere macht einfach nur ein Standart-Satz) oder beide funzen aber der Standart-Satz wird dann mit ausgeführt.

2. Problem
Wie heist der Scriptcode damit das Lade-Menü ausgeführt wird?

3. Gibt es einen Scriptcode der automatisch ein Save vom aktuellen Spiel macht?

4. Ich weiß das hatten wir schon hundert mal hier im Forum aber wie zum Teufel geht der Gib-Befehl???
Ich möchte etwas an eine nicht MM-Person geben.
Was muss ich dafür im Global-Scribt verändern/ hinzufügen?

5.Wo kann man die Aktionen für Spiel paussieren deaktivieren?

MFG JPJF

rulaman

  • Moderator
  • Teenie Tentakel
  • *****
  • Beiträge: 354
  • Geschlecht: Männlich
    • Profil anzeigen
Re: Ein paar Script-Fragen
« Antwort #1 am: 25. Juni 2013, 17:42:53 »
zu 0:
Warum um alles in der Welt postest du hier dermaßen alten Code?  ??? ??? ??? ??? ??? ??? ???


zu 1:

  if (character [GetPlayerCharacter ()].activeinv == 23)
  {
    FaceDirection (GetPlayerCharacter (),  DIR_UP);
    Wait (5);
    DisplaySpeech (GetPlayerCharacter (), ".");
  }
  else if ( character [GetPlayerCharacter ()].activeinv == 20 ) // anderer Gegenstand
  {
    DisplaySpeech (GetPlayerCharacter (), "Hier anderer Text.");
  }
  else
  {
    FaceDirection (GetPlayerCharacter (),  DIR_UP);
    DisplaySpeech (GetPlayerCharacter (), "Das werde ich nicht verschenken.");
  }
}

2:
suche in dieser Funktion
function gOptLoad_OnClick(GUIControl *control, MouseButton button)

zu 3:
Willst du einen bestimmten Level haben?

zu 4:
Sollte das nicht in den neuen SPs drin sein?

zu 5: schau mal dort nach
function on_key_press(int keycode)


Grüße
Rulaman
Baden ist die einzige Möglichkeit, den Dreck der Füße an den Hals zu bekommen.

VikingLord

  • kleiner Tentakelsaugknopf
  • **
  • Beiträge: 22
  • Geschlecht: Männlich
    • Profil anzeigen
    • E-Mail
Re: Ein paar Script-Fragen
« Antwort #2 am: 23. April 2015, 14:18:29 »
Ich habe auch ein ähnliches Problem:

Ich möchte ein Item mit einer Tür benutzen können und habe keine Ahnung, welchen Befehl ich dafür in AGS 3.3.3 benutzen will. Im Script steht bisher:
Zitat
function iGSchluessel_UseInv()
{
 if (player.ActiveInventory == )
{
 player.Walk(235, 115);
 Wait (30);
 player.Say("Super! Die Tür ist offen!");
 aSound2.Play();
 Door[eDoorNumEd].Open();
 }
}
Jetzt weiß ich nicht, was ich in der Zeile  if (player.ActiveInventory == ) eingeben muss (mir ist natürlich klar, dass hinter die zwei = noch Door[eDoorNumEd] stehen muss).

 Kurz gesagt: Ich suche eine Art ActiveInventory-Befehl mit dem man Items und Hotspots miteinander benutzen kann.
Nimm das Haustier des Blauen,
stecke es in die Kiste voll Grauen,
Bringe es dem, der beim Klingeln zur Tür rennt,
selig ist, wer Maniac Mansion kennt

MalleTheRedPhoenix

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1239
  • Geschlecht: Männlich
    • Profil anzeigen
Re: Ein paar Script-Fragen
« Antwort #3 am: 23. April 2015, 15:18:04 »
Da ich mich noch nicht mit dem Skripten von AGS 3.3.3 befasst habe, vermute ich mal, dass du dahinter entweder die entsprechende IDNr. oder den IDNamen des Inventargegenstandes eingeben musst, damit das Programm registriert, dass bei Anwendung des entsprechenden Objektes der Skript ausgelöst wird.

Ist wie gesagt nur eine Vermutung und kein Vorschlag von mir, weswegen ich an deiner Stelle lieber auf den Rat von jemanden warten würde, der Ahnung mit der Skriptsprache hat. :police:
« Letzte Änderung: 23. April 2015, 15:18:25 von MalleTheRedPhoenix »
Wie Phönix aus der Asche

KhrisMUC

  • Moderator
  • volljähriger Tentakel
  • *****
  • Beiträge: 988
    • Profil anzeigen
Re: Ein paar Script-Fragen
« Antwort #4 am: 26. April 2015, 22:48:34 »
Es funktioniert genau andersherum; zum Benutzen eines Inventargegenstandes mit einem Hotspot wird der Code beim Hotspot rein geschrieben, nicht beim Gegenstand.
[ags]  if (player.ActiveInventory == iGSchluessel) ...[/ags]
(Die Funktion, die Du verwendet hast, ist gedacht für "Benutze X mit iGSchluessel".)

Vermutlich ist es beim neuen Türensystem aber einfacher; ich gehe mal davon aus, dass man den Schlüssel einfach festlegt, und er danach automatisch funktioniert. Ich bin da aber nicht auf dem Laufenden.