Skip to content

Commit

Permalink
Merge pull request #50 from intoinside/intoinside/issue46
Browse files Browse the repository at this point in the history
Intoinside/issue46
  • Loading branch information
intoinside authored Feb 5, 2022
2 parents 1e0ad49 + 462a981 commit bfbb63f
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 65 deletions.
4 changes: 2 additions & 2 deletions _level1.asm
Original file line number Diff line number Diff line change
Expand Up @@ -674,7 +674,7 @@ WoodCutterFromRight: {
sta HandleEnemyFined.MapComplain
lda TreeStartAddress + 1
sta HandleEnemyFined.MapComplain + 1
lda #$00
lda #$ff
sta HandleEnemyFined.AddOrSub
lda #$05
sta HandleEnemyFined.Offset
Expand Down Expand Up @@ -894,7 +894,7 @@ WoodCutterFromRight: {
sta HandleEnemyFinedOut.MapComplain
lda TreeStartAddress + 1
sta HandleEnemyFinedOut.MapComplain + 1
lda #$00
lda #$ff
sta HandleEnemyFinedOut.AddOrSub
lda #$05
sta HandleEnemyFinedOut.Offset
Expand Down
33 changes: 2 additions & 31 deletions _level2.asm
Original file line number Diff line number Diff line change
Expand Up @@ -673,7 +673,7 @@ WoodCutterFromRight: {
sta HandleEnemyFined.MapComplain
lda TreeStartAddress + 1
sta HandleEnemyFined.MapComplain + 1
lda #$00
lda #$ff
sta HandleEnemyFined.AddOrSub
lda #$05
sta HandleEnemyFined.Offset
Expand Down Expand Up @@ -887,7 +887,7 @@ WoodCutterFromRight: {
sta HandleEnemyFinedOut.MapComplain
lda TreeStartAddress + 1
sta HandleEnemyFinedOut.MapComplain + 1
lda #$00
lda #$ff
sta HandleEnemyFinedOut.AddOrSub
lda #$05
sta HandleEnemyFinedOut.Offset
Expand Down Expand Up @@ -1596,35 +1596,6 @@ TankTruckFromRight: {
.label LakeCoordinates = ScreenMemoryBaseAddress + c64lib_getTextOffset(28, 9)
}

.macro HideComplain(address, x, y) {
lda #<address
sta HideComplainRoutine.Dummy
lda #>address
sta HideComplainRoutine.Dummy + 1

c64lib_add16((y * 40) + x, HideComplainRoutine.Dummy)

jsr HideComplainRoutine
}

// TODO(intoinside): #46 HideComplain can be generalized and refactored
* = * "Level2 HideComplainRoutine"
HideComplainRoutine: {
lda Dummy
sta HandleEnemyFinedOut.MapComplain
lda Dummy + 1
sta HandleEnemyFinedOut.MapComplain + 1
lda #$01
sta HandleEnemyFinedOut.AddOrSub
lda #$03
sta HandleEnemyFinedOut.Offset
jsr HandleEnemyFinedOut

rts

Dummy: .word $beef
}

* = * "Level2 CleanTankRight"
CleanTankRight: {
lda #$00
Expand Down
29 changes: 0 additions & 29 deletions _level3.asm
Original file line number Diff line number Diff line change
Expand Up @@ -1448,35 +1448,6 @@ ArsionistFromRight: {
BushBurned: .byte $00 // When is 8, bush is completely burnt
}

.macro HideComplain(address, x, y) {
lda #<address
sta HideComplainRoutine.Dummy
lda #>address
sta HideComplainRoutine.Dummy + 1

c64lib_add16((y * 40) + x, HideComplainRoutine.Dummy)

jsr HideComplainRoutine
}

// TODO(intoinside): #46 HideComplain can be generalized and refactored
* = * "Level3 HideComplainRoutine"
HideComplainRoutine: {
lda Dummy
sta HandleEnemyFinedOut.MapComplain
lda Dummy + 1
sta HandleEnemyFinedOut.MapComplain + 1
lda #$01
sta HandleEnemyFinedOut.AddOrSub
lda #$03
sta HandleEnemyFinedOut.Offset
jsr HandleEnemyFinedOut

rts

Dummy: .word $beef
}

* = * "Level3 RepaintBush"
RepaintBush: {
dec ColumnToRepaint
Expand Down
32 changes: 29 additions & 3 deletions _utils.asm
Original file line number Diff line number Diff line change
Expand Up @@ -546,7 +546,7 @@ ShowComplainRoutine: {
lda Dummy + 1
sta HandleEnemyFined.MapComplain + 1
lda #0
sta HandleEnemyFined.Offset
sta HandleEnemyFined.AddOrSub
jmp HandleEnemyFined // jsr + rts

Dummy: .word $beef
Expand Down Expand Up @@ -646,9 +646,35 @@ HandleEnemyFined: {
MapComplain: .word $4569
}

.macro HideComplain(address, x, y) {
lda #<address
sta HideComplainRoutine.Dummy
lda #>address
sta HideComplainRoutine.Dummy + 1

c64lib_add16((y * 40) + x, HideComplainRoutine.Dummy)

jsr HideComplainRoutine
}

* = * "Utils HideComplainRoutine"
HideComplainRoutine: {
lda Dummy
sta HandleEnemyFinedOut.MapComplain
lda Dummy + 1
sta HandleEnemyFinedOut.MapComplain + 1
lda #$00
sta HandleEnemyFinedOut.AddOrSub
jmp HandleEnemyFinedOut // jsr + rts

Dummy: .word $beef
}

* = * "Utils HandleEnemyFinedOut"
HandleEnemyFinedOut: {
lda AddOrSub
beq MapSelfModAreaRow1
cmp #$ff
beq !Add+
!Sub:
sub16byte(Offset, MapComplain)
Expand Down Expand Up @@ -714,8 +740,8 @@ HandleEnemyFinedOut: {
rts

FixComplainChars: .byte $00
AddOrSub: .byte $00 // $00 means add, otherwise sub
Offset: .byte $00
AddOrSub: .byte $00 // $ff means add, $01 means sub, otherwise no offset
Offset: .byte $00 // Offset to add or sub from the position
MapComplain: .word $4569 //, $456a, $456b, $4591, $4592, $4593
}

Expand Down

0 comments on commit bfbb63f

Please sign in to comment.