Betreff des Beitrags: Eigene GUI: "Inventaritem auf Inventaritem benutzen"
Verfasst: 29.04.2010, 22:44
Frischling
Registriert: 29.04.2010, 22:22 Beiträge: 2
Hallo.
Ich habe vor ein paar Tagen wieder angefangen mit AGS zu arbeiten und ein altes Projekt ausgebuddelt.
Dazu habe ich die GUI überbrückt und ein Coin-Interface implementiert. Nach und nach hab ich auch alles zum Laufen bekommen, außer der Funktion, ein Inventaritem auf ein Inventaritem zu benutzen.
Das Scribt ruft die Funktion einfach nicht auf...
Ich bin mit meinem Latein am Ende und bitte um Hilfe.
AGS-Version: 3.1.2.82
Scriptauszuüge:
Code:
function iBrosche_UseInv() { if (player.ActiveInventory == iKristall){ player.LoseInventory (iKristall); player.LoseInventory (iBrosche); player.AddInventory (iKristallbrosche); } }
Dieses Scipt wird nicht aufgerufen, obwohl ich keinen Grund finde, warum es nicht aufgerufen wird.
Code:
function InvProcess(int X, int Y) { //Ermöglicht das Verarbeiten von Inventar-Clicks
//Inventar wird clickable gemacht gui[gInv.ID].Clickable = true;
//Ausführung der Aktion //----- Coin Aktionen werden im jeweiligen button-Click abgehandelt
// geclicktes Guiteil ermitteln // 1. InventoryItem geklickt InventoryItem *item = InventoryItem.GetAtScreenXY (CoinX, CoinY); if (item != null) { if (player.ActiveInventory != null) { // - Click mit item auf Item --> Item mit Item benutzen Display ("Mode: %d[Inv: %s[CoinPos: %d,%d[clicked: %s",mouse.Mode, player.ActiveInventory.Name, CoinX, CoinY, item.Name);
} //2. Button clicked GUIControl *theControl = GUIControl.GetAtScreenXY(CoinX, CoinY); if (theControl != null) { if (theControl == invScrollLeft) { //inventar nach links blättern } if (theControl == invScrollRight) { //inventar nach rechts blättern } } //Inventar wird wieder unclickable gui[gInv.ID].Clickable = false; }
Aus dieser Funktion wird die Funktion oben aufgerufen. Die betreffende Zeile ist hervorgehoben (nicht im Codeblock). Die Variblenwerte habe ich überprüft. Da sollte es keine Fehler geben. Bei einer Schritt-für-Schritt-Überprüfung des Codes habe ich keine Fehler im Ablauf gefunden. Die Funktion wird einfach nicht aufgerufen.
Ich hoffe, dass ihr mir helfen könnt. Vielleicht findet ihr einen Fehler, den ich übersehen habe.
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.