Naboradd
Bürger
Das Problem ist, dass ich in der Konsole einfach gar nichts sehe, keine Ausgabe. Anscheinend wird das Skript bei der Zeile set currHealth to (pInvObj.GetCurrentHealth) sofort beendet. Aber ich sehe keine Fehlermeldung, kein Absturz nichts. Kommentiere ich die Zeile aus, und mache ich nur eine Ausgabe bei PrintToConsole geht es.
lass dir doch mal testweise für jede codezeile eine meldung ausgeben, dann müsstest du eigentlich sehen, wo es hakt. also in etwa so:
Code:
set invPos to pCont.GetNumItems
[COLOR="DarkRed"]PrintToConsole "invPos = %.0f" invPos[/COLOR]
Label 1
if invPos
[COLOR="DarkRed"]PrintToConsole "invPos Bedingung OK"[/COLOR]
set invPos to (invPos - 1)
[COLOR="DarkRed"]PrintToConsole "invPos = %.0f" invPos[/COLOR]
set pInvObj to (pCont.GetInventoryObject invPos)
[COLOR="DarkRed"]PrintToConsole "pInvObj = %.0f" pInvObj[/COLOR]
edit: das hat zwar wohl nichts mit deinem problem zu tun, aber ich weiß nicht, ob es ratsam ist, den if-endif-block immer wieder vorzeitig mit goto zu verlassen. evtl. kann es da irgendwann zu problemen kommen, wenn zu viele if-bedingungen noch "offen" sind, und nicht mehr beendet werden...
edit2: was in dem codeschnipsel leider nicht zu sehen ist: hast du denn am anfang die variablen pInvObj als ref und currHealth als float definiert? so wie in dem beispiel hier?
Zuletzt bearbeitet: