Ver Fonte

Fixed White Imprison not going off, bugreport:5249

git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15714 54d463be-8e91-2dee-dedb-b68131a5f0ec
shennetsind há 13 anos atrás
pai
commit
9fd4c7d753
2 ficheiros alterados com 9 adições e 2 exclusões
  1. 2 2
      src/map/status.c
  2. 7 0
      src/map/unit.c

+ 2 - 2
src/map/status.c

@@ -8493,8 +8493,7 @@ int status_change_end_(struct block_list* bl, enum sc_type type, int tid, const
 		case SC_WHITEIMPRISON:
 			if( tid == -1 )
 				break; // Terminated by Damage
-			clif_damage(bl,bl,0,0,0,400*sce->val1,0,0,0);
-			status_zap(bl,400*sce->val1,0);
+			status_fix_damage(bl,bl,400*sce->val1,clif_damage(bl,bl,gettick(),0,0,400*sce->val1,0,0,0));
 			break;
 		case SC_WUGDASH:
 			{
@@ -8570,6 +8569,7 @@ int status_change_end_(struct block_list* bl, enum sc_type type, int tid, const
 	case SC_SLEEP:
 	case SC_DEEPSLEEP:
 	case SC_BURNING:
+	case SC_WHITEIMPRISON:
 		sc->opt1 = 0;
 		break;
 

+ 7 - 0
src/map/unit.c

@@ -1119,6 +1119,13 @@ int unit_skilluse_id2(struct block_list *src, int target_id, short skill_num, sh
 				return 0;
 			}
 			break;
+		case WL_WHITEIMPRISON:
+			if( battle_check_target(src,target,BCT_SELF|BCT_ENEMY) < 0 ) {
+				clif_skill_fail(sd,skill_num,0xb,0);
+				return 0;
+			}
+			break;
+
 		}
 		if (!skill_check_condition_castbegin(sd, skill_num, skill_lv))
 			return 0;