… | |
… | |
1050 | vuln[i] += ((100 - vuln[i]) * -tmp->resist[i]) / 100; |
1050 | vuln[i] += ((100 - vuln[i]) * -tmp->resist[i]) / 100; |
1051 | } |
1051 | } |
1052 | } |
1052 | } |
1053 | |
1053 | |
1054 | /* There may be other things that should not adjust the attacktype */ |
1054 | /* There may be other things that should not adjust the attacktype */ |
1055 | if (tmp->type != SYMPTOM) |
1055 | if (tmp>-type != BOW && tmp->type != SYMPTOM) |
1056 | attacktype |= tmp->attacktype; |
1056 | attacktype |= tmp->attacktype; |
1057 | |
1057 | |
1058 | path_attuned |= tmp->path_attuned; |
1058 | path_attuned |= tmp->path_attuned; |
1059 | path_repelled |= tmp->path_repelled; |
1059 | path_repelled |= tmp->path_repelled; |
1060 | path_denied |= tmp->path_denied; |
1060 | path_denied |= tmp->path_denied; |
… | |
… | |
1121 | } |
1121 | } |
1122 | |
1122 | |
1123 | if (tmp->stats.wc) |
1123 | if (tmp->stats.wc) |
1124 | wc -= (tmp->stats.wc + tmp->magic); |
1124 | wc -= (tmp->stats.wc + tmp->magic); |
1125 | |
1125 | |
1126 | if (tmp->slaying != NULL) |
1126 | if (tmp->slaying) |
1127 | slaying = tmp->slaying; |
1127 | slaying = tmp->slaying; |
1128 | |
1128 | |
1129 | if (tmp->stats.ac) |
1129 | if (tmp->stats.ac) |
1130 | ac -= (tmp->stats.ac + tmp->magic); |
1130 | ac -= (tmp->stats.ac + tmp->magic); |
1131 | |
1131 | |
… | |
… | |
1166 | if (tmp->stats.ac) |
1166 | if (tmp->stats.ac) |
1167 | ac -= tmp->stats.ac + tmp->magic; |
1167 | ac -= tmp->stats.ac + tmp->magic; |
1168 | |
1168 | |
1169 | break; |
1169 | break; |
1170 | |
1170 | |
1171 | case BOW: |
|
|
1172 | case WEAPON: |
1171 | case WEAPON: |
1173 | wc -= tmp->stats.wc + tmp->magic; |
1172 | wc -= tmp->stats.wc + tmp->magic; |
1174 | |
1173 | |
1175 | if (tmp->stats.ac && tmp->stats.ac + tmp->magic > 0) |
1174 | if (tmp->stats.ac && tmp->stats.ac + tmp->magic > 0) |
1176 | ac -= tmp->stats.ac + tmp->magic; |
1175 | ac -= tmp->stats.ac + tmp->magic; |
1177 | |
1176 | |
1178 | stats.dam += tmp->stats.dam + tmp->magic; |
1177 | stats.dam += tmp->stats.dam + tmp->magic; |
1179 | weapon_weight = tmp->weight; |
1178 | weapon_weight = tmp->weight; |
1180 | weapon_speed = ((int) WEAPON_SPEED (tmp) * 2 - tmp->magic) / 2; |
1179 | weapon_speed = (WEAPON_SPEED (tmp) * 2 - tmp->magic) / 2; |
1181 | |
1180 | |
1182 | if (weapon_speed < 0) |
1181 | if (weapon_speed < 0) |
1183 | weapon_speed = 0; |
1182 | weapon_speed = 0; |
1184 | |
1183 | |
1185 | slaying = tmp->slaying; |
1184 | slaying = tmp->slaying; |