From 18dfba47ecbacdf688c8fc009decc79bfa7bac7f Mon Sep 17 00:00:00 2001 From: Alix JEUDI--LEMOINE Date: Tue, 2 Apr 2024 17:14:48 +0200 Subject: [PATCH] =?UTF-8?q?Modification=20ViewModel=20pour=20connexion=20?= =?UTF-8?q?=C3=A0=20l'API=20complet,=20avec=20un=20random=20sur=20le=20nom?= =?UTF-8?q?bre=20total=20de=20scientifiques?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sciencequest/ViewModels/PenduViewModel.kt | 42 ++++++++++--------- 1 file changed, 22 insertions(+), 20 deletions(-) diff --git a/android/app/src/main/java/fr/iut/sciencequest/ViewModels/PenduViewModel.kt b/android/app/src/main/java/fr/iut/sciencequest/ViewModels/PenduViewModel.kt index a13413b..57e9985 100644 --- a/android/app/src/main/java/fr/iut/sciencequest/ViewModels/PenduViewModel.kt +++ b/android/app/src/main/java/fr/iut/sciencequest/ViewModels/PenduViewModel.kt @@ -5,8 +5,7 @@ import androidx.lifecycle.ViewModel import androidx.lifecycle.viewModelScope import fr.iut.sciencequest.ViewModels.UiStates.PenduUIState import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiqueById -import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiques -import fr.iut.sciencequest.model.dto.extensions.ToModel +import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiquesInfos import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.launch @@ -16,23 +15,27 @@ class PenduViewModel : ViewModel() { fun InitPartie() { Log.d("PenduViewModel","Un utilisateur initialise une partie") viewModelScope.launch { - fetchScientifiqueById(1).collect { - val nomComplet = it.prenom + " " + it.nom - Log.d("ViewModelPendu",nomComplet) - var motATrou = "" - for (chr in nomComplet) { - motATrou += if (chr == ' ') { - ' ' - } else { - '_' + fetchScientifiquesInfos().collect { scientifiquesInfos -> + Log.e("PenduViewModel",scientifiquesInfos.nbScientfiques.toString()) + fetchScientifiqueById((1..scientifiquesInfos.nbScientfiques).random()).collect { + val nomComplet = it.prenom + " " + it.nom + Log.d("ViewModelPendu",nomComplet) + var motATrou = "" + for (chr in nomComplet) { + motATrou += if (chr == ' ') { + ' ' + } else { + '_' + } } + uiState.value = PenduUIState( + isActionGood = true, + motATrouver = nomComplet, + motATrou = motATrou + ) } - uiState.value = PenduUIState( - isActionGood = true, - motATrouver = nomComplet, - motATrou = motATrou - ) } + } } @@ -60,10 +63,9 @@ class PenduViewModel : ViewModel() { nvMotATrou = nvMotATrou.replaceRange(index,index + 1, letterToCheck.toString()) } } - var isWon = false - if (nvMotATrou.equals(uiState.value.motATrouver)) { - isWon = true - } + + val isWon = nvMotATrou == uiState.value.motATrouver + uiState.value = PenduUIState(isWon, true, uiState.value.nbViesRestantes,