From ef9de76cd0bc313385b7edac3659e03ab36d3c1e Mon Sep 17 00:00:00 2001 From: Astatin Date: Tue, 13 May 2025 15:52:37 +0200 Subject: Add bugs and poison --- enemiesattacks/poison.gbasm | 77 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 enemiesattacks/poison.gbasm (limited to 'enemiesattacks/poison.gbasm') diff --git a/enemiesattacks/poison.gbasm b/enemiesattacks/poison.gbasm new file mode 100644 index 0000000..807eae3 --- /dev/null +++ b/enemiesattacks/poison.gbasm @@ -0,0 +1,77 @@ +Poison_sight_check: ; BC = XY of the enemy. D = direction (must be unchanged). Direction to face in E (or 0 if not) + LD E, $00 + + LD A, L + AND $f0 + ADD $09 + LD L, A + LD A, $00 + CP (HL) + RET Z + JP =Check_player_next_to + +Poison_Enemy_Attack: ; Direction to face in E. Result in BC (XY), Direction in D + LD A, D + AND $f0 + SWAP A + LD D, A + LD A, E + DEC A + DEC D + XOR D + INC D + CP $00 + JR Z, =.attack + BIT 1, A + JR NZ, =.attack + + LD D, E + LD A, D + SWAP A + AND $70 + OR D + LD D, A + RET + + .attack: + LD A, E + SWAP A + AND $70 + OR E + LD D, A + LD A, L + AND $f0 + OR $0a + LD L, A + LD (HL), $01 + + PUSH BC + LD A, $mem_bunny_direction + AND $08 + LD B, A + LD A, $mem_bunny_flags + AND $01 + OR B + CP $09 + POP BC + RET Z + + LD A, $08 + LD $mem_bunny_status, A + + LD A, $0a + LD $mem_bunny_status_clear_turn_counter, A + + LD A, L + AND $f0 + ADD $07 + LD L, A + SET 2, (HL) + + LD A, L + AND $f0 + ADD $09 + LD L, A + DEC (HL) + + RET -- cgit v1.2.3-70-g09d2