… | |
… | |
183 | |
183 | |
184 | if (ob->map) |
184 | if (ob->map) |
185 | maplevel = ob->map->path; |
185 | maplevel = ob->map->path; |
186 | |
186 | |
187 | ob->remove (); |
187 | ob->remove (); |
|
|
188 | ob->enemy = 0; // sometimes keeps an extra refcount on itself |
188 | ob->map = 0; |
189 | ob->map = 0; |
189 | party = 0; |
190 | party = 0; |
190 | |
191 | |
191 | combat_ob = ranged_ob = 0; //TODO, should be special marker, non-refcounted, not this |
192 | combat_ob = ranged_ob = 0; //TODO, should be special marker, non-refcounted, not this |
192 | |
193 | |
… | |
… | |
2635 | { |
2636 | { |
2636 | tmp->destroy (); |
2637 | tmp->destroy (); |
2637 | new_draw_info (NDI_UNIQUE, 0, tmp, "Your mind feels clearer"); |
2638 | new_draw_info (NDI_UNIQUE, 0, tmp, "Your mind feels clearer"); |
2638 | } |
2639 | } |
2639 | |
2640 | |
2640 | cure_disease (op, 0); /* remove any disease */ |
2641 | cure_disease (op, 0, 0); /* remove any disease */ |
2641 | op->stats.hp = op->stats.maxhp; |
2642 | op->stats.hp = op->stats.maxhp; |
2642 | if (op->stats.food <= 0) |
2643 | if (op->stats.food <= 0) |
2643 | op->stats.food = 999; |
2644 | op->stats.food = 999; |
2644 | |
2645 | |
2645 | /* create a bodypart-trophy to make the winner happy */ |
2646 | /* create a bodypart-trophy to make the winner happy */ |
… | |
… | |
2845 | { |
2846 | { |
2846 | tmp->destroy (); |
2847 | tmp->destroy (); |
2847 | new_draw_info (NDI_UNIQUE, 0, tmp, "Your mind feels clearer"); |
2848 | new_draw_info (NDI_UNIQUE, 0, tmp, "Your mind feels clearer"); |
2848 | } |
2849 | } |
2849 | |
2850 | |
2850 | cure_disease (op, 0); /* remove any disease */ |
2851 | cure_disease (op, 0, 0); /* remove any disease */ |
2851 | |
2852 | |
2852 | /*add_exp(op, (op->stats.exp * -0.20)); */ |
2853 | /*add_exp(op, (op->stats.exp * -0.20)); */ |
2853 | apply_death_exp_penalty (op); |
2854 | apply_death_exp_penalty (op); |
2854 | if (op->stats.food < 100) |
2855 | if (op->stats.food < 100) |
2855 | op->stats.food = 900; |
2856 | op->stats.food = 900; |