summaryrefslogtreecommitdiff
path: root/src/map/skill.c
diff options
context:
space:
mode:
authorzephyrus <zephyrus@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-03-13 04:03:37 +0000
committerzephyrus <zephyrus@54d463be-8e91-2dee-dedb-b68131a5f0ec>2008-03-13 04:03:37 +0000
commitb87d090446143bfafdc9e801f745edcb16d93767 (patch)
tree27041e48324d79829cdd290b5117cb5220a56cdc /src/map/skill.c
parent9f3181501f0d95ffcc37bcb6a816c36362d1b164 (diff)
downloadhercules-b87d090446143bfafdc9e801f745edcb16d93767.tar.gz
hercules-b87d090446143bfafdc9e801f745edcb16d93767.tar.bz2
hercules-b87d090446143bfafdc9e801f745edcb16d93767.tar.xz
hercules-b87d090446143bfafdc9e801f745edcb16d93767.zip
- Added a fix for Abracadabra, this skills allways should use minimum a Yellow Gem.
- Added some code "suggestion" to handle the new Barricades, please test it with: - @barricade <x> <y> <size> <direction> <killable> <Event Name> - @killbarricade <Event Name> - If x and y are -1, it will use your current position. - Direction 0 Vertical 1 Horizontal. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12352 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r--src/map/skill.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/map/skill.c b/src/map/skill.c
index 1c1b1ab7c..d1e230247 100644
--- a/src/map/skill.c
+++ b/src/map/skill.c
@@ -1236,10 +1236,13 @@ int skill_blown(struct block_list* src, struct block_list* target, int count, in
switch (target->type)
{
case BL_MOB:
- if (((TBL_MOB*)target)->class_ == MOBID_EMPERIUM)
+ {
+ struct mob_data* md = BL_CAST(BL_MOB, target);
+ if( md->class_ == MOBID_EMPERIUM || md->class_ == MOBID_BARRICADEA || md->class_ == MOBID_BARRICADEB )
return 0;
if(src != target && is_boss(target)) //Bosses can't be knocked-back
return 0;
+ }
break;
case BL_PC:
if(src != target && ((TBL_PC*)target)->special_state.no_knockback)
@@ -8111,7 +8114,12 @@ int skill_check_condition(struct map_session_data* sd, short skill, short lv, in
continue;
}
if(sc && sc->data[SC_INTOABYSS])
+ {
+ if( skill != SA_ABRACADABRA )
continue;
+ else if( --amount[i] < 1 )
+ amount[i] = 1; // Hocus Pocus allways use at least 1 gem
+ }
}
if((skill == AM_POTIONPITCHER ||