summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorshadow <shadow@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-03-01 22:46:03 +0000
committershadow <shadow@54d463be-8e91-2dee-dedb-b68131a5f0ec>2009-03-01 22:46:03 +0000
commitc18d4eaa0335d8c873a87debb8cbd0a60bfcb436 (patch)
tree55547cc3965c75daccc79637cd47f13f197d3f55 /src
parenteab80afc285eb803d4f48bd2eab9e68b607ad281 (diff)
downloadhercules-c18d4eaa0335d8c873a87debb8cbd0a60bfcb436.tar.gz
hercules-c18d4eaa0335d8c873a87debb8cbd0a60bfcb436.tar.bz2
hercules-c18d4eaa0335d8c873a87debb8cbd0a60bfcb436.tar.xz
hercules-c18d4eaa0335d8c873a87debb8cbd0a60bfcb436.zip
Fixes from 2008/10/13 bugreport:2077 (Only commiting because nobody did until now and those bugs would get lost)
* Fixed monster's Spiral Pierce, now it is always blocked by Pneuma. * Fixed Monk Absorb Spirits mana recovery per spirit absorbed, 7, not 10. * Fixed Monk spirit balls not being removed on death (like happens with gunslingers). * Fixed Swordman Auto-Berserk sp cost, 1, not 5. Should be 0, but eA wont allow the skill to work. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13555 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src')
-rw-r--r--src/map/battle.c3
-rw-r--r--src/map/pc.c2
-rw-r--r--src/map/skill.c2
3 files changed, 5 insertions, 2 deletions
diff --git a/src/map/battle.c b/src/map/battle.c
index b1bc7287d..b0ad2f075 100644
--- a/src/map/battle.c
+++ b/src/map/battle.c
@@ -329,6 +329,9 @@ int battle_calc_damage(struct block_list *src,struct block_list *bl,int damage,i
if( sc->data[SC_PNEUMA] && (flag&(BF_MAGIC|BF_LONG)) == BF_LONG )
return 0;
+
+ if( sc->data[SC_PNEUMA] && src->type == BL_MOB && skill_num == LK_SPIRALPIERCE)
+ return 0; //Mob's Spiral Pierce is always blocked by pneuma [Brain]
if( (sce=sc->data[SC_AUTOGUARD]) && flag&BF_WEAPON && !(skill_get_nk(skill_num)&NK_NO_CARDFIX_ATK) && rand()%100 < sce->val2 )
{
diff --git a/src/map/pc.c b/src/map/pc.c
index 00827a055..ee9dc1878 100644
--- a/src/map/pc.c
+++ b/src/map/pc.c
@@ -5266,7 +5266,7 @@ int pc_dead(struct map_session_data *sd,struct block_list *src)
npc_script_event(sd,NPCE_DIE);
- if ( sd && sd->spiritball && (sd->class_&MAPID_BASEMASK)==MAPID_GUNSLINGER ) // maybe also monks' spiritballs ?
+ if ( sd && sd->spiritball ) // maybe also monks' spiritballs ?
pc_delspiritball(sd,sd->spiritball,0);
if (src)
diff --git a/src/map/skill.c b/src/map/skill.c
index f5fb90674..159f445ea 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -3662,7 +3662,7 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in
i = 0;
if (dstsd && dstsd->spiritball && (sd == dstsd || map_flag_vs(src->m)) && (dstsd->class_&MAPID_BASEMASK)!=MAPID_GUNSLINGER)
{ // split the if for readability, and included gunslingers in the check so that their coins cannot be removed [Reddozen]
- i = dstsd->spiritball * 10;
+ i = dstsd->spiritball * 7;
pc_delspiritball(dstsd,dstsd->spiritball,0);
} else if (dstmd && !(tstatus->mode&MD_BOSS) && rand() % 100 < 20)
{ // check if target is a monster and not a Boss, for the 20% chance to absorb 2 SP per monster's level [Reddozen]