From 93dca33bf53ddeba191f553e816ba7bb72774cc0 Mon Sep 17 00:00:00 2001 From: skotlex Date: Thu, 27 Jul 2006 02:55:24 +0000 Subject: - Applied the necessary changes to make @partyoption reflect it's changes on the alt+p window. - Some code indentation cleanups. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@7905 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/battle.c | 4 ++-- src/map/charsave.c | 9 +++------ src/map/chat.c | 2 +- src/map/guild.c | 13 +++++-------- src/map/mob.c | 4 ++-- src/map/party.c | 11 ++++++++--- 6 files changed, 21 insertions(+), 22 deletions(-) (limited to 'src') diff --git a/src/map/battle.c b/src/map/battle.c index f8f16c2b1..50bde0a58 100644 --- a/src/map/battle.c +++ b/src/map/battle.c @@ -2317,7 +2317,7 @@ struct Damage battle_calc_magic_attack( sd->ignore_mdef_ele & (1<def_ele) || sd->ignore_mdef_race & (1<race) || sd->ignore_mdef_race & (is_boss(target)?1<def_ele, tstatus->ele_lv); if (sd && flag.cardfix) { - short cardfix=100; short t_class = status_get_class(target); + short cardfix=100; cardfix=cardfix*(100+sd->magic_addrace[tstatus->race])/100; if (flag.elefix) diff --git a/src/map/charsave.c b/src/map/charsave.c index 4dcb59ecc..0c55164cb 100644 --- a/src/map/charsave.c +++ b/src/map/charsave.c @@ -26,7 +26,6 @@ struct mmo_charstatus *charsave_loadchar(int charid){ char *str_p; friends = 0; -// ShowDebug("charsave_loadchar : charid = %d | hd->master->status.char_id = %d\n", charid) ; c = (struct mmo_charstatus *)aCalloc(1,sizeof(struct mmo_charstatus)); if(charid <= 0){ @@ -36,7 +35,7 @@ struct mmo_charstatus *charsave_loadchar(int charid){ } // add homun_id [albator] //Tested, Mysql 4.1.9+ has no problems with the long query, the buf is 65k big and the sql server needs for it 0.00009 secs on an athlon xp 2400+ WinXP (1GB Mem) .. [Sirius] - sprintf(tmp_sql, "SELECT `char_id`,`account_id`,`char_num`,`name`,`class`,`base_level`,`job_level`,`base_exp`,`job_exp`,`zeny`, `str`,`agi`,`vit`,`int`,`dex`,`luk`, `max_hp`,`hp`,`max_sp`,`sp`,`status_point`,`skill_point`, `option`,`karma`,`manner`,`party_id`,`guild_id`,`pet_id`,`hair`,`hair_color`, `clothes_color`,`weapon`,`shield`,`head_top`,`head_mid`,`head_bottom`, `last_map`,`last_x`,`last_y`,`save_map`,`save_x`,`save_y`, `partner_id`, `father`, `mother`, `child`, `fame`, `homun_id` FROM `char` WHERE `char_id` = '%d'", charid); + sprintf(tmp_sql, "SELECT `char_id`,`account_id`,`char_num`,`name`,`class`,`base_level`,`job_level`,`base_exp`,`job_exp`,`zeny`, `str`,`agi`,`vit`,`int`,`dex`,`luk`, `max_hp`,`hp`,`max_sp`,`sp`,`status_point`,`skill_point`, `option`,`karma`,`manner`,`party_id`,`guild_id`,`pet_id`,`hair`,`hair_color`, `clothes_color`,`weapon`,`shield`,`head_top`,`head_mid`,`head_bottom`, `last_map`,`last_x`,`last_y`,`save_map`,`save_x`,`save_y`, `partner_id`, `father`, `mother`, `child`, `fame`, `homun_id` FROM `char` WHERE `char_id` = '%d'", charid); if(mysql_query(&charsql_handle, tmp_sql)){ ShowSQL("DB error - %s\n",mysql_error(&charsql_handle)); ShowDebug("at %s:%d - %s\n", __FILE__,__LINE__,tmp_sql); @@ -103,9 +102,9 @@ struct mmo_charstatus *charsave_loadchar(int charid){ c->mother = atoi(charsql_row[44]); c->child = atoi(charsql_row[45]); c->fame = atoi(charsql_row[46]); - c->hom_id = atoi(charsql_row[47]); // albator - mysql_free_result(charsql_res); + c->hom_id = atoi(charsql_row[47]); // albator + mysql_free_result(charsql_res); //Check for '0' Savepoint / LastPoint if (c->last_point.x == 0 || c->last_point.y == 0 || c->last_point.map == 0){ @@ -240,7 +239,6 @@ struct mmo_charstatus *charsave_loadchar(int charid){ } */ - //Shamelessly stolen from its_sparky (ie: thanks) and then assimilated by [Skotlex] //Friend list sprintf(tmp_sql, "SELECT f.friend_account, f.friend_id, c.name FROM friends f LEFT JOIN `char` c ON f.friend_account=c.account_id AND f.friend_id=c.char_id WHERE f.char_id='%d'", charid); @@ -277,7 +275,6 @@ int charsave_savechar(int charid, struct mmo_charstatus *c){ // char tmp_str[64]; // char tmp_str2[512]; //First save the 'char' - ShowDebug("charsave_savechar : charid = %d | hd->master->status.char_id = %d\n", charid) ; sprintf(tmp_sql ,"UPDATE `char` SET `class`='%d', `base_level`='%d', `job_level`='%d'," "`base_exp`='%d', `job_exp`='%d', `zeny`='%d'," "`max_hp`='%d',`hp`='%d',`max_sp`='%d',`sp`='%d',`status_point`='%d',`skill_point`='%d'," diff --git a/src/map/chat.c b/src/map/chat.c index d031a446b..6d84aca4c 100644 --- a/src/map/chat.c +++ b/src/map/chat.c @@ -30,7 +30,7 @@ int chat_createchat(struct map_session_data *sd,int limit,int pub,char* pass,cha return 0; //Prevent people abusing the chat system by creating multiple chats, as pointed out by End of Exam. [Skotlex] if (map[sd->bl.m].flag.nochat) { - clif_displaymessage (sd->fd, msg_txt(281)); + clif_displaymessage (sd->fd, msg_txt(281)); return 0; //Can't create chatrooms on this map. } pc_stop_walking(sd,1); diff --git a/src/map/guild.c b/src/map/guild.c index 0d2f2cad1..5c3b2da4a 100644 --- a/src/map/guild.c +++ b/src/map/guild.c @@ -869,7 +869,6 @@ int guild_member_leaved(int guild_id,int account_id,int char_id,int flag, int guild_send_memberinfoshort(struct map_session_data *sd,int online) { // cleaned up [LuzZza] - struct guild *g; nullpo_retr(0, sd); @@ -887,18 +886,16 @@ int guild_send_memberinfoshort(struct map_session_data *sd,int online) intif_guild_memberinfoshort(g->guild_id, sd->status.account_id,sd->status.char_id,online,sd->status.base_level,sd->status.class_); - if(!online) //REMOVE sd pointer or you get a dangling pointer! [Skotlex] - { - int i = guild_getindex(g,sd->status.account_id,sd->status.char_id); - if (i >= 0) - g->member[i].sd = NULL; + if(!online){ + int i=guild_getindex(g,sd->status.account_id,sd->status.char_id); + if(i>=0) + g->member[i].sd=NULL; + return 0; } if(sd->state.guild_sent) return 0; -// guild_check_conflict(sd); // Check if char belongs to more than one guild? Should be unneeded. - clif_guild_belonginfo(sd,g); clif_guild_notice(sd,g); diff --git a/src/map/mob.c b/src/map/mob.c index a0022ab2b..039a53fb1 100644 --- a/src/map/mob.c +++ b/src/map/mob.c @@ -1170,13 +1170,13 @@ static int mob_ai_sub_hard(struct block_list *bl,va_list ap) (mode&MD_ANGRY && md->state.skillstate == MSS_FOLLOW) ) { map_foreachinrange (mob_ai_sub_hard_activesearch, &md->bl, - view_range, md->special_state.ai?BL_CHAR:BL_PC|BL_HOMUNCULUS, md, &tbl); //[orn] + view_range, md->special_state.ai?BL_CHAR:BL_PC|BL_HOMUNCULUS, md, &tbl); if(!tbl && mode&MD_ANGRY && !md->state.aggressive) md->state.aggressive = 1; //Restore angry state when no targets are visible. } else if (mode&MD_CHANGECHASE && (md->state.skillstate == MSS_RUSH || md->state.skillstate == MSS_FOLLOW)) { search_size = view_rangestatus.rhw.range ? view_range:md->status.rhw.range; map_foreachinrange (mob_ai_sub_hard_changechase, &md->bl, - search_size, (md->special_state.ai?BL_CHAR:BL_PC|BL_HOMUNCULUS), md, &tbl); //[orn] + search_size, (md->special_state.ai?BL_CHAR:BL_PC|BL_HOMUNCULUS), md, &tbl); } if (tbl) diff --git a/src/map/party.c b/src/map/party.c index 271826610..2fbf363bd 100644 --- a/src/map/party.c +++ b/src/map/party.c @@ -469,9 +469,14 @@ int party_optionchanged(int party_id,int account_id,int exp,int item,int flag) if( (p=party_search(party_id))==NULL) return 0; - if(!(flag&0x01)) p->party.exp=exp; - if(!(flag&0x10)) p->party.item=item; - clif_party_option(p,sd,flag); + if(!(flag&0x01) && p->party.exp != exp) { + p->party.exp=exp; + clif_party_option(p,sd,flag); //This packet doesn't updates item info anymore... + } + if(!(flag&0x10) && p->party.item != item) { + p->party.item=item; + clif_party_main_info(p,-1); + } return 0; } -- cgit v1.2.3-70-g09d2