diff --git a/README.md b/README.md
index 6b640d5..4e01eee 100644
--- a/README.md
+++ b/README.md
@@ -11,4 +11,4 @@ Anything in `{arguments}` depends on the command being used.
Place `UltraShellMommy.dll` in the `BepInEx/plugins` folder in your ULTRAKILL installation folder.
# Building
Create a file called UltraShellMommy.csproj.user and fill in the data from the template then place it next to UltraShellMommy.
-Then, run `dotnet build` in the directory with UltraShellMommy.csproj.
\ No newline at end of file
+Then, run `msbuild` in the directory with UltraShellMommy.csproj (note: official builds use mono-msbuild).
\ No newline at end of file
diff --git a/UltraShellMommy.csproj b/UltraShellMommy.csproj
index 0b3bdc5..1718e88 100644
--- a/UltraShellMommy.csproj
+++ b/UltraShellMommy.csproj
@@ -1,12 +1,12 @@
-
-
+
+
Library
- netstandard2.0
+ v4.7.2
UltraShellMommy
UltraShellMommy
enable
- latest
+ true
@@ -74,7 +74,7 @@
$(ULTRAKILLPath)\ULTRAKILL_Data\Managed\UnityEngine.ImageConversionModule.dll
-
+
$(ULTRAKILLPath)\ULTRAKILL_Data\Managed\Unity.Addressables.dll
@@ -93,6 +93,11 @@
$(ULTRAKILLPath)\ULTRAKILL_Data\Managed\Newtonsoft.Json.dll
+
+ False
+ $(ManagedDir)\netstandard.dll
+ False
+
$(ULTRAKILLPath)\ULTRAKILL_Data\Managed\
@@ -105,8 +110,13 @@
+
+
+
+
+
-
+
@@ -116,4 +126,5 @@
+
diff --git a/src/commands/mommy.cs b/src/commands/mommy.cs
index 681c9cc..cf8a80a 100644
--- a/src/commands/mommy.cs
+++ b/src/commands/mommy.cs
@@ -17,6 +17,8 @@ along with this program. If not, see .
using GameConsole;
using System;
+using System.Collections.Generic;
+using System.Linq;
namespace UltraShellMommy {
public class ShellMommy : ICommand {
@@ -41,7 +43,7 @@ namespace UltraShellMommy {
cmd.Execute(con, newArgs.ToArray());
DoResponse(con, true);
} else {
- UnityEngine.Debug.LogWarning("Unrecognized command: \"CMD\"".Replace("CMD", args[0]));
+ UnityEngine.Debug.LogWarning("Unrecognized command: '%CMD'".Replace("%CMD", args[0]));
DoResponse(con, false);
}
}
@@ -57,7 +59,7 @@ namespace UltraShellMommy {
string mommyRole = _mommy.MommysRole[random.Next(_mommy.MommysRole.Length)];
string response;
- if (isPositive) response = _mommy.MommyPositiveResponses[random.Next(_mommy.MommyPositiveResponses.Length)];
+ if (isPositive && !_mommy.MommyOnlyNegative) response = _mommy.MommyPositiveResponses[random.Next(_mommy.MommyPositiveResponses.Length)];
else response = _mommy.MommyNegativeResponses[random.Next(_mommy.MommyNegativeResponses.Length)];
// Replace text in the response
@@ -65,7 +67,7 @@ namespace UltraShellMommy {
response = response.Replace("MOMMYS_PRONOUN", mommyPronoun);
response = response.Replace("MOMMYS_ROLE", mommyRole);
- if (isPositive) con.PrintLine(response);
+ if (isPositive && !_mommy.MommyOnlyNegative) con.PrintLine(response);
else UnityEngine.Debug.LogWarning(response);
}
diff --git a/src/plugin.cs b/src/plugin.cs
index 868a561..a0dcf9b 100644
--- a/src/plugin.cs
+++ b/src/plugin.cs
@@ -24,6 +24,8 @@ using System.Collections;
using GameConsole;
using BepInEx.Configuration;
+using System.Collections.Generic;
+
namespace UltraShellMommy {
[BepInPlugin("UltraShellMommy", "Ultra Shell Mommy", "1.0.0")]
[BepInProcess("ULTRAKILL.exe")]
@@ -35,10 +37,12 @@ namespace UltraShellMommy {
private ConfigEntry CfgMommysPronouns;
private ConfigEntry CfgMommysPositiveResponses;
private ConfigEntry CfgMommysNegativeResponses;
+ private ConfigEntry CfgMommyOnlyNegative;
public String[] MommysLittle;
public String[] MommysRole;
public String[] MommysPronouns;
+ public Boolean MommyOnlyNegative;
public String[] MommyPositiveResponses;
public String[] MommyNegativeResponses;
@@ -57,6 +61,8 @@ namespace UltraShellMommy {
CfgMommysRole = Config.Bind("Mommy", "MommysRole", "mommy",
"Sets the role that mommy will have.");
+ CfgMommyOnlyNegative = Config.Bind("Mommy", "MommyOnlyNegative", false, "If set to true, mommy will provide encouragement (on non-fail status) but not praise.");
+
CfgMommysPositiveResponses = Config.Bind("Mommy", "MommysPositiveResponses", "*pets your head*/awe, what a good AFFECTIONATE_TERM~\nMOMMYS_ROLE knew you could do it~ ❤️/good AFFECTIONATE_TERM~\nMOMMYS_ROLE's so proud of you~ ❤️/Keep up the good work, my love~ ❤️/MOMMYS_ROLE is proud of the progress you've made~ ❤️/MOMMYS_ROLE is so grateful to have you as MOMMYS_PRONOUN little AFFECTIONATE_TERM~ ❤️/I'm so proud of you, my love~ ❤️/MOMMYS_ROLE is so proud of you~ ❤️/MOMMYS_ROLE loves seeing MOMMYS_PRONOUN little AFFECTIONATE_TERM succeed~ ❤️/MOMMYS_ROLE thinks MOMMYS_PRONOUN little AFFECTIONATE_TERM earned a big hug~ ❤️/that's a good AFFECTIONATE_TERM~ ❤️/you did an amazing job, my dear~ ❤️/you're such a smart cookie~ ❤️",
"Sets the possible negative responses that mommy will use. ");
@@ -67,6 +73,7 @@ namespace UltraShellMommy {
MommysLittle = CfgMommysLittle.Value.Split('/');
MommysPronouns = CfgMommysPronouns.Value.Split('/');
MommysRole = CfgMommysRole.Value.Split('/');
+ MommyOnlyNegative = CfgMommyOnlyNegative.Value;
MommyPositiveResponses = CfgMommysPositiveResponses.Value.Split('/');
MommyNegativeResponses = CfgMommysNegativeResponses.Value.Split('/');