From 69e0c51d8cb4e4c3b1936a49ae2ca1aaf668946e Mon Sep 17 00:00:00 2001 From: burningserenity Date: Fri, 8 Jul 2022 22:40:16 -0400 Subject: [PATCH] Another approach --- Source/itemdat.cpp | 10 +++++----- Source/items.cpp | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/Source/itemdat.cpp b/Source/itemdat.cpp index 390135441..2d5f364e3 100644 --- a/Source/itemdat.cpp +++ b/Source/itemdat.cpp @@ -76,8 +76,8 @@ ItemData AllItemsList[] = { /*IDI_EAR */ { IDROP_NEVER, ICLASS_QUEST, ILOC_UNEQUIPABLE, ICURS_EAR_SORCERER, ItemType::Misc, UITYPE_NONE, N_("Heart"), nullptr, 0, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_EAR, SPL_NULL, false, 0 }, /*IDI_HEAL */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_POTION_OF_HEALING, ItemType::Misc, UITYPE_NONE, N_("Potion of Healing"), nullptr, 0, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_HEAL, SPL_NULL, true, 50 }, /*IDI_MANA */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_POTION_OF_MANA, ItemType::Misc, UITYPE_NONE, N_("Potion of Mana"), nullptr, 0, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_MANA, SPL_NULL, true, 50 }, -/*IDI_IDENTIFY */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Identify"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_IDENTIFY, true, 200 }, -/*IDI_PORTAL */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Town Portal"), nullptr, 4, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_TOWN, true, 200 }, +/*IDI_IDENTIFY */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Identify"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_IDENTIFY, true, 200 }, +/*IDI_PORTAL */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Town Portal"), nullptr, 4, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_TOWN, true, 200 }, /*IDI_ARMOFVAL */ { IDROP_NEVER, ICLASS_ARMOR, ILOC_ARMOR, ICURS_ARKAINES_VALOR, ItemType::MediumArmor, UITYPE_ARMOFVAL, N_("Arkaine's Valor"), nullptr, 0, 40, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_UNIQUE, SPL_NULL, false, 0 }, /*IDI_FULLHEAL */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_POTION_OF_FULL_HEALING, ItemType::Misc, UITYPE_NONE, N_("Potion of Full Healing"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_FULLHEAL, SPL_NULL, true, 150 }, /*IDI_FULLMANA */ { IDROP_NEVER, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_POTION_OF_FULL_MANA, ItemType::Misc, UITYPE_NONE, N_("Potion of Full Mana"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_FULLMANA, SPL_NULL, true, 150 }, @@ -144,12 +144,12 @@ ItemData AllItemsList[] = { /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Healing"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_HEAL, true, 50 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Search"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_SEARCH, true, 50 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Lightning"), nullptr, 4, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_LIGHTNING, true, 150 }, -/* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Identify"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_IDENTIFY, true, 100 }, +/* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Identify"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_IDENTIFY, true, 100 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Resurrect"), nullptr, 1, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_RESURRECT, true, 250 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Fire Wall"), nullptr, 4, 0, 0, 0, 0, 0, 0, 17, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_FIREWALL, true, 400 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Inferno"), nullptr, 1, 0, 0, 0, 0, 0, 0, 19, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_FLAME, true, 100 }, -/* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Town Portal"), nullptr, 4, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_TOWN, true, 200 }, -/* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Flash"), nullptr, 6, 0, 0, 0, 0, 0, 0, 21, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_FLASH, true, 500 }, +/* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Town Portal"), nullptr, 4, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_TOWN, true, 200 }, +/* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Flash"), nullptr, 6, 0, 0, 0, 0, 0, 0, 21, 0, ItemSpecialEffect::None, IMISC_SCROLLT, SPL_FLASH, true, 500 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Infravision"), nullptr, 8, 0, 0, 0, 0, 0, 0, 23, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_INFRA, true, 600 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Phasing"), nullptr, 6, 0, 0, 0, 0, 0, 0, 25, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_RNDTELEPORT, true, 200 }, /* */ { IDROP_REGULAR, ICLASS_MISC, ILOC_UNEQUIPABLE, ICURS_SCROLL_OF, ItemType::Misc, UITYPE_NONE, N_("Scroll of Mana Shield"), nullptr, 8, 0, 0, 0, 0, 0, 0, 0, 0, ItemSpecialEffect::None, IMISC_SCROLL, SPL_MANASHIELD, true, 1200 }, diff --git a/Source/items.cpp b/Source/items.cpp index ff80ff1b1..18fc5703f 100644 --- a/Source/items.cpp +++ b/Source/items.cpp @@ -1784,7 +1784,13 @@ void PrintItemMisc(const Item &item) { if (item._iMiscId == IMISC_SCROLL) { if (ControlMode == ControlTypes::KeyboardAndMouse) { - AddPanelString(_("Right-click to read")); + if (item._iSpell == SPL_TOWN || item._iSpell == SPL_IDENTIFY) { + AddPanelString(_("Right-click to read, then")); + AddPanelString(_("left-click to target")); + } + else { + AddPanelString(_("Right-click to read")); + } } else { if (!invflag) { AddPanelString(_("Open inventory to use")); @@ -1795,9 +1801,13 @@ void PrintItemMisc(const Item &item) } if (item._iMiscId == IMISC_SCROLLT) { if (ControlMode == ControlTypes::KeyboardAndMouse) { + if (item._iSpell == SPL_FLASH) { + AddPanelString(_("Right-click to read")); + } else { AddPanelString(_("Right-click to read, then")); AddPanelString(_("left-click to target")); - } else { + } + } else { if (TargetsMonster(item._iSpell)) { AddPanelString(_("Select from spell book, then")); AddPanelString(_("cast spell to read"));