Maniac Mansion Mania Forum

MMM-Werkzeugkiste => Technik => Thema gestartet von: Elvis am 15. September 2015, 15:46:15

Titel: Unterschied "Gib Gegenstand an" und "Benutze Gegenstand mit" [gelöst]
Beitrag von: Elvis am 15. September 2015, 15:46:15
Ich benutze AGS 3.3.4 mit dem Maniac Mansion Starterpack für AGS 3.2.1 (http://www.maniac-mansion-mania.com/index.php/de/ressourcen/starterpacks/849-mansion-starterpack-fuer-ags-3-2-1.html) gemäß Endres' Tutorial für AGS 3.x. (http://www.maniac-mansion-mania.de/forum/index.php?topic=15.msg36729#msg36729)

Ich möchte einer Person einen Gegenstand geben. Also habe ich bei "Use inventory on character" folgenden Code hinterlegt:

function cPerson_UseInv()
{
   if(player.ActiveInventory==iGegenstand)
      {
         player.Say("Möchten Sie diesen Gegenstand?");
         cPerson.Say("Ja, gerne.");
      }
   else Unhandled_Character();
}


Das funktioniert jetzt zwar, wenn ich im Spiel "Gebe Gegenstand an Person" wähle. Es funktioniert aber auch, wenn ich "Benutze Gegenstand mit Person" wähle.

Nun könnte es aber einen gewaltigen Unterschied machen, ob ich einer älteren Dame ein Messer geben oder das Messer mit ihr benutzen möchte... ;-)
Titel: Re: Unterschied "Gib Gegenstand an" und "Benutze Gegenstand mit"
Beitrag von: 1mal_volltanken am 15. September 2015, 19:33:39
Ja, das war ja immer das Problem, mit dem Gib-Befehl, denn ohne diesen mit USE_INV zu verknüpfen funktionierte nämlich gar nix.


Könnte das nicht funktionieren, wenn man hinter dem USE_INV noch ein ACTION setzt?

In etwa so:


if Action = USE_INV {

      if Action = GIVE {

      }
     
      else if Action = USE {

      }

}


Hab den genauen Syntax jetzt nicht mehr im Kopf. Muss mich da erst wieder reinfuchsen.

Aber die Logik sollte sich daraus ja ableiten können. ;)


BG
der Volltanker

Titel: Re: Unterschied "Gib Gegenstand an" und "Benutze Gegenstand mit"
Beitrag von: Elvis am 18. September 2015, 17:08:36
Die Lösung wurde bereits von Cone Arex gefunden!

Und zwar hier: http://www.maniac-mansion-mania.de/forum/index.php?topic=2340.msg47794#msg47794

Funktioniert bei mir prima.

Ich kann unter AnyClick eine (UsedAction(eActGiveTo)) einbauen und dann munter Gegenstände vergeben. Auf "Benutzen" reagiert der Charakter dann nicht mehr!