@@ -103,7 +103,7 @@ public partial class Scribe : Node
103103 ) ,
104104 new RelicTemplate (
105105 "Good Vibes" ,
106- "Good vibes, heals the player whenever they place a note." , //TODO: Description can include the relics values?
106+ "Heals the player whenever they place a note." ,
107107 GD . Load < Texture2D > ( "res://Classes/Relics/assets/relic_GoodVibes.png" ) ,
108108 new RelicEffect [ ]
109109 {
@@ -117,14 +117,46 @@ public partial class Scribe : Node
117117 ) ,
118118 }
119119 ) ,
120+ new RelicTemplate (
121+ "Auroboros" ,
122+ "Bigger number, better person. Increases combo multiplier every riff." ,
123+ GD . Load < Texture2D > ( "res://Classes/Relics/assets/Auroboros.png" ) ,
124+ new RelicEffect [ ]
125+ {
126+ new RelicEffect (
127+ BattleEffectTrigger . OnLoop ,
128+ 1 ,
129+ ( director , val ) =>
130+ {
131+ director . NotePlacementBar . IncreaseBonusMult ( val ) ;
132+ }
133+ ) ,
134+ }
135+ ) ,
136+ new RelicTemplate (
137+ "Colorboros" ,
138+ "Taste the rainbow. Charges the freestyle bar every riff." ,
139+ GD . Load < Texture2D > ( "res://Classes/Relics/assets/Colorboros.png" ) ,
140+ new RelicEffect [ ]
141+ {
142+ new RelicEffect (
143+ BattleEffectTrigger . OnLoop ,
144+ 20 ,
145+ ( director , val ) =>
146+ {
147+ director . NotePlacementBar . IncreaseCharge ( val ) ;
148+ }
149+ ) ,
150+ }
151+ ) ,
120152 } ;
121153
122154 //TODO: Item pool(s)
123155
124156 public static RelicTemplate [ ] GetRandomRelics ( RelicTemplate [ ] ownedRelics , int count )
125157 {
126158 var availableRelics = Scribe
127- . RelicDictionary . Where ( r => ! ownedRelics . Any ( o => o . Name = = r . Name ) )
159+ . RelicDictionary . Where ( r => ownedRelics . All ( o => o . Name ! = r . Name ) )
128160 . ToArray ( ) ;
129161
130162 availableRelics = availableRelics
@@ -139,4 +171,19 @@ public static RelicTemplate[] GetRandomRelics(RelicTemplate[] ownedRelics, int c
139171 }
140172 return availableRelics ;
141173 }
174+
175+ public static Note [ ] GetRandomRewardNotes ( int count )
176+ {
177+ var availableNotes = Scribe
178+ . NoteDictionary . Where ( r => r . Name . Contains ( "Player" ) ) //TODO: Classifications/pools
179+ . ToArray ( ) ;
180+
181+ availableNotes = availableNotes
182+ . OrderBy ( _ => StageProducer . GlobalRng . Randi ( ) )
183+ . Take ( count )
184+ . Select ( r => r . Clone ( ) )
185+ . ToArray ( ) ;
186+
187+ return availableNotes ;
188+ }
142189}
0 commit comments