Illiterate and blank spellbooks from gods

Make gods avoid giving blank spellbooks as gifts, if you're
illiterate.  But if you do get a blank spellbook as a gift,
don't force-learn that non-existent spell.
This commit is contained in:
Pasi Kallinen
2022-03-05 16:42:46 +02:00
parent 71fe55eba8
commit 0dec6cad34
+4 -3
View File
@@ -1196,13 +1196,14 @@ pleased(aligntyp g_align)
&& !P_RESTRICTED(spell_skilltype(otmp->otyp))) && !P_RESTRICTED(spell_skilltype(otmp->otyp)))
break; /* usable, but not yet known */ break; /* usable, but not yet known */
} else { } else {
if (!objects[SPE_BLANK_PAPER].oc_name_known if ((!objects[SPE_BLANK_PAPER].oc_name_known
|| carrying(MAGIC_MARKER)) || carrying(MAGIC_MARKER)) && u.uconduct.literate)
break; break;
} }
otmp->otyp = rnd_class(g.bases[SPBOOK_CLASS], SPE_BLANK_PAPER); otmp->otyp = rnd_class(g.bases[SPBOOK_CLASS], SPE_BLANK_PAPER);
} }
if (!u.uconduct.literate && !known_spell(otmp->otyp)) { if (!u.uconduct.literate && (otmp->otyp != SPE_BLANK_PAPER)
&& !known_spell(otmp->otyp)) {
if (force_learn_spell(otmp->otyp)) if (force_learn_spell(otmp->otyp))
pline("Divine knowledge of %s fills your mind!", pline("Divine knowledge of %s fills your mind!",
OBJ_NAME(objects[otmp->otyp])); OBJ_NAME(objects[otmp->otyp]));