summaryrefslogtreecommitdiff
path: root/src/map/battle.c
diff options
context:
space:
mode:
authortoms <toms@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-28 13:40:55 +0000
committertoms <toms@54d463be-8e91-2dee-dedb-b68131a5f0ec>2006-08-28 13:40:55 +0000
commit998c5616368212ebfd9d46d548a29bab557d84ce (patch)
tree9ed569ab23c2ce1e48f0c1c776fd6b549b27f38f /src/map/battle.c
parent7bfc54bd1b4ea432ce7ba412e5280a990fde34fb (diff)
downloadhercules-998c5616368212ebfd9d46d548a29bab557d84ce.tar.gz
hercules-998c5616368212ebfd9d46d548a29bab557d84ce.tar.bz2
hercules-998c5616368212ebfd9d46d548a29bab557d84ce.tar.xz
hercules-998c5616368212ebfd9d46d548a29bab557d84ce.zip
Applied Mpeg's work on GS ( http://gpegon.free.fr/ea/gunslinger_08-28-06_mpeg.txt )
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@8513 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/battle.c')
-rw-r--r--src/map/battle.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index 4289b76b2..28c8e4c4c 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -857,7 +857,6 @@ static struct Damage battle_calc_weapon_attack(
}
wd.flag=(wd.flag&~BF_RANGEMASK)|BF_LONG;
break;
- case GS_MAGICALBULLET:
case HT_PHANTASMIC:
//Since these do not consume ammo, they need to be explicitly set as arrow attacks.
flag.arrow = 1;
@@ -881,6 +880,10 @@ static struct Damage battle_calc_weapon_attack(
case NPC_GRANDDARKNESS:
case NJ_HUUMA:
case NJ_TATAMIGAESHI:
+ case GS_FLING:
+ case GS_TRIPLEACTION:
+ case GS_BULLSEYE:
+ case GS_MAGICALBULLET:
wd.flag=(wd.flag&~BF_RANGEMASK)|BF_LONG;
break;
@@ -1505,13 +1508,17 @@ static struct Damage battle_calc_weapon_attack(
break;
case GS_BULLSEYE:
skillratio += 400;
+ flag.cardfix = 0;
break;
case GS_TRACKING:
- skillratio += 60*skill_lv;
+ // Where does this damage calculation come from ? Reverse the changes if necessary (or else delete me)
+ /*skillratio += 60*skill_lv;
if (skill_lv == 2) skillratio += 20;
if (skill_lv == 3) skillratio += 80;
if (skill_lv >= 4) skillratio += 60*(skill_lv-3);
if (skill_lv == 10) skillratio += 80;
+ break;*/
+ skillratio += 100 *(skill_lv+1);
break;
case GS_PIERCINGSHOT:
skillratio += 20*skill_lv;
@@ -1520,16 +1527,16 @@ static struct Damage battle_calc_weapon_attack(
skillratio += 10*skill_lv;
break;
case GS_DESPERADO:
- skillratio += 50*skill_lv - 50;
+ skillratio += 50*(skill_lv-1);
break;
case GS_DUST:
skillratio += 50*skill_lv;
break;
case GS_FULLBUSTER:
- skillratio += 200 + 100*skill_lv;
+ skillratio += 100*(skill_lv+2);
break;
case GS_SPREADATTACK:
- skillratio += 20*skill_lv-20;
+ skillratio += 20*(skill_lv-1);
break;
case NJ_HUUMA:
skillratio += 50 + 150*skill_lv;