int zapyourself(obj, ordinary) struct obj *obj; boolean ordinary; { boolean learn_it = FALSE; int damage = 0; switch (obj->otyp) { case WAN_STRIKING: case SPE_FORCE_BOLT: learn_it = TRUE; if (Antimagic) { shieldeff(u.ux, u.uy); pline("Boing!"); } else { if (ordinary) ...