From 13c0bf2c8cd873ca5ed29c763a3daafa96c0a8ce Mon Sep 17 00:00:00 2001 From: momacabu Date: Sat, 22 Dec 2012 19:41:32 +0000 Subject: Community Contribution Time! * Fixed bugreport:6303: official servers now always reshuffle the dice emoticon. To disable change the configuration to 'no'. Thanks to Vianna for providing the information! * Fixed bugreport:7026: creating a guild and exiting in a short amount of time wouldn't save the guild properly. Thank you clydelion! * Fixed bugreport:7030: removed warning introduced by r16987. Thanks Mr. Brian and Sir BuildBot for pointing! * Fixed bugreport:7031: if a player crashed during warp it would cause OnTouch_ to not trigger anymore. Thanks to flaviojs (eA-r15185) for the fix and Napster for pointing out! * Fixed bugreport:7032: Clementia and Canto Candidus give an additional of +1 str/agi/dex each 10 job levels (from caster). Thanks solvent! git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@17034 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/atcommand.c | 2 +- src/map/npc.c | 2 ++ src/map/skill.c | 4 ++-- src/map/unit.c | 2 +- 4 files changed, 6 insertions(+), 4 deletions(-) (limited to 'src/map') diff --git a/src/map/atcommand.c b/src/map/atcommand.c index 2a57c0ccb..c8a9a62c5 100644 --- a/src/map/atcommand.c +++ b/src/map/atcommand.c @@ -7570,7 +7570,7 @@ ACMD_FUNC(mapflag) { clif_displaymessage(sd->fd,atcmd_output);\ return 0;\ } - char flag_name[100]; + unsigned char flag_name[100]; int flag=0,i; nullpo_retr(-1, sd); memset(flag_name, '\0', sizeof(flag_name)); diff --git a/src/map/npc.c b/src/map/npc.c index c3af52607..c11770a1e 100644 --- a/src/map/npc.c +++ b/src/map/npc.c @@ -830,6 +830,8 @@ int npc_touch_areanpc_sub(struct block_list *bl, va_list ap) pc_id = va_arg(ap,int); name = va_arg(ap,char*); + if( sd->state.warping ) + return 0; if( pc_ishiding(sd) ) return 0; if( pc_id == sd->bl.id ) diff --git a/src/map/skill.c b/src/map/skill.c index 2079ffd85..2ea3ceaa2 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -7632,8 +7632,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in case AB_CLEMENTIA: case AB_CANTO: { - int bless_lv = pc_checkskill(sd,AL_BLESSING); - int agi_lv = pc_checkskill(sd,AL_INCAGI); + int bless_lv = pc_checkskill(sd,AL_BLESSING) + (sd->status.job_level / 10); + int agi_lv = pc_checkskill(sd,AL_INCAGI) + (sd->status.job_level / 10); if( sd == NULL || sd->status.party_id == 0 || flag&1 ) clif_skill_nodamage(bl, bl, skillid, skilllv, sc_start(bl,type,100, (skillid == AB_CLEMENTIA)? bless_lv : (skillid == AB_CANTO)? agi_lv : skilllv, skill_get_time(skillid,skilllv))); diff --git a/src/map/unit.c b/src/map/unit.c index 91b9f9edd..07b728f47 100644 --- a/src/map/unit.c +++ b/src/map/unit.c @@ -2077,7 +2077,7 @@ int unit_remove_map_(struct block_list *bl, clr_type clrtype, const char* file, guild_reply_reqalliance(sd,sd->guild_alliance_account,0); if(sd->menuskill_id) sd->menuskill_id = sd->menuskill_val = 0; - if( sd->touching_id && !sd->state.warping ) // Only if the player isn't warping and there is a touching_id. + if( sd->touching_id ) npc_touchnext_areanpc(sd,true); // Check if warping and not changing the map. -- cgit v1.2.3-60-g2f50