浏览代码

Corrected King's Grace behavior (fixes #1068)
* Users affected can no longer consume items or do physical attacks.

aleos89 9 年之前
父节点
当前提交
1ee4f445ab
共有 2 个文件被更改,包括 4 次插入1 次删除
  1. 3 1
      src/map/pc.c
  2. 1 0
      src/map/status.c

+ 3 - 1
src/map/pc.c

@@ -4736,6 +4736,7 @@ bool pc_isUseitem(struct map_session_data *sd,int n)
 		sd->sc.data[SC_KAGEHUMI] ||
 		sd->sc.data[SC_KAGEHUMI] ||
 		(sd->sc.data[SC_NOCHAT] && sd->sc.data[SC_NOCHAT]->val1&MANNER_NOITEM) ||
 		(sd->sc.data[SC_NOCHAT] && sd->sc.data[SC_NOCHAT]->val1&MANNER_NOITEM) ||
 		sd->sc.data[SC_HEAT_BARREL_AFTER] ||
 		sd->sc.data[SC_HEAT_BARREL_AFTER] ||
+		sd->sc.data[SC_KINGS_GRACE] ||
 		sd->sc.data[SC_SUHIDE]))
 		sd->sc.data[SC_SUHIDE]))
 		return false;
 		return false;
 	
 	
@@ -8703,7 +8704,8 @@ bool pc_can_attack( struct map_session_data *sd, int target_id ) {
 		(sd->sc.data[SC_VOICEOFSIREN] && sd->sc.data[SC_VOICEOFSIREN]->val2 == target_id) ||
 		(sd->sc.data[SC_VOICEOFSIREN] && sd->sc.data[SC_VOICEOFSIREN]->val2 == target_id) ||
 		sd->sc.data[SC_BLADESTOP] ||
 		sd->sc.data[SC_BLADESTOP] ||
 		sd->sc.data[SC_DEEPSLEEP] ||
 		sd->sc.data[SC_DEEPSLEEP] ||
-		(sd->sc.data[SC_GRAVITATION] && sd->sc.data[SC_GRAVITATION]->val3 == BCT_SELF) )
+		(sd->sc.data[SC_GRAVITATION] && sd->sc.data[SC_GRAVITATION]->val3 == BCT_SELF) ||
+		sd->sc.data[SC_KINGS_GRACE] )
 			return false;
 			return false;
 
 
 	return true;
 	return true;

+ 1 - 0
src/map/status.c

@@ -10569,6 +10569,7 @@ int status_change_start(struct block_list* src, struct block_list* bl,enum sc_ty
 				unit_skillcastcancel(bl, 0);
 				unit_skillcastcancel(bl, 0);
 		// Fall through
 		// Fall through
 		case SC_CURSEDCIRCLE_ATKER:
 		case SC_CURSEDCIRCLE_ATKER:
+		case SC_KINGS_GRACE:
 			unit_stop_attack(bl);
 			unit_stop_attack(bl);
 			if (type == SC_FREEZE || type == SC_STUN || type == SC_SLEEP || type == SC_STONE)
 			if (type == SC_FREEZE || type == SC_STUN || type == SC_SLEEP || type == SC_STONE)
 				break;
 				break;