|
@@ -249,6 +249,7 @@ int pc_delspiritball(struct map_session_data *sd,int count,int type)
|
|
}
|
|
}
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
+
|
|
static int pc_check_banding( struct block_list *bl, va_list ap ) {
|
|
static int pc_check_banding( struct block_list *bl, va_list ap ) {
|
|
int *c, *b_sd;
|
|
int *c, *b_sd;
|
|
struct block_list *src;
|
|
struct block_list *src;
|
|
@@ -277,6 +278,7 @@ static int pc_check_banding( struct block_list *bl, va_list ap ) {
|
|
|
|
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
+
|
|
int pc_banding(struct map_session_data *sd, uint16 skill_lv) {
|
|
int pc_banding(struct map_session_data *sd, uint16 skill_lv) {
|
|
int c;
|
|
int c;
|
|
int b_sd[MAX_PARTY]; // In case of a full Royal Guard party.
|
|
int b_sd[MAX_PARTY]; // In case of a full Royal Guard party.
|
|
@@ -8203,6 +8205,10 @@ int pc_removecombo(struct map_session_data *sd, struct item_data *data ) {
|
|
cursor++;
|
|
cursor++;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /* check if combo requirements still fit */
|
|
|
|
+ if( pc_checkcombo( sd, data ) )
|
|
|
|
+ continue;
|
|
|
|
+
|
|
/* it's empty, we can clear all the memory */
|
|
/* it's empty, we can clear all the memory */
|
|
if( (sd->combos.count = cursor) == 0 ) {
|
|
if( (sd->combos.count = cursor) == 0 ) {
|
|
aFree(sd->combos.bonus);
|
|
aFree(sd->combos.bonus);
|