Turn in Triforce pieces support
This commit is contained in:
63
elder.asm
Normal file
63
elder.asm
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
NewElderCode:
|
||||||
|
{
|
||||||
|
LDA $8A : CMP #$1B : BEQ .newCodeContinue
|
||||||
|
;Restore Jump we can keep the RTL so JML
|
||||||
|
JML $05F0CD
|
||||||
|
.newCodeContinue
|
||||||
|
PHB : PHK : PLB
|
||||||
|
LDA.b #$07 : STA $0F50, X ;Palette
|
||||||
|
JSR Elder_Draw
|
||||||
|
JSL Sprite_PlayerCantPassThrough
|
||||||
|
JSR Elder_Code
|
||||||
|
|
||||||
|
PLB
|
||||||
|
RTL
|
||||||
|
|
||||||
|
|
||||||
|
Elder_Draw:
|
||||||
|
{
|
||||||
|
|
||||||
|
LDA.b #$02 : STA $06 : STZ $07 ;Number of Tiles
|
||||||
|
|
||||||
|
LDA $0DC0, X : ASL #04
|
||||||
|
|
||||||
|
ADC.b #.animation_states : STA $08
|
||||||
|
LDA.b #.animation_states>>8 : ADC.b #$00 : STA $09
|
||||||
|
|
||||||
|
JSL Sprite_DrawMultiple_player_deferred
|
||||||
|
JSL Sprite_DrawShadowLong
|
||||||
|
|
||||||
|
RTS
|
||||||
|
|
||||||
|
.animation_states
|
||||||
|
;Frame0
|
||||||
|
dw 0, -9 : db $C6, $00, $00, $02
|
||||||
|
dw 0, 0 : db $C8, $00, $00, $02
|
||||||
|
;Frame1
|
||||||
|
dw 0, -8 : db $C6, $00, $00, $02
|
||||||
|
dw 0, 0 : db $CA, $40, $00, $02
|
||||||
|
}
|
||||||
|
|
||||||
|
Elder_Code:
|
||||||
|
{
|
||||||
|
LDA GoalItemRequirement : BEQ .despawn
|
||||||
|
LDA TurnInGoalItems : BNE +
|
||||||
|
.despawn
|
||||||
|
STZ $0DD0, X ; despawn self
|
||||||
|
RTS
|
||||||
|
+
|
||||||
|
|
||||||
|
LDA.b #$96
|
||||||
|
LDY.b #$01
|
||||||
|
|
||||||
|
JSL Sprite_ShowSolicitedMessageIfPlayerFacing : BCC .dont_show
|
||||||
|
LDA !GOAL_COUNTER
|
||||||
|
CMP GoalItemRequirement : !BLT +
|
||||||
|
JSL.l ActivateGoal
|
||||||
|
+
|
||||||
|
.dont_show
|
||||||
|
|
||||||
|
.done
|
||||||
|
LDA $1A : LSR #5 : AND.b #$01 : STA $0DC0, X
|
||||||
|
RTS
|
||||||
|
}
|
||||||
85
hooks.asm
85
hooks.asm
@@ -2349,3 +2349,88 @@ Dungeon_OpenKeyedObject_bigChest:
|
|||||||
org $01EC38 ; <- 0EC38 - bank01.asm : 13809 (.smallChest)
|
org $01EC38 ; <- 0EC38 - bank01.asm : 13809 (.smallChest)
|
||||||
Dungeon_OpenKeyedObject_smallChest:
|
Dungeon_OpenKeyedObject_smallChest:
|
||||||
;================================================================================
|
;================================================================================
|
||||||
|
|
||||||
|
;================================================================================
|
||||||
|
; Murahdahla (The brother who re-assembles the triforce pieces)
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
org $06C092 ; bank06.asm:1864 (JSL Sprite_ElderLong) [22 CD F0 05]
|
||||||
|
JSL NewElderCode
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
; Add him to Castle Map post-rain, and post aga1
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
org $09D0AC
|
||||||
|
db #$18, #$0F, #$43, #$FF;remove heart from tree adjancent map [LW1]
|
||||||
|
db #$12, #$19, #$16 ;add sahasrala in castle Y, X, Sprite ID
|
||||||
|
org $09C937
|
||||||
|
db #$B0, #$D0 ;change [LW1] map 01C pointers
|
||||||
|
org $09D421
|
||||||
|
db #$18, #$0F, #$45, #$FF;remove heart from tree adjancent map [LW2]
|
||||||
|
db #$12, #$19, #$16 ;add sahasrala in castle Y, X, Sprite ID
|
||||||
|
org $09CA57
|
||||||
|
db #$25, #$D4 ;change [LW2] map 01C pointers
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
; Expanded trinexx sheet gfx.
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
org $00CFC0+178 : db #$33
|
||||||
|
org $00D09F+178 : db #$90
|
||||||
|
org $00D17E+178 : db #$00
|
||||||
|
; Use above sheet in Hyrule castle courtyard after rain state.
|
||||||
|
org $00DB9E ; Hyrule Castle GFX Sprite Sheet 4 on [LW1]
|
||||||
|
db #$3F
|
||||||
|
org $00DC0A ; Hyrule Castle GFX Sprite Sheet 4 on [LW2]
|
||||||
|
db #$3F
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
; Updated evil barrier animation table
|
||||||
|
;--------------------------------------------------------------------------------
|
||||||
|
org $1DF0E1;Evil Barrier new draw code
|
||||||
|
|
||||||
|
dw 0, 0 : db $CC, $00, $00, $02
|
||||||
|
dw -29, 3 : db $EA, $00, $00, $00
|
||||||
|
dw -29, 11 : db $FA, $00, $00, $00
|
||||||
|
dw 37, 3 : db $EA, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FA, $40, $00, $00
|
||||||
|
dw -24, -2 : db $CE, $00, $00, $02
|
||||||
|
dw -8, -2 : db $CE, $00, $00, $02
|
||||||
|
dw 8, -2 : db $CE, $40, $00, $02
|
||||||
|
dw 24, -2 : db $CE, $40, $00, $02
|
||||||
|
|
||||||
|
dw 0, 0 : db $EC, $00, $00, $02
|
||||||
|
dw -29, 3 : db $EB, $00, $00, $00
|
||||||
|
dw -29, 11 : db $FB, $00, $00, $00
|
||||||
|
dw 37, 3 : db $EB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
dw 0, 0 : db $EC, $00, $00, $02
|
||||||
|
dw 0, 0 : db $EC, $00, $00, $02
|
||||||
|
dw 0, 0 : db $EC, $00, $00, $02
|
||||||
|
dw 0, 0 : db $EC, $00, $00, $02
|
||||||
|
|
||||||
|
dw 0, 0 : db $EC, $00, $00, $02
|
||||||
|
dw -29, 3 : db $EB, $00, $00, $00
|
||||||
|
dw -29, 11 : db $FB, $00, $00, $00
|
||||||
|
dw 37, 3 : db $EB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
dw -24, -2 : db $CE, $80, $00, $02
|
||||||
|
dw -8, -2 : db $CE, $80, $00, $02
|
||||||
|
dw 8, -2 : db $CE, $C0, $00, $02
|
||||||
|
dw 24, -2 : db $CE, $C0, $00, $02
|
||||||
|
|
||||||
|
dw 0, 0 : db $CC, $00, $00, $02
|
||||||
|
dw -29, 3 : db $EA, $00, $00, $00
|
||||||
|
dw -29, 11 : db $FA, $00, $00, $00
|
||||||
|
dw 37, 3 : db $EA, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FA, $40, $00, $00
|
||||||
|
dw 0, 0 : db $CC, $00, $00, $02
|
||||||
|
dw 0, 0 : db $CC, $00, $00, $02
|
||||||
|
dw 0, 0 : db $CC, $00, $00, $02
|
||||||
|
dw 0, 0 : db $CC, $00, $00, $02
|
||||||
|
|
||||||
|
dw -29, 3 : db $EB, $00, $00, $00
|
||||||
|
dw -29, 11 : db $FB, $00, $00, $00
|
||||||
|
dw 37, 3 : db $EB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
dw 37, 11 : db $FB, $40, $00, $00
|
||||||
|
;================================================================================
|
||||||
11
newitems.asm
11
newitems.asm
@@ -31,6 +31,7 @@
|
|||||||
; #$65 - Progressive Bow
|
; #$65 - Progressive Bow
|
||||||
; #$6A - Goal Item (Single/Triforce)
|
; #$6A - Goal Item (Single/Triforce)
|
||||||
; #$6B - Goal Item (Multi/Power Star)
|
; #$6B - Goal Item (Multi/Power Star)
|
||||||
|
; #$6C - Goal Item (Multi/Triforce Piece)
|
||||||
; #$6D- Server Request
|
; #$6D- Server Request
|
||||||
; #$6E - Server Request (Dungeon Drop)
|
; #$6E - Server Request (Dungeon Drop)
|
||||||
; #$70 - Maps
|
; #$70 - Maps
|
||||||
@@ -162,7 +163,10 @@ ProcessEventItems:
|
|||||||
|
|
||||||
LDA GoalItemRequirement : BEQ ++
|
LDA GoalItemRequirement : BEQ ++
|
||||||
LDA !GOAL_COUNTER : INC : STA !GOAL_COUNTER
|
LDA !GOAL_COUNTER : INC : STA !GOAL_COUNTER
|
||||||
CMP GoalItemRequirement : !BLT ++ : JSL.l ActivateGoal : ++
|
CMP GoalItemRequirement : !BLT ++
|
||||||
|
LDA TurnInGoalItems : BNE ++
|
||||||
|
JSL.l ActivateGoal
|
||||||
|
++
|
||||||
|
|
||||||
LDX.b #$01 : BRA .done
|
LDX.b #$01 : BRA .done
|
||||||
+
|
+
|
||||||
@@ -309,7 +313,10 @@ AddReceivedItemExpandedGetItem:
|
|||||||
.multi_collect
|
.multi_collect
|
||||||
LDA GoalItemRequirement : BEQ ++
|
LDA GoalItemRequirement : BEQ ++
|
||||||
LDA !GOAL_COUNTER : INC : STA !GOAL_COUNTER
|
LDA !GOAL_COUNTER : INC : STA !GOAL_COUNTER
|
||||||
CMP GoalItemRequirement : !BLT ++ : JSL.l ActivateGoal : ++
|
CMP GoalItemRequirement : !BLT ++ :
|
||||||
|
LDA TurnInGoalItems : BNE ++
|
||||||
|
JSL.l ActivateGoal
|
||||||
|
++
|
||||||
BRL .done
|
BRL .done
|
||||||
+ CMP.b #$6D : BNE + ; Server Request
|
+ CMP.b #$6D : BNE + ; Server Request
|
||||||
JSL ItemGetServiceRequest
|
JSL ItemGetServiceRequest
|
||||||
|
|||||||
BIN
sheet178.gfx
Normal file
BIN
sheet178.gfx
Normal file
Binary file not shown.
@@ -911,8 +911,12 @@ db #$00 ; #$00 = Locked (Default) - #$01 = Restart
|
|||||||
org $308193 ; PC 0x180193
|
org $308193 ; PC 0x180193
|
||||||
ServerRequestMode:
|
ServerRequestMode:
|
||||||
db #$00 ; #$00 = Off (Default) - #$01 = Synchronous - #$02 = Asychronous
|
db #$00 ; #$00 = Off (Default) - #$01 = Synchronous - #$02 = Asychronous
|
||||||
|
;---------------------------------------------------------------------------------
|
||||||
|
org $308194 ; PC 0x180194
|
||||||
|
TurnInGoalItems:
|
||||||
|
db #$01 ; #$00 = Instant win if last goal item collected. $01 must turn in goal items
|
||||||
;--------------------------------------------------------------------------------
|
;--------------------------------------------------------------------------------
|
||||||
; 0x180194 - 0x1801FF (unused)
|
; 0x180195 - 0x1801FF (unused)
|
||||||
;================================================================================
|
;================================================================================
|
||||||
org $308200 ; PC 0x180200 - 0x18020F
|
org $308200 ; PC 0x180200 - 0x18020F
|
||||||
RedClockAmount:
|
RedClockAmount:
|
||||||
|
|||||||
Reference in New Issue
Block a user