


#Stardew valley 1.5 update
This has no effect on most mods, but mods which customize building appearances will need an update to be paintable.Įach building has three distinct groups: roof, walls, and trim. This applies to the farmhouse, cabins, barn, coop, shed, and stable. You can now paint fully-upgraded buildings through Robin's menu, which fills predefined groups with that color. Instead you should use chest.GetItemsForPlayer to get the item list, and chest.GetActualCapacity() to get the max capacity. Using ems and Chest.capacity to access chest inventory won't handle special cases like the Junimo Chest or Mini-Shipping Bin. Utility.Modif圜oordinatesFromUIScale(position)įirst convert to non-UI-adjusted pixel, then see pixel → tile conversion. Utility.Modif圜oordinatesForUIScale(position) How do I convert between UI and non-UI coordinates? conversion If you adjust pixel positions manually, see conversions below.Don't do this if you'll be adjusting the positions for UI scaling separately (see below), since double-conversion will give you incorrect results. These provide UI-adjusted pixel positions. When drawing UI, in most cases you should replace Game1.viewport with Game1.uiViewport.You may need to convert values to non-UI coordinates to check them in that case (see conversions below). For example, a menu constructed outside the draw loop may initialize coordinates in non-UI mode, then handle clicks in UI mode.

#Stardew valley 1.5 mod
Note: to avoid mod conflicts, prefixing data fields with your mod ID is strongly recommended: you can still merge items with different mod data), unless overridden by a Harmony patch. Otherwise mod data has no effect on item split/merge logic (e.g. When you split an item stack, the new stack copies the previous one's mod data when merged into another stack, the merged items adopt the target stack's mod data. This can be used to store arbitrary mod data, including on the player itself via. You can use more specific fields like IsSplitScreen, HasRemotePlayers, or IsOnHostComputer if needed.Įach Character, GameLocation, Item, and TerrainFeature instance now has a modData dictionary field, which is persisted to the save file and synchronized in multiplayer. Context.IsMultiplayer returns true for split-screen multiplayer.The exception is SMAPI's save data API, which does work for farmhands on the host computer (but not remote farmhands). For example, even though they're running on the host computer, split-screen farmhands can only access synced locations (unless you manually access the host's stashed state). Multiplayer limitations still apply for split-screen farmhands, since split-screen is just normal multiplayer under the hood.You can use Context fields if you need to check which player it is (like IsMainPlayer, IsSplitScreen, IsOnHostComputer, or PlayerIndex). For example, with two active screens the GameLoop.UpdateTicked event happens twice per tick (120/second instead of 60/second). Each screen has its own events (except GameLoop.GameLaunched).You can wrap fields with SMAPI's PerScreen to have separate values for each player. The game automatically swaps the game state for the current player, but in-memory data from mods will be shared between all screens. Each screen runs within the same game instance.Most mods aren't affected in non-split-screen mode, and will work the same as before. Stardew Valley 1.5 adds split-screen local multiplayer.
