Entity Component System framework for Ebiten
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

28 lines
595 B

//go:build example
// +build example
package entity
import (
"code.rocketnine.space/tslocum/gohan"
"code.rocketnine.space/tslocum/gohan/examples/twinstick/component"
"code.rocketnine.space/tslocum/gohan/examples/twinstick/world"
)
func NewBullet(x, y, xSpeed, ySpeed float64) gohan.Entity {
bullet := world.World.NewEntity()
world.World.AddComponent(bullet, &component.PositionComponent{
X: x,
Y: y,
})
world.World.AddComponent(bullet, &component.VelocityComponent{
X: xSpeed,
Y: ySpeed,
})
world.World.AddComponent(bullet, &component.BulletComponent{})
return bullet
}