User Tools

Site Tools


ru:rpd:ankh_item

Анк

Анк

Описание

Этот древний символ бессмертия дает возможность вернуться к жизни после смерти. При воскрешении все предметы в инвентаре героя теряются, но один случайный экипированный предмет сохраняется в виде костей, которые можно забрать с места смерти.

Особые свойства

  • Предоставляет однократное воскрешение после смерти (реализовано в методе 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

Ссылки на исходный код

Строковые ресурсы

JSON-файлы конфигурации

  • Шансы выпадения предметов: Не настроены в JSON-файлах, обрабатываются в коде через Treasure.getLevelTreasury() и Treasury.getLevelTreasury()

Машинно-читаемые данные

  • mr:ankh_item - Страница с машинно-читаемой информацией и техническими деталями

См. также

ru/rpd/ankh_item.txt · Last modified: by 127.0.0.1