diff --git a/common/ruletypes.h b/common/ruletypes.h index 4284e0d0b..b15d3fbf7 100644 --- a/common/ruletypes.h +++ b/common/ruletypes.h @@ -197,6 +197,7 @@ RULE_INT(Skills, SwimmingStartValue, 100, "") RULE_BOOL(Skills, TrainSenseHeading, false, "") RULE_INT(Skills, SenseHeadingStartValue, 200, "") RULE_BOOL(Skills, SelfLanguageLearning, true, "") +RULE_BOOL(Skills, RequireTomeHandin, false, "Disable click-to-learn and force turnin to Guild Master") RULE_CATEGORY_END() RULE_CATEGORY(Pets) diff --git a/zone/client_packet.cpp b/zone/client_packet.cpp index 0ea11e8ae..7173dd342 100644 --- a/zone/client_packet.cpp +++ b/zone/client_packet.cpp @@ -8653,7 +8653,7 @@ void Client::Handle_OP_ItemVerifyRequest(const EQApplicationPacket *app) } else if (inst->IsClassCommon()) { - if (item->ItemType == EQEmu::item::ItemTypeSpell && (strstr((const char*)item->Name, "Tome of ") || strstr((const char*)item->Name, "Skill: "))) + if (!RuleB(Skills, RequireTomeHandin) && item->ItemType == EQEmu::item::ItemTypeSpell && (strstr((const char*)item->Name, "Tome of ") || strstr((const char*)item->Name, "Skill: "))) { DeleteItemInInventory(slot_id, 1, true); TrainDiscipline(item->ID);