Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "github.com/hajimehoshi/ebiten"
- "github.com/hajimehoshi/ebiten/ebitenutil"
- "image/color"
- "StarGame/Logic"
- "strconv"
- "math"
- "math/rand"
- )
- var p[10] MakingStars.Point
- var STARENABLE[10] bool
- var STARDIE[10] bool
- var TIMETOSTAR[10] int
- var FRAME, TIME, SCORE int
- var NUMOFDIESTAR int
- var GameOver error
- func FloatToString(input_num float64) string {
- return strconv.FormatFloat(input_num, 'f', 0, 64)
- }
- func GenerateStar () () {
- for i:=0; i<10; i++{
- p[i].X= rand.Float64()*720
- p[i].Y= rand.Float64()*480
- p[i].U= rand.Float64()*2*math.Pi+2*math.Pi
- p[i].KX= rand.Float64()*4+2
- p[i].KY= rand.Float64()*4+2
- p[i].R= rand.Float64()*15+10
- p[i].ANG= 0
- p[i].ENABLE= true
- p[i].TIME= int(rand.Float64()*15)
- }
- }
- func Rocket (screen *ebiten.Image) {
- MakingStars.RX, _= ebiten.CursorPosition()
- MakingStars.RY= 640
- ebitenutil.DrawRect(screen, (float64(MakingStars.RX)-40), (float64(MakingStars.RY)-5), 80, 10, color.RGBA{128,128,128,255})
- }
- func update(screen *ebiten.Image) error {
- ebiten.SetFullscreen(true)
- ebiten.SetCursorVisibility(false)
- screen.Fill(color.RGBA{255, 55, 28, 255})
- Rocket(screen)
- FRAME=FRAME+1
- if FRAME==60 {
- TIME=TIME+1
- FRAME=0
- }
- ebitenutil.DebugPrint(screen, ("SCORE "+FloatToString(float64(SCORE))))
- for i:=0; i<10; i++ {
- if MakingStars.IsStarInScreen(&p[i], 1280.0, 720.0)==false {
- STARDIE[i]=true
- }
- if STARDIE[i]==false && STARENABLE[i]==true{
- SCORE++
- }
- if (TIME>p[i].TIME) && (STARDIE[i]==false) {
- MakingStars.MoveStar(&p[i])
- MakingStars.DrawStar(screen, &p[i])
- STARENABLE[i]=true
- }
- }
- for i:=0; i<10; i++{
- if STARDIE[i]==true {
- NUMOFDIESTAR++
- }
- }
- if ebiten.IsKeyPressed(ebiten.KeyEscape) || NUMOFDIESTAR>6{
- }
- return nil
- }
- func main() {
- GenerateStar ()
- for i := 0; i < 10; i++ {
- TIMETOSTAR[i] = i * 3
- if err := ebiten.Run(update, 1280, 720, 2, "Stars"); err != nil {
- panic(err)
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement