|
![]() |
#1 |
Отличник форума
![]() Регистрация: 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 } ===== Итак, мы видим что Леда был прав. Местоположение шмотки значения не имеет, имеет значение только тип шмотки. Кстати только сейчас узнал, что волхвы не маги, а следовательно им можно носить металл в любом количестве. |
![]() |
![]() |
![]() |
#2 | |
Старший Мадер
![]() Регистрация: 20.02.2006
Адрес: Не дом и не улица
Сообщений: 211
|
![]() Цитата:
__________________
Been here. Done that. Enjoyed it. |
|
![]() |
![]() |