diff options
Diffstat (limited to 'src/map')
-rw-r--r-- | src/map/chrif.c | 4 | ||||
-rw-r--r-- | src/map/guild.c | 16 | ||||
-rw-r--r-- | src/map/status.c | 10 |
3 files changed, 18 insertions, 12 deletions
diff --git a/src/map/chrif.c b/src/map/chrif.c index 95b874327..df37aaf1d 100644 --- a/src/map/chrif.c +++ b/src/map/chrif.c @@ -342,7 +342,7 @@ int chrif_changemapserver(struct map_session_data *sd, short map, int x, int y, if (other_mapserver_count < 1)
{ //No other map servers are online!
- pc_authfail(sd);
+ clif_authfail_fd(sd->fd, 0);
return -1;
}
@@ -385,7 +385,7 @@ int chrif_changemapserverack(int fd) if (RFIFOL(fd,6) == 1) {
if (battle_config.error_log)
ShowError("map server change failed.\n");
- pc_authfail(sd);
+ clif_authfail_fd(sd->fd, 0);
return 0;
}
clif_changemapserver(sd, (char*)mapindex_id2name(RFIFOW(fd,18)), RFIFOW(fd,20), RFIFOW(fd,22), RFIFOL(fd,24), RFIFOW(fd,28));
diff --git a/src/map/guild.c b/src/map/guild.c index 459c2f42e..1fe0f526d 100644 --- a/src/map/guild.c +++ b/src/map/guild.c @@ -450,16 +450,16 @@ int guild_created(int account_id,int guild_id) if(sd==NULL)
return 0;
- if(guild_id>0) {
- //struct guild *g;
- sd->status.guild_id=guild_id;
- sd->state.guild_sent=0;
- clif_guild_created(sd,0);
- if(battle_config.guild_emperium_check)
- pc_delitem(sd,pc_search_inventory(sd,714),1,0); // エンペリウム消耗
- } else {
+ if(!guild_id) {
clif_guild_created(sd,2); // 作成失敗(同名ギルド存在)
+ return 0;
}
+ //struct guild *g;
+ sd->status.guild_id=guild_id;
+ sd->state.guild_sent=0;
+ clif_guild_created(sd,0);
+ if(battle_config.guild_emperium_check)
+ pc_delitem(sd,pc_search_inventory(sd,714),1,0); // エンペリウム消耗
return 0;
}
diff --git a/src/map/status.c b/src/map/status.c index 1cd81a180..bb95e6405 100644 --- a/src/map/status.c +++ b/src/map/status.c @@ -1497,9 +1497,15 @@ static unsigned int status_base_pc_maxhp(struct map_session_data* sd, struct sta val += val * 25/100; else if (sd->class_&JOBL_BABY) val -= val * 30/100; - if ((sd->class_&MAPID_UPPERMASK) == MAPID_TAEKWON && sd->status.base_level >= 90 && pc_famerank(sd->status.char_id, MAPID_TAEKWON)) + + if((sd->class_&MAPID_UPPERMASK) == MAPID_NINJA || + (sd->class_&MAPID_UPPERMASK) == MAPID_GUNSLINGER) + val += 100; //Since their HP can't be approximated well enough without this. + if((sd->class_&MAPID_UPPERMASK) == MAPID_TAEKWON && + sd->status.base_level >= 90 && pc_famerank(sd->status.char_id, MAPID_TAEKWON)) val *= 3; //Triple max HP for top ranking Taekwons over level 90. - if ((sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && sd->status.base_level >= 99) + if ((sd->class_&MAPID_UPPERMASK) == MAPID_SUPER_NOVICE && + sd->status.base_level >= 99) val += 2000; return val; |