Skip to content

Commit

Permalink
Fix Vacuum Extrem resistance
Browse files Browse the repository at this point in the history
In renewal Safetywall Hits Blocked depending also on Skill Level
  • Loading branch information
Michieru committed May 26, 2015
1 parent cd8e68b commit 4cca156
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 6 deletions.
2 changes: 1 addition & 1 deletion db/re/skill_cast_db.txt
Expand Up @@ -1565,7 +1565,7 @@
//-- SO_WARMER
2452,2200:2400:2600:2800:3000,1000,0,40000:45000:50000:55000:60000,30000,35000:40000:45000:50000:55000,1800:1600:1400:1200:1000
//-- SO_VACUUM_EXTREME
2453,1000:1500:2000:2500:3000,1000,0,4000:6000:8000:10000:12000,1000,5000,-1
2453,1000:1500:2000:2500:3000,1000,0,4000:6000:8000:10000:12000,0,5000,-1
//-- SO_VARETYR_SPEAR
2454,2200:2400:2600:2800:3000,1000,0,0,2200:2400:2600:2800:3000,2000,1800:1600:1400:1200:1000
//-- SO_ARULLO
Expand Down
2 changes: 2 additions & 0 deletions src/map/battle.c
Expand Up @@ -2788,6 +2788,8 @@ int64 battle_calc_damage(struct block_list *src,struct block_list *bl,struct Dam
group->val2 -= (int)cap_value(damage,INT_MIN,INT_MAX);
} else
skill->del_unitgroup(group,ALC_MARK);
if (--group->val3<=0)
skill->del_unitgroup(group,ALC_MARK);
#else
if (--group->val2<=0)
skill->del_unitgroup(group,ALC_MARK);
Expand Down
6 changes: 4 additions & 2 deletions src/map/skill.c
Expand Up @@ -11078,6 +11078,7 @@ struct skill_unit_group* skill_unitsetting(struct block_list *src, uint16 skill_
* According to data provided in RE, SW life is equal to 3 times caster's health
**/
val2 = status_get_max_hp(src) * 3;
val3 = skill_lv+1;
#else
val2 = skill_lv+1;
#endif
Expand Down Expand Up @@ -11789,7 +11790,7 @@ int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *bl, int6
struct skill_unit_group *sg;
struct block_list *ss;
TBL_PC* tsd;
struct status_data *tstatus;
struct status_data *tstatus, *bst;
struct status_change *tsc, *ssc;
struct skill_unit_group_tickset *ts;
enum sc_type type;
Expand All @@ -11813,6 +11814,7 @@ int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *bl, int6
return 0;

tstatus = status->get_status_data(bl);
bst = status->get_base_status(bl);
type = status->skill2sc(sg->skill_id);
skill_id = sg->skill_id;

Expand Down Expand Up @@ -12463,7 +12465,7 @@ int skill_unit_onplace_timer(struct skill_unit *src, struct block_list *bl, int6
if (tsc && (tsc->data[SC_HALLUCINATIONWALK] || tsc->data[SC_VACUUM_EXTREME])) {
return 0;
} else {
sg->limit -= 100 * tstatus->str/20;
sg->limit -= 1000 * bst->str/20;
sc_start(ss, bl, SC_VACUUM_EXTREME, 100, sg->skill_lv, sg->limit);

if ( !map_flag_gvg(bl->m) && !map->list[bl->m].flag.battleground && !is_boss(bl) ) {
Expand Down
3 changes: 0 additions & 3 deletions src/map/status.c
Expand Up @@ -6517,9 +6517,6 @@ int status_get_sc_def(struct block_list *src, struct block_list *bl, enum sc_typ
case SC_COLD:
tick_def2 = bst->vit*100 + status->get_lv(bl)*20;
break;
case SC_VACUUM_EXTREME:
tick_def2 = bst->str*50;
break;
case SC_MANDRAGORA:
sc_def = (st->vit + st->luk)*20;
break;
Expand Down

0 comments on commit 4cca156

Please sign in to comment.