Olá, Henrique, como vai?
A lógica utilizada está correta para alternar o status do jogo entre alugado e disponível. A única inconsistência está na sintaxe da estrutura condicional. Em JavaScript, a condição do if precisa estar entre parênteses. Sem eles, o código gera erro de sintaxe e não será executado corretamente.
A correção é apenas adicionar os parênteses na declaração do if. O restante da lógica de manipulação das classes e alteração do texto do botão está adequado para o objetivo da atividade.
Exemplo com o ajuste aplicado:
function alterarStatus(id) {
let gameClicado = document.getElementById(`game-${id}`);
let imagem = gameClicado.querySelector('.dashboard__item__img');
let botao = gameClicado.querySelector('.dashboard__item__button');
if (imagem.classList.contains('dashboard__item__img--rented')) {
imagem.classList.remove('dashboard__item__img--rented');
botao.classList.remove('dashboard__item__button--return');
botao.textContent = 'Alugar';
} else {
imagem.classList.add('dashboard__item__img--rented');
botao.classList.add('dashboard__item__button--return');
botao.textContent = 'Devolver';
}
}
Continue praticando esse tipo de manipulação de classes, pois é uma base importante para interações em interfaces web.
Obrigado por compartilhar sua solução. O fórum segue à disposição sempre que precisar.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!