Maniac Mansion Mania Forum
MMM-Werkzeugkiste => Technik => Thema gestartet 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... ;-)
-
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
-
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!