diff options
Diffstat (limited to 'src/emap/craft.c')
-rw-r--r-- | src/emap/craft.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/emap/craft.c b/src/emap/craft.c index 7081911..e8e2cdd 100644 --- a/src/emap/craft.c +++ b/src/emap/craft.c @@ -730,8 +730,13 @@ static bool craft_delete_items(TBL_PC *sd, } static bool craft_create_items(TBL_PC *sd, - struct craft_items_collection *vector) + struct craft_db_entry *entry) { + // +++ for now used 0 index, but need select random + const int vars = VECTOR_LENGTH(entry->create_items); + struct craft_items_collection *vector = &VECTOR_INDEX(entry->create_items, + (rand() % (vars * 10)) / 10); + int len = VECTOR_LENGTH(*vector); int i; if (len > 0) @@ -828,7 +833,7 @@ bool craft_use(TBL_PC *sd, } sd->status.zeny -= entry->price; - craft_create_items(sd, &entry->create_items); + craft_create_items(sd, entry); clif->updatestatus(sd, SP_ZENY); clif->updatestatus(sd, SP_WEIGHT); |