Count of 0 not allowed on items... | |
Ich habe folgendes Problem:
Ich habe eine Bank-Kette in Morowind eingebaut, ohne Tribunal und Bloodmoon. Ich weiss das es einen Bankmod für Tribunal gibt, aber ich wollte einen ohne in meinen großen Mod einbauen.
Man soll sein geld Anlegen und Abheben können und für die Zeit die es Angelegt ist Zinsen bekommen.
An der Aktion sind 4 Objekte beteiligt:
Der Bänker, der Speicherkristall, der Automat und die Platzhalter
1) Der Bänker, der mir für 100 Draken ein Konto einrichtet und mir 2 Draken auf dem Konto einrichtet, also 2 Platzhalter dem Inventar zufügt und einen "Speicherkristall gibt, der meinen Kontostand speichert.
2) Besitze ich nun den Speicherkristall, kann ich auf den Automaten zugreifen und geschäfte tätigen. Man bekommt jederzeit sinen Kontostand angezeigt.(Der Script liegt auf dem Automaten)
3) Für das Geld was ich einzahle bekomme ich "Platzhalter" gutgeschrieben, wenn ich es abhebe wieder abgezogen. Der Speicherkristall den ich bei mir trage, berechnet aus der Gesamtzahl der Platzhalter einen Prozentualen Wert, der dann den Platzhaltern hinzugefügt wird. (Die zinsen)
Alle drei Punkte funktionieren soweit. Jedoch bekomme ich immer sobald ich einen der Platzhalter gutgeschrieben bekomme die Nachricht:
Count of 0 not allowed on items. Fix the count on "zzzzneu_geldinventory".
Ausführung des Programmes fortsetzen Ja/Nein
Ich habe mir gedacht, OK, setzt du mal den Wert, das Gewicht und alle Variablen in den Scripten auf mindestens 1. Aber es kommt immernoch.
KANN MIR JEMAND HELFEN?
- Die Platzhalter sind Transportable Bücher
- Der Automat ist ein Activator
- Der Speicherkristall ist ein Transportables Misc Item
Zur Anlage hier die beiden wirksamen Scripte:
- Automat:
----------------------
----------------------
----------------------
Begin My_Geld_anlegen
long xxx
; xxx ist die menge des geldes im inventar. einzahlungen können nur vorgenommen werden wenn auch genügend geld vorhanden ist.
long yyy
; yyy ist die anzahl der platzhalter die in einem anderen script benötigt werden um die zinsen ständnig zu berechnen und die auszahlungen an jeder bank vorzunehmen.
short schalter
; auswahl im menü
short mitglied
;dient zur prüfung, ob man schon einen kristall hat und somit mitglied der bank ist
set mitglied to "Player"->GetItemCount zzzzneu_Kontospeicherkristall
if ( mitglied < 1 )
return
endif
set yyy to "Player"->GetItemCount zzzzneu_geldinventory
set xxx to "Player"->GetItemCount Gold_001
if ( MenuMode == 1 )
return
endif
if ( OnActivate == 1 )
MessageBox "Guten Tag, ihr Kontostand beträgt im moment %.0f Draken. Wie kann ich ihnen behilflich sein?" yyy "Menü verlassen" "Ich möchte 500 Draken Einzahlen" "Ich möchte 5.000 Draken Einzahlen" "Ich möchte 50.000 Draken Einzahlen" "Ich möchte 100.000 Draken Einzahlen" "Ich möchte 500 Draken abheben" "Ich möchte 5.000 Draken abheben" "Ich möchte 10.000 Draken abheben" "Ich möchte 100.000 Draken abheben"
endif
set schalter to GetButtonPressed
if ( schalter == 0 )
return
endif
if ( schalter == 1 )
if ( xxx > 499 )
Player->RemoveItem, "Gold_001", 500
Player->AddItem, "zzzzneu_geldinventory", 500
else
MessageBox "Ihr besitzt keine 500 Draken"
endif
endif
if ( schalter == 2 )
if ( xxx > 4999 )
Player->RemoveItem, "Gold_001", 5000
Player->AddItem, "zzzzneu_geldinventory", 5000
else
MessageBox "Ihr besitzt keine 5.000 Draken"
endif
endif
if ( schalter == 3 )
if ( xxx > 49999 )
Player->RemoveItem, "Gold_001", 25000
Player->RemoveItem, "Gold_001", 25000
Player->AddItem, "zzzzneu_geldinventory", 25000
Player->AddItem, "zzzzneu_geldinventory", 25000
else
MessageBox "Ihr besitzt keine 50.000 Draken"
endif
endif
if ( schalter == 4 )
if ( xxx > 149999 )
Player->RemoveItem, "Gold_001", 25000
Player->RemoveItem, "Gold_001", 25000
Player->RemoveItem, "Gold_001", 25000
Player->RemoveItem, "Gold_001", 25000
Player->AddItem, "zzzzneu_geldinventory", 25000
Player->AddItem, "zzzzneu_geldinventory", 25000
Player->AddItem, "zzzzneu_geldinventory", 25000
Player->AddItem, "zzzzneu_geldinventory", 25000
else
MessageBox "Ihr besitzt keine 100.000 Draken"
endif
endif
if ( schalter == 5 )
if ( yyy > 499 )
Player->AddItem, "Gold_001", 500
Player->RemoveItem, "zzzzneu_geldinventory", 500
else
MessageBox "Ihr Kontostand beträgt weniger als 500 Draken"
endif
endif
if ( schalter == 6 )
if ( yyy > 4999 )
Player->AddItem, "Gold_001", 5000
Player->RemoveItem, "zzzzneu_geldinventory", 5000
else
MessageBox "Ihr Kontostand beträgt weniger als 5.000 Draken"
endif
endif
if ( schalter == 7 )
if ( yyy > 9999 )
Player->AddItem, "Gold_001", 10000
Player->RemoveItem, "zzzzneu_geldinventory", 10000
else
MessageBox "Ihr Kontostand beträgt weniger als 10.000 Draken"
endif
endif
if ( schalter == 8 )
if ( yyy > 99999 )
Player->AddItem, "Gold_001", 25000
Player->AddItem, "Gold_001", 25000
Player->AddItem, "Gold_001", 25000
Player->AddItem, "Gold_001", 25000
Player->RemoveItem, "zzzzneu_geldinventory", 25000
Player->RemoveItem, "zzzzneu_geldinventory", 25000
Player->RemoveItem, "zzzzneu_geldinventory", 25000
Player->RemoveItem, "zzzzneu_geldinventory", 25000
else
MessageBox "Ihr Kontostand beträgt weniger als 100.000 Draken"
endif
endif
End My_Geld_anlegen
------------------
Speicherkristall:
----------
----------
----------
Begin My_Tragbarer_Counter
float timer
; für die zeit bis zur nächsten zinszahlung
long platzhal
; für die anzahl der platzhalter
short hhh
;für den zinsbetrag bei jeder berechnung
short zufallen
; zufälliger zins
short gutschri
;die zinsen-gutschrift nach jeder berechnung
if ( timer < 1 )
set timer to 1
endif
set platzhal to "Player"->GetItemCount zzzzneu_geldinventory
set timer to ( timer + GetSecondsPassed )
; alle 5 sek gibt es die zinsen
if ( timer > 5 )
if ( platzhal > 9999 )
set hhh to ( platzhal / 10000 )
if ( hhh > 5000 )
set hhh to 5000
endif
set zufallen to Random, 100
set gutschri to ( hhh + zufallen )
Player->AddItem, "zzzzneu_geldinventory", gutschri
set timer to 1
endif
if ( platzhal < 10000 )
if ( platzhal > 4999 )
set gutschri to ( ( platzhal / 2000 ) + 10 )
Player->AddItem, "zzzzneu_geldinventory", gutschri
set timer to 1
endif
endif
if ( platzhal < 5000 )
if ( platzhal > 999 )
set gutschri to ( ( platzhal / 1250 ) + 5 )
Player->AddItem, "zzzzneu_geldinventory", gutschri
set timer to 1
endif
endif
if ( platzhal < 1000 )
if ( platzhal > 1 )
set gutschri to ( ( platzhal / 250 ) + 1 )
Player->AddItem, "zzzzneu_geldinventory", gutschri
set timer to 1
endif
endif
endif
End My_Tragbarer_Counter
-------------
-------------
-------------
Welcher Script-Freak kann mir helfen?
__________________ Dummheit ist Unsterblich. Wenn das stimmt bin ich schon lange tot.
Die Rettung des Gottes:
Hier gibt es die Homepage.
Und hier das Forum.
|