From: "Kras Kresh" <kras_kresh@HOTMAIL.COM> > struct obj_data *Obj_from_store(struct obj_file_elem object, int *location) > > if (GET_OBJ_TYPE(obj) == ITEM_DRINKCON) { > > GET_OBJ_VAL(obj, 1) = object.value[1]; // how filled > if (!GET_OBJ_VAL(obj, 1)) { // kill if empty > name_from_drinkcon(obj); > GET_OBJ_VAL(obj, 2) = 0; > } else if (GET_OBJ_VAL(obj, 2) != object.value[2]) { I'm not sure what the above line is testing for exactly. The two values should always be equal, since you should be setting them equal explicitly. I ran into the same thing a while back, and stuck the following lines of code in the same function (Obj_from_store in objsave.c): + /* Set proper name for drink containers */ + if (GET_OBJ_TYPE(obj) == ITEM_DRINKCON) { + name_from_drinkcon(obj); + if (GET_OBJ_VAL(obj, 1) > 0) + name_to_drinkcon(obj, GET_OBJ_VAL(obj, 2)); + } return (obj); } else return NULL; } This solution has been working fine for me. Mike -- +---------------------------------------------------------------+ | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html | +---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/06/01 PST