ItemKindTypeからPlayerRealm::get_realm_of_bookを取得した結果がある
場合は、PlayerRealm::Realm::get_book の結果とItemKindTypeを比較する
のではなく、get_realm_of_bookを取得した結果をPlayerRealm::Realm::equals
でテストするようにする。
このほうがより直感的であり、処理速度もわずかに高速。
const auto tval = o_ptr->bi_key.tval();
const auto sval = *o_ptr->bi_key.sval();
const auto study_realm = PlayerRealm::get_realm_of_book(tval);
- if (tval == pr.realm2().get_book()) {
+ if (pr.realm2().equals(study_realm)) {
increment = 32;
- } else if (tval != pr.realm1().get_book()) {
+ } else if (!pr.realm1().equals(study_realm)) {
if (!input_check(_("本当に魔法の領域を変更しますか?", "Really, change magic realm? "))) {
return;
}
return false;
}
- return (pr.realm1().get_book() == tval) || (pr.realm2().get_book() == tval) || choices.has(realm);
+ return pr.realm1().equals(book_realm) || pr.realm2().equals(book_realm) || choices.has(book_realm);
}
}
PlayerRealm pr(player_ptr);
- return (pr.realm1().get_book() == tval) || (pr.realm2().get_book() == tval);
+ return pr.realm1().equals(book_realm) || pr.realm2().equals(book_realm);
}
ItemEntity *ref_item(PlayerType *player_ptr, INVENTORY_IDX i_idx)