void killPlayers(int safeid, std::string keepawaycallsign) { bz_APIIntList *playerList = bz_newIntList(); bz_getPlayerIndexList ( playerList ); for ( unsigned int i = 0; i < playerList->size(); i++ ){ bz_BasePlayerRecord *player = bz_getPlayerByIndex(playerList->operator[](i)); if (player){ if (player->playerID != safeid) { bz_killPlayer(player->playerID, true, keepaway.id); if (keepaway.soundEnabled) bz_sendPlayCustomLocalSound(player->playerID,"flag_lost"); } else if (keepaway.soundEnabled) bz_sendPlayCustomLocalSound(player->playerID,"flag_won"); } bz_freePlayerRecord(player); } bz_deleteIntList(playerList); bz_sendTextMessagef (BZ_SERVER, BZ_ALLUSERS, "%s Kept the Flag Away!", keepawaycallsign.c_str()); if (keepaway.flagResetEnabled) bz_resetFlags(true); return; }
void lastTankStanding::Event(bz_EventData *eventData) { switch (eventData->eventType) { case bz_eCaptureEvent: { bz_resetFlags(true, true); } break; default: break; } }