From d37413a400fa5ec443346e3f59014d9a7b38732b Mon Sep 17 00:00:00 2001 From: iegod Date: Wed, 3 Dec 2025 10:28:19 -0500 Subject: [PATCH] Interaction adjustment for n fluidsims. --- game/game.go | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/game/game.go b/game/game.go index de36e66..dc15294 100644 --- a/game/game.go +++ b/game/game.go @@ -34,7 +34,7 @@ type Game struct { fluidsim10height float64 //other - fluidsim10angle float64 + fluidsim10angle float64 //purely for debugging mdown bool mdx, mdy int } @@ -114,11 +114,12 @@ func (g *Game) RenderFluidSim10(img *ebiten.Image) { for _, sim := range g.fluidsim10 { sim.Draw() + angle := sim.GetAngle() pos := sim.GetPosition() op := &ebiten.DrawImageOptions{} op.GeoM.Translate(-g.fluidsim10width/2, -g.fluidsim10height/2) op.GeoM.Scale(1, -1) - op.GeoM.Rotate(g.fluidsim10angle) + op.GeoM.Rotate(angle) // op.GeoM.Translate(g.fluidsim10width/2, g.fluidsim10height/2) op.GeoM.Translate(pos.X, pos.Y) img.DrawImage(sim.GetSprite(), op) @@ -218,12 +219,12 @@ func (g *Game) ManageFluidSim10Inputs() { if ebiten.IsMouseButtonPressed(ebiten.MouseButtonLeft) { if g.mdown { mx, my := ebiten.CursorPosition() - dx := float64(mx) - GameWidth/2 //g.fluidsim10.GetPosition().X - dy := float64(my) - GameHeight/2 //g.fluidsim10.GetPosition().Y - angle := math.Atan2(dy, dx) - g.fluidsim10angle = angle for _, sim := range g.fluidsim10 { + dx := float64(mx) - sim.GetPosition().X + dy := float64(my) - sim.GetPosition().Y + angle := math.Atan2(dy, dx) + g.fluidsim10angle = angle sim.SetAngle(angle) } }