void NetworkEngine::putTheCharacter(RakNet::Packet * packet) { RakNet::BitStream bsIn(packet->data,packet->length,false); bsIn.IgnoreBytes(sizeof(RakNet::MessageID)); //En otros sitios esta como bsIn.IgnoreBytes(1), es lo mismo GameObject* mainPlayer = NULL; GameObjectManager *gameObjectManager = GameManager::getInstance()->getGameObjectManager(); RakNet::RakString name; RakNet::RakNetGUID guid; bsIn.Read(guid); bsIn.Read(name); if(guid == peer->GetMyGUID()) { if(name == RakNet::RakString("Battleship")) { mainPlayer = gameObjectManager->createBattleship(); } else if(name == RakNet::RakString("Bomber")) { mainPlayer = gameObjectManager->createBomber(); } else if(name == RakNet::RakString("Fighter")) { mainPlayer = gameObjectManager->createFighter(); } else if(name == RakNet::RakString("Engineer")) { mainPlayer = gameObjectManager->createEngineer(); } this->mainPlayer = mainPlayer; } }