瀏覽代碼

Follow up to 9db667c (BSS fixed)
* Simplified the check (no need to check for ensemble and Adoramus separately)
* Fixed PR_BENEDICTIO not working at all
* Fixed chorus skills and WZ_COMET only counting to 1 rather than MAX_PARTY

Playtester 9 年之前
父節點
當前提交
5d7d994ca0
共有 1 個文件被更改,包括 7 次插入9 次删除
  1. 7 9
      src/map/skill.c

+ 7 - 9
src/map/skill.c

@@ -14168,15 +14168,13 @@ int skill_check_condition_char_sub (struct block_list *bl, va_list ap)
 	skill_id = va_arg(ap,int);
 	inf2 = skill_get_inf2(skill_id);
 
-	if (skill_id == PR_BENEDICTIO && *c >= 2) // Check for two companions for Benedictio. [Skotlex]
-		return 0;
-	else if (skill_id == AB_ADORAMUS && *c >= 1) // Check for a partner for Adoramus.
-		return 0;
-	else if (inf2&INF2_ENSEMBLE_SKILL && *c >= 1) // Check for a partner for ensembles.
-		return 0;
-	else if ((inf2&INF2_CHORUS_SKILL || skill_id == WL_COMET) && *c == MAX_PARTY) // Check for partners for Chorus or Comet; Cap if the entire party is accounted for.
-		return 0;
-	else if (*c >= 1) // Check for all other cases.
+	if (skill_id == PR_BENEDICTIO)
+		if(*c >= 2) // Check for two companions for Benedictio. [Skotlex]
+			return 0;
+	else if ((inf2&INF2_CHORUS_SKILL || skill_id == WL_COMET))
+		if(*c == MAX_PARTY) // Check for partners for Chorus or Comet; Cap if the entire party is accounted for.
+			return 0;
+	else if (*c >= 1) // Check for one companion for all other cases.
 		return 0;
 
 	if (bl == src)