update kydreeok head formatting
This commit is contained in:
@@ -254,39 +254,15 @@ RandomlyAttack:
|
|||||||
LDA #$CF
|
LDA #$CF
|
||||||
JSL Sprite_SpawnDynamically
|
JSL Sprite_SpawnDynamically
|
||||||
JSL Sprite_SetSpawnedCoords
|
JSL Sprite_SetSpawnedCoords
|
||||||
;JSL $09B020 ; Fireball_SpawnTrailGarnish
|
; JSL $09B020 ; Fireball_SpawnTrailGarnish
|
||||||
LDA.b #$02 : STA.w SprAction, Y
|
LDA.b #$02 : STA.w SprAction, Y
|
||||||
LDA #$10 : STA.w SprTimerA, Y
|
LDA #$10 : STA.w SprTimerA, Y
|
||||||
.no_attack
|
.no_attack
|
||||||
RTS
|
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:
|
MoveWithBody:
|
||||||
{
|
{
|
||||||
LDA Kydreeok_Id : TAY
|
LDA Kydreeok_Id : TAY
|
||||||
@@ -294,39 +270,35 @@ MoveWithBody:
|
|||||||
CPX.w Offspring3_Id : BEQ .MoveNeck3
|
CPX.w Offspring3_Id : BEQ .MoveNeck3
|
||||||
; The first neck
|
; The first neck
|
||||||
LDA.w SprX, Y : SEC : SBC #$0F
|
LDA.w SprX, Y : SEC : SBC #$0F
|
||||||
; STA.w SprX, X
|
|
||||||
STA.w SprMiscA, X
|
STA.w SprMiscA, X
|
||||||
STA.w $19EA
|
STA.w $19EA
|
||||||
; STA.w $19EC
|
; STA.w $19EC : STA.w $19EE : STA.w SprX, X
|
||||||
; STA.w $19EE
|
|
||||||
|
|
||||||
LDA.w SprY, Y : SEC : SBC #$0F
|
LDA.w SprY, Y : SEC : SBC #$0F
|
||||||
; STA.w SprY, X
|
|
||||||
STA.w SprMiscB, X
|
STA.w SprMiscB, X
|
||||||
STA.w $19EB
|
STA.w $19EB
|
||||||
; STA.w $19ED
|
; STA.w $19ED : STA.w $19EF : STA.w SprY, X
|
||||||
; STA.w $19EF
|
|
||||||
|
|
||||||
JMP .return
|
JMP .return
|
||||||
.DoMove
|
.DoMove
|
||||||
; The other neck
|
; The other neck
|
||||||
LDA.w SprX, Y : CLC : ADC #$0C
|
LDA.w SprX, Y : CLC : ADC #$0C
|
||||||
; STA.w SprX, X
|
|
||||||
STA.w SprMiscA, X
|
STA.w SprMiscA, X
|
||||||
STA.w $19F0
|
STA.w $19F0
|
||||||
; STA.w $19F2
|
; STA.w $19F2 : STA.w $19F4 : STA.w SprX, X
|
||||||
; STA.w $19F4
|
|
||||||
|
|
||||||
LDA.w SprY, Y : SEC : SBC #$0F
|
LDA.w SprY, Y : SEC : SBC #$0F
|
||||||
|
|
||||||
; STA.w SprY, X
|
; STA.w SprY, X
|
||||||
STA.w SprMiscB, X
|
STA.w SprMiscB, X
|
||||||
STA.w $19F1
|
STA.w $19F1
|
||||||
; STA.w $19F3
|
; STA.w $19F3
|
||||||
; STA.w $19F5
|
; STA.w $19F5
|
||||||
.return
|
.return
|
||||||
JSR KydreeokHead_NeckControl
|
|
||||||
|
|
||||||
RTS
|
RTS
|
||||||
|
|
||||||
.MoveNeck3
|
.MoveNeck3
|
||||||
; The third neck
|
; The third neck
|
||||||
LDA.w SprX, Y : SEC : SBC #$0F
|
LDA.w SprX, Y : SEC : SBC #$0F
|
||||||
@@ -381,8 +353,8 @@ Neck1_Control:
|
|||||||
LDA.w SprXSpeed, X : STA $08
|
LDA.w SprXSpeed, X : STA $08
|
||||||
LDA.w SprYSpeed, X : STA $09
|
LDA.w SprYSpeed, X : STA $09
|
||||||
|
|
||||||
LDA.w $19EA : STA $02 ; x
|
LDA.w $19EA : STA $02; x
|
||||||
LDA.w $19EB : STA $03 ; y
|
LDA.w $19EB : STA $03; y
|
||||||
LDA.w SprX, X : STA $04
|
LDA.w SprX, X : STA $04
|
||||||
LDA.w SprY, X : STA $05
|
LDA.w SprY, X : STA $05
|
||||||
JSR GetDistance8bit : CMP #$08 : BCC .TooCloseToHead ; is body1 too close to the head?
|
JSR GetDistance8bit : CMP #$08 : BCC .TooCloseToHead ; is body1 too close to the head?
|
||||||
@@ -409,8 +381,8 @@ Neck1_Control:
|
|||||||
|
|
||||||
; Do body part 2
|
; Do body part 2
|
||||||
|
|
||||||
LDA.w $19EC : STA $02 ; x
|
LDA.w $19EC : STA $02; x
|
||||||
LDA.w $19ED : STA $03 ; y
|
LDA.w $19ED : STA $03; y
|
||||||
LDA.w $19EA : STA $04
|
LDA.w $19EA : STA $04
|
||||||
LDA.w $19EB : STA $05
|
LDA.w $19EB : STA $05
|
||||||
JSR GetDistance8bit : CMP #$0D : BCC .TooCloseToBodyPart1 ; is body1 too close to the head?
|
JSR GetDistance8bit : CMP #$0D : BCC .TooCloseToBodyPart1 ; is body1 too close to the head?
|
||||||
@@ -437,8 +409,8 @@ Neck1_Control:
|
|||||||
|
|
||||||
; Do body part 2
|
; Do body part 2
|
||||||
|
|
||||||
LDA.w $19EE : STA $02 ; x
|
LDA.w $19EE : STA $02; x
|
||||||
LDA.w $19EF : STA $03 ; y
|
LDA.w $19EF : STA $03; y
|
||||||
LDA.w $19EC : STA $04
|
LDA.w $19EC : STA $04
|
||||||
LDA.w $19ED : STA $05
|
LDA.w $19ED : STA $05
|
||||||
JSR GetDistance8bit : CMP #$14 : BCC .TooCloseToBodyPart2 ; is body1 too close to the head?
|
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 SprX, X : STA $04
|
||||||
LDA.w SprY, X : STA $05
|
LDA.w SprY, X : STA $05
|
||||||
JSR GetDistance8bit : CMP #$08 : BCC .TooCloseToHead2 ; is body1 too close to the head?
|
JSR GetDistance8bit : CMP #$08 : BCC .TooCloseToHead2 ; is body1 too close to the head?
|
||||||
|
|
||||||
LDA.w SprX, X : STA $04 ; dest X
|
LDA.w SprX, X : STA $04 ; dest X
|
||||||
LDA.w SprXH, X : STA $05 ; dest XH
|
LDA.w SprXH, X : STA $05 ; dest XH
|
||||||
LDA.w SprY, X : STA $06 ; dest Y
|
LDA.w SprY, X : STA $06 ; dest Y
|
||||||
LDA.w SprYH, X : STA $07 ; dest YH
|
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 $19F0 : STA.w SprX, X
|
||||||
LDA.w $19F1 : STA.w SprY, X
|
LDA.w $19F1 : STA.w SprY, X
|
||||||
|
|
||||||
@@ -504,6 +475,7 @@ Neck2_Control:
|
|||||||
LDA.w SprY, X : STA.w $19F1
|
LDA.w SprY, X : STA.w $19F1
|
||||||
|
|
||||||
.TooCloseToHead2
|
.TooCloseToHead2
|
||||||
|
|
||||||
LDA.w $19F2 : STA $02 ; x
|
LDA.w $19F2 : STA $02 ; x
|
||||||
LDA.w $19F3 : STA $03 ; y
|
LDA.w $19F3 : STA $03 ; y
|
||||||
LDA.w $19F0 : STA $04
|
LDA.w $19F0 : STA $04
|
||||||
@@ -529,7 +501,6 @@ Neck2_Control:
|
|||||||
.TooCloseToBodyPart12
|
.TooCloseToBodyPart12
|
||||||
|
|
||||||
; Do body part 2
|
; Do body part 2
|
||||||
|
|
||||||
LDA.w $19F4 : STA $02 ; x
|
LDA.w $19F4 : STA $02 ; x
|
||||||
LDA.w $19F5 : STA $03 ; y
|
LDA.w $19F5 : STA $03 ; y
|
||||||
LDA.w $19F2 : STA $04
|
LDA.w $19F2 : STA $04
|
||||||
@@ -577,7 +548,6 @@ KydreeokHead_NeckControl:
|
|||||||
RTS
|
RTS
|
||||||
|
|
||||||
.DoNeck3
|
.DoNeck3
|
||||||
|
|
||||||
; Set head pos
|
; Set head pos
|
||||||
LDA $1A7C : CLC : ADC.w Neck3_OffsetX : STA SprX, X
|
LDA $1A7C : CLC : ADC.w Neck3_OffsetX : STA SprX, X
|
||||||
LDA $1A7D : CLC : ADC.w Neck3_OffsetY : STA SprY, 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 SprXH, X : STA $05 ; dest XH
|
||||||
LDA.w SprY, X : STA $06 ; dest Y
|
LDA.w SprY, X : STA $06 ; dest Y
|
||||||
LDA.w SprYH, X : STA $07 ; dest YH
|
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 $1A78 : STA.w SprX, X
|
||||||
LDA.w $1A79 : STA.w SprY, X
|
LDA.w $1A79 : STA.w SprY, X
|
||||||
|
|
||||||
@@ -635,11 +605,11 @@ KydreeokHead_NeckControl:
|
|||||||
.TooCloseToBodyPart13
|
.TooCloseToBodyPart13
|
||||||
|
|
||||||
; Do body part 2
|
; Do body part 2
|
||||||
|
|
||||||
LDA.w $1A7C : STA $02 ; x
|
LDA.w $1A7C : STA $02 ; x
|
||||||
LDA.w $1A7D : STA $03 ; y
|
LDA.w $1A7D : STA $03 ; y
|
||||||
LDA.w $1A7A : STA $04
|
LDA.w $1A7A : STA $04
|
||||||
LDA.w $1A7B : STA $05
|
LDA.w $1A7B : STA $05
|
||||||
|
|
||||||
JSR GetDistance8bit : CMP #$14 : BCC .TooCloseToBodyPart23 ; is body1 too close to the head?
|
JSR GetDistance8bit : CMP #$14 : BCC .TooCloseToBodyPart23 ; is body1 too close to the head?
|
||||||
|
|
||||||
LDA.w $1A7A : STA $04 ; dest X
|
LDA.w $1A7A : STA $04 ; dest X
|
||||||
@@ -758,9 +728,9 @@ Sprite_KydreeokHead_DrawNeck:
|
|||||||
STA $0E
|
STA $0E
|
||||||
.on_screen_y2
|
.on_screen_y2
|
||||||
INY
|
INY
|
||||||
LDA #$2E : STA ($90), Y
|
LDA #$2E : STA ($90), Y ; Set the Char
|
||||||
INY
|
INY
|
||||||
LDA #$39 : STA ($90), Y
|
LDA #$39 : STA ($90), Y ; Set the Properties
|
||||||
|
|
||||||
PHY
|
PHY
|
||||||
TYA : LSR #2 : TAY
|
TYA : LSR #2 : TAY
|
||||||
@@ -775,6 +745,8 @@ Sprite_KydreeokHead_DrawNeck:
|
|||||||
Sprite_KydreeokHead_Draw:
|
Sprite_KydreeokHead_Draw:
|
||||||
{
|
{
|
||||||
JSL Sprite_PrepOamCoord
|
JSL Sprite_PrepOamCoord
|
||||||
|
; LDA.b #$03
|
||||||
|
; JSL OAM_AllocateFromRegionC
|
||||||
JSL Sprite_OAM_AllocateDeferToPlayer
|
JSL Sprite_OAM_AllocateDeferToPlayer
|
||||||
|
|
||||||
LDA $0DC0, X : CLC : ADC $0D90, X : TAY;Animation Frame
|
LDA $0DC0, X : CLC : ADC $0D90, X : TAY;Animation Frame
|
||||||
|
|||||||
Reference in New Issue
Block a user