; inputs:
; hl: pointer to player memory
player_init:
- xor a, a
+ ld a, 64
; y
ld [hl+], a
; x
ld [hl+], a
+
+ xor a, a
; flags
ld [hl+], a
ld a, [hl]
dec a
ld [hl], a
+
+
+ dec hl ; hl = player_y
+ player_collision_check collision_player_left
+ inc hl ; hl = player_x
+ jr z, @no_collision_left REL
+ ld a, [hl]
+ inc a
+ ld [hl], a
+@no_collision_left:
+
@notleft:
input_held BTNRIGHT
ld a, [hl]
inc a
ld [hl], a
+
+
+ dec hl ; hl = player_y
+ player_collision_check collision_player_right
+ inc hl ; hl = player_x
+ jr z, @no_collision_right REL
+ ld a, [hl]
+ dec a
+ ld [hl], a
+@no_collision_right:
+
@notright:
input_just BTNA