From d923a94a3b12267712d2c2c33bfff66c9e51557f Mon Sep 17 00:00:00 2001 From: Inkfish Date: Tue, 27 Oct 2009 14:46:42 +0000 Subject: * Cast time of Emergency Call is doubled if you master of High Jump. * High Jump can't be used on PvP maps. * Fixed a potential null pointer from last commit. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14106 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/intif.c | 5 +++-- src/map/skill.c | 6 +++--- src/map/unit.c | 6 +++++- 3 files changed, 11 insertions(+), 6 deletions(-) (limited to 'src/map') diff --git a/src/map/intif.c b/src/map/intif.c index a663a226e..ff7c9f608 100644 --- a/src/map/intif.c +++ b/src/map/intif.c @@ -1377,10 +1377,11 @@ int intif_parse_questlog(int fd) int intif_parse_questsave(int fd) { - TBL_PC *sd = map_id2sd(RFIFOL(fd, 2)); + int cid = RFIFOL(fd, 2); + TBL_PC *sd = map_id2sd(cid); if( !RFIFOB(fd, 6) ) - ShowError("intif_parse_questsave: Failed to save quest(s) for character %d!\n", sd->status.char_id); + ShowError("intif_parse_questsave: Failed to save quest(s) for character %d!\n", cid); else if( sd ) sd->save_quest = false; diff --git a/src/map/skill.c b/src/map/skill.c index 6b19d23d6..008ea2284 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4747,9 +4747,9 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in { int x,y, dir = unit_getdir(src); - //Fails on noteleport maps, except for vs maps [Skotlex] - if(map[src->m].flag.noteleport && - !(map_flag_vs(src->m) || map_flag_gvg2(src->m)) + //Fails on noteleport maps, except for GvG and BG maps [Skotlex] + if( map[src->m].flag.noteleport && + !(map[src->m].flag.battleground || map_flag_gvg2(src->m) ) ) { x = src->x; y = src->y; diff --git a/src/map/unit.c b/src/map/unit.c index c75600180..56969f1db 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -1043,7 +1043,11 @@ int unit_skilluse_id2(struct block_list *src, int target_id, short skill_num, sh if( k > 2 ) k = 2; // ...but hard-limited to 300%. casttime += casttime * k; } - break; + break; + case GD_EMERGENCYCALL: //Emergency Call double cast when the user has learned Leap [Daegaladh] + if( sd && pc_checkskill(sd,TK_HIGHJUMP) ) + casttime *= 2; + break; } // moved here to prevent Suffragium from ending if skill fails -- cgit v1.2.3-60-g2f50