summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/map/chrif.c4
-rw-r--r--src/map/guild.c16
-rw-r--r--src/map/status.c10
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;