|
@@ -535,12 +535,16 @@ int64 battle_attr_fix(struct block_list *src, struct block_list *target, int64 d
|
|
#else
|
|
#else
|
|
damage += (int64)(damage * 50 / 100);
|
|
damage += (int64)(damage * 50 / 100);
|
|
#endif
|
|
#endif
|
|
- if (tsc->data[SC_CRYSTALIZE])
|
|
|
|
|
|
+ if (tsc->data[SC_CRYSTALIZE]) {
|
|
|
|
+ uint16 skill_id = battle_getcurrentskill(src);
|
|
|
|
+
|
|
|
|
+ if (skill_get_type(skill_id)&BF_MAGIC)
|
|
#ifdef RENEWAL
|
|
#ifdef RENEWAL
|
|
- ratio += 50;
|
|
|
|
|
|
+ ratio += 50;
|
|
#else
|
|
#else
|
|
- damage += (int64)(damage * 50 / 100);
|
|
|
|
|
|
+ damage += (int64)(damage * 50 / 100);
|
|
#endif
|
|
#endif
|
|
|
|
+ }
|
|
break;
|
|
break;
|
|
case ELE_WATER:
|
|
case ELE_WATER:
|
|
if (tsc->data[SC_FIRE_INSIGNIA])
|
|
if (tsc->data[SC_FIRE_INSIGNIA])
|