Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 36 additions & 30 deletions AutoMidiPlayer.Data/App.config
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="AutoMidiPlayer.Data.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="AutoMidiPlayer.Data.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="AutoMidiPlayer.Data.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="AutoMidiPlayer.Data.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</sectionGroup>
</configSections>
<connectionStrings>
<add name="AutoMidiPlayer.Data.Properties.Settings.SqliteConnection"
connectionString="history.db" />
</connectionStrings>
<userSettings>
</connectionStrings>
<userSettings>
<AutoMidiPlayer.Data.Properties.Settings>
<setting name="UpdateCheckFrequency" serializeAs="String">
<value>4</value>
Expand Down Expand Up @@ -95,37 +95,43 @@
<setting name="GenshinLocation" serializeAs="String">
<value>GenshinImpact.exe</value>
</setting>
<setting name="HeartopiaLocation" serializeAs="String">
<value>xdt.exe</value>
<setting name="NTELocation" serializeAs="String">
<value>HTGame.exe</value>
</setting>
<setting name="RobloxLocation" serializeAs="String">
<value>RobloxPlayerBeta.exe</value>
</setting>
<setting name="NTELocation" serializeAs="String">
<value>HTGame.exe</value>
<setting name="SkyLocation" serializeAs="String">
<value>Sky.exe</value>
</setting>
<setting name="HeartopiaLocation" serializeAs="String">
<value>xdt.exe</value>
</setting>
<setting name="BPSRLocation" serializeAs="String">
<value>BPSR.exe</value>
</setting>
<setting name="HPMALocation" serializeAs="String">
<value>Harry Potter Magic Awakened.exe</value>
</setting>
<setting name="ActiveGenshin" serializeAs="String">
<value>True</value>
</setting>
<setting name="ActiveHeartopia" serializeAs="String">
<setting name="ActiveNTE" serializeAs="String">
<value>True</value>
</setting>
<setting name="ActiveRoblox" serializeAs="String">
<value>True</value>
</setting>
<setting name="SkyLocation" serializeAs="String">
<value>Sky.exe</value>
</setting>
<setting name="ActiveSky" serializeAs="String">
<value>True</value>
</setting>
<setting name="HPMALocation" serializeAs="String">
<value>HarryPotterMagicAwakened.exe</value>
<setting name="ActiveHeartopia" serializeAs="String">
<value>True</value>
</setting>
<setting name="ActiveHPMA" serializeAs="String">
<setting name="ActiveBPSR" serializeAs="String">
<value>True</value>
</setting>
<setting name="ActiveNTE" serializeAs="String">
<setting name="ActiveHPMA" serializeAs="String">
<value>True</value>
</setting>
<setting name="SelectedInstrument" serializeAs="String">
Expand Down Expand Up @@ -239,16 +245,16 @@
<setting name="HasReportedMachineInfo" serializeAs="String">
<value>False</value>
</setting>
</AutoMidiPlayer.Data.Properties.Settings>
</userSettings>
<applicationSettings>
</AutoMidiPlayer.Data.Properties.Settings>
</userSettings>
<applicationSettings>
<AutoMidiPlayer.Data.Properties.Settings>
<setting name="LicenseUri" serializeAs="String">
<value>https://github.com/Jed556/AutoMidiPlayer/blob/main/LICENSE.md</value>
</setting>
<setting name="ThirdPartyLicenseUri" serializeAs="String">
<value>https://github.com/Jed556/AutoMidiPlayer/blob/main/THIRD-PARTY-NOTICES.md</value>
</setting>
</AutoMidiPlayer.Data.Properties.Settings>
</applicationSettings>
</configuration>
</AutoMidiPlayer.Data.Properties.Settings>
</applicationSettings>
</configuration>
26 changes: 25 additions & 1 deletion AutoMidiPlayer.Data/Properties/Settings.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions AutoMidiPlayer.Data/Properties/Settings.settings
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,9 @@
<Setting Name="HeartopiaLocation" Type="System.String" Scope="User">
<Value Profile="(Default)">xdt.exe</Value>
</Setting>
<Setting Name="BPSRLocation" Type="System.String" Scope="User">
<Value Profile="(Default)">BPSR.exe</Value>
</Setting>
<Setting Name="HPMALocation" Type="System.String" Scope="User">
<Value Profile="(Default)">Harry Potter Magic Awakened.exe</Value>
</Setting>
Expand All @@ -119,6 +122,9 @@
<Setting Name="ActiveHeartopia" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ActiveBPSR" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
<Setting Name="ActiveHPMA" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">True</Value>
</Setting>
Expand Down
48 changes: 48 additions & 0 deletions AutoMidiPlayer.WPF/Core/Games/BPSR/Instruments/Piano.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
using System.Collections.Generic;

namespace AutoMidiPlayer.WPF.Core.Instruments
{
public static partial class BPSRInstruments
{
/// <summary>
/// BPSR Piano - 61 keys, full chromatic scale (C2-C7)
/// </summary>
public static readonly InstrumentConfig Piano61k = new(
game: "BPSR",
name: "Piano (61 Key)",
notes: [
36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, // C2 C#2 D2 D#2 E2 F2 F#2 G2 G#2 A2 A#2 B2
48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, // C3 C#3 D3 D#3 E3 F3 F#3 G3 G#3 A3 A#3 B3
60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, // C4 C#4 D4 D#4 E4 F4 F#4 G4 G#4 A4 A#4 B4
72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, // C5 C#5 D5 D#5 E5 F5 F#5 G5 G#5 A5 A#5 B5
84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, // C6 C#6 D6 D#6 E6 F6 F#6 G6 G#6 A6 A#6 B6
96, // C7
],
keyboardLayouts: [
BPSRKeyboardLayouts.QWERTY_61Key
]
);

/// <summary>
/// BPSR Piano - 88 keys, full chromatic scale (C2-C7)
/// </summary>
public static readonly InstrumentConfig Piano = new(
game: "BPSR",
name: "Piano (88 Key)",
notes: [
21, 22, 23, // A0 A#0 B0
24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, // C1 C#1 D1 D#1 E1 F1 F#1 G1 G#1 A1 A#1 B1
36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, // C2 C#2 D2 D#2 E2 F2 F#2 G2 G#2 A2 A#2 B2
48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, // C3 C#3 D3 D#3 E3 F3 F#3 G3 G#3 A3 A#3 B3
60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, // C4 C#4 D4 D#4 E4 F4 F#4 G4 G#4 A4 A#4 B4
72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, // C5 C#5 D5 D#5 E5 F5 F#5 G5 G#5 A5 A#5 B5
84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, // C6 C#6 D6 D#6 E6 F6 F#6 G6 G#6 A6 A#6 B6
96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, // C7 C#7 D7 D#7 E7 F7 F#7 G7 G#7 A7 A#7 B7
108 // C8
],
keyboardLayouts: [
BPSRKeyboardLayouts.QWERTY_88Key
]
);
}
}
32 changes: 32 additions & 0 deletions AutoMidiPlayer.WPF/Core/Games/BPSR/KeyboardLayout.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
using System.Collections.Generic;

namespace AutoMidiPlayer.WPF.Core.Instruments;

internal static class BPSRKeyboardLayouts
{

public static readonly KeyboardLayoutConfig QWERTY_61Key = new(
name: "QWERTY",
keys: [
"1", "!", "2", "@", "3", "4", "$", "5", "%", "6", "^", "7",
"8", "*", "9", "(", "0", "q", "Q", "w", "W", "e", "E", "r",
"t", "T", "y", "Y", "u", "i", "I", "o", "O", "p", "P", "a",
"s", "S", "d", "D", "f", "g", "G", "h", "H", "j", "J", "k",
"l", "L", "z", "Z", "x", "c", "C", "v", "V", "b", "B", "n",
"m",
]);

public static readonly KeyboardLayoutConfig QWERTY_88Key = new(
name: "QWERTY",
keys: [
"^1", "^2", "^3",
"^4", "^5", "^6", "^7", "^8", "^9", "^0", "^q", "^w", "^e", "^r", "^t",
"1", "!", "2", "@", "3", "4", "$", "5", "%", "6", "^", "7",
"8", "*", "9", "(", "0", "q", "Q", "w", "W", "e", "E", "r",
"t", "T", "y", "Y", "u", "i", "I", "o", "O", "p", "P", "a",
"s", "S", "d", "D", "f", "g", "G", "h", "H", "j", "J", "k",
"l", "L", "z", "Z", "x", "c", "C", "v", "V", "b", "B", "n",
"m", "^y", "^u", "^i", "^o", "^p", "^a", "^s", "^d", "^f", "^g", "^h",
"^j"
]);
}
15 changes: 15 additions & 0 deletions AutoMidiPlayer.WPF/Core/Games/GameRegistry.cs
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,21 @@ public static class GameRegistry
getIsActive: () => Settings.ActiveHeartopia,
setIsActive: v => Settings.Modify(s => s.ActiveHeartopia = v)
),
new GameDefinition(
id: "BPSR",
displayName: "Blue Protocol: Star Resonance",
instrumentGameName: "BPSR",
imageResourcePath: "pack://application:,,,/Resources/Images/Games/BPSR.png",
processNames: ["BPSR"],
defaultExeName: "BPSR.exe",
defaultSearchPaths: [
@"C:\Program Files\MyGame\MyGame.exe",
],
getLocation: () => Settings.BPSRLocation,
setLocation: v => Settings.Modify(s => s.BPSRLocation = v),
getIsActive: () => Settings.ActiveBPSR,
setIsActive: v => Settings.Modify(s => s.ActiveBPSR = v)
),
new GameDefinition(
id: "HPMA",
displayName: "Harry Potter: Magic Awakened",
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.