summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/map/battle.c4
-rw-r--r--src/map/script.c14
-rw-r--r--src/map/skill.c2
3 files changed, 11 insertions, 9 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index e4f4e6679..f9472692e 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -5273,6 +5273,10 @@ struct Damage battle_calc_weapon_attack(struct block_list *src,struct block_list
ATK_ADD(10*sd->status.inventory[index].refine);
}
}
+ //Card Fix, tsd side
+ if ( tsd ) { //if player on player then it was already measured above
+ wd.damage = battle->calc_cardfix(BF_WEAPON, src, target, nk, s_ele, s_ele_, wd.damage, (flag.lh ? 1 : 0), wd.flag);
+ }
#endif
if( flag.infdef ) { //Plants receive 1 damage when hit
diff --git a/src/map/script.c b/src/map/script.c
index 235b7b8d5..39f8a7b63 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -3387,15 +3387,13 @@ void script_free_code(struct script_code* code)
{
nullpo_retv(code);
- if( code->instances )
+ if (code->instances)
script->stop_instances(code);
- else {
- script->free_vars(code->local.vars);
- if( code->local.arrays )
- code->local.arrays->destroy(code->local.arrays,script->array_free_db);
- }
- aFree( code->script_buf );
- aFree( code );
+ script->free_vars(code->local.vars);
+ if (code->local.arrays)
+ code->local.arrays->destroy(code->local.arrays,script->array_free_db);
+ aFree(code->script_buf);
+ aFree(code);
}
/// Creates a new script state.
diff --git a/src/map/skill.c b/src/map/skill.c
index 31b8384db..a351425e1 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -3947,7 +3947,7 @@ int skill_castend_damage_id(struct block_list* src, struct block_list *bl, uint1
case MS_MAGNUM:
if( flag&1 ) {
//Damage depends on distance, so add it to flag if it is > 1
- skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag|distance_bl(src, bl));
+ skill->attack(skill->get_type(skill_id), src, src, bl, skill_id, skill_lv, tick, flag|SD_ANIMATION|distance_bl(src, bl));
}
break;