public void EditAccount() { string accountName = accountDropdownScript.GetSelectedOption(); //Weight bool validWeight = true; float weight = 0; try { weight = float.Parse(weightInputFieldScript.GetComponent <InputField>().text); //weightInputFieldScript.GetSelectedOption() wordt hier niet gebruikt om een error te kunnen catchen. (Kan natuurlijk ook verbeterd worden door .GetSelectedOption een default te laten returnen bij een misgelopen read en dan hier daarop te checken) } catch { validWeight = false; } if (weight < 30 || weight > 150 || weight == null) { validWeight = false; } int preferredResistance = resistanceDropdownScript.GetSelectedOption(); if (validWeight && accountName != "") { storageManagerScript.CreateOrEditAccount(accountName, weight, preferredResistance); popupManager.CreateFeedbackPopup(transform, "Account bewerkt!" + " Naam: " + accountName + ", Gewicht: " + weight + ", Geprefereerde weerstand: " + preferredResistance); } else { if (!validWeight) { popupManager.CreateWarningPopup(transform, "Je moet een geldig gewicht ingeven: 30-150 kg"); } if (accountName == "") { popupManager.CreateWarningPopup(transform, "Je moet een account selecteren"); } } }
//Het gekozen aantal rondes is verandert public void NumberOfLapsSelected() //aantalRondesInputField.onValueChanged delegate { //Ga ervan uit dat de gegeven input juist is bool validInput = true; //Probeer de input te lezen en om te zetten in een cijfer try { numberOfLaps = int.Parse(aantalRondesInputField.text); } catch { validInput = false; //Wanneer dit niet lukt is de input niet juist } //Ga na of het nummer binnen de toegelaten range is (1 tot 100) if (numberOfLaps < 1 || numberOfLaps > 100) { validInput = false; } //Is de input juist? if (validInput) { //Zo ja, pas de totale afstand die wordt getoond aan totalDistance = mapDatas[selectedMap].lapLength * numberOfLaps; totaleAfstandOutput.text = physicsManager.FormatDistance(totalDistance); } else { //Zo nee, gooi een waarschuwingspopup en zet terug naar de default 1 ronde popupManager.CreateWarningPopup(instellingenTransform.transform, "Geen geldig aantal rondes: 1-100 rondes"); aantalRondesInputField.text = 1.ToString(); } }
//Functie die wordt getriggerd door de OkKnop public void TerminateSelection() { //Ga ervan uit dat alles juist is bool validPlayerSelection = true; bool noDoubleSelection = true; Dictionary <string, int> selectedPlayers = new Dictionary <string, int>(); storageManager = FindObjectOfType <StorageManager>(); popupManager = FindObjectOfType <PopupManager>(); accountSelectors = FindObjectsOfType <AccountSelector>(); //Overloop elke accountselector foreach (AccountSelector accountSelector in accountSelectors) { //Lees de geselecteerde speler en weerstand string player = accountSelector.accountDropdown.GetSelectedOption(); int resistance = accountSelector.resistanceDropdown.GetSelectedOption(); //Is de selectie van de speler geldig? if (player != "" & !selectedPlayers.ContainsKey(player)) { selectedPlayers.Add(player, resistance); //Zo ja, voeg hem toe aan de lijst van geselecteerde spelers } else { //Zo nee, kijk wat er mis is if (player == "") { validPlayerSelection = false; //Er is niets geselecteerd } if (selectedPlayers.ContainsKey(player)) { noDoubleSelection = false; //Er is een speler twee keer geselecteerd } } } //Is er nooit een probleem geweest met een speler? if (validPlayerSelection && noDoubleSelection) { //Zo nee, Voeg alle geselecteerde spelers toe als actieve spelers en laad het volgende level storageManager.activePlayers = selectedPlayers; FindObjectOfType <SceneManagerScript>().LoadLevel(levelToLoad); } else { //Zo ja, kijk wat er mis is if (!validPlayerSelection) { //Er is een ongeldige selectie gemaakt, gooi een popup met dit resultaat en doe voor de rest niets //Waarschuwing, de knop werd niet gedeactiveerd dus dit script kan meerdere keren gerunt worden en dus ook meerdere popups gooien, dit moet opgelost worden popupManager.CreateWarningPopup(FindObjectOfType <SubDisplays>().transform, "Alle lege spelers moeten geselecteerd of verwijderd worden"); } if (!noDoubleSelection) { //Er is een dubbele selectie gemaakt, gooi een popup met dit resultaat en doe voor de rest niets popupManager.CreateWarningPopup(FindObjectOfType <SubDisplays>().transform, "Er is een account meerdere keren geselecteerd"); } } }
public void CreateAccount() { storageManagerScript = FindObjectOfType <StorageManager>(); popupManagerScript = FindObjectOfType <PopupManager>(); bool validName = true; name = nameInputField.text; foreach (string illigalItem in illigalItems) { if (name.Contains(illigalItem)) { validName = false; } } if (name.Length > 20 || name == "") { validName = false; } bool validWeight = true; try { weight = float.Parse(weightInputField.text); } catch { validWeight = false; } if (weight < 30 || weight > 150 || weight == null) //weight == null kan nooit dus mag weg { validWeight = false; } preferredResistance = int.Parse(preferredResistanceDropdown.options[preferredResistanceDropdown.value].text); if (validName & !storageManagerScript.GetPlayerOptions().Contains(name) && validWeight) { storageManagerScript.CreateOrEditAccount(name, weight, preferredResistance); AccountDropdown[] accountDropdowns = FindObjectsOfType <AccountDropdown>(); foreach (AccountDropdown accountDropdown in accountDropdowns) { accountDropdown.veranderDropdownOptions(); } popupManagerScript.CreateFeedbackPopup(transform, "Nieuw account gemaakt!" + " Naam: " + name + ", Gewicht: " + weight + ", Geprefereerde weerstand: " + preferredResistance); } else { if (!validName) { // Dit mogen ook gewoon drie if statements worden, geen idee wat ik hier aan het denken was if (name.Length > 20 || name == "") { if (name.Length > 20) { popupManagerScript.CreateWarningPopup(transform, "De naam is te lang"); } else { popupManagerScript.CreateWarningPopup(transform, "Er moet een naam ingegeven worden"); } } else { popupManagerScript.CreateWarningPopup(transform, "De naam bevat een illegaal teken (* . / \" \\ [ ] : ; | = ,)"); } } if (storageManagerScript.GetPlayerOptions().Contains(name)) { popupManagerScript.CreateWarningPopup(transform, "Er bestaat al een account met deze naam"); } if (!validWeight) { popupManagerScript.CreateWarningPopup(transform, "Je moet een geldig gewicht ingeven: 30-150 kg"); } } }
public void OkButtonClicked() //Training { player = transform.parent.GetComponent <Player>(); storageManager = FindObjectOfType <StorageManager>(); communicationManager = FindObjectOfType <CommunicationManager>(); popupManager = FindObjectOfType <PopupManager>(); activePlayers = new List <string>(storageManager.activePlayers.Keys); actieveFietsen = new List <int>(storageManager.activePlayers.Values); //Bepaalfietsnummer door alle nummers te overlopen en het eerste te nemen dat vrij is int i = 1; bool fietsNummerFound = false; while (i < 7 & !fietsNummerFound) { if (!actieveFietsen.Contains(i)) { fietsNummer = i; fietsNummerFound = true; } else { i += 1; } } //Leees de geselecteerde naam naam = persoonDropdownDropdown.options[persoonDropdownDropdown.value].text; //Kan in vervolg beter AccountDropdown gebruiken //Lees het geselecteerd vermogen try //Kan ook beter naar AccountDropdown { inTeStellenvermogen = int.Parse(vermogenInputField.text); } catch { inTeStellenvermogen = 0; } //Zijn de naam en het vermogen geldig? if (naam != "" && inTeStellenvermogen > 0 && inTeStellenvermogen < 500 & !activePlayers.Contains(naam)) { //Zo ja, zet informatie in Player, instantieer tekst en activeer fiets player.fietsnummer = fietsNummer; player.naam = naam; player.spelerMassa = storageManager.GetAccountData(naam)[0]; player.ingesteldVermogen = inTeStellenvermogen; //Instantieer tekst transform.parent.gameObject.GetComponent <PersoonDisplay>().InstantieerText(); try { //Activeer fiets communicationManager.SendPort(4, fietsNummer, 1); communicationManager.SendPort(5, fietsNummer, inTeStellenvermogen); //zend vermogen naar fiets } catch { Debug.Log("COMMUNICATIONERROR"); } //Verwijder de selector (dit object) Destroy(gameObject); } else { //Zo nee, zoek wat er mis is en gooi een popup if (naam == "") { popupManager.CreateWarningPopup(transform, "Je moet een account selecteren"); } if (inTeStellenvermogen <= 0 || inTeStellenvermogen >= 500) { popupManager.CreateWarningPopup(transform, "Je moet een geldig vermogen invoeren: 1 tot 500 watt"); } if (activePlayers.Contains(naam)) { popupManager.CreateWarningPopup(transform, naam + " is al aan het trainen"); } } }