Alright. Final conclusion is. If you have a tile that is checking action step, it will totally ignore collision of adjacent tiles.
Video:
https://vimeo.com/451714013
Image of collision and tiles:
https://imgur.com/2dnWG7R
My custom solid tile:
Code:
;;solid tile
CPX player1_object
BNE +notPlayer
LDA ObjectUpdateByte
ORA #%00000001
STA ObjectUpdateByte ;; makes solid
TXA
STA temp
ChangeActionStep temp, #$00
+notPlayer
rts
Custom reverse vertical tile:
Code:
CPX player1_object
BNE +skipThis
TXA
STA temp
GetActionStep temp
CMP #$01
BNE +wasNotUpLeft
TXA
STA temp
StartMoving temp, #DOWN
TXA
STA temp ;; assumes the object we want to move is in x.
ChangeFacingDirection temp, #FACE_DOWN
RTS
+wasNotUpLeft
TXA
STA temp
GetActionStep temp
CMP #$02
BNE +wasNotUpRight
TXA
STA temp
StartMoving temp, #DOWN
TXA
STA temp ;; assumes the object we want to move is in x.
ChangeFacingDirection temp, #FACE_DOWN
RTS
+wasNotUpRight
+skipThis
Custom reverse horizontal:
Code:
CPX player1_object
BNE +skipThis
TXA
STA temp
GetActionStep temp
CMP #$05
BNE +wasNotLeft
TXA
STA temp
StartMoving temp, #RIGHT
TXA
STA temp ;; assumes the object we want to move is in x.
ChangeFacingDirection temp, #FACE_RIGHT
RTS
+wasNotLeft
TXA
STA temp
GetActionStep temp
CMP #$06
BNE +wasNotRight
TXA
STA temp
StartMoving temp, #LEFT
TXA
STA temp ;; assumes the object we want to move is in x.
ChangeFacingDirection temp, #FACE_LEFT
RTS
+wasNotRight
+skipThis
I made my own reverse and solid because I was starting to not trust the reverse direction or stop on solid object details though those are probably fine.
In the video you can see that. Left seems to work fine because the reverse tile has a complete tile of space between it.
When moving right, you can see that it clips mostly through the reverse tile before reversing.
This is the same issue which causes the player to clip through the solid when moving DOWN after having direction reversed after moving UP.
I also tried this with the stock solid time and same thing.
So I will probably have to change my game design to account for this unless there is a revelation in tutorials which... I'm going to watch and do all of them before proceeding with my own game since I feel like I will encounter issues like this and they will just help me all-around, in general.
Thanks for bearing with me.