update darknut ai, damage, movement, collision
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
; =========================================================
|
; =========================================================
|
||||||
|
|
||||||
!SPRID = $1D ; The sprite ID you are overwriting (HEX)
|
!SPRID = $1D ; The sprite ID you are overwriting (HEX)
|
||||||
!NbrTiles = 00 ; Number of tiles used in a frame
|
!NbrTiles = 03 ; Number of tiles used in a frame
|
||||||
!Harmless = 00 ; 00 = Sprite is Harmful, 01 = Sprite is Harmless
|
!Harmless = 00 ; 00 = Sprite is Harmful, 01 = Sprite is Harmless
|
||||||
!HVelocity = 00 ; Is your sprite going super fast? put 01 if it is
|
!HVelocity = 00 ; Is your sprite going super fast? put 01 if it is
|
||||||
!Health = 40 ; Number of Health the sprite have
|
!Health = 40 ; Number of Health the sprite have
|
||||||
@@ -55,6 +55,9 @@ Sprite_Darknut_Prep:
|
|||||||
{
|
{
|
||||||
PHB : PHK : PLB
|
PHB : PHK : PLB
|
||||||
|
|
||||||
|
LDA.b #$80 : STA.w SprDefl, X
|
||||||
|
LDA.b #$60 : STA.w SprHealth, X
|
||||||
|
LDA.b #%00010000 : STA.w SprTileDie, X
|
||||||
|
|
||||||
PLB
|
PLB
|
||||||
RTL
|
RTL
|
||||||
@@ -62,49 +65,65 @@ Sprite_Darknut_Prep:
|
|||||||
|
|
||||||
; =========================================================
|
; =========================================================
|
||||||
|
|
||||||
DarknutSpeed = $04
|
DarknutSpeed = 04
|
||||||
|
|
||||||
Sprite_Darknut_Main:
|
Sprite_Darknut_Main:
|
||||||
{
|
{
|
||||||
JSL Guard_ParrySwordAttacks
|
JSL Guard_ParrySwordAttacks
|
||||||
|
JSL Sprite_Move
|
||||||
|
JSL Sprite_BounceFromTileCollision
|
||||||
|
JSL Sprite_PlayerCantPassThrough
|
||||||
|
JSL Sprite_DamageFlash_Long
|
||||||
|
|
||||||
|
LDA.w SprTimerA, X : BNE +
|
||||||
|
LDA.b #$04
|
||||||
|
JSL Sprite_ApplySpeedTowardsPlayer
|
||||||
|
JSL GetRandomInt : AND.b #$03 : STA.w SprAction, X
|
||||||
|
%SetTimerA($A0)
|
||||||
|
+
|
||||||
|
|
||||||
|
JSR Goriya_HandleTileCollision
|
||||||
|
|
||||||
LDA.w SprAction, X
|
LDA.w SprAction, X
|
||||||
JSL UseImplicitRegIndexedLocalJumpTable
|
JSL UseImplicitRegIndexedLocalJumpTable
|
||||||
|
|
||||||
dw MoveDown
|
|
||||||
dw MoveUp
|
dw MoveUp
|
||||||
|
dw MoveDown
|
||||||
dw MoveLeft
|
dw MoveLeft
|
||||||
dw MoveRight
|
dw MoveRight
|
||||||
|
|
||||||
MoveDown:
|
MoveUp:
|
||||||
{
|
{
|
||||||
%PlayAnimation(0,1,10)
|
%PlayAnimation(0,1,10)
|
||||||
LDA #DarknutSpeed : STA.w SprYSpeed, X
|
LDA.b #-DarknutSpeed : STA.w SprYSpeed, X
|
||||||
JSL Sprite_Move
|
STZ.w SprXSpeed, X
|
||||||
RTS
|
RTS
|
||||||
}
|
}
|
||||||
|
|
||||||
MoveUp:
|
MoveDown:
|
||||||
{
|
{
|
||||||
|
%StartOnFrame(2)
|
||||||
%PlayAnimation(2,3,10)
|
%PlayAnimation(2,3,10)
|
||||||
LDA #-DarknutSpeed : STA.w SprYSpeed, X
|
LDA.b #DarknutSpeed : STA.w SprYSpeed, X
|
||||||
JSL Sprite_Move
|
STZ.w SprXSpeed, X
|
||||||
RTS
|
RTS
|
||||||
}
|
}
|
||||||
|
|
||||||
MoveLeft:
|
MoveLeft:
|
||||||
{
|
{
|
||||||
|
%StartOnFrame(4)
|
||||||
%PlayAnimation(4,5,10)
|
%PlayAnimation(4,5,10)
|
||||||
LDA #-DarknutSpeed : STA.w SprXSpeed, X
|
LDA.b #-DarknutSpeed : STA.w SprXSpeed, X
|
||||||
JSL Sprite_Move
|
STZ.w SprYSpeed, X
|
||||||
RTS
|
RTS
|
||||||
}
|
}
|
||||||
|
|
||||||
MoveRight:
|
MoveRight:
|
||||||
{
|
{
|
||||||
|
%StartOnFrame(6)
|
||||||
%PlayAnimation(6,7,10)
|
%PlayAnimation(6,7,10)
|
||||||
LDA #DarknutSpeed : STA.w SprXSpeed, X
|
LDA.b #DarknutSpeed : STA.w SprXSpeed, X
|
||||||
JSL Sprite_Move
|
STZ.w SprYSpeed, X
|
||||||
RTS
|
RTS
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -119,6 +138,7 @@ Sprite_Darknut_Draw:
|
|||||||
|
|
||||||
LDA $0DC0, X : CLC : ADC $0D90, X : TAY;Animation Frame
|
LDA $0DC0, X : CLC : ADC $0D90, X : TAY;Animation Frame
|
||||||
LDA .start_index, Y : STA $06
|
LDA .start_index, Y : STA $06
|
||||||
|
LDA.w SprMiscA, X : STA $08
|
||||||
|
|
||||||
|
|
||||||
PHX
|
PHX
|
||||||
@@ -152,7 +172,7 @@ Sprite_Darknut_Draw:
|
|||||||
INY
|
INY
|
||||||
LDA .chr, X : STA ($90), Y
|
LDA .chr, X : STA ($90), Y
|
||||||
INY
|
INY
|
||||||
LDA .properties, X : STA ($90), Y
|
LDA .properties, X : ORA $08 : STA ($90), Y
|
||||||
|
|
||||||
PHY
|
PHY
|
||||||
|
|
||||||
@@ -170,45 +190,45 @@ Sprite_Darknut_Draw:
|
|||||||
|
|
||||||
|
|
||||||
; =======================================================
|
; =======================================================
|
||||||
|
|
||||||
.start_index
|
.start_index
|
||||||
db $00, $02, $04, $06, $08, $0A, $0C, $0E
|
db $00, $02, $04, $06, $08, $0A, $0C, $0E
|
||||||
.nbr_of_tiles
|
.nbr_of_tiles
|
||||||
db 1, 1, 1, 1, 1, 1, 1, 1
|
db 1, 1, 1, 1, 1, 1, 1, 1
|
||||||
.x_offsets
|
.x_offsets
|
||||||
dw 0, -4
|
dw 0, 0
|
||||||
dw 0, -4
|
dw 0, 0
|
||||||
dw 0, -12
|
dw 0, 0
|
||||||
dw 0, -12
|
dw 0, 0
|
||||||
dw 0, 12
|
dw 0, -12
|
||||||
dw 0, 12
|
dw 0, -12
|
||||||
dw 0, 0
|
dw 0, 12
|
||||||
dw 0, 0
|
dw 0, 12
|
||||||
.y_offsets
|
.y_offsets
|
||||||
dw 0, 8
|
dw -11, 0
|
||||||
dw 0, 8
|
dw -11, 0
|
||||||
dw 0, 8
|
dw 0, 12
|
||||||
dw 0, 8
|
dw 0, 12
|
||||||
dw 0, 8
|
dw 0, 8
|
||||||
dw 0, 8
|
dw 0, 8
|
||||||
dw -12, 0
|
dw 0, 8
|
||||||
dw -12, 0
|
dw 0, 8
|
||||||
.chr
|
.chr
|
||||||
db $E6, $C0
|
db $C0, $EE
|
||||||
db $E6, $C0
|
db $C0, $EE
|
||||||
db $E8, $C2
|
db $E6, $C0
|
||||||
db $E4, $C2
|
db $E6, $C0
|
||||||
db $E8, $C2
|
db $E8, $C2
|
||||||
db $E4, $C2
|
db $E4, $C2
|
||||||
db $C0, $EE
|
db $E8, $C2
|
||||||
db $C0, $EE
|
db $E4, $C2
|
||||||
.properties
|
.properties
|
||||||
db $39, $39
|
db $FD, $3D
|
||||||
db $79, $39
|
db $FD, $7D
|
||||||
db $39, $79
|
db $3D, $3D
|
||||||
db $39, $79
|
db $7D, $3D
|
||||||
db $79, $39
|
db $3D, $7D
|
||||||
db $79, $39
|
db $3D, $7D
|
||||||
db $F9, $39
|
db $7D, $3D
|
||||||
db $F9, $79
|
db $7D, $3D
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user