Jump to content
Unity Insider Forum

Tabu

Members
  • Posts

    8
  • Joined

  • Last visited

Recent Profile Visitors

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

Tabu's Achievements

Newbie

Newbie (1/3)

0

Reputation

  1. Das Objekt kann eine Waffe oder ein anderes Item sein. Die Verarbeitung der Daten läuft dann durch ein anderes Script z.b. für das Aufsammeln beim Player. Aber um das Sprite mit den entsprechenden Daten (z.B. Gewicht, Gattung etc.) zu füttern, habe ich das mit ScriptableObjects gemacht.
  2. Hallo Sascha, vielen Dank. Du hast Recht, das macht alles wenig Sinn. Ich baue das mal ein wenig um. Macht es Sinn einem Objekt nur das ScriptableObjekt für die Werte zuzuordnen? So z.B.: using UnityEngine; public class ObjektInfo : MonoBehaviour { public InvObjekt meinObjekt; } Dann würde ich beim Aufnehmen nur die Daten des Objektes übernehmen und dann z.B. im Inventarsystem speichern. Das Aufsammeln etc. würde ich dann über ein Script im Player machen und das Gui aktualisieren. Vielen Dank Tabu
  3. Hallo Sascha, ok, dann bin ich beruhigt und doch nicht verrückt 🙂 Wie kann ich das denn verhindern? Vielen Dank
  4. Hallo liebe Community, ich habe ein Problem und kann beim besten Willen nicht den Fehler finden. Das Event wird nur bei bestimmten Objekten gesendet. Auf der Console erhalte ich aber immer die Meldung "Trigger". Irgendwie sehe ich den Wald vor lauter Bäumen nicht 😞 Auslöser des Events: using System; using System.Collections; using System.Collections.Generic; using UnityEngine; public class ObjektInfo : MonoBehaviour { public InvObjekt meinObjekt; public int munition=0; private GuiAnzeige inventory; public event Action guiAktualisierung; void OnTriggerEnter2D(Collider2D other) { if(other.gameObject.tag=="Player") { guiAktualisierung?.Invoke(); // obwohl der Rest funktioniert, wird es nicht immer ausgelöst Debug.Log("Trigger");// kommt immer auf der Console an inventory=GameObject.Find("Inventar").GetComponent<GuiAnzeige>(); for (int i=0;i<inventory.inventorys.Length;i++) { if (inventory.inventorys[i]==null) { inventory.inventorys[i]=meinObjekt; if(meinObjekt.istWaffe) inventory.invPatronen[i]=munition; Destroy(gameObject); break; } } } } } Empfänger des Events: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; public class GuiAnzeige : MonoBehaviour { public InvObjekt[] inventorys; public int[] invPatronen; public bool objektNeu; private ObjektInfo aktualisierungUi; void Start() { aktualisierungUi=FindObjectOfType<ObjektInfo>(); aktualisierungUi.guiAktualisierung += EmpfangeUpdateEvent; } void EmpfangeUpdateEvent() { Debug.Log("Event empfangen"); Hier kommt es nicht immer an } Ich habe schon testweise über die Update-Methode in der ObjektInfo die Events abgefeuert und das ging tadellos... Von der Logik kann ich es nicht nachvollziehen... Hat jemand eine Idee? Danke Tabu
  5. Tabu

    Hallo

    Danke euch beiden, @Sascha schöne Animation 🙂
  6. Hallo, ich bin Tabu 🙂 Da ich ein wenig Erfahrung mit dem Programmieren habe, dachte ich mir, schau dir mal die Spieleentwicklung an. Die Möglichkeiten von Unity sind schon beeindruckend. Ich habe mir vorgenommen, erst einmal ein kleinen 2D Plattformer und dann ggf. ein kleines Rennspiel zu erstellen. Wenn ich dann genug Erfahrung habe, versuche ich größere Projekte zu realisieren. Ich hoffe, dass mich die Community dabei unterstützen kann. Mal sehen, wohin mich Unity treibt... Liebe Grüße Tabu
  7. Hallo, ich bin neu im Bereich Unity und bin begeistert von den Möglichkeiten. Nun hat sich bei mir ein Problem ergeben. Ich denke, dass es ein Problem mit der Installation auf dem Chromebook ist. Auf meinem Windows Rechner geht es einwandfrei. Wenn ich auf Windows 2D Tile Palette gehe, erscheint auch wie gewünscht das Fenster. Leider lässt es sich nicht andocken und ein Drag&Drop endet mit einem neuen Spielobjekt in dem Hierarchy-Baum. Somit ist diese schöne Funktion leider nicht im Chromebook nutzbar. Hat schon jemand damit Erfahrungen gemacht? Gibt es evtl. eine andere Möglichkeit die Palette zu füllen? Vielen Dank Tabu
×
×
  • Create New...