summaryrefslogtreecommitdiff
path: root/src/map/battle.c
diff options
context:
space:
mode:
authorDracoRPG <DracoRPG@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-07-24 19:29:23 +0000
committerDracoRPG <DracoRPG@54d463be-8e91-2dee-dedb-b68131a5f0ec>2007-07-24 19:29:23 +0000
commit2a36020cb4786e41ed7f5f02cc77a8522537c4bd (patch)
tree158e3d57fb33038c0b995abf974f0d7cb43c1c12 /src/map/battle.c
parentd9c231e137254734e780570b48741205868be4b7 (diff)
downloadhercules-2a36020cb4786e41ed7f5f02cc77a8522537c4bd.tar.gz
hercules-2a36020cb4786e41ed7f5f02cc77a8522537c4bd.tar.bz2
hercules-2a36020cb4786e41ed7f5f02cc77a8522537c4bd.tar.xz
hercules-2a36020cb4786e41ed7f5f02cc77a8522537c4bd.zip
Venom Splasher and Gloria Domini fixes and updates
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10907 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/battle.c')
-rw-r--r--src/map/battle.c28
1 files changed, 13 insertions, 15 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index 0a8fb57ed..b6d9dfd89 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -528,9 +528,8 @@ int battle_calc_gvg_damage(struct block_list *src,struct block_list *bl,int dama
if(md && md->guardian_data) {
if(class_ == MOBID_EMPERIUM && flag&BF_SKILL)
- //SKill inmunity.
+ //Skill immunity.
switch (skill_num) {
- case PA_PRESSURE:
case MO_TRIPLEATTACK:
case HW_GRAVITATION:
break;
@@ -1067,8 +1066,8 @@ static struct Damage battle_calc_weapon_attack(
if (skill_num && !flag.hit)
switch(skill_num)
{
- case AS_SPLASHER: //Reports say it always hits?
- if (wflag) //Only if you were the one exploding.
+ case AS_SPLASHER:
+ if (wflag) // Always hits the one exploding.
break;
flag.hit = 1;
break;
@@ -1247,14 +1246,14 @@ static struct Damage battle_calc_weapon_attack(
(sc && sc->data[SC_WEAPONPERFECTION].timer!=-1?8:0);
if (flag.arrow && sd)
switch(sd->status.weapon) {
- case W_BOW:
- case W_REVOLVER:
- case W_SHOTGUN:
- case W_GATLING:
- case W_GRENADE:
- break;
- default:
- i |= 16; // for ex. shuriken must not be influenced by DEX
+ case W_BOW:
+ case W_REVOLVER:
+ case W_SHOTGUN:
+ case W_GATLING:
+ case W_GRENADE:
+ break;
+ default:
+ i |= 16; // for ex. shuriken must not be influenced by DEX
}
wd.damage = battle_calc_base_damage(sstatus, &sstatus->rhw, sc, tstatus->size, sd, i);
if (flag.lh)
@@ -1477,15 +1476,13 @@ static struct Damage battle_calc_weapon_attack(
break;
case AS_SPLASHER:
i = 400+50*skill_lv;
- if (sd) i += 20*pc_checkskill(sd,AS_POISONREACT);
- if (wflag>1) i/=wflag; //Splash damage is half.
+ if (wflag>1) i /= 4; // FIXME: Should be 25% of damage inflicted to target, not 25% of skillratio bonus
skillratio += i;
break;
case ASC_BREAKER:
skillratio += 100*skill_lv-100;
break;
case PA_SACRIFICE:
- //40% less effective on siege maps. [Skotlex]
skillratio += 10*skill_lv-10;
break;
case PA_SHIELDCHAIN:
@@ -1615,6 +1612,7 @@ static struct Damage battle_calc_weapon_attack(
if(sc->data[SC_EDP].timer != -1 &&
skill_num != ASC_BREAKER &&
skill_num != ASC_METEORASSAULT &&
+ skill_num != AS_SPLASHER &&
skill_num != AS_VENOMKNIFE)
ATK_ADDRATE(sc->data[SC_EDP].val3);
}