adjust kydreeok movement boundaries
This commit is contained in:
@@ -409,74 +409,73 @@ MoveBody:
|
|||||||
|
|
||||||
StopIfOutOfBounds:
|
StopIfOutOfBounds:
|
||||||
{
|
{
|
||||||
; Set A to 00 if outside of certain bounds
|
; Set A to 00 if outside of certain bounds
|
||||||
|
REP #$20
|
||||||
REP #$20
|
LDA SprCachedX : CMP.w #$0118 : BCS .not_out_of_bounds_Left
|
||||||
LDA SprCachedX : CMP.w #$0A22 : BCS .notOutOfBoundsLeft
|
|
||||||
SEP #$20
|
|
||||||
LDA.w SprXSpeed : CMP.b #$7F : BCC .notOutOfBoundsLeft
|
|
||||||
LDA.b #-10 : STA.w SprXSpeed : STA SprXRound
|
|
||||||
LDA $19EA : SEC : SBC #$04 : STA $19EA
|
|
||||||
LDA $19EC : SEC : SBC #$04 : STA $19EC
|
|
||||||
LDA $19EE : SEC : SBC #$04 : STA $19EE
|
|
||||||
|
|
||||||
LDA $19F0 : SEC : SBC #$04 : STA $19F0
|
|
||||||
LDA $19F2 : SEC : SBC #$04 : STA $19F2
|
|
||||||
LDA $19F4 : SEC : SBC #$04 : STA $19F4
|
|
||||||
|
|
||||||
.notOutOfBoundsLeft
|
|
||||||
SEP #$20
|
SEP #$20
|
||||||
|
LDA.w SprXSpeed : CMP.b #$7F : BCC .not_out_of_bounds_Left
|
||||||
|
LDA.b #-10 : STA.w SprXSpeed : STA SprXRound
|
||||||
|
LDA $19EA : SEC : SBC #$04 : STA $19EA
|
||||||
|
LDA $19EC : SEC : SBC #$04 : STA $19EC
|
||||||
|
LDA $19EE : SEC : SBC #$04 : STA $19EE
|
||||||
|
|
||||||
REP #$20
|
LDA $19F0 : SEC : SBC #$04 : STA $19F0
|
||||||
LDA SprCachedX : CMP.w #$1B00 : BCC .notOutOfBoundsRight
|
LDA $19F2 : SEC : SBC #$04 : STA $19F2
|
||||||
SEP #$20
|
LDA $19F4 : SEC : SBC #$04 : STA $19F4
|
||||||
LDA.w SprXSpeed : CMP.b #$80 : BCS .notOutOfBoundsRight
|
|
||||||
LDA.b #$00 : STA.w SprXSpeed : STA SprXRound
|
|
||||||
LDA $19EA : CLC : ADC #$04 : STA $19EA
|
|
||||||
LDA $19EC : CLC : ADC #$04 : STA $19EC
|
|
||||||
LDA $19EE : CLC : ADC #$04 : STA $19EE
|
|
||||||
|
|
||||||
LDA $19F0 : CLC : ADC #$04 : STA $19F0
|
.not_out_of_bounds_Left
|
||||||
LDA $19F2 : CLC : ADC #$04 : STA $19F2
|
SEP #$20
|
||||||
LDA $19F4 : CLC : ADC #$04 : STA $19F4
|
|
||||||
|
|
||||||
.notOutOfBoundsRight
|
REP #$20
|
||||||
|
LDA SprCachedX : CMP.w #$01D8 : BCC .not_out_of_bounds_Right
|
||||||
SEP #$20
|
SEP #$20
|
||||||
|
LDA.w SprXSpeed : CMP.b #$80 : BCS .not_out_of_bounds_Right
|
||||||
|
LDA.b #$00 : STA.w SprXSpeed : STA SprXRound
|
||||||
|
LDA $19EA : CLC : ADC #$04 : STA $19EA
|
||||||
|
LDA $19EC : CLC : ADC #$04 : STA $19EC
|
||||||
|
LDA $19EE : CLC : ADC #$04 : STA $19EE
|
||||||
|
|
||||||
; Upper bound
|
LDA $19F0 : CLC : ADC #$04 : STA $19F0
|
||||||
REP #$20
|
LDA $19F2 : CLC : ADC #$04 : STA $19F2
|
||||||
LDA SprCachedY : CMP.w #$0150 : BCS .notOutOfBoundsUp
|
LDA $19F4 : CLC : ADC #$04 : STA $19F4
|
||||||
SEP #$20
|
|
||||||
LDA.w SprYSpeed : CMP.b #$7F : BCC .notOutOfBoundsUp
|
|
||||||
LDA.b #$00 : STA.w SprYSpeed : STA SprYRound
|
|
||||||
LDA $19EA : SEC : SBC #$04 : STA $19EA
|
|
||||||
LDA $19EC : SEC : SBC #$04 : STA $19EC
|
|
||||||
LDA $19EE : SEC : SBC #$04 : STA $19EE
|
|
||||||
|
|
||||||
.notOutOfBoundsUp
|
.not_out_of_bounds_Right
|
||||||
|
SEP #$20
|
||||||
|
|
||||||
|
; Upper bound
|
||||||
|
REP #$20
|
||||||
|
LDA SprCachedY : CMP.w #$0020 : BCS .not_out_of_bounds_Up
|
||||||
SEP #$20
|
SEP #$20
|
||||||
|
LDA.w SprYSpeed : CMP.b #$7F : BCC .not_out_of_bounds_Up
|
||||||
|
LDA.b #$00 : STA.w SprYSpeed : STA SprYRound
|
||||||
|
LDA $19EA : SEC : SBC #$04 : STA $19EA
|
||||||
|
LDA $19EC : SEC : SBC #$04 : STA $19EC
|
||||||
|
LDA $19EE : SEC : SBC #$04 : STA $19EE
|
||||||
|
|
||||||
REP #$20
|
.not_out_of_bounds_Up
|
||||||
LDA SprCachedY : CMP.w #$01A0 : BCC .notOutOfBoundsDown
|
SEP #$20
|
||||||
SEP #$20
|
|
||||||
LDA.w SprYSpeed : CMP.b #$80 : BCS .notOutOfBoundsDown
|
|
||||||
LDA.b #-10 : STA.w SprYSpeed : STA SprYRound ; Reverse the direction
|
|
||||||
|
|
||||||
; Modify the neck position
|
REP #$20
|
||||||
; Makes them move away from each other a bit
|
LDA SprCachedY : CMP.w #$00D0 : BCC .not_out_of_bounds_Down
|
||||||
LDA $19EA : SEC : SBC #$04 : STA $19EA
|
|
||||||
LDA $19EC : SEC : SBC #$04 : STA $19EC
|
|
||||||
LDA $19EE : SEC : SBC #$04 : STA $19EE
|
|
||||||
|
|
||||||
LDA $19F0 : CLC : ADC #$04 : STA $19F0
|
|
||||||
LDA $19F2 : CLC : ADC #$04 : STA $19F2
|
|
||||||
LDA $19F4 : CLC : ADC #$04 : STA $19F4
|
|
||||||
|
|
||||||
|
|
||||||
.notOutOfBoundsDown
|
|
||||||
SEP #$20
|
SEP #$20
|
||||||
|
LDA.w SprYSpeed : CMP.b #$80 : BCS .not_out_of_bounds_Down
|
||||||
|
LDA.b #-10 : STA.w SprYSpeed : STA SprYRound ; Reverse the direction
|
||||||
|
|
||||||
RTS
|
; Modify the neck position
|
||||||
|
; Makes them move away from each other a bit
|
||||||
|
LDA $19EA : SEC : SBC #$04 : STA $19EA
|
||||||
|
LDA $19EC : SEC : SBC #$04 : STA $19EC
|
||||||
|
LDA $19EE : SEC : SBC #$04 : STA $19EE
|
||||||
|
|
||||||
|
LDA $19F0 : CLC : ADC #$04 : STA $19F0
|
||||||
|
LDA $19F2 : CLC : ADC #$04 : STA $19F2
|
||||||
|
LDA $19F4 : CLC : ADC #$04 : STA $19F4
|
||||||
|
|
||||||
|
|
||||||
|
.not_out_of_bounds_Down
|
||||||
|
SEP #$20
|
||||||
|
|
||||||
|
RTS
|
||||||
}
|
}
|
||||||
|
|
||||||
; =========================================================
|
; =========================================================
|
||||||
|
|||||||
Reference in New Issue
Block a user