The list writing routines do not handle plural containers correctly
(library 6/10). If you have two empty boxes, it might list: Not only should it say "are closed", but it will lump empty containers
together even if some are open and others aren't. To fix the grammatical problem, find the first call to WriteAfterEntry()
in VerbLibm.h: and change it to: To keep the object list from combining empty containers when some are open
and others are not, modify the ListEqual() routine:
About Patches
Issue L61001
Plural containers listed wrong
Submitted by: Anson Turner
Appeared in: Library 6/10
Fixed in: Library 6/11
Problem
two boxes (which is closed)
Solution
WriteAfterEntry(j,depth,stack_pointer);
if (sizes_p->i > 1 && j hasnt pluralname)
{ give j pluralname;
WriteAfterEntry(j, depth, stack_pointer);
give j ~pluralname;
}
else WriteAfterEntry(j,depth,stack_pointer);
[ ListEqual o1 o2;
if (child(o1)~=0 && WillRecurs(o1)~=0) rfalse;
if (child(o2)~=0 && WillRecurs(o2)~=0) rfalse;
if (c_style & (FULLINV_BIT + PARTINV_BIT) ~= 0)
{ if ((o1 hasnt worn && o2 has worn)
|| (o2 hasnt worn && o1 has worn)) rfalse;
if ((o1 hasnt light && o2 has light)
|| (o2 hasnt light && o1 has light)) rfalse;
! BEGIN NEW CODE
if (o1 has container)
{ if (o2 hasnt container) rfalse;
if ((o1 has open && o2 hasnt open)
|| (o2 has open && o1 hasnt open))
rfalse;
}
else if (o2 has container) rfalse;
! END NEW CODE
}
return Identical(o1,o2);
];
Last updated 17 April 2013.
This site is no longer supported; information may be out of date.
Maintained as a historical archive by the Interactive Fiction Technology Foundation.
Copyright 1993-2018 IFTF, CC-BY-SA unless otherwise noted.
This page was originally managed by Roger Firth.