X Tutup
Skip to content

Commit ae7eefb

Browse files
committed
show score, fix enemy sequence
1 parent 61c3f71 commit ae7eefb

File tree

4 files changed

+17
-9
lines changed

4 files changed

+17
-9
lines changed

enemies.moon

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ class Enemy extends Box
118118
spray_dir = thing.vel\normalized!
119119
world.particles\add Sparks spray_dir, world, thing\center!
120120

121-
@seq = Sequence ->
121+
@damage_seq = Sequence ->
122122
@shake_time = 1
123123
@rand = math.random!
124124
tween @, 0.5, shake_time: 0
@@ -128,10 +128,11 @@ class Enemy extends Box
128128
sfx\play "enemy_hit"
129129
else
130130
sfx\play "enemy_die"
131+
world.player.score += math.random 101, 127
131132

132133
update: (dt, world) =>
133134
@vel\adjust unpack @accel * dt
134-
@seq\update dt if @seq
135+
@damage_seq\update dt if @damage_seq
135136
@move unpack @vel * dt
136137

137138
@life > 0
@@ -141,8 +142,8 @@ class Enemy extends Box
141142

142143
if t = @shake_time
143144
g.push!
144-
g.translate 5 * t * math.sin(t*10 + @rand),
145-
5 * t * math.cos(t*11 + @rand)
145+
g.translate 5 * t * math.sin((t*10 + @rand)*5),
146+
5 * t * math.cos((t*11 + @rand)*5)
146147

147148
o = (1 - t) * 255
148149
g.setColor 255, o, o
@@ -239,6 +240,7 @@ class PathEnemy extends Enemy
239240

240241
update: (dt, world) =>
241242
@world = world
243+
@damage_seq\update dt if @damage_seq
242244
@seq\update(dt) and @life > 0
243245

244246
nil

hud.moon

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ class Hud extends Box
7777
@segment = world.platform\row!
7878
@progress = world\progress!
7979
@player_life = world.player\p_life!
80+
@player_score = world.player.display_score
8081

8182
@in_danger = world.active_block[@segment]
8283
@next_block = world.level[world\block_i! + 1] or {}
@@ -228,7 +229,7 @@ class Hud extends Box
228229
g.push!
229230
g.translate 100, 16
230231
g.scale 2
231-
box_text "score: 0", 0, 0, false
232+
box_text "score: #{f @player_score}", 0, 0, false
232233
g.pop!
233234

234235
class TitleScreen
@@ -272,7 +273,7 @@ class TitleScreen
272273
class GameOver
273274
watch_class @
274275

275-
new: (player) =>
276+
new: (@game) =>
276277
@viewport = EffectViewport scale: 3
277278

278279
on_key: (key) =>
@@ -290,8 +291,8 @@ class GameOver
290291
g.push!
291292
g.translate 0, 10
292293
p "Game Over", 60, 40
293-
p "Level Reached: #{0}", 60, 60
294-
p "Score: #{0}", 60, 70
294+
p "Level Reached: #{@game.current_level}", 60, 60
295+
p "Score: #{f @game.player.score}", 60, 70
295296

296297
p "Press enter to return to title", 60, 100
297298
p "Thanks for playing! &", 60, 110

main.moon

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,7 @@ class Game
284284
goto_gameover: =>
285285
@seq = Sequence ->
286286
tween @, 1.0, shroud: 255
287-
dispatch\push GameOver!
287+
dispatch\push GameOver @
288288

289289
on_key: (key, code) =>
290290
if key == "return"

player.moon

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ class Player extends Entity
4747
mover = make_mover "w", "s", "a", "d"
4848

4949
life: 100
50+
score: 0
51+
display_score: 0
5052

5153
w: 15
5254
h: 50
@@ -191,6 +193,9 @@ class Player extends Entity
191193
@anim\update dt
192194
@effects\update dt
193195

196+
@display_score = approach @display_score, @score,
197+
dt * ((@score - @display_score) * 1.5 + 14)
198+
194199
@zv += dt * @za
195200
@z += @zv * dt
196201
if @z < 0

0 commit comments

Comments
 (0)
X Tutup