- Changed some pc_authfails to clif_authfail_fd since pc_authfail prints errors when invoked after a char is auth'ed.

- Added a static +100 Hp to ninjas and gunslingers since it's required for the best approximated hp growth algorythm.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@9404 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
skotlex 2006-12-04 17:41:02 +00:00
parent 30c5778a46
commit 384fe7b6fc
4 changed files with 20 additions and 12 deletions

View File

@ -4,6 +4,8 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/12/04
* Added a static +100 Hp to ninjas and gunslingers since it's required for
the best approximated hp growth algorythm. [Skotlex]
* Knockback will again use the fixpos packet instead of the slide packet
(slide was introduced with high jump) since Aegis captures say that packet
is still used for knockbacks. [Skotlex]

View File

@ -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));

View File

@ -450,16 +450,16 @@ int guild_created(int account_id,int guild_id)
if(sd==NULL)
return 0;
if(guild_id>0) {
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); // エンペリウム消耗
} else {
clif_guild_created(sd,2); // 作成失敗(同名ギルド存在)
}
return 0;
}

View File

@ -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;