ld [player+act_hp], a
ld [player+act_mp], a
+ ; set player attribute table
+ ld a, player_attr LO
+ ld [player+act_attr], a
+ ld a, player_attr HI
+ ld [player+act_attr+1], a
+
+ ; set default stats
+ ; all stats set to 1
+ ld d, 1
+ ld hl, player_attr
+ ld bc, attr_size
+ call memset
ret
call nz, player_move_back
@not_down:
ret
+
+ ; called on successful move
+player_on_move:
+ call act_update_all
+ call play_walk_noise
+ ret
player_move_forward:
ld de, player
ldh a, [act_just_moved]
cp a, 1
- call z, act_update_all
+ call z, player_on_move
jp map_full_draw
player_move_back:
ldh a, [act_just_moved]
cp a, 1
- call z, act_update_all
+ call z, player_on_move
jp map_full_draw