2 ITEM(scrollofrepair
, scroll
)
5 virtual void FinishReading(character
*);
13 void scrollofrepair::FinishReading (character
*Reader
) {
16 if (!Reader
->SelectFromPossessions(Item
, CONST_S("Which item do you wish to repair?"), NO_MULTI_SELECT
|SELECT_PAIR
, &item::IsRepairable
))
18 ADD_MESSAGE("You notice you haven't got anything to repair.");
22 if (Item
[0]->HandleInPairs() && Item
.size() == 1) {
23 ADD_MESSAGE("Only one %s will be repaired.", Item
[0]->CHAR_NAME(UNARTICLED
));
24 if (!game::TruthQuestion(CONST_S("Still continue?"))) continue;
27 ADD_MESSAGE("As you read the scroll, %s glows green and %s.", Item
[0]->CHAR_NAME(DEFINITE
), Item
[0]->IsBroken() ? "fixes itself" : "its rust vanishes");
29 ADD_MESSAGE("As you read the scroll, %s glow green and %s.", Item
[0]->CHAR_NAME(PLURAL
), Item
[0]->IsBroken() ? "fix themselves" : "their rust vanishes");
30 for (uInt c
= 0; c
< Item
.size(); ++c
) {
31 Item
[c
]->RemoveRust();
36 if (game::TruthQuestion(CONST_S("Really cancel read?"))) return;
41 Reader
->EditExperience(INTELLIGENCE
, 300, 1 << 12);