Autor Thema: Animation will net  (Gelesen 3563 mal)

Kinkilla

  • volljähriger Tentakel
  • *****
  • Beiträge: 845
  • Geschlecht: Männlich
  • Nicht zu verwechseln mit einem Chinchilla!
    • Profil anzeigen
Animation will net
« am: 07. März 2015, 21:00:10 »
Hi Leute
Ich wollte in einen Raum ein Perpetuum Mobile platzieren
Ich habs genauso wie in Bernards Zimmer animiert
Mit View & Co
Dann starte ich das Spiel und es bewegt sich nicht...
Weiß vielleicht irgendeiner wie das geht?  :cl
Danke im Voraus :D

Cone Arex

  • Mod
  • alter Tentakel
  • **
  • Beiträge: 2302
  • Geschlecht: Männlich
  • Skandal-Entwickler und Idiot
    • Profil anzeigen
    • Conequest
Re: Animation will net
« Antwort #1 am: 07. März 2015, 21:05:56 »
Du musst deinen Code schon posten, sonst können wir dir nicht helfen.


Folge mir auf X und itch.io

Kinkilla

  • volljähriger Tentakel
  • *****
  • Beiträge: 845
  • Geschlecht: Männlich
  • Nicht zu verwechseln mit einem Chinchilla!
    • Profil anzeigen
Re: Animation will net
« Antwort #2 am: 07. März 2015, 21:13:26 »
Was für ein Script?
Ich geh auf die Sprite meines Objects.
Drück auf Assign to View
Wähl meine erstellte View
Füge die nächsten Sprites hinzu... und dann sollte es funktionieren...

Cone Arex

  • Mod
  • alter Tentakel
  • **
  • Beiträge: 2302
  • Geschlecht: Männlich
  • Skandal-Entwickler und Idiot
    • Profil anzeigen
    • Conequest
Re: Animation will net
« Antwort #3 am: 07. März 2015, 21:23:37 »
Und da haben wir den Fehler...

Du hast einen Loop in einem View erstellt, also eine Animationsabfolge. Jetzt musst du dem Object diesen View/Loop noch zuweisen.

Geh in den Raum, lege die Funktion Room_Load an wenn du das noch nicht getan hast und schreib in die Funktion:
[ags]
ObjectName.SetView(viewname, loopnummer, framenummer);
ObjectName.Animate(loopnummer, verzögerung, eRepeat, eNoBlock);
[/ags]
Statt viewname kannst du auch die Nummer des Views angeben. Loopnummer und framenummer sind bei SetView optional.
Das eRepeat sagt aus, dass die Animation wiederholt wird. Wenn du eine Animation nur einmal abspielen willst, musst du eOnce angeben. eNoBlock sagt aus, dass die Animation das Script nicht blockiert.
« Letzte Änderung: 07. März 2015, 21:25:56 von Cone Arex »


Folge mir auf X und itch.io

Kinkilla

  • volljähriger Tentakel
  • *****
  • Beiträge: 845
  • Geschlecht: Männlich
  • Nicht zu verwechseln mit einem Chinchilla!
    • Profil anzeigen
Re: Animation will net
« Antwort #4 am: 07. März 2015, 21:28:40 »
Es lebt :o
Danke für die Hilfe
Nun weiß ich bescheid
Programmieren am Abend wie schön

Kinkilla

  • volljähriger Tentakel
  • *****
  • Beiträge: 845
  • Geschlecht: Männlich
  • Nicht zu verwechseln mit einem Chinchilla!
    • Profil anzeigen
Re: Animation will net
« Antwort #5 am: 08. März 2015, 19:07:10 »
Ich bräuchte nochmal Hilfe...

Ich will zwei Gegenstände kombinieren aber es passiert nichts
Hier der Code
function iHaken_UseInv()
{
if (player.ActiveInventory == iFaden)
  {
    player.LoseInventory(iFaden);
    player.LoseInventory(iHaken);
    PlaySound(4);
    Wait(5);
    player.AddInventory(iAngel);
  }
 
  else Unhandled();
}
Das Event hab ich auch erstellt...

Kiwa

  • volljähriger Tentakel
  • *****
  • Beiträge: 779
  • Geschlecht: Männlich
    • Profil anzeigen
Re: Animation will net
« Antwort #6 am: 08. März 2015, 19:36:30 »
Ich bräuchte nochmal Hilfe...
Ich will zwei Gegenstände kombinieren aber es passiert nichts

Mache folgendes:

Du kannst Gegenstände sofort benutzen lassen (das macht z.B. Sinn bei einem Handy -> "Benutze Handy" würde also dazu führen das der player das Handy direkt benutzt (zum telefonieren) oder du möchtest das das Handy mit etwas anderem zusammen gebaut wird -> z.B. "Benutze Handy mit Antenne". Beide Aktionen werden im GlobalScript geschrieben, die Lösung die du brauchst sieht so aus:

[ags]function iHaken_UseInv()
{
  if (UsedAction(eActUseInventory)){
    if (player.ActiveInventory == iFaden)
    {
       player.LoseInventory(iFaden);
       player.LoseInventory(iHaken);
       PlaySound(4);
       Wait(5);
       player.AddInventory(iAngel);
    }else{} // Das else ist optional und muss hier nicht stehen
  }
}[/ags]

Denke aber daran das du auch die umgekehrte Reihenfolge scripten musst wenn du möchtest das man auch den Haken mit dem Faden benutzen kann. Ich persönlich finde es immer recht hilfreich wenn man Gegenstände in beide Richtungen miteinander benutzen kann (Also A mit B und B mit A, hier Faden und Haken).

Wenn du ein Inventargegenstand direkt benutzen möchtest (siehe Beispiel Handy) dann schreibtst du folgenden Code:

[ags] if (UsedAction(eActUse)){...} //direkt benutzen[/ags]

War die Erklärung hilfreich oder geht es immer noch nicht?
« Letzte Änderung: 08. März 2015, 19:39:31 von Kiwa »
Das Leben ist ein Adventure. Aber ohne Komplettlösung.

Für fast alles gibt es eine logische Erklärung. Für alles andere ein Placebo.

Kinkilla

  • volljähriger Tentakel
  • *****
  • Beiträge: 845
  • Geschlecht: Männlich
  • Nicht zu verwechseln mit einem Chinchilla!
    • Profil anzeigen
Re: Animation will net
« Antwort #7 am: 08. März 2015, 19:47:22 »
Ja es geht aber
Wenn ich das Item mit Befehl Benutzen kombiniere passiert nichts
Wenn ich nur mit draufdrücken kombiniere geht's.... :cl

Kiwa

  • volljähriger Tentakel
  • *****
  • Beiträge: 779
  • Geschlecht: Männlich
    • Profil anzeigen
Re: Animation will net
« Antwort #8 am: 08. März 2015, 22:42:03 »
Ich glaub ich weiß was du meinst.

Hast du den die DIREKTE benutzung des Inventargegenstnds auch programmiert (das "if (UsedAction(eActUse)){...}") ? Wenn nicht dann ist es völlig normal das bei dem Verb "Benutze" und dem Gegenstand nix passiert. Das musst du dann noch (in der selben Funktion unterhalb des "if (UsedAction(eActUseInventory))" Blocks einbauen.

Wenn du das Item direkt anklickst steht auch "Benutze Haken mit" in der Aktion Zeile, oder? Wenn du das Verb "Benutze" anklickst und dann das Item dann steht da nur "Benutze Haken", ohne das Wort "mit". Das ist so im Starterpack gescriptet. Ich finde es auch so am Besten, dann kann man durch direktes anklicken der Items verschiedene Items kombinieren und mit dem Verb "Benutze" das Item direkt benutzen (denke an das Handy Beispiel).

Ist es jetzt klar geworden? Falls noch Fragen sind dann stelle sie ruhig, dafür ist das Forum schließlich da.
Das Leben ist ein Adventure. Aber ohne Komplettlösung.

Für fast alles gibt es eine logische Erklärung. Für alles andere ein Placebo.

Kinkilla

  • volljähriger Tentakel
  • *****
  • Beiträge: 845
  • Geschlecht: Männlich
  • Nicht zu verwechseln mit einem Chinchilla!
    • Profil anzeigen
Re: Animation will net
« Antwort #9 am: 08. März 2015, 22:51:08 »
Hmm klingt einleuchtend :cl

Werde ich gleich Morgen ausprobieren. Danke für die Hilfe
LG Kinkilla  ;)
« Letzte Änderung: 09. März 2015, 19:03:22 von Kinkilla Zone »