private void HandleChangeLines() { _waterskibaan.VerplaatsKabel(); if (_wachtrijStarten.GetAlleSporters().Count > 0 && _waterskibaan.Kabel.IsStartPositieLeeg() != false) { var athlete = _wachtrijStarten.SportersVerlatenRij(1)[0]; var random = new Random(); athlete.Skies = new Skies(); athlete.Zwemvest = new Zwemvest(); _waterskibaan.SporterStart(athlete); foreach (var line in _waterskibaan.Kabel.Lijnen) { line.Sporter.HuidigeMove = random.Next(0, 100) <= 25 ? line.Sporter.Moves[random.Next(0, line.Sporter.Moves.Count)] : null; line.Sporter.Score += line.Sporter.HuidigeMove?.Move() ?? 0; } var args = new LijnenVerplaatsArgs { Sporter = athlete, Lijnen = _waterskibaan.Kabel.Lijnen }; LijnenVerplaats?.Invoke(args); } }
private void OnLijnenVerplaatst(object source, EventArgs e) { if (_counter % 3 != 0) { return; } waterskibaan.VerplaatsKabel(); if (waterskibaan._kabel.IsStartPositieLeeg()) { List <Sporter> sporters = _wachtrijStarten.SportersVerlatenRij(1); if (sporters.Count > 0) { Sporter sporter = sporters[0]; sporter.Zwemvest = new Zwemvest(); sporter.Skies = new Skies(); waterskibaan.SporterStart(sporter); var random = new Random(); foreach (var line in waterskibaan._kabel.Lijnen) { line.Sporter.HuidigeMove = random.Next(0, 100) <= 25 ? line.Sporter.Moves[random.Next(0, line.Sporter.Moves.Count)] : null; line.Sporter.Score += line.Sporter.HuidigeMove?.Move() ?? 0; } var args = new LijnenVerplaatsArgs { Sporter = sporter, Lijnen = waterskibaan._kabel.Lijnen }; LijnenVerplaatst?.Invoke(args); } } }