mcz72

Hallo,
ich möchte bei einem Spiel erreichen, dass ein Ball von einem anderen sich bewegenden Ball abprallt. Aber nicht mittels “drehe xy Grad” oder so, sondern der Einfallswinkel sollte gleich dem Ausfallswinkel sein.

Weiß jemand, wie man das hinkriegt?

Grüße und danke,
Markus

Fyndora

mcz72 wrote:

Hallo,
ich möchte bei einem Spiel erreichen, dass ein Ball von einem anderen sich bewegenden Ball abprallt. Aber nicht mittels “drehe xy Grad” oder so, sondern der Einfallswinkel sollte gleich dem Ausfallswinkel sein.

Weiß jemand, wie man das hinkriegt?

Grüße und danke,
Markus

Hallo, verstehe ich das richtig, beide Bälle bewegen sich. Sollen beide abprallen, oder zieht der eine seine Bahn und der 2. prallt ab? Einfallswinkel = Ausfallswinkel ginge ja über eine Winkelvariable die Du dann Richtung mal -1 setzen könntest. Leider kann ich das mit den hübschen bunten Scriptblöcken hier noch nicht wirklich, aber vielleicht hilft Dir ja dieses Script von @dapontes https://scratch.mit.edu/projects/30099508/ weiter. Es bewegt sich zwar nur 1 Ball aber die Winkel stimmen

Viele Grüße
Fyndora

megrathund

Fyndora wrote:

Leider kann ich das mit den hübschen bunten Scriptblöcken hier noch nicht wirklich
Unter “New Reply” gibt es doch eine Menü leiste. In dieser Menüleiste gibt es ein Blocksymbol. Fahre mit der Maus dort drüber und wähle deinen Block aus den Du haben möchtest. Klicke diesen dann an. Wenn Du sehen willst ob es geklappt hat, drücke am ende der Menüleiste den Grünen Haken.

Ich hoffe ich konnte helfen

MFG
Megrathund

mcz72

Schaue ich mir mal an. Vielen Dank schon mal für den Hinweis!

frodewin

Die Formel ist 2*(Winkel zum Objekt) - (ursprüngliche Bewegungsrichtung) + 180. Das kann mit folgenden Blöcken umgesetzt werden:

pralle von Objekt [Baseball] ab

Definiere pralle von Objekt (objektname) ab
falls <wird (objektname) berührt?> dann
setze [alte Richtung v] auf (Richtung)
drehe dich zu (objektname)
drehe dich nach rechts um (((180) + (Richtung)) - (alte Richtung)) Grad
end

Im Projekt Objects bouncing off each other findest du dazu ein Beispiel mit drei Objekten die voneinander abprallen.

Dreche

frodewin wrote:

Die Formel ist 2*(Winkel zum Objekt) - (ursprüngliche Bewegungsrichtung) + 180. Das kann mit folgenden Blöcken umgesetzt werden:

pralle von Objekt [Baseball] ab

Definiere pralle von Objekt (objektname) ab
falls <wird (objektname) berührt?> dann
setze [alte Richtung v] auf (Richtung)
drehe dich zu (objektname)
drehe dich nach rechts um (((180) + (Richtung)) - (alte Richtung)) Grad
end

Im Projekt Objects bouncing off each other findest du dazu ein Beispiel mit drei Objekten die voneinander abprallen.
Das hat mir die Lösung vieler Probleme gezeigt! Danke!