Jump to content
Unity Insider Forum

LabelText von A nach B mit Maus verschieben


Unity54

Recommended Posts

Ich möchte gerne in Unity 2D ein Zuordnungsspiel realisieren.

In etwa so:

links sind 3 Label mit je einer Rechenaufgabe, rechts 3 Antworten

3 + 3 =       Hier  ein Platzhalter            10

2 + 2 =      Hier  ein Platzhalter              6

5 + 5 =      Hier  ein Platzhalter              4

In der Mitte sind 3 Boxen-Plätze zum Ablegen der Lösungen

rechts wären die 3 Lösungen in einem Textfeld (Label) also, 10 ,6 und 4

Link zu diesem Kommentar
Auf anderen Seiten teilen

Sorry, habe die eigentliche Problematik zu beschreiben vergessen:

Kann man ein GameObject (Text-Label mit der Antwort) zu einem Platz (Box)

per Maus neben die richtige Rechenaufgabe schieben, eben zuordnen?

Drag und Drop funktioniert ja mit Images, geht das auch mit anderen Objecten wie Label oder Buttons?

Habe ich mich so verständlich ausgedrückt?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Du kannst alle UnityEngine.Objects per Drag and Drop zuweisen. Das sind GameObjects, alle Arten von Komponenten, und fast alle Assets. Das Feld, in das du reinziehen willst, muss nur halt die entsprechende Art von Objekt erwarten. Du kannst z.B. nicht einen Lichtschalter haben, wo du ein Licht reinziehen kannst, und dann eine Wand reinziehen. Ergibt ja auch Sinn :)

Wenn du einen Button hast, dann hast du da diese Box im Inspektor mit dem Titel "On Click ()". Da kannst du mit dem + eine oder mehrere Reaktionen auf einen Klick auf den Button hinzufügen. Da kannst du dann jedes GameObject reinziehen (unten links) und oben rechts eine Komponente dieses GameObjects auswählen und dann z.B. eine Methode auf dieser Komponente auslösen. So kannst du deinem Button sagen, welche deiner Rechenaufgaben jetzt gelöst worden ist. Gleiches gilt für Input Field-Objekte - die Komponente hat gleich zwei solcher "UnityEvents".

Wenn du jetzt selber Code schreibst (und das wirst du müssen), dann machst du einfach ein Feld mit dem Komponententyp als Typ. Um beim Lichtschalter zu bleiben:

public Light light;

Dann kannst du da jedes GameObject reinziehen, das eine Lichtkomponente hat, und diese wird dann direkt referenziert. Du kannst also z.B. machen:

private void Start()
{
  light.color = Color.red;
}

Oder... warte... meinst du jetzt dass der Spieler das ingame macht? Wenn du das meinst, bin ich etwas verwirrt, weil du ja meintest

vor 2 Stunden schrieb Unity54:

Drag und Drop funktioniert ja mit Images, geht das auch mit anderen Objecten wie Label oder Buttons?

und davon, dass man Bilder ohne weiteres ingame per Drag and Drop verschieben könnte, wüsste ich nichts.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Klarheit schaffen

Hallo Sascha

Das obig beschriebene Prinzip kenne ich ein wenig, hilft mir jedoch nicht so weiter.

Deine Vermutung, dass der Schüler die Zuordnung machen sollte, ist genau das, was ich mir wünsche zu realisieren.

Es geht grundsätzlich um 3 Spalten in der Scene.

links generiere ich die Rechenaufgaben (in Labels),

rechts sind die Lösungen (in Labels in einem Panel)

in der Mitte sind die freien Plätze, wo die richtigen Lösungen hingezogen werden soll.en

siehe Rechnen1 Bild! Soweit so gut!

Was noch zu tun wäre, ist :

1. die Lösungen zu mischen! - Wie könnte man dies tun?

2. die Lösungs-Blättchen verschieben und deren Inhalt und Richtigkeit überprüfen.

Es ist auch wahrscheinlich, dass 2 Lösungen gleich sind 11 + 11

Siehe Rechnen 2

Hoffentlich haben wir uns diesmal verstanden.

Für deine Bemühungen und Hilfestellungen Danke!

 

Rechnen1.png

Rechnen3.png

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...