MCPcopy Create free account
hub / github.com/NetHack/NetHack / discard_damage_owned_by

Function discard_damage_owned_by

src/shk.c:4529–4552  ·  view source on GitHub ↗

discard all damage structs owned by shopkeeper */

Source from the content-addressed store, hash-verified

4527
4528/* discard all damage structs owned by shopkeeper */
4529staticfn void
4530discard_damage_owned_by(struct monst *shkp)
4531{
4532 struct damage *dam = svl.level.damagelist, *dam2, *prevdam = NULL;
4533
4534 while (dam) {
4535 coordxy x = dam->place.x, y = dam->place.y;
4536
4537 if (strchr(in_rooms(x, y, SHOPBASE), ESHK(shkp)->shoproom)) {
4538 dam2 = dam->next;
4539 if (prevdam)
4540 prevdam->next = dam2;
4541 if (dam == svl.level.damagelist)
4542 svl.level.damagelist = dam2;
4543 (void) memset(dam, 0, sizeof *dam);
4544 free((genericptr_t) dam), dam = (struct damage *) NULL;
4545 } else {
4546 prevdam = dam;
4547 dam2 = dam->next;
4548 }
4549
4550 dam = dam2;
4551 }
4552}
4553
4554/* Shopkeeper tries to repair damage belonging to them */
4555staticfn void

Callers 1

shkgoneFunction · 0.85

Calls 1

in_roomsFunction · 0.85

Tested by

no test coverage detected