Skip to content

Commit dcf7442

Browse files
authored
Merge branch 'Sprint-3' into Midi-Readin
2 parents 9f0068f + ab4146a commit dcf7442

31 files changed

+471
-82
lines changed

Classes/Notes/Note.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,16 @@
66
* @class Note
77
* @brief Data structure class for holding data and methods for a battle time note. WIP
88
*/
9-
public partial class Note : Resource
9+
public partial class Note : Resource, IDisplayable
1010
{
1111
public PuppetTemplate Owner;
12-
public string Name;
12+
public string Name { get; set; }
1313
private int _baseVal;
1414
public float CostModifier { get; private set; }
1515
private Action<BattleDirector, Note, Timing> NoteEffect; //TODO: Where/How to deal with timing.
1616

17-
public string Tooltip;
18-
public Texture2D Texture;
17+
public string Tooltip { get; set; }
18+
public Texture2D Texture { get; set; }
1919

2020
public Note(
2121
string name,

Classes/Relics/RelicTemplate.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
using FunkEngine;
33
using Godot;
44

5-
public partial class RelicTemplate : Resource
5+
public partial class RelicTemplate : Resource, IDisplayable
66
{
77
public RelicEffect[] Effects;
8-
public string Name;
8+
public string Name { get; set; }
99

10-
public Texture2D Texture;
11-
public string Tooltip;
10+
public Texture2D Texture { get; set; }
11+
public string Tooltip { get; set; }
1212

1313
public RelicTemplate(
1414
string name = "",
772 Bytes
Loading
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
[remap]
2+
3+
importer="texture"
4+
type="CompressedTexture2D"
5+
uid="uid://cqlrv1vra4mbn"
6+
path="res://.godot/imported/Auroboros.png-27bfe2114f3955a0f6ef5ceb4e65adbf.ctex"
7+
metadata={
8+
"vram_texture": false
9+
}
10+
11+
[deps]
12+
13+
source_file="res://Classes/Relics/assets/Auroboros.png"
14+
dest_files=["res://.godot/imported/Auroboros.png-27bfe2114f3955a0f6ef5ceb4e65adbf.ctex"]
15+
16+
[params]
17+
18+
compress/mode=0
19+
compress/high_quality=false
20+
compress/lossy_quality=0.7
21+
compress/hdr_compression=1
22+
compress/normal_map=0
23+
compress/channel_pack=0
24+
mipmaps/generate=false
25+
mipmaps/limit=-1
26+
roughness/mode=0
27+
roughness/src_normal=""
28+
process/fix_alpha_border=true
29+
process/premult_alpha=false
30+
process/normal_map_invert_y=false
31+
process/hdr_as_srgb=false
32+
process/hdr_clamp_exposure=false
33+
process/size_limit=0
34+
detect_3d/compress_to=1
891 Bytes
Loading
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
[remap]
2+
3+
importer="texture"
4+
type="CompressedTexture2D"
5+
uid="uid://ccd6pskxcwpxg"
6+
path="res://.godot/imported/Colorboros.png-56197d792c620150c773fb4ecce6289c.ctex"
7+
metadata={
8+
"vram_texture": false
9+
}
10+
11+
[deps]
12+
13+
source_file="res://Classes/Relics/assets/Colorboros.png"
14+
dest_files=["res://.godot/imported/Colorboros.png-56197d792c620150c773fb4ecce6289c.ctex"]
15+
16+
[params]
17+
18+
compress/mode=0
19+
compress/high_quality=false
20+
compress/lossy_quality=0.7
21+
compress/hdr_compression=1
22+
compress/normal_map=0
23+
compress/channel_pack=0
24+
mipmaps/generate=false
25+
mipmaps/limit=-1
26+
roughness/mode=0
27+
roughness/src_normal=""
28+
process/fix_alpha_border=true
29+
process/premult_alpha=false
30+
process/normal_map_invert_y=false
31+
process/hdr_as_srgb=false
32+
process/hdr_clamp_exposure=false
33+
process/size_limit=0
34+
detect_3d/compress_to=1

Globals/FunkEngineNameSpace.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,7 @@ public enum BattleEffectTrigger
5151
NoteHit,
5252
SelfNoteHit,
5353
OnPickup,
54+
OnLoop,
5455
}
5556

5657
public enum Stages
@@ -192,3 +193,10 @@ public interface IBattleEvent
192193
void OnTrigger(BattleDirector BD);
193194
BattleEffectTrigger GetTrigger();
194195
}
196+
197+
public interface IDisplayable
198+
{
199+
string Name { get; set; }
200+
string Tooltip { get; set; }
201+
Texture2D Texture { get; set; }
202+
}

Globals/Scribe.cs

Lines changed: 69 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ public partial class Scribe : Node
104104
),
105105
new RelicTemplate(
106106
"Good Vibes",
107-
"Good vibes, heals the player whenever they place a note.", //TODO: Description can include the relics values?
107+
"Heals the player whenever they place a note.",
108108
GD.Load<Texture2D>("res://Classes/Relics/assets/relic_GoodVibes.png"),
109109
new RelicEffect[]
110110
{
@@ -118,29 +118,40 @@ public partial class Scribe : Node
118118
),
119119
}
120120
),
121+
new RelicTemplate(
122+
"Auroboros",
123+
"Bigger number, better person. Increases combo multiplier every riff.",
124+
GD.Load<Texture2D>("res://Classes/Relics/assets/Auroboros.png"),
125+
new RelicEffect[]
126+
{
127+
new RelicEffect(
128+
BattleEffectTrigger.OnLoop,
129+
1,
130+
(director, val) =>
131+
{
132+
director.NotePlacementBar.IncreaseBonusMult(val);
133+
}
134+
),
135+
}
136+
),
137+
new RelicTemplate(
138+
"Colorboros",
139+
"Taste the rainbow. Charges the freestyle bar every riff.",
140+
GD.Load<Texture2D>("res://Classes/Relics/assets/Colorboros.png"),
141+
new RelicEffect[]
142+
{
143+
new RelicEffect(
144+
BattleEffectTrigger.OnLoop,
145+
20,
146+
(director, val) =>
147+
{
148+
director.NotePlacementBar.IncreaseCharge(val);
149+
}
150+
),
151+
}
152+
),
121153
};
122154

123-
//TODO: Item pool(s)
124-
125-
public static RelicTemplate[] GetRandomRelics(RelicTemplate[] ownedRelics, int count)
126-
{
127-
var availableRelics = Scribe
128-
.RelicDictionary.Where(r => !ownedRelics.Any(o => o.Name == r.Name))
129-
.ToArray();
130-
131-
availableRelics = availableRelics
132-
.OrderBy(_ => StageProducer.GlobalRng.Randi())
133-
.Take(count)
134-
.Select(r => r.Clone())
135-
.ToArray();
136-
137-
for (int i = availableRelics.Length; i < count; i++)
138-
{
139-
availableRelics = availableRelics.Append(RelicDictionary[0].Clone()).ToArray();
140-
}
141-
return availableRelics;
142-
}
143-
144155
public static readonly SongTemplate[] SongDictionary = new[]
145156
{
146157
new SongTemplate(
@@ -179,4 +190,40 @@ public static RelicTemplate[] GetRandomRelics(RelicTemplate[] ownedRelics, int c
179190
"res://scenes/Puppets/Enemies/TheGWS/GWS.tscn"
180191
),
181192
};
193+
194+
//TODO: Item pool(s)
195+
196+
public static RelicTemplate[] GetRandomRelics(RelicTemplate[] ownedRelics, int count)
197+
{
198+
var availableRelics = Scribe
199+
.RelicDictionary.Where(r => ownedRelics.All(o => o.Name != r.Name))
200+
.ToArray();
201+
202+
availableRelics = availableRelics
203+
.OrderBy(_ => StageProducer.GlobalRng.Randi())
204+
.Take(count)
205+
.Select(r => r.Clone())
206+
.ToArray();
207+
208+
for (int i = availableRelics.Length; i < count; i++)
209+
{
210+
availableRelics = availableRelics.Append(RelicDictionary[0].Clone()).ToArray();
211+
}
212+
return availableRelics;
213+
}
214+
215+
public static Note[] GetRandomRewardNotes(int count)
216+
{
217+
var availableNotes = Scribe
218+
.NoteDictionary.Where(r => r.Name.Contains("Player")) //TODO: Classifications/pools
219+
.ToArray();
220+
221+
availableNotes = availableNotes
222+
.OrderBy(_ => StageProducer.GlobalRng.Randi())
223+
.Take(count)
224+
.Select(r => r.Clone())
225+
.ToArray();
226+
227+
return availableNotes;
228+
}
182229
}

README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,3 @@ Current team members include:
1616
#### Attributions:
1717
First Song: <a href="https://freesound.org/people/Magntron/sounds/335571/" title="gameMusic">gameMusic by Magntron - freesound.org</a>
1818
Input buttons by <a href="https://thoseawesomeguys.com/prompts/" title="inputkeys">Nicolae (Xelu) Berbece</a>
19-
20-

project.godot

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ project/assembly_name="Funk Engine"
3434

3535
[game]
3636

37-
input_scheme="QWERT"
37+
input_scheme="ARROWS"
3838

3939
[input]
4040

0 commit comments

Comments
 (0)