From 2d2a9fe8520f469897f49dc261289d7cc1c5d26c Mon Sep 17 00:00:00 2001 From: Martin Kagamino Lehoux Date: Fri, 15 Sep 2023 08:10:04 +0200 Subject: refactor: Into ECS --- person.go | 49 ------------------------------------------------- 1 file changed, 49 deletions(-) delete mode 100644 person.go (limited to 'person.go') diff --git a/person.go b/person.go deleted file mode 100644 index 4ddeddc..0000000 --- a/person.go +++ /dev/null @@ -1,49 +0,0 @@ -package main - -import ( - "image/color" - - "github.com/hajimehoshi/ebiten/v2" -) - -type Person struct { - size Point - Position Point - IsSelected bool - move Move - image *ebiten.Image - selectedImage *ebiten.Image -} - -func NewPerson(position Point) Person { - image := ebiten.NewImage(100, 100) - image.Fill(color.RGBA{0xff, 0xff, 0xff, 0xff}) - selectedImage := ebiten.NewImage(120, 120) - op := &ebiten.DrawImageOptions{} - op.GeoM.Translate(10, 10) - selectedImage.Fill(color.RGBA{0xff, 0x00, 0x00, 0xff}) - selectedImage.DrawImage(image, op) - return Person{Position: position, size: Point{100, 100}, image: image, selectedImage: selectedImage} -} - -func (p Person) Image() *ebiten.Image { - if p.IsSelected { - return p.selectedImage - } - return p.image -} - -func (p Person) CollisionBounds() Rectangle { - return Rectangle{ - p.Position.Sub(p.size.Div(2)), - p.Position.Add(p.size.Div(2)), - } -} - -func (p *Person) MoveTo(destination Point, blocked map[Point]bool) { - p.move = NewMove(p.Position, destination, blocked) -} - -func (p *Person) Update() { - p.Position = p.move.Update(p.Position, 10) -} -- cgit v1.3