if (o_ptr->curse_flags & TRC_LOW_MELEE) {
int slot = i - INVEN_RARM;
- if (slot < 2) {
- if (o_ptr->curse_flags & TRC_HEAVY_CURSE) {
- creature_ptr->to_h[slot] -= 15;
- if (object_is_fully_known(o_ptr))
- creature_ptr->dis_to_h[slot] -= 15;
- } else {
- creature_ptr->to_h[slot] -= 5;
- if (object_is_fully_known(o_ptr))
- creature_ptr->dis_to_h[slot] -= 5;
- }
- } else {
+ if (slot >= 2) {
if (o_ptr->curse_flags & TRC_HEAVY_CURSE) {
if (object_is_fully_known(o_ptr))
creature_ptr->dis_to_h_b -= 15;
}
}
+ if (o_ptr->curse_flags & TRC_LOW_MELEE) {
+ if (o_ptr->curse_flags & TRC_HEAVY_CURSE) {
+ creature_ptr->to_h[id] -= 15;
+ } else {
+ creature_ptr->to_h[id] -= 5;
+ }
+ }
+
if ((creature_ptr->realm1 == REALM_HEX) && object_is_cursed(o_ptr)) {
if (o_ptr->curse_flags & (TRC_CURSED)) {
creature_ptr->to_h[id] += 5;
}
}
+ if (object_is_fully_known(o_ptr) && o_ptr->curse_flags & TRC_LOW_MELEE) {
+ if (o_ptr->curse_flags & TRC_HEAVY_CURSE) {
+ creature_ptr->dis_to_h[id] -= 15;
+ } else {
+ creature_ptr->dis_to_h[id] -= 5;
+ }
+ }
+
if (hold < o_ptr->weight / 10) {
creature_ptr->dis_to_h[id] += 2 * (hold - o_ptr->weight / 10);
}