Also, randart books created by acquirement (not gifts) have a chance to be named after the player.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8848 c06c8d41-db1a-0410-9941-cceddc491573
ED7MV353FW7C4KZWLXUOEULWZZWMRCJVWMLAFC5OLCKZNPDBLQAQC
YDWBT7CZGY33CNDPF7S4LK7YULFMDUJAKIODKMGB2IYIWHF4SJWQC
3KBPG2GCDMENTQJY6UARZAWI57CKHP5JO24LRN243OP4WTUPFK4QC
FWNNTOEERPUKXPE4OC52UABFZLKIU3O5GRNNLDK4QI4HR2IOU36QC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
QO5ZJWQ3JK3PEGBPTQSAYIPEJEHG2M2KTD74227G5VG7DVXUL3BQC
CCRQESB4ADT4WA7FGLNZZXAJ6G5QMCTYCZIWORBN45P6ZPILC34AC
SA3XGRMUEO3K6T4TJJWMWV2SG3JCEGLBM7SAN4IQ5A4VVMHFBCKQC
QLIDDODO7Q7S2UTKVR2SMRMEAXHRPA5C7SU267EQGV6VJ7UXW5JQC
CEZMQA2KOTLG7IO5QBVAM2OALIZJ45CFLNLCG3OQA6IX6URDCCYAC
JVFPF4MBNVY2UEXPWJDKTWL6RY7WCXPB6GBOK3WPJOGM6CX3D7HQC
2I5XEYRJKLUS7MO42MCR6KT2URGFQ3YDKTNTIBNKVKLX5LMG6CEQC
UC6V7JDZ6CKQNL5AARWFJ4ZPX4ZYCO5J3FW52I52I3PBJO6T6VEAC
2FHNLTLN3DVVD67N4QMAQ2LO7YY4GVZWXJAOIWGCCYYGIX7UHSVQC
2Q42G2D2XQ4VWKLCY3JPX5PP3OPTO6PFAE2IYIKLEXA35MD67BBQC
// If the owner hasn't been set already use
// a) the god's name for god gifts (only applies to Sif Muna and Xom),
// b) a name depending on the spell disciplines, for pure books
// c) a random name (all god gifts not named earlier)
// d) an applicable god's name
// ... else leave it unnamed (around 56% chance for non-god gifts)
if (owner.empty())
{
const bool god_gift = (god != GOD_NO_GOD);
if (god_gift && !one_chance_in(4))
owner = god_name(god, false);
else if (disc1 == disc2
&& (god_gift && one_chance_in(3) || one_chance_in(5)))
{
std::string lookup = spelltype_long_name(disc1);
if (highest_level >= 6)
owner = getRandNameString("high-level " + lookup + " owner");
std::string name;
if (owner.empty() || owner == "__NONE")
owner = getRandNameString(lookup + " owner");
if (owner == "__NONE")
owner = "";
}
if (owner.empty())
{
if (god_gift || one_chance_in(5)) // Use a random name.
owner = make_name(random_int(), false);
else if (!god_gift && one_chance_in(8))
{
god = GOD_SIF_MUNA;
switch (disc1)
{
case SPTYP_NECROMANCY:
if (disc1 == disc2 && !one_chance_in(6))
god = GOD_KIKUBAAQUDGHA;
break;
case SPTYP_SUMMONING:
case SPTYP_CONJURATION:
if ((disc2 == SPTYP_SUMMONING || disc2 == SPTYP_CONJURATION)
&& !one_chance_in(4))
{
god = GOD_VEHUMET;
}
break;
default:
break;
}
owner = god_name(god, false);
}
}
}
std::string name = "";
name = owner;
else if (god_gift && !one_chance_in(4))
name = god_name(god, false);
else if (god_gift || one_chance_in(5)) // Occasionally, use a random name.
name = make_name(random_int(), false);
else
has_owner = false;
if (has_owner)
Enchantment owner
Ilsuiw
Rupert
Norris
__NONE
%%%%
Summoning owner
__NONE
%%%%
high-level Summoning owner
Asmodeus
Dispater
Mnoleg
@Summoning owner@
%%%%
Fire owner
Azrael
Margery
__NONE
%%%%
high-level Fire owner
Asmodeus
Cerebov
w:20
@Fire owner@
%%%%
Ice owner
w:5
Ozocubu
__NONE
%%%%
Transmutation owner
Cigotuvi
Roxanne
__NONE
%%%%
Necromancy owner
Borgnjor
Cigotuvi
Boris
Francis
Frances
Murray
Nergalle
%%%%
high-level Necromancy owner
Ereshkigal
Gloorx Vloq
w:40
@Necromancy owner@
%%%%
Divination owner
__NONE
%%%%
Translocation owner
__NONE
%%%%
high-level Translocation owner
Lom Lobon
@Translocation owner@
%%%%
Poison owner
Olgreb
Alistair
__NONE
%%%%
high-level Poison owner
Gloorx Vloq
@Poison owner@
%%%%
Earth owner
Lehudib
Lee
Roxanne
__NONE
%%%%
high-level Earth owner
Dispater
w:30
@Earth owner@
%%%%
Air owner
__NONE
%%%%