瀏覽代碼

- gm_skill_unconditional setting now also overrides skill_partner_check setting.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@5612 54d463be-8e91-2dee-dedb-b68131a5f0ec
skotlex 19 年之前
父節點
當前提交
f5ff59a033
共有 2 個文件被更改,包括 13 次插入5 次删除
  1. 2 0
      Changelog-Trunk.txt
  2. 11 5
      src/map/skill.c

+ 2 - 0
Changelog-Trunk.txt

@@ -5,6 +5,8 @@ IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.  EV
 GOES INTO TRUNK AND WILL BE MERGED INTO STABLE BY VALARIS AND WIZPUTER. -- VALARIS
 
 2006/03/15
+	* gm_skill_unconditional setting now also overrides skill_partner_check
+	  setting. [Skotlex]
 	* Emulated strtok_r functions to work strictly with ANSI compilers. [Lance]
 	* Added battle config options item_rate_adddrop, item_drop_add_min and
 	  item_drop_add_max to control drop rate of card-acquired loot bonuses.

+ 11 - 5
src/map/skill.c

@@ -3751,7 +3751,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
 
 	case CG_MOONLIT:		/* 月明りの泉に落ちる花びら */
 		clif_skill_nodamage(src,bl,skillid,skilllv,1);
-		if (sd && battle_config.player_skill_partner_check) {
+		if (sd && battle_config.player_skill_partner_check &&
+			(!battle_config.gm_skilluncond || pc_isGM(sd) < battle_config.gm_skilluncond)) {
 			skill_check_pc_partner(sd, skillid, &skilllv, 1, 1);
 		} else
 			skill_moonlit(bl, NULL, skilllv); //The knockback must be invoked before starting the effect which places down the map cells. [Skotlex]
@@ -7887,7 +7888,9 @@ int skill_check_condition(struct map_session_data *sd,int type)
 		break;
 	case PR_BENEDICTIO:				/* ?ケ??~福 */
 		{
-			if (!battle_config.player_skill_partner_check)
+			if (!battle_config.player_skill_partner_check ||
+				(battle_config.gm_skilluncond && pc_isGM(sd) >= battle_config.gm_skilluncond)
+			)
 				break; //No need to do any partner checking [Skotlex]
 			if (!(type&1))
 			{	//Started casting.
@@ -8623,8 +8626,9 @@ int skill_use_id (struct map_session_data *sd, int target_id, int skill_num, int
 	case BD_SIEGFRIED:				/* 不死?gのジ?クフリ?ド */
 	case CG_MOONLIT:				/* 月明りの?�ノ落ちる花びら */
 		{
-			if (battle_config.player_skill_partner_check)
-			{
+			if (battle_config.player_skill_partner_check &&
+				(!battle_config.gm_skilluncond || pc_isGM(sd) < battle_config.gm_skilluncond)
+			) {
 				if (skill_check_pc_partner(sd, skill_num, &skill_lv, 1, 0) < 1) //Note that skill_lv is automatically updated.
 				{
 					clif_skill_fail(sd,skill_num,0,0);
@@ -10018,7 +10022,9 @@ struct skill_unit_group *skill_initunitgroup(struct block_list *src,
 		sc_start4(src,SC_DANCING,100,skillid,(int)group,0,(i&UF_ENSEMBLE?BCT_SELF:0),skill_get_time(skillid,skilllv)+1000);
 		//?≡tスキルは相方をダンス?�ヤにする
 		if (sd && i&UF_ENSEMBLE &&
-			battle_config.player_skill_partner_check) {
+			battle_config.player_skill_partner_check &&
+			(!battle_config.gm_skilluncond || pc_isGM(sd) < battle_config.gm_skilluncond)
+			) {
 				skill_check_pc_partner(sd, skillid, &skilllv, 1, 1);
 		}
 	}