update kydreeok head formatting

This commit is contained in:
scawful
2024-06-07 18:10:37 -04:00
parent 7c047621a0
commit acb3000fbc

View File

@@ -254,39 +254,15 @@ RandomlyAttack:
LDA #$CF
JSL Sprite_SpawnDynamically
JSL Sprite_SetSpawnedCoords
;JSL $09B020 ; Fireball_SpawnTrailGarnish
; JSL $09B020 ; Fireball_SpawnTrailGarnish
LDA.b #$02 : STA.w SprAction, Y
LDA #$10 : STA.w SprTimerA, Y
.no_attack
.no_attack
RTS
}
; =========================================================
Offspring1_Neck1_X = $19EA
Offspring1_Neck2_X = $19EC
Offspring1_Neck3_X = $19EE
Offspring1_Neck1_Y = $19EB
Offspring1_Neck2_Y = $19ED
Offspring1_Neck3_Y = $19EF
Offspring2_Neck1_X = $19F0
Offspring2_Neck2_X = $19F2
Offspring2_Neck3_X = $19F4
Offspring2_Neck1_Y = $19F1
Offspring2_Neck2_Y = $19F3
Offspring2_Neck3_Y = $19F5
Offspring3_Neck1_X = $1A78
Offspring3_Neck2_X = $1A7A
Offspring3_Neck3_X = $1A7C
Offspring3_Neck1_Y = $1A79
Offspring3_Neck2_Y = $1A7B
Offspring3_Neck3_Y = $1A7D
MoveWithBody:
{
LDA Kydreeok_Id : TAY
@@ -294,39 +270,35 @@ MoveWithBody:
CPX.w Offspring3_Id : BEQ .MoveNeck3
; The first neck
LDA.w SprX, Y : SEC : SBC #$0F
; STA.w SprX, X
STA.w SprMiscA, X
STA.w $19EA
; STA.w $19EC
; STA.w $19EE
; STA.w $19EC : STA.w $19EE : STA.w SprX, X
LDA.w SprY, Y : SEC : SBC #$0F
; STA.w SprY, X
STA.w SprMiscB, X
STA.w $19EB
; STA.w $19ED
; STA.w $19EF
; STA.w $19ED : STA.w $19EF : STA.w SprY, X
JMP .return
.DoMove
; The other neck
LDA.w SprX, Y : CLC : ADC #$0C
; STA.w SprX, X
STA.w SprMiscA, X
STA.w $19F0
; STA.w $19F2
; STA.w $19F4
; STA.w $19F2 : STA.w $19F4 : STA.w SprX, X
LDA.w SprY, Y : SEC : SBC #$0F
; STA.w SprY, X
STA.w SprMiscB, X
STA.w $19F1
; STA.w $19F3
; STA.w $19F5
.return
JSR KydreeokHead_NeckControl
RTS
.MoveNeck3
; The third neck
LDA.w SprX, Y : SEC : SBC #$0F
@@ -381,8 +353,8 @@ Neck1_Control:
LDA.w SprXSpeed, X : STA $08
LDA.w SprYSpeed, X : STA $09
LDA.w $19EA : STA $02 ; x
LDA.w $19EB : STA $03 ; y
LDA.w $19EA : STA $02; x
LDA.w $19EB : STA $03; y
LDA.w SprX, X : STA $04
LDA.w SprY, X : STA $05
JSR GetDistance8bit : CMP #$08 : BCC .TooCloseToHead ; is body1 too close to the head?
@@ -409,8 +381,8 @@ Neck1_Control:
; Do body part 2
LDA.w $19EC : STA $02 ; x
LDA.w $19ED : STA $03 ; y
LDA.w $19EC : STA $02; x
LDA.w $19ED : STA $03; y
LDA.w $19EA : STA $04
LDA.w $19EB : STA $05
JSR GetDistance8bit : CMP #$0D : BCC .TooCloseToBodyPart1 ; is body1 too close to the head?
@@ -437,8 +409,8 @@ Neck1_Control:
; Do body part 2
LDA.w $19EE : STA $02 ; x
LDA.w $19EF : STA $03 ; y
LDA.w $19EE : STA $02; x
LDA.w $19EF : STA $03; y
LDA.w $19EC : STA $04
LDA.w $19ED : STA $05
JSR GetDistance8bit : CMP #$14 : BCC .TooCloseToBodyPart2 ; is body1 too close to the head?
@@ -486,12 +458,11 @@ Neck2_Control:
LDA.w SprX, X : STA $04
LDA.w SprY, X : STA $05
JSR GetDistance8bit : CMP #$08 : BCC .TooCloseToHead2 ; is body1 too close to the head?
LDA.w SprX, X : STA $04 ; dest X
LDA.w SprXH, X : STA $05 ; dest XH
LDA.w SprY, X : STA $06 ; dest Y
LDA.w SprYH, X : STA $07 ; dest YH
;load body position into sprite position
; load body position into sprite position
LDA.w $19F0 : STA.w SprX, X
LDA.w $19F1 : STA.w SprY, X
@@ -504,6 +475,7 @@ Neck2_Control:
LDA.w SprY, X : STA.w $19F1
.TooCloseToHead2
LDA.w $19F2 : STA $02 ; x
LDA.w $19F3 : STA $03 ; y
LDA.w $19F0 : STA $04
@@ -529,7 +501,6 @@ Neck2_Control:
.TooCloseToBodyPart12
; Do body part 2
LDA.w $19F4 : STA $02 ; x
LDA.w $19F5 : STA $03 ; y
LDA.w $19F2 : STA $04
@@ -577,7 +548,6 @@ KydreeokHead_NeckControl:
RTS
.DoNeck3
; Set head pos
LDA $1A7C : CLC : ADC.w Neck3_OffsetX : STA SprX, X
LDA $1A7D : CLC : ADC.w Neck3_OffsetY : STA SprY, X
@@ -597,7 +567,7 @@ KydreeokHead_NeckControl:
LDA.w SprXH, X : STA $05 ; dest XH
LDA.w SprY, X : STA $06 ; dest Y
LDA.w SprYH, X : STA $07 ; dest YH
;load body position into sprite position
; load body position into sprite position
LDA.w $1A78 : STA.w SprX, X
LDA.w $1A79 : STA.w SprY, X
@@ -635,11 +605,11 @@ KydreeokHead_NeckControl:
.TooCloseToBodyPart13
; Do body part 2
LDA.w $1A7C : STA $02 ; x
LDA.w $1A7D : STA $03 ; y
LDA.w $1A7A : STA $04
LDA.w $1A7B : STA $05
JSR GetDistance8bit : CMP #$14 : BCC .TooCloseToBodyPart23 ; is body1 too close to the head?
LDA.w $1A7A : STA $04 ; dest X
@@ -758,9 +728,9 @@ Sprite_KydreeokHead_DrawNeck:
STA $0E
.on_screen_y2
INY
LDA #$2E : STA ($90), Y
LDA #$2E : STA ($90), Y ; Set the Char
INY
LDA #$39 : STA ($90), Y
LDA #$39 : STA ($90), Y ; Set the Properties
PHY
TYA : LSR #2 : TAY
@@ -775,6 +745,8 @@ Sprite_KydreeokHead_DrawNeck:
Sprite_KydreeokHead_Draw:
{
JSL Sprite_PrepOamCoord
; LDA.b #$03
; JSL OAM_AllocateFromRegionC
JSL Sprite_OAM_AllocateDeferToPlayer
LDA $0DC0, X : CLC : ADC $0D90, X : TAY;Animation Frame