fix conflict with PyTK's map display device
This commit is contained in:
parent
436eb95a86
commit
f06b4dd610
|
@ -10,6 +10,7 @@
|
||||||
## Upcoming release
|
## Upcoming release
|
||||||
* For players:
|
* For players:
|
||||||
* Fixed errors on Linux/Mac due to mods with incorrect filename case.
|
* Fixed errors on Linux/Mac due to mods with incorrect filename case.
|
||||||
|
* Fixed map rendering crash due to conflict between SMAPI and PyTK.
|
||||||
|
|
||||||
* For modders:
|
* For modders:
|
||||||
* All content pack file paths accessed through `IContentPack` are now case-insensitive.
|
* All content pack file paths accessed through `IContentPack` are now case-insensitive.
|
||||||
|
|
|
@ -43,6 +43,7 @@ using StardewModdingAPI.Toolkit.Serialization;
|
||||||
using StardewModdingAPI.Toolkit.Utilities;
|
using StardewModdingAPI.Toolkit.Utilities;
|
||||||
using StardewModdingAPI.Utilities;
|
using StardewModdingAPI.Utilities;
|
||||||
using StardewValley;
|
using StardewValley;
|
||||||
|
using xTile.Display;
|
||||||
using SObject = StardewValley.Object;
|
using SObject = StardewValley.Object;
|
||||||
|
|
||||||
namespace StardewModdingAPI.Framework
|
namespace StardewModdingAPI.Framework
|
||||||
|
@ -472,8 +473,13 @@ namespace StardewModdingAPI.Framework
|
||||||
SCore.PerformanceMonitor.PrintQueuedAlerts();
|
SCore.PerformanceMonitor.PrintQueuedAlerts();
|
||||||
|
|
||||||
// reapply overrides
|
// reapply overrides
|
||||||
if (this.JustReturnedToTitle && !(Game1.mapDisplayDevice is SDisplayDevice))
|
if (this.JustReturnedToTitle)
|
||||||
Game1.mapDisplayDevice = new SDisplayDevice(Game1.content, Game1.game1.GraphicsDevice);
|
{
|
||||||
|
if (!(Game1.mapDisplayDevice is SDisplayDevice))
|
||||||
|
Game1.mapDisplayDevice = this.GetMapDisplayDevice();
|
||||||
|
|
||||||
|
this.JustReturnedToTitle = false;
|
||||||
|
}
|
||||||
|
|
||||||
/*********
|
/*********
|
||||||
** First-tick initialization
|
** First-tick initialization
|
||||||
|
@ -1738,6 +1744,13 @@ namespace StardewModdingAPI.Framework
|
||||||
return translations;
|
return translations;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>Get the map display device which applies SMAPI features like tile rotation to loaded maps.</summary>
|
||||||
|
/// <remarks>This is separate to let mods like PyTK wrap it with their own functionality.</remarks>
|
||||||
|
private IDisplayDevice GetMapDisplayDevice()
|
||||||
|
{
|
||||||
|
return new SDisplayDevice(Game1.content, Game1.game1.GraphicsDevice);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>Get the absolute path to the next available log file.</summary>
|
/// <summary>Get the absolute path to the next available log file.</summary>
|
||||||
private string GetLogPath()
|
private string GetLogPath()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue