From 273e919bed5d9ff527e229d9b2e9415c71755283 Mon Sep 17 00:00:00 2001 From: nanakiwurtz Date: Wed, 4 Dec 2013 00:45:41 +0700 Subject: [PATCH 1/6] New items added. Source: http://forums.irowiki.org/showpost.php?p=1364909&postcount=585 Signed-off-by: nanakiwurtz --- db/re/item_db.txt | 3 +++ sql-files/item_db_re.sql | 3 +++ 2 files changed, 6 insertions(+) diff --git a/db/re/item_db.txt b/db/re/item_db.txt index 36fc45844e..aaa8b45f2a 100644 --- a/db/re/item_db.txt +++ b/db/re/item_db.txt @@ -6527,6 +6527,9 @@ 13181,Novice_Shotgun,Novice Shotgun,4,0,,1000,80,,9,0,0x41000000,1,2,34,4,1,0,20,{},{},{} 13182,Novice_Gatling,Novice Gatling,4,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,19,{},{},{} 13183,Novice_Grenade_Launcher,Novice Grenade Launcher,4,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,21,{},{},{} +13194,Peace_Breaker,Peace Breaker,4,1,,1400,250,,,,0x41000000,63,2,2,3,120,,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{} +13196,Peace_Breaker,Peace Breaker,4,1,,1400,250,,,,0x41000000,63,2,2,3,120,,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{} +13197,Mini_Mei,Mini Mei,4,1,,2500,220,,,,0x41000000,63,2,2,2,106,,19,{},{},{} // Bullets 13200,Bullet,Bullet,10,1,,2,10,,,,0x41000000,63,2,32768,,1,,3,{},{},{} 13201,Silver_Bullet,Silver Bullet,10,15,,2,15,,,,0x41000000,63,2,32768,,1,,3,{ bonus bAtkEle,Ele_Holy; },{},{} diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql index 793cb5dfe0..ea3a6160ef 100644 --- a/sql-files/item_db_re.sql +++ b/sql-files/item_db_re.sql @@ -6558,6 +6558,9 @@ REPLACE INTO `item_db_re` VALUES (13180,'Novice_Rifle','Novice Rifle',4,0,NULL,5 REPLACE INTO `item_db_re` VALUES (13181,'Novice_Shotgun','Novice Shotgun',4,0,NULL,1000,'80',NULL,9,0,0x41000000,1,2,34,4,'1',0,20,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (13182,'Novice_Gatling','Novice Gatling',4,0,NULL,1500,'40',NULL,9,0,0x41000000,1,2,34,4,'1',0,19,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (13183,'Novice_Grenade_Launcher','Novice Grenade Launcher',4,0,NULL,1500,'40',NULL,9,0,0x41000000,1,2,34,4,'1',0,21,NULL,NULL,NULL); +REPLACE INTO `item_db_re` VALUES (13194,'Peace_Breaker','Peace Breaker,',4,1,NULL,1400,'250',NULL,NULL,NULL,0x41000000,63,2,2,3,'120',0,20,'bonus bHit,-25; bonus bAspdRate,25;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (13196,'Peace_Breaker','Peace Breaker,',4,1,NULL,1400,'250',NULL,NULL,NULL,0x41000000,63,2,2,3,'120',0,20,'bonus bHit,-25; bonus bAspdRate,25;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (13196,'Mini_Mei','Mini Mei,',4,1,NULL,2500,'220',NULL,NULL,NULL,0x41000000,63,2,2,2,'106',0,19,NULL,NULL,NULL); # Bullets REPLACE INTO `item_db_re` VALUES (13200,'Bullet','Bullet',10,1,NULL,2,'10',NULL,NULL,NULL,0x41000000,63,2,32768,NULL,'1',NULL,3,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (13201,'Silver_Bullet','Silver Bullet',10,15,NULL,2,'15',NULL,NULL,NULL,0x41000000,63,2,32768,NULL,'1',NULL,3,'bonus bAtkEle,Ele_Holy;',NULL,NULL); From 9c5bf1f2412e9e75bf81dfebbb1781b8b5d66889 Mon Sep 17 00:00:00 2001 From: nanakiwurtz Date: Wed, 4 Dec 2013 01:26:23 +0700 Subject: [PATCH 2/6] New items added. Source: http://forums.irowiki.org/showpost.php?p=1364909&postcount=585 Signed-off-by: nanakiwurtz --- sql-files/item_db_re.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql index ea3a6160ef..4b5bb43ec4 100644 --- a/sql-files/item_db_re.sql +++ b/sql-files/item_db_re.sql @@ -6560,7 +6560,7 @@ REPLACE INTO `item_db_re` VALUES (13182,'Novice_Gatling','Novice Gatling',4,0,NU REPLACE INTO `item_db_re` VALUES (13183,'Novice_Grenade_Launcher','Novice Grenade Launcher',4,0,NULL,1500,'40',NULL,9,0,0x41000000,1,2,34,4,'1',0,21,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (13194,'Peace_Breaker','Peace Breaker,',4,1,NULL,1400,'250',NULL,NULL,NULL,0x41000000,63,2,2,3,'120',0,20,'bonus bHit,-25; bonus bAspdRate,25;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (13196,'Peace_Breaker','Peace Breaker,',4,1,NULL,1400,'250',NULL,NULL,NULL,0x41000000,63,2,2,3,'120',0,20,'bonus bHit,-25; bonus bAspdRate,25;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (13196,'Mini_Mei','Mini Mei,',4,1,NULL,2500,'220',NULL,NULL,NULL,0x41000000,63,2,2,2,'106',0,19,NULL,NULL,NULL); +REPLACE INTO `item_db_re` VALUES (13197,'Mini_Mei','Mini Mei,',4,1,NULL,2500,'220',NULL,NULL,NULL,0x41000000,63,2,2,2,'106',0,19,NULL,NULL,NULL); # Bullets REPLACE INTO `item_db_re` VALUES (13200,'Bullet','Bullet',10,1,NULL,2,'10',NULL,NULL,NULL,0x41000000,63,2,32768,NULL,'1',NULL,3,NULL,NULL,NULL); REPLACE INTO `item_db_re` VALUES (13201,'Silver_Bullet','Silver Bullet',10,15,NULL,2,'15',NULL,NULL,NULL,0x41000000,63,2,32768,NULL,'1',NULL,3,'bonus bAtkEle,Ele_Holy;',NULL,NULL); From fa47d0c2f3c5c82e08c1f571fd6d99f8bfcbac24 Mon Sep 17 00:00:00 2001 From: lighta Date: Tue, 3 Dec 2013 12:22:00 -0500 Subject: [PATCH 3/6] Fix item_combo who wasn't checking for different index in case of same item required for combo (e.g 2890:2890,{ bonus bAgi,10; }) --- src/map/pc.c | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/map/pc.c b/src/map/pc.c index 9e13cddd43..b2c19bd0b3 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -8495,11 +8495,13 @@ int pc_checkcombo(struct map_session_data *sd, struct item_data *data) { continue; } + int *combo_idx = aMalloc(data->combos[i]->count); for( j = 0; j < data->combos[i]->count; j++ ) { int id = data->combos[i]->nameid[j]; bool found = false; - + for( k = 0; k < EQI_MAX; k++ ) { + bool do_continue = false; //used to continue that specific loop with some check that also use some loop index = sd->equip_index[k]; if( index < 0 ) continue; if( k == EQI_HAND_R && sd->equip_index[EQI_HAND_L] == index ) continue; @@ -8508,10 +8510,19 @@ int pc_checkcombo(struct map_session_data *sd, struct item_data *data) { if(!sd->inventory_data[index]) continue; + if(j>0){ + for (z = 0; z < data->combos[i]->count; z++) + if(combo_idx[z] == index) //we already have that index recorded + do_continue=true; + if(do_continue) + continue; + } + if ( itemdb_type(id) != IT_CARD ) { if ( sd->inventory_data[index]->nameid != id ) continue; + combo_idx[j] = index; found = true; break; } else { //Cards @@ -8520,6 +8531,7 @@ int pc_checkcombo(struct map_session_data *sd, struct item_data *data) { for (z = 0; z < sd->inventory_data[index]->slot; z++) { if (sd->status.inventory[index].card[z] != id) continue; + combo_idx[j] = index; found = true; break; } @@ -8528,6 +8540,7 @@ int pc_checkcombo(struct map_session_data *sd, struct item_data *data) { if( !found ) break;/* we haven't found all the ids for this combo, so we can return */ } + aFree(combo_idx); /* means we broke out of the count loop w/o finding all ids, we can move to the next combo */ if( j < data->combos[i]->count ) From c4890a49849f995cb70e8f41cc58c43c3d970a27 Mon Sep 17 00:00:00 2001 From: Cahyadi Ramadhan Togihon Date: Wed, 4 Dec 2013 00:55:52 +0700 Subject: [PATCH 4/6] * Follow up b307531, updating item_db_re.sql * Follow up 2524c69, compile problem on MSVS compiler Signed-off-by: Cahyadi Ramadhan Togihon --- sql-files/item_db_re.sql | 8 ++++---- src/map/pc.c | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql index 4b5bb43ec4..13f4ba11ba 100644 --- a/sql-files/item_db_re.sql +++ b/sql-files/item_db_re.sql @@ -5449,10 +5449,10 @@ REPLACE INTO `item_db_re` VALUES (11547,'Woe_Violet_Potion','Siege Purple Potion REPLACE INTO `item_db_re` VALUES (11548,'Woe_White_Potion','Siege White Potion',0,0,NULL,80,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal 10,0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (11549,'Woe_Blue_Potion','Siege Blue Potion',0,0,NULL,80,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal 0,10;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (11550,'Pumpkin_Cake','Pumpkin Cake',0,10,NULL,80,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal 5,5;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11551,'Savory_Herb_Salad','Savory Herb Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11552,'Apple_Carrot_Salad','Apple Carrot Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11553,'Casual_Stew','Casual Stew',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11554,'Golden_Roasted_Apple','Golden Roasted Apple',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11551,'Savory_Herb_Salad','Savory Herb Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_STRFOOD,180000,1;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11552,'Apple_Carrot_Salad','Apple Carrot Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_AGIFOOD,180000,1;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11553,'Casual_Stew','Casual Stew',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_VITFOOD,180000,1;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11554,'Golden_Roasted_Apple','Golden Roasted Apple',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_DEXFOOD,180000,1;',NULL,NULL); # REPLACE INTO `item_db_re` VALUES (11701,'Girl_Bunch_Of_Flower','Girl\'s Bouquet',0,20,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'itemheal rand(105,145),0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (11702,'Moon_Cookie','Moon Cookie',0,0,NULL,300,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'',NULL,NULL); diff --git a/src/map/pc.c b/src/map/pc.c index b2c19bd0b3..6268b543dc 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -8485,6 +8485,7 @@ int pc_checkcombo(struct map_session_data *sd, struct item_data *data) { int index, idx, success = 0; for( i = 0; i < data->combos_count; i++ ) { + int *combo_idx = aMalloc(data->combos[i]->count); /* ensure this isn't a duplicate combo */ if( sd->combos.bonus != NULL ) { int x; @@ -8495,7 +8496,6 @@ int pc_checkcombo(struct map_session_data *sd, struct item_data *data) { continue; } - int *combo_idx = aMalloc(data->combos[i]->count); for( j = 0; j < data->combos[i]->count; j++ ) { int id = data->combos[i]->nameid[j]; bool found = false; From 993fa35dd050545ccfd34e81f162ea9ed29468f8 Mon Sep 17 00:00:00 2001 From: nanakiwurtz Date: Wed, 4 Dec 2013 01:26:23 +0700 Subject: [PATCH 5/6] New items added. Source: http://forums.irowiki.org/showpost.php?p=1364909&postcount=585 Signed-off-by: nanakiwurtz (reverted from commit de12054bdbc7ca2f24f3373ff0b4f57a05ad1564) --- db/re/item_db.txt | 3 --- 1 file changed, 3 deletions(-) diff --git a/db/re/item_db.txt b/db/re/item_db.txt index aaa8b45f2a..36fc45844e 100644 --- a/db/re/item_db.txt +++ b/db/re/item_db.txt @@ -6527,9 +6527,6 @@ 13181,Novice_Shotgun,Novice Shotgun,4,0,,1000,80,,9,0,0x41000000,1,2,34,4,1,0,20,{},{},{} 13182,Novice_Gatling,Novice Gatling,4,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,19,{},{},{} 13183,Novice_Grenade_Launcher,Novice Grenade Launcher,4,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,21,{},{},{} -13194,Peace_Breaker,Peace Breaker,4,1,,1400,250,,,,0x41000000,63,2,2,3,120,,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{} -13196,Peace_Breaker,Peace Breaker,4,1,,1400,250,,,,0x41000000,63,2,2,3,120,,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{} -13197,Mini_Mei,Mini Mei,4,1,,2500,220,,,,0x41000000,63,2,2,2,106,,19,{},{},{} // Bullets 13200,Bullet,Bullet,10,1,,2,10,,,,0x41000000,63,2,32768,,1,,3,{},{},{} 13201,Silver_Bullet,Silver Bullet,10,15,,2,15,,,,0x41000000,63,2,32768,,1,,3,{ bonus bAtkEle,Ele_Holy; },{},{} From 3db1a6a80d2084e6ad4145b01b78025917641364 Mon Sep 17 00:00:00 2001 From: nanakiwurtz Date: Wed, 4 Dec 2013 01:58:22 +0700 Subject: [PATCH 6/6] New items added. Source: http://forums.irowiki.org/showpost.php?p=1364909&postcount=585 Signed-off-by: nanakiwurtz --- db/re/item_db.txt | 3 +++ sql-files/item_db_re.sql | 8 ++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/db/re/item_db.txt b/db/re/item_db.txt index 36fc45844e..aaa8b45f2a 100644 --- a/db/re/item_db.txt +++ b/db/re/item_db.txt @@ -6527,6 +6527,9 @@ 13181,Novice_Shotgun,Novice Shotgun,4,0,,1000,80,,9,0,0x41000000,1,2,34,4,1,0,20,{},{},{} 13182,Novice_Gatling,Novice Gatling,4,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,19,{},{},{} 13183,Novice_Grenade_Launcher,Novice Grenade Launcher,4,0,,1500,40,,9,0,0x41000000,1,2,34,4,1,0,21,{},{},{} +13194,Peace_Breaker,Peace Breaker,4,1,,1400,250,,,,0x41000000,63,2,2,3,120,,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{} +13196,Peace_Breaker,Peace Breaker,4,1,,1400,250,,,,0x41000000,63,2,2,3,120,,20,{ bonus bHit,-25; bonus bAspdRate,25; },{},{} +13197,Mini_Mei,Mini Mei,4,1,,2500,220,,,,0x41000000,63,2,2,2,106,,19,{},{},{} // Bullets 13200,Bullet,Bullet,10,1,,2,10,,,,0x41000000,63,2,32768,,1,,3,{},{},{} 13201,Silver_Bullet,Silver Bullet,10,15,,2,15,,,,0x41000000,63,2,32768,,1,,3,{ bonus bAtkEle,Ele_Holy; },{},{} diff --git a/sql-files/item_db_re.sql b/sql-files/item_db_re.sql index 13f4ba11ba..4b5bb43ec4 100644 --- a/sql-files/item_db_re.sql +++ b/sql-files/item_db_re.sql @@ -5449,10 +5449,10 @@ REPLACE INTO `item_db_re` VALUES (11547,'Woe_Violet_Potion','Siege Purple Potion REPLACE INTO `item_db_re` VALUES (11548,'Woe_White_Potion','Siege White Potion',0,0,NULL,80,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal 10,0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (11549,'Woe_Blue_Potion','Siege Blue Potion',0,0,NULL,80,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal 0,10;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (11550,'Pumpkin_Cake','Pumpkin Cake',0,10,NULL,80,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal 5,5;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11551,'Savory_Herb_Salad','Savory Herb Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_STRFOOD,180000,1;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11552,'Apple_Carrot_Salad','Apple Carrot Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_AGIFOOD,180000,1;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11553,'Casual_Stew','Casual Stew',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_VITFOOD,180000,1;',NULL,NULL); -REPLACE INTO `item_db_re` VALUES (11554,'Golden_Roasted_Apple','Golden Roasted Apple',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0; sc_start SC_DEXFOOD,180000,1;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11551,'Savory_Herb_Salad','Savory Herb Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11552,'Apple_Carrot_Salad','Apple Carrot Salad',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11553,'Casual_Stew','Casual Stew',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); +REPLACE INTO `item_db_re` VALUES (11554,'Golden_Roasted_Apple','Golden Roasted Apple',0,0,NULL,10,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'percentheal rand(20,30),0;',NULL,NULL); # REPLACE INTO `item_db_re` VALUES (11701,'Girl_Bunch_Of_Flower','Girl\'s Bouquet',0,20,NULL,50,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'itemheal rand(105,145),0;',NULL,NULL); REPLACE INTO `item_db_re` VALUES (11702,'Moon_Cookie','Moon Cookie',0,0,NULL,300,NULL,NULL,NULL,NULL,0xFFFFFFFF,63,2,NULL,NULL,NULL,NULL,NULL,'',NULL,NULL);