… | |
… | |
2566 | |
2566 | |
2567 | if (op->stats.food < 0) |
2567 | if (op->stats.food < 0) |
2568 | { |
2568 | { |
2569 | op->stats.hp += op->stats.food; |
2569 | op->stats.hp += op->stats.food; |
2570 | op->stats.food = 0; |
2570 | op->stats.food = 0; |
|
|
2571 | |
|
|
2572 | if (op->stats.hp < 0) |
|
|
2573 | { |
|
|
2574 | op->contr->killer = archetype::get ("killer_starvation"); |
|
|
2575 | op->contr->killer->destroy (); |
2571 | } |
2576 | } |
|
|
2577 | } |
2572 | |
2578 | |
|
|
2579 | /* killer should be set here already */ |
2573 | if (op->stats.hp < 0 && !QUERY_FLAG (op, FLAG_WIZ)) |
2580 | if (op->stats.hp < 0 && !QUERY_FLAG (op, FLAG_WIZ)) |
2574 | kill_player (op); |
2581 | kill_player (op); |
2575 | } |
2582 | } |
2576 | } |
2583 | } |
2577 | |
2584 | |
… | |
… | |
2645 | } |
2652 | } |
2646 | |
2653 | |
2647 | INVOKE_PLAYER (DEATH, op->contr); |
2654 | INVOKE_PLAYER (DEATH, op->contr); |
2648 | |
2655 | |
2649 | command_kill_pets (op, 0); |
2656 | command_kill_pets (op, 0); |
2650 | |
|
|
2651 | if (op->stats.food < 0) |
|
|
2652 | { |
|
|
2653 | op->contr->killer = archetype::get ("killer_starvation"); |
|
|
2654 | op->contr->killer->destroy (); |
|
|
2655 | } |
|
|
2656 | |
2657 | |
2657 | op->contr->play_sound (sound_find ("player_dies")); |
2658 | op->contr->play_sound (sound_find ("player_dies")); |
2658 | |
2659 | |
2659 | /* save the map location for corpse, gravestone */ |
2660 | /* save the map location for corpse, gravestone */ |
2660 | x = op->x; |
2661 | x = op->x; |