/*----------------------------------------------------------------------*/ static void showInstance(int ins) { char str[80]; if (ins > header->instanceMax) { sprintf(str, "Instance code %d is out of range", ins); output(str); return; } output("The"); say(ins); sprintf(str, "[%d]", ins); output(str); if (instances[ins].parent) { sprintf(str, "Isa %s[%d]", idOfClass(instances[ins].parent), instances[ins].parent); output(str); } if (!isA(ins, header->locationClassId) || (isA(ins, header->locationClassId) && admin[ins].location != 0)) { sprintf(str, "$iLocation: "); output(str); showInstanceLocation(ins, " "); } output("$iAttributes:"); showAttributes(admin[ins].attributes); if (instances[ins].container) showContents(ins); if (isA(ins, header->actorClassId)) { if (admin[ins].script == 0) output("$iIs idle"); else { sprintf(str, "$iExecuting script: %d, Step: %d", admin[ins].script, admin[ins].step); output(str); } } }
static char *print_attributes(unsigned int a) { static char attr[BUFSIZE]; strcpy(attr, showAttributes(a)); return attr; }