void Player::SetAgent( ObjectPtr agent ) { if( !agent ) { LogConsole( "Tried to set non-existing agent, deleting player." ); Delete(); return; } m_agent = ObjectWeakPtr( agent ); agent->SetName( GetName() ); PacketPtr packet = std::make_shared<sf::Packet>(); (*packet) << static_cast<sf::Uint16>( ServerToClient::SERVER_SET_ID ) << agent->GetId(); SendPacket( packet ); }