本文整理汇总了C++中logic::CEntity::deactivateComponents方法的典型用法代码示例。如果您正苦于以下问题:C++ CEntity::deactivateComponents方法的具体用法?C++ CEntity::deactivateComponents怎么用?C++ CEntity::deactivateComponents使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类logic::CEntity
的用法示例。
在下文中一共展示了CEntity::deactivateComponents方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: endGame
void CTDMServer::endGame() {
_inEndGame = true;
// Tiempo de espera hasta la siguiente partida
_gameTime = _voteMap ? 40000 : 15000;
// Notificar a los clientes de que estamos en la fase endGame
Net::NetMessageType endGameMsg = Net::END_GAME;
_netMgr->broadcast( &endGameMsg, sizeof(endGameMsg) );
// Desactivamos los componentes relevantes en el servidor para asegurarnos
// de que aunque el cliente haga chetos no se muevan los jugadores sin permiso
// ni se hagan daño.
Logic::CEntity* player;
std::vector<std::string> componentList;
componentList.reserve(4);
componentList.push_back("CAvatarController");
componentList.push_back("CPhysicController");
componentList.push_back("CLife");
componentList.push_back("CSpawnPlayer");
for(auto it = _playersMgr->begin(); it != _playersMgr->end(); ++it) {
if( it->getEntityId().second ) {
player = _map->getEntityByID( it->getEntityId().first );
player->deactivateComponents(componentList);
}
}
// @todo
// Parar la partida (el server y el cliente ya no hacen tick)
// Poner la cámara mirando al jugador y que al girar el ratón rote alrededor
// del player - cliente
// Poner la cámara de los demás jugadores mirando al ganador - cliente
// Mostrar el scoreboard durante unos 10 segundos - cliente
// Si votemap está activo mostrar el menú de votemap durante unos 30 segs
// Si votemap no está activo entonces pasar al siguiente mapa de los configurados
// y si no ha habido ningun mapa puesto en lista salir
}