make deku scrub enemy harmless, pea shot harmful
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
!SPRID = $14 ; The sprite ID you are overwriting (HEX)
|
!SPRID = $14 ; The sprite ID you are overwriting (HEX)
|
||||||
!NbrTiles = 03 ; 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 = 01 ; 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 = 08 ; Number of Health the sprite have
|
!Health = 08 ; Number of Health the sprite have
|
||||||
!Damage = 04 ; (08 is a whole heart), 04 is half heart
|
!Damage = 04 ; (08 is a whole heart), 04 is half heart
|
||||||
@@ -33,17 +33,17 @@
|
|||||||
|
|
||||||
Sprite_DekuScrubEnemy_Long:
|
Sprite_DekuScrubEnemy_Long:
|
||||||
{
|
{
|
||||||
PHB : PHK : PLB
|
PHB : PHK : PLB
|
||||||
|
|
||||||
JSR Sprite_DekuScrubEnemy_Draw ; Call the draw code
|
JSR Sprite_DekuScrubEnemy_Draw ; Call the draw code
|
||||||
JSL Sprite_CheckActive ; Check if game is not paused
|
JSL Sprite_CheckActive ; Check if game is not paused
|
||||||
BCC .SpriteIsNotActive ; Skip Main code is sprite is innactive
|
BCC .SpriteIsNotActive ; Skip Main code is sprite is innactive
|
||||||
|
|
||||||
JSR Sprite_DekuScrubEnemy_Main ; Call the main sprite code
|
JSR Sprite_DekuScrubEnemy_Main ; Call the main sprite code
|
||||||
|
|
||||||
.SpriteIsNotActive
|
.SpriteIsNotActive
|
||||||
PLB ; Get back the databank we stored previously
|
PLB ; Get back the databank we stored previously
|
||||||
RTL ; Go back to original code
|
RTL ; Go back to original code
|
||||||
}
|
}
|
||||||
|
|
||||||
; =========================================================
|
; =========================================================
|
||||||
@@ -258,70 +258,70 @@ DekuScrub_GiveRandomPrize:
|
|||||||
|
|
||||||
CheckForPeaShotRedirect:
|
CheckForPeaShotRedirect:
|
||||||
{
|
{
|
||||||
LDA.w SprX, X : STA.b $00
|
LDA.w SprX, X : STA.b $00
|
||||||
LDA.w SprXH, X : STA.b $08
|
LDA.w SprXH, X : STA.b $08
|
||||||
|
|
||||||
LDA.b #$04 : STA.b $02
|
LDA.b #$04 : STA.b $02
|
||||||
STZ $03
|
STZ $03
|
||||||
|
|
||||||
LDA.w SprY, X : STA.b $01
|
LDA.w SprY, X : STA.b $01
|
||||||
LDA.w SprYH, X : STA.b $09
|
LDA.w SprYH, X : STA.b $09
|
||||||
|
|
||||||
PHX
|
PHX
|
||||||
LDA.w Offspring1_Id : TAX
|
LDA.w Offspring1_Id : TAX
|
||||||
JSL Sprite_SetupHitBox
|
JSL Sprite_SetupHitBox
|
||||||
PLX
|
PLX
|
||||||
|
|
||||||
JSL CheckIfHitBoxesOverlap : BCC .no_dano
|
JSL CheckIfHitBoxesOverlap : BCC .no_dano
|
||||||
%GotoAction(3)
|
%GotoAction(3)
|
||||||
RTS
|
RTS
|
||||||
.no_dano
|
.no_dano
|
||||||
; If the pea shot and deku scrub hitboxes intersect
|
; If the pea shot and deku scrub hitboxes intersect
|
||||||
; We will go to recoil
|
; We will go to recoil
|
||||||
PHX
|
PHX
|
||||||
LDA.w Offspring1_Id : TAX
|
LDA.w Offspring1_Id : TAX
|
||||||
JSL Sprite_SetupHitBox
|
JSL Sprite_SetupHitBox
|
||||||
PLX
|
PLX
|
||||||
JSL CheckIfHitBoxesOverlap : BCC .not_done2
|
JSL CheckIfHitBoxesOverlap : BCC .not_done2
|
||||||
%GotoAction(3)
|
%GotoAction(3)
|
||||||
RTS
|
RTS
|
||||||
.not_done2
|
.not_done2
|
||||||
RTS
|
RTS
|
||||||
}
|
}
|
||||||
|
|
||||||
SpawnPeaShot:
|
SpawnPeaShot:
|
||||||
{
|
{
|
||||||
LDA.b #$14
|
LDA.b #$14
|
||||||
JSL Sprite_SpawnDynamically : BMI .return ;89
|
JSL Sprite_SpawnDynamically : BMI .return ;89
|
||||||
|
|
||||||
LDA.b #$01 : STA $0E30, Y
|
LDA.b #$01 : STA $0E30, Y
|
||||||
LDA.b #$06 : STA $0D80, Y
|
LDA.b #$06 : STA $0D80, Y
|
||||||
LDA.b #$20 : STA.w SprPrize, Y
|
LDA.b #$20 : STA.w SprPrize, Y
|
||||||
LDA.b #$02 : STA.w SprMiscC, Y
|
LDA.b #$02 : STA.w SprMiscC, Y
|
||||||
|
|
||||||
PHX
|
PHX
|
||||||
|
|
||||||
; Spawn Location
|
; Spawn Location
|
||||||
REP #$20
|
REP #$20
|
||||||
LDA $0FD8
|
LDA $0FD8
|
||||||
SEP #$20
|
SEP #$20
|
||||||
STA.w SprX, Y : XBA : STA.w SprXH, Y
|
STA.w SprX, Y : XBA : STA.w SprXH, Y
|
||||||
|
|
||||||
REP #$20
|
REP #$20
|
||||||
LDA $0FDA : CLC : ADC.w #$000C
|
LDA $0FDA : CLC : ADC.w #$000C
|
||||||
SEP #$20
|
SEP #$20
|
||||||
STA.w SprY, Y : XBA : STA.w SprYH, Y
|
STA.w SprY, Y : XBA : STA.w SprYH, Y
|
||||||
|
|
||||||
TYX
|
TYX
|
||||||
|
|
||||||
STZ $0D70, X
|
STZ $0D70, X
|
||||||
|
|
||||||
LDA #$10 : STA.w SprYSpeed, X
|
LDA #$10 : STA.w SprYSpeed, X
|
||||||
STA.w SprYRound, X
|
STA.w SprYRound, X
|
||||||
|
|
||||||
STX.w Offspring1_Id
|
STX.w Offspring1_Id
|
||||||
|
|
||||||
PLX
|
PLX
|
||||||
|
|
||||||
.return
|
.return
|
||||||
RTS
|
RTS
|
||||||
|
|||||||
Reference in New Issue
Block a user