calc_num_blow() 内で計算されていたのを calc_to_ac() へ移動。
計算順序の関係で偶然壊れていなかったが、位置として明らかにおかしい。
num_blow /= 2;
if (creature_ptr->special_defense & KAMAE_GENBU) {
- creature_ptr->to_a += (creature_ptr->lev * creature_ptr->lev) / 50;
- creature_ptr->dis_to_a += (creature_ptr->lev * creature_ptr->lev) / 50;
num_blow -= 2;
if ((creature_ptr->pclass == CLASS_MONK) && (creature_ptr->lev > 42))
num_blow--;
}
}
- if (creature_ptr->special_defense & KAMAE_BYAKKO) {
+ if (creature_ptr->special_defense & KAMAE_GENBU) {
+ ac += (creature_ptr->lev * creature_ptr->lev) / 50;
+ } else if (creature_ptr->special_defense & KAMAE_BYAKKO) {
ac -= 40;
} else if (creature_ptr->special_defense & KAMAE_SEIRYU) {
ac -= 50;