git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8699 c06c8d41-db1a-0410-9941-cceddc491573
LU56733MPKSGXIYBH4DUPLMRBHL4ZPWTVQMJ4PM4ILWRTSZWIFKAC
N2AESZ2GEWQXWUW2WCZRQCXFFXHHNK4WTMP74T2X3PMTEA2QDUIQC
BPPMLLPJLP6W2LZSPAMOMYA7YWCIFJTNNL3XBWU2MRHAQBZ5M4XAC
LY7DLLD7IKL6ZQPVROLDJ46XRM5CMAAEBRFDKJ4M53CPC5GFCGSQC
LTFWXACXWTSFJNSVDFCMC4IJBHUERV6DNCKIECIMRXG2M2U3TYJAC
K2CS6TCX2NDVL2ASEHGP4J4K4IJ6FP3ANNKTSIWVG43HPYSBX6ZQC
EH4VJW3I5Y4V6DT3YMLNDA3NW2DEAV4LRE4T5IEXAVB4WB3JJMGAC
RPOZZWKG5GLPHVZZ7ZKMKS64ZMV2LDCQSARBJFJ6FZOTOKCQO7FAC
SVY2PTCLXR3KNPQAWXVXTTGCC5DR334HOAKHYO3VDDRWM2BWMALAC
34C4U6EQWERY75GZJKUCM5KVGU2OUICETS5LGZF6RMKMZT4R5SQAC
TZ2SH2SPO5TFSFL2OCV5A32P2X4CRHEKEK7ENUFCBVF3RKUWAD4AC
DTO3EUKWHZ5RJNGNCFYXSOVTIPVXPP637F2W7WFGYKJ7JK7VNKNQC
PHBACPMH3F34GODHVDKNCMXWU373RJQGVTDLBFCCDLLWDXVYOLTAC
Q3DNEB5OOJ34P5ML4CMK3L6SCP7RLW7DDOZEG24KZBX3C7BJRQDAC
U7BN4TQ36FIOAGBVWQ4A6VXFZN2GETLGCLD4E3MCBA7OQ3TXYUXQC
R6XS2HO5QX2FJUGL5UQQRNETKCMYWTUFPHPPS5SYWK3OQA4UDUQQC
ZTDYCQQQQSLWGFJOUB3HKGHMJLNY6UHF4OOC2XVVHXSZTTZK5A5AC
MXOCLQAUGWLOS7AOTYZ46JZDMRL4EVRK5YN4JJUQ76GLKBOBHEVAC
if (!error.empty() || ego_str.empty())
if (!error.empty())
return (result);
if (!fixed_str.empty())
{
result.ego = get_fixedart_num(fixed_str.c_str());
if (result.ego == SPWPN_NORMAL)
{
error = make_stringf("Unknown fixed art: %s", fixed_str.c_str());
return result;
}
return result;
}
if (ego_str.empty())
if (item_level < 0)
{
// thoroughly damaged, could had been good once
if (!no_brand && (forced_ego || one_chance_in(4)))
{
// brand is set as for "good" items
set_item_ego_type(item, OBJ_WEAPONS,
_determine_weapon_brand(item, 2+2*you.your_level));
}
item.plus -= 1+random2(3);
item.plus2 -= 1+random2(3);
if (force_good || forced_ego || item.sub_type == ARM_WIZARD_HAT
if (item_level < 0)
{
// thoroughly damaged, could had been good once
if (!no_ego && (forced_ego || one_chance_in(4)))
{
// brand is set as for "good" items
set_item_ego_type(item, OBJ_ARMOUR,
_determine_armour_ego(item, item.sub_type, 2+2*you.your_level));
}
item.plus -= 1+random2(3);
if (item_level == -5)
do_curse_item(item);
}
else if (force_good || forced_ego || item.sub_type == ARM_WIZARD_HAT
if (force_ego >= SPWPN_START_FIXEDARTS && force_ego <= SPWPN_END_FIXEDARTS)
{
if (get_unique_item_status(OBJ_WEAPONS, force_ego) == UNIQ_NOT_EXISTS)
{
make_item_fixed_artefact(mitm[p], false, force_ego);
return p;
}
// the base item otherwise
item.special = SPWPN_NORMAL;
force_ego = 0;
}
Limitations: You can't specify curse status, specificy pluses or
number of charges, force a randart or give fixedarts. You also
can't lay down corpses, skeletons, or chunks.
Limitations: You can't specify specific pluses or number of charges
or force a randart. You also can't lay down corpses, skeletons, or
chunks.