diff options
-rw-r--r-- | Changelog.txt | 2 | ||||
-rw-r--r-- | src/map/map.c | 1 | ||||
-rw-r--r-- | src/map/storage.c | 5 |
3 files changed, 7 insertions, 1 deletions
diff --git a/Changelog.txt b/Changelog.txt index d91399ec6..eeb0745d2 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -1,5 +1,7 @@ Date Added 12/18 + * Storage was merging items incorrectly [Mousejstr] + * eliminated a uninitialized var when using afm maps [MouseJstr] * Added concept of dirty storage to reduce saves/load to the char server (do a clean build!) [MouseJstr] * Eliminated storage_storageopen2 as unused [MouseJstr] diff --git a/src/map/map.c b/src/map/map.c index b6e144eb9..e40f4d0c3 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -1673,6 +1673,7 @@ int map_readallmap(void) { char *p; strncpy(afm_name, map[i].name, strlen(map[i].name) - 4); strcat(afm_name, ".afm"); + map[i].alias = NULL; sprintf(fn,"%s\\%s",afm_dir,afm_name); for(p=&fn[0];*p!=0;p++) if (*p=='\\') *p = '/'; // * At the time of Unix diff --git a/src/map/storage.c b/src/map/storage.c index fcc70845d..9c960f6d1 100644 --- a/src/map/storage.c +++ b/src/map/storage.c @@ -142,7 +142,10 @@ int storage_additem(struct map_session_data *sd,struct storage *stor,struct item if(!itemdb_isequip2(data)){ // 装備品ではないので、既所有品なら個数のみ変化させる for(i=0;i<MAX_STORAGE;i++){ - if(stor->storage[i].nameid == item_data->nameid && + if( stor->storage[i].nameid == item_data->nameid && + stor->storage[i].identify == item_data->identify && + stor->storage[i].refine == item_data->refine && + stor->storage[i].attribute == item_data->attribute && stor->storage[i].card[0] == item_data->card[0] && stor->storage[i].card[1] == item_data->card[1] && stor->storage[i].card[2] == item_data->card[2] && stor->storage[i].card[3] == item_data->card[3]){ if(stor->storage[i].amount+amount > MAX_AMOUNT) |