diff --git a/games/peasant/inside.s b/games/peasant/inside.s index 28d5fba3..a8d56d01 100644 --- a/games/peasant/inside.s +++ b/games/peasant/inside.s @@ -159,8 +159,35 @@ game_loop: beq inside_lady_cottage cmp #LOCATION_HIDDEN_GLEN beq inside_hidden_glen + cmp #LOCATION_INSIDE_NN + beq inside_nn_cottage - bne skip_level_specific + jmp skip_level_specific + +inside_nn_cottage: + ; check if leaving + + lda PEASANT_Y + cmp #$95 + bcc skip_level_specific + + ; put outside door + lda #13 + sta PEASANT_X + lda #$6D + sta PEASANT_Y + + ; stop walking + lda #0 + sta PEASANT_XADD + sta PEASANT_YADD + + ; move back + + lda #LOCATION_OUTSIDE_NN + jsr update_map_location + + jmp skip_level_specific inside_lady_cottage: ; check if leaving @@ -251,6 +278,7 @@ inside_hidden_glen: jmp skip_level_specific + skip_level_specific: lda LEVEL_OVER diff --git a/games/peasant/peasant4.s b/games/peasant/peasant4.s index 23928262..df82be84 100644 --- a/games/peasant/peasant4.s +++ b/games/peasant/peasant4.s @@ -234,6 +234,10 @@ game_loop: sta PEASANT_Y lda #PEASANT_DIR_UP sta PEASANT_DIR + lda #0 + sta PEASANT_XADD + sta PEASANT_YADD + not_ned_cottage: