diff options
author | glighta <glighta@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-11-12 01:54:56 +0000 |
---|---|---|
committer | glighta <glighta@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-11-12 01:54:56 +0000 |
commit | 94898ebfcf8ccdae5b064fa27f843136c19e2a65 (patch) | |
tree | 144b6104b30e2df0bcaa77b3ef096af206d569f7 /src/map/skill.c | |
parent | 0f715fc0dbaa5c2327a951d107e971f3d7ebd216 (diff) | |
download | hercules-94898ebfcf8ccdae5b064fa27f843136c19e2a65.tar.gz hercules-94898ebfcf8ccdae5b064fa27f843136c19e2a65.tar.bz2 hercules-94898ebfcf8ccdae5b064fa27f843136c19e2a65.tar.xz hercules-94898ebfcf8ccdae5b064fa27f843136c19e2a65.zip |
-Upd mob_count to read a 10 modib list to chk if present or not
-Add UNLIMITED_HUMMING implementation, now increase sp requirement and make cast unbreakable
-Upd Group dance overlaping A and B, previous chk wasn't ending other properly (if fail was skipping other)
-Upd OdinPower effect
-Fix Cursed-Circle, shoudn't be able to cast near Emp,Stones bugreport:6457
-Fix Cursed-Circle wasn't remove when caster was being warped
-Small docs upd
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16918 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/skill.c')
-rw-r--r-- | src/map/skill.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/map/skill.c b/src/map/skill.c index 35d213f93..89a9fa658 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -12847,6 +12847,15 @@ int skill_check_condition_castbegin(struct map_session_data* sd, short skill, sh } break; case SR_CURSEDCIRCLE: + if (map_flag_gvg(sd->bl.m)) { + if (map_foreachinrange(mob_count_sub, &sd->bl, skill_get_splash(skill, lv), BL_MOB, + MOBID_EMPERIUM, MOBID_GUARIDAN_STONE1, MOBID_GUARIDAN_STONE2)) { + char output[128]; + sprintf(output, "You're too close to a stone or emperium to do this skill"); + clif_colormes(sd, COLOR_RED, output); + return 0; + } + } if( sd->spiritball > 0 ) sd->spiritball_old = require.spiritball = sd->spiritball; else { @@ -13374,6 +13383,8 @@ struct skill_condition skill_get_requirement(struct map_session_data* sd, short if( sc ) { if( sc->data[SC__LAZINESS] ) req.sp += req.sp + sc->data[SC__LAZINESS]->val1 * 10; + if (sc->data[SC_UNLIMITEDHUMMINGVOICE]) + req.sp += req.sp * sc->data[SC_UNLIMITEDHUMMINGVOICE]->val2 / 100; if( sc->data[SC_RECOGNIZEDSPELL] ) req.sp += req.sp / 4; } |