package main import ( "github.com/hajimehoshi/ebiten" ) const ( screenWidth = 640 screenHeight = 480 ballSpeed = 4 ) var ( ballX, ballY float64 ) func update(screen *ebiten.Image) error { if ebiten.IsKeyPressed(ebiten.KeyArrowRight) { ballX += ballSpeed } if ebiten.IsKeyPressed(ebiten.KeyArrowLeft) { 手游开发者必读:Golang在游戏行业的发展前景 ballX -= ballSpeed } if ebiten.IsKeyPressed(ebiten.KeyArrowDown) { ballY += ballSpeed } if ebiten.IsKeyPressed(ebiten.KeyArrowUp) { ballY -= ballSpeed } if ballX < 0 { ballX = 0 } if ballX > screenWidth { ballX = screenWidth } if ballY < 0 { ballY = 0 } if ballY > screenHeight { ballY = screenHeight } return nil } func draw(screen *ebiten.Image) { op := &ebiten.DrawImageOptions{} op.GeoM.Translate(ballX, ballY) screen.DrawImage(ballImage, op) } func main() { if err := ebiten.Run(update, screenWidth, screenHeight, 1, "Simple Game"); err != nil { panic(err) } }
登录后复制