Draw triple connections correctly
This commit is contained in:
@@ -209,6 +209,7 @@ DrawSide:
|
||||
BRA .done
|
||||
|
||||
.three
|
||||
JSR DrawTripleConnectorRoot
|
||||
JSR DrawTripleConnector
|
||||
|
||||
.done
|
||||
@@ -270,6 +271,10 @@ GetWhichDoorPosition:
|
||||
BMI .edge
|
||||
AND.w #$0300
|
||||
XBA
|
||||
CMP.w #$0003
|
||||
BNE +
|
||||
LDA.w #$0002
|
||||
+
|
||||
RTS
|
||||
|
||||
.edge
|
||||
@@ -389,6 +394,22 @@ DrawDoubleConnectorRoot:
|
||||
PLY
|
||||
RTS
|
||||
|
||||
DrawTripleConnectorRoot:
|
||||
LDA.w #$0013
|
||||
ASL A : ASL A
|
||||
PHY
|
||||
TAY
|
||||
LDX.w #!CenterTile
|
||||
LDA.b $00
|
||||
BNE + : %Draw2TileConnector(-$40, -$3E, $0000, vertical) : BRA ++
|
||||
+ DEC A : BNE + : %Draw2TileConnector(-$02, $3E, $0000, horizontal) : BRA ++
|
||||
+ DEC A : BNE + : %Draw2TileConnector($80, $82, $8000, vertical) : BRA ++
|
||||
+ DEC A : BNE + : %Draw2TileConnector($04, $44, $4000, horizontal) : BRA ++
|
||||
+
|
||||
++
|
||||
PLY
|
||||
RTS
|
||||
|
||||
DrawEastConnectors:
|
||||
LDA.b $06 : DEC A
|
||||
BNE +
|
||||
@@ -511,6 +532,38 @@ DrawDoubleConnector:
|
||||
RTS
|
||||
|
||||
DrawTripleConnector:
|
||||
LDA.b $00
|
||||
AND.w #$0001
|
||||
TAY
|
||||
LDA.w MultiConnectorTiles_increment, Y
|
||||
AND.w #$00FF
|
||||
STA.b $0C
|
||||
|
||||
LDA.b $00
|
||||
ASL A
|
||||
TAY
|
||||
LDA.w MultiConnectorTiles_start_offset_three, Y
|
||||
CLC : ADC.w #!CenterTile
|
||||
TAX
|
||||
|
||||
LDY.b $00
|
||||
LDA.w MultiConnectorTiles_direction_index, Y
|
||||
AND.w #$00FF
|
||||
TAY
|
||||
|
||||
LDA.w #$0005
|
||||
STA.b $0E
|
||||
-
|
||||
LDA.w MultiConnectorTiles+8, Y
|
||||
ORA.w #!ConnectorPalette
|
||||
STA.l $7F0000, X
|
||||
TXA
|
||||
CLC : ADC.b $0C
|
||||
TAX
|
||||
INY : INY
|
||||
DEC.b $0E
|
||||
BPL -
|
||||
|
||||
RTS
|
||||
|
||||
DrawBlinkerFancyMode:
|
||||
|
||||
@@ -23,7 +23,7 @@ DoorConnectionTiles:
|
||||
.horizontal
|
||||
dw $0300, $0300 ; $00
|
||||
dw $01C4, $0300 ; $01 top -> top
|
||||
dw $C1D5, $C1D4 ; $02 top -> middle
|
||||
dw $C1D4, $C1D5 ; $02 top -> middle
|
||||
dw $81C7, $41C7 ; $03 top -> bottom
|
||||
dw $81D4, $81D5 ; $04 middle -> top
|
||||
dw $01C5, $41C5 ; $05 middle -> middle
|
||||
@@ -40,4 +40,4 @@ DoorConnectionTiles:
|
||||
dw $C1D7, $01D7 ; $10 middle-bottom -> top-middle
|
||||
dw $81D4, $C1D6 ; $11 middle-bottom -> top-bottom
|
||||
dw $01C5, $01C6 ; $12 middle-bottom -> middle-bottom
|
||||
dw $41C6, $01C6 ; $13 triple -> triple
|
||||
dw $81C6, $01C6 ; $13 triple -> triple
|
||||
|
||||
@@ -93,6 +93,7 @@ MultiConnectorTiles:
|
||||
..two
|
||||
dw $FF7E, $FFBC, $00BE, $FFC6
|
||||
..three
|
||||
dw $FF7C, $FF7C, $00BC, $FF86
|
||||
.increment
|
||||
db $02, $40
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user