ru:rpd:ankh_item
Table of Contents
Анк
Описание
Этот древний символ бессмертия дает возможность вернуться к жизни после смерти. При воскрешении все предметы в инвентаре героя теряются, но один случайный экипированный предмет сохраняется в виде костей, которые можно забрать с места смерти.
Особые свойства
- Предоставляет однократное воскрешение после смерти (реализовано в методе Ankh.resurrect)
- При воскрешении все предметы в рюкзаке (инвентаре) теряются (обрабатывается в WndResurrect)
- Экипированные предметы НЕ сохраняются напрямую - вместо этого один случайный экипированный предмет остается в виде костей на месте смерти (реализовано в методе Bones.leave)
- Одноразовый предмет (удаляется после использования в методе resurrect)
- Может складываться (хотя полезен только один за раз из-за потери при воскрешении) (определено в конструкторе)
- Не может быть улучшен (определено в методе isUpgradable)
- Всегда идентифицирован (определено в методе isIdentified)
- Стоит 50 золота за единицу (определено в методе price)
Примечания
Анк - это мощный, но рискованный предмет - он может спасти вас от смерти, но ценой потери всего инвентаря. Только один случайный экипированный предмет будет восстановлен в виде костей из места, где вы умерли.
Стратегия
- Лучше использовать в качестве последнего средства при столкновении с верной смертью
- Старайтесь держать в инвентаре только самые необходимые предметы при входе в опасные зоны
- Так как только один экипированный предмет сохраняется в виде костей (а не все экипированные предметы), подумайте, какой предмет наиболее ценен для сохранения
- Не носите несколько Анков, так как вы их потеряете при воскрешении
- Будьте осторожны при экипировке проклятых предметов - если проклятый предмет убьет вас во время экипировки, Анк будет израсходован, но не предотвратит смерть
Технические детали
Когда герой умирает и использует Анк для воскрешения:
Dungeon.gameOver()вызывается, что удаляет текущее сохранение игры черезDungeon.deleteGame(false)в WndResurrect.java#L56- Состояние игры полностью удаляется, включая инвентарь героя
Bones.leave(hero)сохраняет один случайный экипированный предмет (или золото, если нет полезного экипированного предмета)- Герой возрождается с полным HP, но в новом состоянии игры
- Все предметы инвентаря (кроме одного, сохраненного в виде костей) теряются навсегда
- Использование анка отслеживается в статистике через
Statistics.ankhsUsed++, как видно в WndResurrect.java#L59
Ссылки на исходный код
- Основная реализация: Ankh.java
- Диалог воскрешения: WndResurrect.java
- Сохранение костей: Bones.java
- Обработка смерти героя: Hero.java#L610 (вызов воскрешения)
- Регистрация предметов: ItemFactory.java#L233
- Отслеживание статистики: Statistics.java#L15 (счетчик ankhsUsed)
Строковые ресурсы
- Название Анка: Ankh_Name (строка 1404 в русских строках)
- Сообщения диалога воскрешения: WndResurrect_Message, WndResurrect_Yes, WndResurrect_No (строки 1405-1407 в русских строках)
- Английские строки: Ankh и сообщения WndResurrect в английском
- Китайские строки: Ankh и сообщения WndResurrect в китайском
- Испанские строки: Ankh и сообщения WndResurrect в испанском
JSON-файлы конфигурации
- Шансы выпадения предметов: Не настроены в JSON-файлах, обрабатываются в коде через Treasure.getLevelTreasury() и Treasury.getLevelTreasury()
Машинно-читаемые данные
- mr:ankh_item - Страница с машинно-читаемой информацией и техническими деталями
См. также
- Имущество - Система снаряжения и инвентаря героя
- Поднять мертвеца - Другие механики воскрешения
- Череп - Похожая механика костей/сохранения
ru/rpd/ankh_item.txt · Last modified: by 127.0.0.1

