Go
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)
}
}
登录后复制