Онлайн-справочник по самым часто задаваемым вопросам из темы "Как сделать?" на форуме QSP.su
14.12. Как сделать два разных предмета с одинаковыми названиями?
В: Как сделать два разных предмета с одинаковыми названиями?
Например, есть два старых меча. Но у одного параметр атаки `+3`, а у другого `+5`. Нужно, чтобы в окне предметов выводились одинаковые названия "Старый меч", но когда щёлкаешь по одному, выводились его параметры, а по другому — другие параметры.
О:
К сожалению, сделать два "разных" предмета с одинаковыми названиями не получится. В QSP можно получать только название выделенного предмета (с помощью функции `$selobj`).
Однако, мы можем прописать в названии некие отличительные данные предмета и скрыть эти данные от игрока. Для этого:
включаем распознавание html, прописав, например, на самой первой локации в игре команду:
usehtml=1
в названиях предметов прописываем их отличительные особенности, используя несуществующие html-теги:
addobj "Старый меч<atack:+3>"
addobj "Старый меч<atack:+5>"
На экране игрок увидит одинаковые названия "Старый меч", однако плеер будет работать с их полными названиями. Для примера, код локации-обработчика выделения предмета:
clr
pl "Старый меч"
pl "Сила атаки: +3"
end
if $selobj="Старый меч<atack:+5>":
clr
pl "Старый меч (с зазубринами)"
pl "Сила атаки: +5"
end