| 2773 | //------------------------------------------------------------------------- |
| 2774 | |
| 2775 | BZF_API bool bz_killPlayer(int playerID, bool spawnOnBase, int killerID, const char* flagType) { |
| 2776 | GameKeeper::Player* player = GameKeeper::Player::getPlayerByIndex(playerID); |
| 2777 | if (!player) { |
| 2778 | return false; |
| 2779 | } |
| 2780 | |
| 2781 | if (!player->player.isAlive()) { |
| 2782 | return false; |
| 2783 | } |
| 2784 | |
| 2785 | if (killerID == -1) { |
| 2786 | killerID = ServerPlayer; |
| 2787 | } |
| 2788 | |
| 2789 | FlagType* flag = NULL; |
| 2790 | if (flagType) { |
| 2791 | FlagTypeMap& flagMap = FlagType::getFlagMap(); |
| 2792 | if (flagMap.find(std::string(flagType)) == flagMap.end()) { |
| 2793 | return false; |
| 2794 | } |
| 2795 | |
| 2796 | flag = flagMap.find(std::string(flagType))->second; |
| 2797 | } |
| 2798 | |
| 2799 | playerKilled(playerID, killerID, GotKilledMsg, -1, flag ? flag : Flags::Null, -1, spawnOnBase); |
| 2800 | |
| 2801 | return true; |
| 2802 | } |
| 2803 | |
| 2804 | //------------------------------------------------------------------------- |
| 2805 |
no test coverage detected