Jump to content
Unity Insider Forum

peachplayer

Members
  • Content Count

    141
  • Joined

  • Last visited

  • Days Won

    1

peachplayer last won the day on October 31 2016

peachplayer had the most liked content!

Community Reputation

3 Neutral

About peachplayer

  • Rank
    Advanced Member

Recent Profile Visitors

1,600 profile views
  1. danke für die ausführliche Antwort. Der Fehler lag tatsächlich in einem anderen Script. Jetzt läuft eigentlich alles. Gruss, peachplayer
  2. 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.
  3. 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); } }
  4. Habs herausgefunden, wo der Fehler lag. Die Szene wurde nicht richtig gerendert.
  5. Habe gerade bemerkt, dass keine .asset-datei vorhanden ist nach dem rendern. Woran könnte das liegen?
  6. 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; } } } }
  7. Habe eine 2-d Weltkarte mit 170 verschiedenen Mesh im Asset Store gefunden, die Karte ist also fix!
  8. danke für die Antwort. Die 2-d-Weltkarte soll vorgegeben sein von Unity. Gruss, peachplayer
  9. 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
  10. danke, ich habe es selber herausgefunden.
  11. 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
  12. Hallo Leute Weiss jemand, ob es möglich ist mit Unity pdf-files zu erstellen? Danke für eine Antwort. Gruss, peachplayer
  13. Hallo Leute Mit folgendem Code möchte ich den Gewinn(Deckungsbeitrag) pro Fläche ausgeben. Leider ist der Output nicht optimal weil z.B. Null-Werte herauskommen. Woran könnte das liegen? 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; Debug.Log(Jahr_auswahl); int Nummer = parzelle.Sum(item => item.Nummer); NummerAusgabe += parzelle.Sum(item => item.Nummer) + "\n"; Debug.Log(Nummer); ParzellennameAusgabe += parzellenName + "\n"; ParzellennameAnzeige.text = ParzellennameAusgabe; float parzellenSumme = parzelle.Sum(item => Mathf.Round(item.Kostensumme() * 1.00f)); Debug.Log(Nummer); IEnumerable<Kosten> result = parzelle.Where(c => c.Fläche > 0); IEnumerable<Kosten> result2 = parzelle.Where(c => c.Erlös > 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 += item.Key + "\n"; ErlösAnzeige.text = ErlösAusgabe; ErlösAusgabe_total += Summe1; 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; } i++; } //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); } } so sieht der Output aus:
  14. Danke für die Antwort! Der Vorschlag mit DateTime funktioniert wirklich! Nur habe ich jetzt das Problem, dass das Datum wie folgt ausgegeben wird : 10/1/2019 12:00:00 AM Die Zeitangabe bräuchte ich nicht. Wie kann man das korrigieren?
  15. Hallo Leute Ich versuche mit folgendem Code eine Liste nach Datum zu sortieren. Das Datum wird als "String"-Variable gespeichert. public bool GroesserAls(string neu) { if (neu.CompareTo(Datum) < 0) { Debug.Log(neu + "ist grösser als" + Datum); return true; } else return false; } und hier die aufrufende Funktion: bool eingefuegt = false; for (int i = 0; i < liste8.Count; i++) { if ((liste8[i].GroesserAls(eintrag1.Datum))) { liste8.Insert(i, eintrag1); eingefuegt = true; break; } } if (!eingefuegt) liste8.Add(eintrag1 = new Dünger { Parzellenname = Parzellenname1, Datum = Datum1, Menge = Menge1, Kultur = Kultur1, Düngersorte = Düngersorte1, Fläche = Fläche1, Erlös = Erlös1 }); Leider kommt dabei nicht der gewünschte Output heraus, d.h. die Liste wird nicht richtig bzw. gar nicht sortiert. Vielen Dank für eine Antwort! Gruss, peachplayer
×
×
  • Create New...