Merge pull request #7 from TrueBlindGaming/master

updates to social menu
master
Mohammad Shoaib 2022-02-13 13:01:55 +05:30 committed by GitHub
commit a2d2f2e63a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 43 additions and 11 deletions

View File

@ -143,8 +143,12 @@ namespace stardew_access.Game
{ {
toSpeak = getJunimoBundleAt(x, y); toSpeak = getJunimoBundleAt(x, y);
} }
#endregion else if (getStumpsInWoods(x, y) != null)
{
toSpeak = getStumpsInWoods(x, y);
}
#endregion
#region Narrate toSpeak #region Narrate toSpeak
if (toSpeak != " ") if (toSpeak != " ")
if (manuallyTriggered) if (manuallyTriggered)
@ -177,8 +181,7 @@ namespace stardew_access.Game
{ {
if (Game1.currentLocation is not CommunityCenter) if (Game1.currentLocation is not CommunityCenter)
return null; return null;
CommunityCenter communityCenter = (Game1.currentLocation as CommunityCenter);
CommunityCenter communityCenter = (Game1.currentLocation as CommunityCenter);
string? name = (x, y) switch string? name = (x, y) switch
{ {
@ -747,5 +750,24 @@ namespace stardew_access.Game
return null; return null;
} }
public static string? getStumpsInWoods(int x, int y)
{
string strIndex = null;
if (Game1.currentLocation is not Woods)
{
return null;
}
Netcode.NetObjectList<ResourceClump> stumps = ((Woods)Game1.currentLocation).stumps;
for (int i = 0; i < stumps.Count; i++)
{
if (stumps[i].occupiesTile(x, y))
{
return "large stump";
}
}
return null;
}
} }
} }

View File

@ -295,9 +295,9 @@ namespace stardew_access.Patches
await Task.Delay(200); await Task.Delay(200);
isUsingCustomButtons = false; isUsingCustomButtons = false;
} }
internal static void SocialPagePatch(SocialPage __instance, List<ClickableTextureComponent> ___sprites, int ___slotPosition, List<string> ___kidsNames) internal static void SocialPagePatch(SocialPage __instance, List<ClickableTextureComponent> ___sprites, int ___slotPosition, List<string> ___kidsNames)
{ {
try try
{ {
int x = Game1.getMouseX(), y = Game1.getMouseY(); // Mouse x and y position int x = Game1.getMouseX(), y = Game1.getMouseY(); // Mouse x and y position
@ -318,6 +318,16 @@ namespace stardew_access.Patches
bool hasTalked = Game1.player.hasPlayerTalkedToNPC(name); bool hasTalked = Game1.player.hasPlayerTalkedToNPC(name);
bool spouse = friendship.IsMarried(); bool spouse = friendship.IsMarried();
bool housemate = spouse && SocialPage.isRoommateOfAnyone(name); bool housemate = spouse && SocialPage.isRoommateOfAnyone(name);
___kidsNames.Add("Robin");
___kidsNames.Add("Pierre");
___kidsNames.Add("Caroline");
___kidsNames.Add("Jodi");
___kidsNames.Add("Kent");
___kidsNames.Add("George");
___kidsNames.Add("Evelyn");
___kidsNames.Add("Demetrius");
string toSpeak = $"{name}"; string toSpeak = $"{name}";
@ -325,8 +335,8 @@ namespace stardew_access.Patches
{ {
toSpeak = $"{toSpeak}, not talked yet"; toSpeak = $"{toSpeak}, not talked yet";
} }
else
{
if (datable | housemate) if (datable | housemate)
{ {
string text2 = (LocalizedContentManager.CurrentLanguageCode != LocalizedContentManager.LanguageCode.pt) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage.cs.11635") : ((__instance.getGender(name) == 0) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage.cs.11635").Split('/').First() : Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage.cs.11635").Split('/').Last()); string text2 = (LocalizedContentManager.CurrentLanguageCode != LocalizedContentManager.LanguageCode.pt) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage.cs.11635") : ((__instance.getGender(name) == 0) ? Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage.cs.11635").Split('/').First() : Game1.content.LoadString("Strings\\StringsFromCSFiles:SocialPage.cs.11635").Split('/').Last());
@ -353,10 +363,10 @@ namespace stardew_access.Patches
toSpeak = $"{toSpeak}, {text2}"; toSpeak = $"{toSpeak}, {text2}";
} }
if (!__instance.getFriendship(name).IsMarried() && !___kidsNames.Contains(name)) if (!__instance.getFriendship(name).IsMarried() && ___kidsNames.Contains(name))
{ {
toSpeak = $"{toSpeak}, married"; toSpeak = $"{toSpeak}, married";
} }
if (spouse) if (spouse)
{ {
toSpeak = $"{toSpeak}, spouse"; toSpeak = $"{toSpeak}, spouse";
@ -367,7 +377,7 @@ namespace stardew_access.Patches
} }
toSpeak = $"{toSpeak}, {heartLevel} hearts, {giftsThisWeek} gifts given this week."; toSpeak = $"{toSpeak}, {heartLevel} hearts, {giftsThisWeek} gifts given this week.";
}
if (socialPageQuery != toSpeak) if (socialPageQuery != toSpeak)
{ {