Modification ViewModel pour connexion à l'API complet, avec un random sur le nombre total de scientifiques

RepositoryAndroid^2
Alix JEUDI--LEMOINE 1 year ago
parent 27d475c107
commit 18dfba47ec

@ -5,8 +5,7 @@ import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import fr.iut.sciencequest.ViewModels.UiStates.PenduUIState import fr.iut.sciencequest.ViewModels.UiStates.PenduUIState
import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiqueById import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiqueById
import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiques import fr.iut.sciencequest.model.buisness.Scientifique.fetchScientifiquesInfos
import fr.iut.sciencequest.model.dto.extensions.ToModel
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.launch import kotlinx.coroutines.launch
@ -16,23 +15,27 @@ class PenduViewModel : ViewModel() {
fun InitPartie() { fun InitPartie() {
Log.d("PenduViewModel","Un utilisateur initialise une partie") Log.d("PenduViewModel","Un utilisateur initialise une partie")
viewModelScope.launch { viewModelScope.launch {
fetchScientifiqueById(1).collect { fetchScientifiquesInfos().collect { scientifiquesInfos ->
val nomComplet = it.prenom + " " + it.nom Log.e("PenduViewModel",scientifiquesInfos.nbScientfiques.toString())
Log.d("ViewModelPendu",nomComplet) fetchScientifiqueById((1..scientifiquesInfos.nbScientfiques).random()).collect {
var motATrou = "" val nomComplet = it.prenom + " " + it.nom
for (chr in nomComplet) { Log.d("ViewModelPendu",nomComplet)
motATrou += if (chr == ' ') { var motATrou = ""
' ' for (chr in nomComplet) {
} else { 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()) nvMotATrou = nvMotATrou.replaceRange(index,index + 1, letterToCheck.toString())
} }
} }
var isWon = false
if (nvMotATrou.equals(uiState.value.motATrouver)) { val isWon = nvMotATrou == uiState.value.motATrouver
isWon = true
}
uiState.value = PenduUIState(isWon, uiState.value = PenduUIState(isWon,
true, true,
uiState.value.nbViesRestantes, uiState.value.nbViesRestantes,

Loading…
Cancel
Save