Updates to match new primary repo.
This commit is contained in:
22
reward.go
22
reward.go
@@ -5,7 +5,6 @@ import (
|
||||
_ "embed"
|
||||
"image"
|
||||
_ "image/png"
|
||||
"log"
|
||||
|
||||
"github.com/hajimehoshi/ebiten/v2"
|
||||
)
|
||||
@@ -14,9 +13,9 @@ const (
|
||||
REWARD_HEIGHT = 32
|
||||
REWARD_WIDTH = 32
|
||||
|
||||
SHINY_ANIMATION_CYCLES = 9
|
||||
SHINY_ROW_INDEX = 11
|
||||
SPARKLE_ROW_INDEX = 7
|
||||
REWARD_FX_CYCLES = 9 //number of animation cycles for effects
|
||||
REWARD_FX_SHEEN_IDX = 11 //row offset from png, sheen effect
|
||||
REWARD_FX_SPRKL_IDX = 7 //row offset from png, sparkle effect
|
||||
)
|
||||
|
||||
var (
|
||||
@@ -51,21 +50,22 @@ func (r *Reward) Animate() {
|
||||
|
||||
r.scratch.DrawImage(rewardsImage.SubImage(image.Rect(0, 0, REWARD_WIDTH, REWARD_HEIGHT)).(*ebiten.Image), nil)
|
||||
|
||||
if r.cycle < SHINY_ANIMATION_CYCLES {
|
||||
//animate the effects
|
||||
if r.cycle < REWARD_FX_CYCLES {
|
||||
//add sheen
|
||||
op := &ebiten.DrawImageOptions{}
|
||||
op.Blend = ebiten.BlendSourceAtop
|
||||
|
||||
sx := r.cycle * REWARD_WIDTH
|
||||
sy := REWARD_HEIGHT * SHINY_ROW_INDEX
|
||||
sy := REWARD_HEIGHT * REWARD_FX_SHEEN_IDX
|
||||
|
||||
ex := sx + REWARD_WIDTH
|
||||
ey := sy + REWARD_HEIGHT
|
||||
|
||||
r.scratch.DrawImage(shinyImage.SubImage(image.Rect(sx, sy, ex, ey)).(*ebiten.Image), op)
|
||||
|
||||
//add sparkle
|
||||
spsy := REWARD_HEIGHT * SPARKLE_ROW_INDEX
|
||||
//add sparkle: x postions are identical to sheen (same png sheet), just need to compute new y offsets
|
||||
spsy := REWARD_HEIGHT * REWARD_FX_SPRKL_IDX
|
||||
spey := spsy + REWARD_HEIGHT
|
||||
op.GeoM.Translate(REWARD_WIDTH/2, REWARD_HEIGHT/2)
|
||||
r.scratch.DrawImage(shinyImage.SubImage(image.Rect(sx, spsy, ex, spey)).(*ebiten.Image), nil)
|
||||
@@ -76,7 +76,7 @@ func (r *Reward) Animate() {
|
||||
}
|
||||
|
||||
func (r *Reward) CycleUpdate() {
|
||||
r.cycle = (r.cycle + 1) % (SHINY_ANIMATION_CYCLES * 8)
|
||||
r.cycle = (r.cycle + 1) % (REWARD_FX_CYCLES * 8)
|
||||
}
|
||||
|
||||
func (r *Reward) Width() int {
|
||||
@@ -91,13 +91,13 @@ func init() {
|
||||
|
||||
img, _, err := image.Decode(bytes.NewReader(assetsReward_png))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
DashLogger.Fatal(err)
|
||||
}
|
||||
rewardsImage = ebiten.NewImageFromImage(img)
|
||||
|
||||
img, _, err = image.Decode(bytes.NewReader(assetsShiny_png))
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
DashLogger.Fatal(err)
|
||||
}
|
||||
shinyImage = ebiten.NewImageFromImage(img)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user