Bugfix im reset()
all_inventory()-QueryProp(P_ITEMS) funktioniert nicht, weil
unterschiedliche Datentypen. aus diesem Grund zweiteres in ein
object-Array umwandeln.
Change-Id: I8358ba08bffa273d2956aed4020ef093db62aeb7
diff --git a/std/store.c b/std/store.c
index 584f8c8..00a048b 100644
--- a/std/store.c
+++ b/std/store.c
@@ -122,7 +122,7 @@
public void reset()
{
int i, to;
- mixed itemlist;
+ < <int|<string|string*>|object>* >* itemlist;
items::reset();
_set_store_percent_left();
@@ -138,12 +138,13 @@
{
// Elemente ohne konkretes Objekt (Index 0 im Wertearray fuer den Key)
// ausfiltern.
- itemlist=filter(itemlist,
- function int(<object|<string|string*>|int>* arg)
+ itemlist=filter(itemlist, #'[, 0);
+ all-=map(itemlist,
+ function object(<int|<string|string*>|object>* arr)
{
- return objectp(arg[0]);
+ return arr[0];
});
- all-=itemlist;
+
if (!sizeof(all))
{
all=0; // Speicher freigeben