everything I got
This commit is contained in:
52
states/loadLevelState.go
Normal file
52
states/loadLevelState.go
Normal file
@@ -0,0 +1,52 @@
|
||||
package states
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"math"
|
||||
|
||||
"github.com/hajimehoshi/ebiten/v2"
|
||||
geom "src.robn.tv/MrDonuts/RGB/geometry"
|
||||
score "src.robn.tv/MrDonuts/RGB/tools"
|
||||
)
|
||||
|
||||
var currentEnd = 1 //used for animating squares
|
||||
var secondsPerUpdate = 0.02
|
||||
var ticksPerSecond = 60.0
|
||||
var deltaSeconds = 1.0 / ticksPerSecond
|
||||
var secondsCounter = 0.0
|
||||
|
||||
type LoadLevelState struct {
|
||||
}
|
||||
|
||||
func (s *LoadLevelState) Enter() {
|
||||
fmt.Println("Entering Loading State")
|
||||
currentEnd = 1
|
||||
}
|
||||
|
||||
func (s *LoadLevelState) Exit() {
|
||||
fmt.Println("Exiting Loading State")
|
||||
}
|
||||
|
||||
func (s *LoadLevelState) Update() {
|
||||
secondsCounter += deltaSeconds
|
||||
|
||||
//determine how much to jump by on each draw
|
||||
totalSquares := geom.GameGrid.NumSquares()
|
||||
jumpAmount := math.Ceil(float64(totalSquares) / ticksPerSecond)
|
||||
if secondsCounter >= float64(secondsPerUpdate) {
|
||||
secondsCounter = 0
|
||||
currentEnd += int(jumpAmount)
|
||||
}
|
||||
|
||||
if currentEnd > geom.GameGrid.NumSquares() {
|
||||
SM.Transition("play")
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
func (s *LoadLevelState) Draw(screen *ebiten.Image) {
|
||||
|
||||
geom.GameGrid.DrawUpTo(currentEnd, screen)
|
||||
score.ScoreMngr.Draw(screen)
|
||||
}
|
||||
Reference in New Issue
Block a user