Тема: Железо
Показать сообщение отдельно
Старый 21.11.2007, 10:41   #4
judge
Отличник форума
 
Регистрация: 03.05.2004
Сообщений: 266
По умолчанию

Заглянем в код:

Тут prob - вероятность удачного каста, изначально оно равняется 100.
=====
if (IS_MAGE(ch) && equip_in_metall(ch)) - если маг (колдун, волшебник, кудесник, чернок) и экипирован в металл
prob -= 50; - уменьшаем вероятность на 50%
=====

Рассмотрим функцию equip_in_metall
=====
int equip_in_metall(CHAR_DATA * ch)
{
int i, wgt = 0;

if (IS_NPC(ch) && !AFF_FLAGGED(ch, AFF_CHARM)) - для мобов (но не для чармисов) не действует
return (FALSE);

if (IS_GOD(ch)) - для богов тоже
return (FALSE);

for (i = 0; i < NUM_WEARS; i++) { - в цикле по кол-ву шмоток подсчитываем общую массу металла
if (GET_EQ(ch, i) && - если есть на этом месте шмотка
GET_OBJ_TYPE(GET_EQ(ch, i)) == ITEM_ARMOR && - и тип у нее БРОНЯ
GET_OBJ_MATER(GET_EQ(ch, i)) <= MAT_COLOR) - и материал МЕТАЛЛ
wgt += GET_OBJ_WEIGHT(GET_EQ(ch, i)); - добавляем массу этой шмотку в общую массу
}

if (wgt > GET_REAL_STR(ch)) - сравниваем общую массу металла с силой
return (TRUE); - возвращаем TRUE, если масса металла больше силы

return (FALSE); - иначе FALSE
}
=====

Итак, мы видим что Леда был прав. Местоположение шмотки значения не имеет, имеет значение только тип шмотки. Кстати только сейчас узнал, что волхвы не маги, а следовательно им можно носить металл в любом количестве.
judge вне форума   Ответить с цитированием