public void FinDeTour(MoteurGraphique moteurgraphique_, /*Lecteur coldman_,*/ HUD hud_, ref int time, ref bool transition_) { numeroDeTour += 0.5f; //coldman_.Play(Lecteur.EffectKey.laser); bool vousAvezTousFini = true; foreach (Unite bob in listeDesJoueurs[tourencours].bataillon) { vousAvezTousFini = vousAvezTousFini && bob.fileDeMouvements.Count == 0; } if (vousAvezTousFini) { transition_ = listeDesJoueurs[(tourencours + 1) % listeDesJoueurs.Count].difficulte == 0; #region si limite de tours if (conditionsDeVictoire == e_typeDePartie.Colline) { limiteDeTours -= 1/(float)listeDesJoueurs.Count; if (limiteDeTours > 0) { waitForFinDeTour = false; listeDesJoueurs[tourencours].FindeTour(); do { tourencours = (tourencours + 1) % listeDesJoueurs.Count; } while (!listeDesJoueurs[tourencours].atLeastOneAlive); listeDesJoueurs[tourencours].reactiverIA(); time = 0; hud_.DoAFlash(listeDesJoueurs[tourencours].couleur); moteurgraphique_.viderVueChangementDeJoueur(); listeDesJoueurs[tourencours].soeurAnne(moteurgraphique_, this); listeDesJoueurs[tourencours].auras(moteurgraphique_, this); mood = e_modeAction.Mouvement; if (moteurgraphique_.map[tresor_i, tresor_j].presence && listeDesJoueurs[moteurgraphique_.map[tresor_i, tresor_j].pointeurArmee]. bataillon[moteurgraphique_.map[tresor_i, tresor_j].pointeurUnite].alive) { listeDesJoueurs[moteurgraphique_.map[tresor_i, tresor_j].pointeurArmee].score += Math.Max(50 - (int)limiteDeTours, 0); } } else { int v = 0; for (int i = 0; i < listeDesJoueurs.Count; i++) { if (listeDesJoueurs[i].score > listeDesJoueurs[v].score) { v = listeDesJoueurs[i].camp; } } victory(v, hud_); } } #endregion #region sinon else { waitForFinDeTour = false; listeDesJoueurs[tourencours].FindeTour(); moteurgraphique_.viderChemin(); listeDesJoueurs[tourencours].FindeTour(); do { tourencours = (tourencours + 1) % listeDesJoueurs.Count; } while (!listeDesJoueurs[(int)limiteDeTours].atLeastOneAlive); listeDesJoueurs[tourencours].reactiverIA(); time = 0; hud_.DoAFlash(listeDesJoueurs[tourencours].couleur); moteurgraphique_.viderVueChangementDeJoueur(); listeDesJoueurs[tourencours].soeurAnne(moteurgraphique_, this); listeDesJoueurs[tourencours].auras(moteurgraphique_, this); mood = e_modeAction.Mouvement; } #endregion moteurgraphique_.centrerSur(listeDesJoueurs[tourencours].QG.X, listeDesJoueurs[tourencours].QG.Y); clic = false; } else { waitForFinDeTour = true; } }
//Loohy public void finDePartie(Color color_, HUD hud_) { hud_.DoAFlash(color_); }