File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -24,7 +24,7 @@ bool ArcSetAimFlag(bool hold2) {
2424}
2525
2626/* *
27- * @brief ArcSetMaxArrowCount trampoline
27+ * @brief ArcSetAimFlag trampoline
2828 */
2929TRAMPOLINE_DEF (0x80548828 , 0x8054882c ) {
3030 // clang-format off
@@ -40,6 +40,74 @@ TRAMPOLINE_DEF(0x80548828, 0x8054882c) {
4040 // clang-format on
4141}
4242
43+ /* *
44+ * @brief Sets the secret fruit flag in Archery
45+ */
46+ bool ArcSetFruitFlag (int stageID) {
47+
48+ int difficulty;
49+
50+ switch (stageID) {
51+ case 11 :
52+ case 24 :
53+ case 12 :
54+ case 3 :
55+ difficulty = 0 ;
56+ break ;
57+
58+ case 31 :
59+ case 9 :
60+ case 32 :
61+ case 13 :
62+ difficulty = 1 ;
63+ break ;
64+
65+ case 17 :
66+ case 22 :
67+ case 35 :
68+ case 4 :
69+ difficulty = 2 ;
70+ break ;
71+
72+ default :
73+ K_LOG_EX (" stageID: %d\n " , stageID);
74+ K_LOG_EX (" difficulty: %d\n " , difficulty);
75+ K_ASSERT (false );
76+ }
77+
78+ return ItemMgr::GetInstance ().IsArcFruitUnlock (difficulty) == 1 ;
79+ }
80+
81+ /* *
82+ * @brief ArcSetFruitFlag trampoline
83+ */
84+
85+
86+ TRAMPOLINE_DEF (0x8057cbe0 , 0x8057cbe4 ) {
87+ // clang-format off
88+ TRAMPOLINE_BEGIN
89+
90+ lis r12, 0x8057
91+ ori r12, r12, 0xcb9c
92+
93+ mr r14, r3
94+ mr r3, r4
95+ bl ArcSetFruitFlag
96+ cmpwi r3, 1
97+ beq Unlocked
98+ mr r3, r14
99+ mtctr r12
100+ TRAMPOLINE_END
101+ bnectr
102+
103+ Unlocked:
104+ nop
105+
106+ TRAMPOLINE_END
107+ blr
108+ // clang-format on
109+ }
110+
43111/* *
44112 * @brief Sets the max arrow count in Archery
45113 */
You can’t perform that action at this time.
0 commit comments