瀏覽代碼

Fixed SC_CRYSTALIZE

Crystalize had the NoCastCond flag in status.yml, but no source side condition was implemented.
Actually this was wrong and it is unconditional.
Also it has been confirmed that the movement restriction is also applying for monsters, so also the movement restriction is unconditional.

Additionally synced pre-renewal and renewal flags in status.yml

Thanks to @Playtester
Lemongrass3110 2 月之前
父節點
當前提交
3127dfb799
共有 3 個文件被更改,包括 8 次插入10 次删除
  1. 6 2
      db/pre-re/status.yml
  2. 2 2
      db/re/status.yml
  3. 0 6
      src/map/status.cpp

+ 6 - 2
db/pre-re/status.yml

@@ -3827,8 +3827,8 @@ Body:
     Icon: EFST_COLD
     DurationLookup: SO_DIAMONDDUST
     States:
-      NoMoveCond: true
-      NoCastCond: true
+      NoMove: true
+      NoCast: true
       NoConsumeItem: true
       NoAttack: true
     Flags:
@@ -3839,11 +3839,15 @@ Body:
       RemoveOnLuxAnima: true
       BossResist: true
       StopWalking: true
+      StopWalking: true
+      StopCasting: true
+      SetStand: true
       Debuff: true
     Fail:
       Refresh: true
       Inspiration: true
       Warmer: true
+      Crystalize: true
   - Status: Striking
     Icon: EFST_STRIKING
     DurationLookup: SO_STRIKING

+ 2 - 2
db/re/status.yml

@@ -3981,8 +3981,8 @@ Body:
     Icon: EFST_COLD
     DurationLookup: SO_DIAMONDDUST
     States:
-      NoMoveCond: true
-      NoCastCond: true
+      NoMove: true
+      NoCast: true
       NoConsumeItem: true
       NoAttack: true
     Flags:

+ 0 - 6
src/map/status.cpp

@@ -5632,12 +5632,6 @@ void status_calc_state( block_list& bl, status_change& sc, std::shared_ptr<s_sta
 					// Does not do anything. SC_LONGING is just defined with SCS_NOMOVECOND to trigger a recalculation with the conditions under SC_DANCING above
 					break;
 
-				case SC_CRYSTALIZE:
-					if( bl.type != BL_MOB ){
-						restriction = true;
-					}
-					break;
-
 				default:
 					return false;
 			}