Jump to content
Unity Insider Forum

Strooja0108

Members
  • Content Count

    51
  • Joined

  • Last visited

Community Reputation

0 Neutral

About Strooja0108

  • Rank
    Advanced Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Ich hoffe das erklärt es besser.Wenn jemand noch eine Idee hat wäre ich für Hilfe sehr dankbar.
  2. Hey vielen dank für die ausführliche Antwort. Du hast recht das ich eine Deep copy brauche.Das beispiel mit dem restaurant ist nicht genau das was ich machen möchte.Es sollte nur darstellen was ich ungefähr vor habe. Du hast auch recht das es Sinn machen würde, den größten Teil read only zu machen ,denn nur amount ist ein wert der sich verändert. Ich habe aber immer noch nicht so ganz verstanden wie ich FoodList in DeliveryList erstelle.Das mit dem Copy erstellen oder per Hand die Liste füllen erzeugt immer Fehler das das Object nicht da ist zum Beispiel. Um nochmal genauer zu erklären was ich machen möchte.Ich habe einmal diese FoodList wo ich die Mengen der Gerichte verändere. Diese Liste möchte ich dann in DeliveryList schreiben und zusätzlich angeben an welchem Tag die Delivery kommt. Wenn dieser Tag dann erreicht ist wird die DeliveryList in eine neue Liste "FridgeList" addiert. Im Prinzip so wie wenn man etwas Online bestellt ,wartet bis es da ist und es dann in den Kühlschrank legt. Ih habe das jetzt mal probiert, an der Stelle wo ich vorher die clonedList erstellt habe: for (int i = 0; i < FoodDrinkList.FoodList.Count; i++) { newDelivery.FoodList.FoodList.Add(FoodDrinkList.FoodList); } Ich bekomme dann aber diesen Fehler: NullReferenceException: Object reference not set to an instance of an object BuyFoodScript.BuyButton () (at Assets/Scripts/BuyFoodScript.cs:151) Es bezieht sich auf die Zeile in dem for loop Ich habe jetzt auch das hier nochmal ausprobiert aber das klappt auch nicht. Delivery newDelivery = new Delivery(); FoodDrinkList.Fooddetails newFood = new FoodDrinkList.Fooddetails(); for (int i = 0; i < FoodDrinkLists.FoodList.Count; i++) { newFood.foodname = FoodDrinkLists.FoodList.foodname; newFood.price = FoodDrinkLists.FoodList.price; newFood.id = FoodDrinkLists.FoodList.id; newFood.happiness = FoodDrinkLists.FoodList.happiness; newFood.hungry = FoodDrinkLists.FoodList.hungry; newFood.picture = FoodDrinkLists.FoodList.picture; newFood.slots = FoodDrinkLists.FoodList.slots; newFood.unlocked = FoodDrinkLists.FoodList.unlocked; newFood.energy = FoodDrinkLists.FoodList.energy; newFood.amount = FoodDrinkLists.FoodList.amount; newDelivery.FoodList.FoodList.Add(newFood); } Es kommt der gleiche Fehler.Ich denke das Problem ist das ich verschiedene Variablen gleichzeitig adden möchte. Weiß jemand wie man eine Klasse mit unterschiedlichen Werten zu einer Liste hinzufügt??
  3. Hallo Leute, ich habe kleines Problem woran ich gerade verzweifel und hatte gehofft Ihr könnt mir vielleicht helfen. Stellt euch vor ihr geht in ein Restaurant und bekommt die Karte . Auf dieser Karte kreuzt ihr dann an was ihr haben möchtet und gebt die Karte dann zurück an den Kellner als Bestellung.Sowas würde ich gerne umsetzen Dafür habe ich eine Liste mit attributen für jedes gericht : public class FoodDrinkList : MonoBehaviour { [System.Serializable] public class Fooddetails { public string foodname; public Sprite picture; public int id; public int price; public int happiness; public int energy; public int hungry; public int amount; public int slots; public int unlocked; } public List<Fooddetails> FoodList; } Diese liste "FoodList" verändere ich dann in dem ich sage wie viel ich von jedem Gericht haben möchte und dann möchte ich per Button klick diese FoodList in eine andere Foodlist schreiben public FoodDrinkList foodDrinkList; [System.Serializable] public class Delivery { public FoodDrinkList FoodList; public int deliveryday; public int deliveryhour; public int readytopickup; } public void BuyButton() { Delivery newDelivery = new Delivery(); List<FoodDrinkList> clonedList = new List<FoodDrinkList>(foodDrinkList); //Hier habe ich versucht die Liste zu klonen.Ich habe aber garkeine Idee wie ich die liste kopieren kann newDelivery.FoodList.FoodList.Add(clonedList); newDelivery.deliveryhour = DataTimescript.hourtimer + 3; DeliveryList.Add(newDelivery); } Es funktioniert alles bis auf den Teil mit dem kopieren der Foodlist in die neue Delivery.Foodlist.Foodlist Hat da jemandeine Idee?
  4. Danke Sascha auf dich ist mal wieder verlass. Da meine Animationen alle einzeln gezeichnet sind und ich auch nie welche miteinander verbinden,waeren die normalen Animationen vermutlich die Loesung. Aber ich denke auch ich sollte bei der neueren Variante bleiben und werde es versuchen mit den Events zu loesen.Ist aber echt komisch das du von dem Problem noch nie gehoert hast.Ich hatte zum Beispiel eine Animation wo ein Panel kleiner animiert wird und danach erst das Script weitergehen soll.Ich habe das Event auf den letzten Frame erstellt und hatte immer mal wieder Probleme, dass es da haengen geblieben ist.Jetzt habe ich das Event auf die letzten beiden Frames gelegt und es laeuft schon stabiler. Hatte sonst schonmal jemand damit Probleme? Also ich habe jetzt doch noch einen Thread mit Infos gefunden und scheinbar haben mehrere das Problem mit den Events.Also falls jemand hier das selbe Problem hat einfach mal in diesem Thread nachgucken. https://forum.unity.com/threads/animation-event-not-triggering.456138/
  5. Hi Leute , wie schon im Thema geschrieben wuerde ich gerne wissen wie man am besten ueberpruefen kann ob eine Animation fertig ist. In meinem bestimmten Fall soll erst ein Animationsclip abgeschlossen sein,bevor es im Script weiter geht. Ich habe es erst mit dem Tipp von @Sascha aus diesem Thread probiert (https://forum.unity-community.de/topic/12681-animation-fertig/ ). Allerdings habe ich dann festgestellt das es sich bei mir scheinbar nicht um eine Animation sondern einen Animationsclip handelt(ich weiss nicht was der unterschied ist). Deshalb steht mir .isPlaying nicht zur Verfuegung. Danach habe ich es mit einem Animation event am Ende der Animation probiert. Ich rufe einfach eine Funktion auf die eine Variable auf 1 setzt.Wenn Sie auf eins ist wird das Script fortgefuehrt. Das klappt jedoch nur manchmal .Kann es sein das manchmal Frames uebersprungen werden und man deshalb das event am besten auf mehrere Frames am Ende einer Animation legt? So das sind die Techniken die ich bis jetzt ausprobiert habe.Habt ihr da noch andere bessere Ideen um das Problem zu loesen?? Bin fuer jeden Tipp dankbar.
  6. Hi Leute, ich habe eine vermutlich nicht besonders kluge Frage.Ist es moeglich aehnlich wie in Photoshop zwei Bilder miteinander zu mixen? Zum Beispiel habe ich ein Objekt mit einem Sprite und moechte darauf ein zweites Objekt mit einem Sprite legen welches komplett schwarz ist. Jetzt moechte ich aehnlich wie in Photoshop das schwarze Bild in das untere Bild ineinanderkopieren. Also die Sachen die man in Photoshop mit Ebenen machen kann.Gibt es solche "mix" moeglichkeiten wie in Photoshop? Ich habe bis jetzt nur gefunden das man die Transparenz aendern kann.
  7. Hi Sascha sorry für die späte Antwort.Also zurzeit habe ich einfach eine animation für den grossen schwarzen Kasten erstellt.Die anderen kleineren Kästen sind einfach als childs unter dem kasten und sollen sich am besten richtig mit animieren.Für die Animation des Kastens habe ich Anchored Position und Size Delta animiert.Also zurzeit habe ich garnichts programmiert dafür. Jeder kleine Kasten hat seine anchor punkte auf seinen Ecken. Komischerweise funktioniert es ja auch.Aber wenn ich das Bild eines kleinen Kastens ändere.Selbst wenn es genau das gleiche ist wie vorher ,skaliert das Bild nicht mehr mit. Obwohl die anchor punkte richtig mit skalieren.
  8. Hi Leute hat denn niemand eine Idee wie das funktioniert? Hab jetzt versucht die anchor punkte von jedem kleinen viereck auf die ecken des jeweiligen vierecks zu legen.Das funktioniert wunderbar bis ich das image in so einem viereck ändere.Obwohl das image genauso gross ist wie das vorherige funktioniert es nicht mehr.Als ob die anchor punkte resetet werden
  9. Hi Leute, ich bins mal wieder und ich komme mal wieder mit einem Problem. Ich habe ein Parent Objekt mit einem Canvas Render,Image und RectTransform welches kleiner animiert wird. Als Child Objekte habe ich einige andere Objekte ebenfalls nur mit einem Canvas Render,Image und RectTransform Component. Wenn sich jetzt mein Parent Objekt von gross (Bildschrim füllend) zu klein unten rechts in der Ecke animiert sollen sich die child Objekte ebenfalls vernünftig mit skalieren. Das klappt allerdings nicht. Könnt ihr mir sagen wie ich sowas einstellen kann. Ich habe zwei Bilder angehangen auf denen ihr seht wie es am Anfang aussieht(Example1) und am Ende aussehen soll(Example2).
  10. Ich wuerde es gerne auf einem kleinen Panel laufen lassen. Also in einem 2d Spiel in einem Teil des Bildes.
  11. Hi Leute, ich bins mal wieder. Ich wuerde gerne verschiedene Videos in mein spiel implementieren und suche dafuer die beste und perfomance aermste Loesung. Ich habe es schon mit dem" video player " versucht und hab die clips in einer liste gespeichert. Das hat einigermassen gut geklappt allerdings gab es immer eine verzoegerung bevor ein video anfing zu laufen.Ich denke aber das kann man schnell beheben. Problem ist ich moechte teilweise videos hintereinander laufen lassen ohne das man sieht das es zwei unterschiedliche videos sind.Deshalb ist jede verzoegerung ein problem.wuerdet ihr die videos sonst einfach in einzel bilder reinladen und als gif oder animation erstellen ?? Bin fuer jeden idee dankbar.
  12. ah okay. Ich bin nicht so tief in der Materie drin.Ich dachte da ich vielleicht 30 Dialoge in meinem Spiel habe reicht es wenn ich das in Scriptable Objects hinterlege. Vielleicht gucke ich mir das mit den xml Dateien mal an. Das ist bestimmt ne absolut dumme Frage aber wenn ich das in xml Dateien schreibe, kann der Spieler die Datei auf seinem Smartphone oder Computer nicht einfach veraendern?
  13. Wie du schon schreibst ist das mit den XML Files etwas muehsamer und meiner Meinung nach auch unuebersichtlicher aber ich glaub jeder sollte es so machen wie es ihm passt und wie er es braucht. Wollte das nur mit dir teilen weil du scheinbar auch gerade im Thema bist. Ich finde es sehr uebersichtlich mit den scriptableObjects und habe es auch erweitert das ich angeben kann wie schnell der Text dargestellt wird, ob in einer Sprechblase oder einem Window und so weiter.
  14. @Thariel Ich bin auf youtube fündig geworden . Das Tutorial erklärt meiner Meinung nach eine schön saubere Variante um Dialoge zu ereugen und zu verwalten.
  15. okay also geht es nicht das ich kein Feld erstelle sondern einfach auf das Asset zugreife ohne irgendwas zu erstellen oder im Inspector zuzuweisen,richtig?
×
×
  • Create New...