diff --git a/src/kernel/save.c b/src/kernel/save.c index fdfe9aad9..928feedf2 100644 --- a/src/kernel/save.c +++ b/src/kernel/save.c @@ -1119,7 +1119,7 @@ void read_spellbook(spellbook **bookp, struct storage *store, int(*get_level)(co *bookp = create_spellbook(0); sb = *bookp; } - if (global.data_version >= SPELLBOOK_VERSION || !spellbook_get(sb, sp)) { + if (level>0 && (global.data_version >= SPELLBOOK_VERSION || !spellbook_get(sb, sp))) { spellbook_add(sb, sp, level); } }