diff options
author | momacabu <momacabu@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-12-22 19:41:32 +0000 |
---|---|---|
committer | momacabu <momacabu@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2012-12-22 19:41:32 +0000 |
commit | 13c0bf2c8cd873ca5ed29c763a3daafa96c0a8ce (patch) | |
tree | da80ec5e061d804a851c2ed7de54162bc3fe21c3 /src | |
parent | ca6687180056b8f89d7f16827dc22eeacce5f211 (diff) | |
download | hercules-13c0bf2c8cd873ca5ed29c763a3daafa96c0a8ce.tar.gz hercules-13c0bf2c8cd873ca5ed29c763a3daafa96c0a8ce.tar.bz2 hercules-13c0bf2c8cd873ca5ed29c763a3daafa96c0a8ce.tar.xz hercules-13c0bf2c8cd873ca5ed29c763a3daafa96c0a8ce.zip |
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
Diffstat (limited to 'src')
-rw-r--r-- | src/char/int_guild.c | 4 | ||||
-rw-r--r-- | src/map/atcommand.c | 2 | ||||
-rw-r--r-- | src/map/npc.c | 2 | ||||
-rw-r--r-- | src/map/skill.c | 4 | ||||
-rw-r--r-- | src/map/unit.c | 2 |
5 files changed, 8 insertions, 6 deletions
diff --git a/src/char/int_guild.c b/src/char/int_guild.c index 661d57c1f..0966d2344 100644 --- a/src/char/int_guild.c +++ b/src/char/int_guild.c @@ -245,7 +245,7 @@ int inter_guild_tosql(struct guild *g,int flag) m->hair, m->hair_color, m->gender, m->class_, m->lv, m->exp, m->exp_payper, m->online, m->position, esc_name) ) Sql_ShowDebug(sql_handle); - if (m->modified & GS_MEMBER_NEW) + if (m->modified&GS_MEMBER_NEW || new_guild == 1) { if( SQL_ERROR == Sql_Query(sql_handle, "UPDATE `%s` SET `guild_id` = '%d' WHERE `char_id` = '%d'", char_db, g->guild_id, m->char_id) ) @@ -1185,7 +1185,7 @@ int mapif_parse_CreateGuild(int fd,int account_id,char *name,struct guild_member g->guild_id= -1; //Request to create guild. // Create the guild - if (!inter_guild_tosql(g,GS_BASIC|GS_POSITION|GS_SKILL)) { + if (!inter_guild_tosql(g,GS_BASIC|GS_POSITION|GS_SKILL|GS_MEMBER)) { //Failed to Create guild.... ShowError("Failed to create Guild %s (Guild Master: %s)\n", g->name, g->master); mapif_guild_created(fd,account_id,NULL); 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. |