Jump to content
Unity Insider Forum

peachplayer

Members
  • Content Count

    144
  • Joined

  • Last visited

  • Days Won

    1

peachplayer last won the day on October 31 2016

peachplayer had the most liked content!

Community Reputation

4 Neutral

About peachplayer

  • Rank
    Advanced Member

Recent Profile Visitors

1,656 profile views
  1. Hallo Also ich habe sehr gute Erfahrungen mit dem Speicherformat .XML gemacht. Die gespeicherten Daten können beliebig editiert werden. Die Datenabfrage funktioniert dann via Linq. Gruss, peachplayer
  2. Ich konnte das Problem selber lösen! Ich musste bloss die obige Funktion in die "Anzeige"-Funktion integrieren, denn da wird ja jedesmal der Index neu gesetzt, sonst bleibt er immer gleich! Gruss, peachplayer
  3. Hallo Leute Ich habe folgendes Problem: wenn ich den Index des Dropdown-Objektes abfragen will (index3), kommt immer nur der 0-te Wert heraus, sodass immer nur das 1.Element des Dropdown-Feldes heraus kommt. Woran könnte das liegen? Die Index-Werte sollten doch auch dynamisch abgefragt werden können? void ListeFuellen() { //get the selected index int index3 = dropdown3.GetComponent<Dropdown>().value; float Menge; dataXml = XElement.Load(".\\Dünger.xml"); IEnumerable<XElement> data = dataXml.Elements(); foreach (XElement item in data) { if ((float)item.Element("Fläche") != 0) { Debug.Log(item.Element("Parzellenname").Value); Debug.Log(item.Element("Menge").Value); Debug.Log(item.Element("Düngersorte").Value); // Code der pro Parzellenname ausgeführt wird // parzelle enthält alle Einträge der jeweiligen Parzelle string Düngersorte = item.Element("Düngersorte").Value; Debug.Log(Düngersorte); Menge = (float)item.Element("Menge"); Debug.Log(Menge); Parzellenname = item.Element("Parzellenname").Value; String value = item.Element("Datum").Value; int startIndex = 0; int length = 4; String substring = value.Substring(startIndex, length); switch (Düngersorte) { case "Ammonsalpeter": N = 27.0f * Menge * 0.01f; P = 0.0f * Menge * 0.01f; K = 0.0f * Menge * 0.01f; Mg = 2.50f * Menge * 0.01f; break; case "Ceral": N = 0.0f * Menge * 0.01f; P = 16.0f * Menge * 0.01f; K = 32.0f * Menge * 0.01f; Mg = 0.0f * Menge * 0.01f; break; case "Suplesan": N = 20.0f * Menge * 0.01f; P = 8.0f * Menge * 0.01f; K = 8.0f * Menge * 0.01f; Mg = 02.0f * Menge * 0.01f; break; case "Vernal plus": N = 20.0f * Menge * 0.01f; P = 6.0f * Menge * 0.01f; K = 6.0f * Menge * 0.01f; Mg = 02.0f * Menge * 0.01f; break; } DüngerEintrag_NPK eintrag1 = new DüngerEintrag_NPK(); eintrag1.N = N; eintrag1.P = P; eintrag1.K = K; eintrag1.Mg = Mg; eintrag1.Parzellenname = Parzellenname; eintrag1.Datum = DateTime.Parse(value); if (substring == dropdown3.options[index3].text) liste1.Add(eintrag1); } } }
  4. danke für die ausführliche Antwort. Der Fehler lag tatsächlich in einem anderen Script. Jetzt läuft eigentlich alles. Gruss, peachplayer
  5. Danke für den Hinweis! In folgender Zeile bekomme ich die Fehlermeldung: if (dropdown1.options[index1].text == Jahr_auswahl) und zwar einen Index-Out of Range Fehler. Leider weiss ich nicht wie ich das korrigieren kann.
  6. Hallo Leute Weiss jemand wieso ich beim folgenden Code einen Null-Wert bei der Spalte Erlös erhalte? Die anderen Spalten beim Output haben alle keine Null-Werte. Gruss, peachplayer void ListeAnzeigen() { string NummerAusgabe = ""; string ParzellennameAusgabe = ""; string KostenAusgabe = ""; float Kostentotal = 0.0f; float Kostentotal_pf = 0.0f; float Kostensumme = 0.0f; float ErlösAusgabe_total = 0.0f; float parzellenSumme1 = 0.0f; int i = 0; int index1 = dropdown1.value; var parzellen2 = liste1.GroupBy(item => item.Datum.Year); foreach (var parzelle1 in parzellen2) { string Jahr_auswahl = parzelle1.Key.ToString(); if (dropdown1.options[index1].text == Jahr_auswahl) { var parzellen1 = liste1.GroupBy(item => item.GetParzellenname()); foreach (var parzelle in parzellen1) { // Code der pro Parzellenname ausgeführt wird // parzelle enthält alle Einträge der jeweiligen Parzelle //string Jahr_auswahl = liste[i].Datum.Year.ToString(); string parzellenName = parzelle.Key; int Nummer = parzelle.Sum(item => item.Nummer); NummerAusgabe += parzelle.Sum(item => item.Nummer) + "\n"; ParzellennameAusgabe += parzellenName + "\n"; ParzellennameAnzeige.text = ParzellennameAusgabe; float parzellenSumme = parzelle.Sum(item => Mathf.Round(item.Kostensumme() * 1.00f)); IEnumerable<Kosten> result = parzelle.Where(c => c.Fläche > 0 && c.Erlös >0); IEnumerable<Kosten> result2 = parzelle.Where(c => c.Erlös > 0 && c.Fläche >0 && c.Kost_d >0); //float Fläche2 = parzelle.Sum(item => Mathf.Round(item.Fläche * 1 / Nummer)); float Summe1 = parzelle.Sum(item => Mathf.Round(item.Erlös)); KostenAusgabe += parzellenSumme + "\n"; KostenAnzeige.text = KostenAusgabe; Kostentotal += parzellenSumme; //Erlös = parzelle.Sum(item => Mathf.Round(item.Erlös * 0.50f)); var result_erlös = result2.GroupBy(item1 => item1.Erlös); foreach (var item in result_erlös) { if (item.Key > 0) { Erlös = item.Key; ErlösAusgabe += Erlös + "\n"; ErlösAnzeige.text = ErlösAusgabe; ErlösAusgabe_total += Erlös; DBAusgabe += Erlös - parzellenSumme + "\n"; } } var result_fläche = result.GroupBy(item1 => item1.Fläche); foreach (var item in result_fläche) { DBAusgabe_ha += Mathf.Round((Erlös - parzellenSumme) * 100.0f / (item.Key)) + "\n"; DBAnzeige_einzeln_proha.text = DBAusgabe_ha; DBAnzeige_einzeln.text = DBAusgabe; } } //StartCoroutine(SaveData(parzellenName, Erlös, parzellenSumme, (Erlös - parzellenSumme))); } } //totaleKostenAnzeige.text = Kostensumme.ToString(); if (ParzellennameAusgabe != "" && Erlös >0) { NummerAnzeige.text = NummerAusgabe; totaleKostenAnzeige.text = "Totale Kosten = " + (Kostentotal); PlayerPrefs.SetFloat("Kosten_total", Kostentotal); //totaleKostenAnzeige.text = "Totale Kosten = " + Kostentotal; DBAnzeige.text = "DB total = " + (ErlösAusgabe_total - Kostentotal).ToString(); totalerErlösAnzeige.text = "Totaler Erlös = " + ErlösAusgabe_total; Kassenbestand = (ErlösAusgabe_total - Kostentotal) + PlayerPrefs.GetFloat("Kassenbestand"); PlayerPrefs.SetFloat("Kassenbestand", Kassenbestand); } }
  7. Habs herausgefunden, wo der Fehler lag. Die Szene wurde nicht richtig gerendert.
  8. Habe gerade bemerkt, dass keine .asset-datei vorhanden ist nach dem rendern. Woran könnte das liegen?
  9. Danke für den Tipp! Meine Game-View sieht folgendermassen aus: Leider dreht sich das Container-Schiff nur um die eigene Achse bei Mausklick...Die World-map und die Plane wurden separat gerendert. Woran könnte das liegen? Das Script sieht so aus: Gruss, peachplayer // MoveToClickPoint.cs using UnityEngine; using UnityEngine.AI; public class MoveToClickPoint : MonoBehaviour { public NavMeshAgent agent; public Camera camera; void Start() { agent = GetComponent<NavMeshAgent>(); } void Update() { if (Input.GetMouseButtonDown(0)) { RaycastHit hit; if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out hit, 1000)) { agent.destination = hit.point; } } } }
  10. Habe eine 2-d Weltkarte mit 170 verschiedenen Mesh im Asset Store gefunden, die Karte ist also fix!
  11. danke für die Antwort. Die 2-d-Weltkarte soll vorgegeben sein von Unity. Gruss, peachplayer
  12. Hallo Leute Weiss jemand, ob es ein Asset gibt, womit man eine 2-d-Weltkarte erstellen kann, wo man via Seeweg Schiffe navigieren kann? Danke für eine Antwort! Gruss, peachplayer
  13. danke, ich habe es selber herausgefunden.
  14. Hallo Leute Weiss jemand wie man eine künstliche Systemzeit machen kann? Also eine Art Beschleunigung der Systemzeit wie das bei vielen Spielen verwendet wird. Ich möchte dabei das Objekt Date.Time verwenden! Danke für eine Antwort! Gruss, Peachplayer
  15. Hallo Leute Weiss jemand, ob es möglich ist mit Unity pdf-files zu erstellen? Danke für eine Antwort. Gruss, peachplayer
×
×
  • Create New...