-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Declarative Shops #3219
Merged
Chicken-Bones
merged 135 commits into
tModLoader:1.4.4
from
BasicallyIAmFox:1.4.4_declarativeshops
Mar 25, 2023
Merged
Declarative Shops #3219
Chicken-Bones
merged 135 commits into
tModLoader:1.4.4
from
BasicallyIAmFox:1.4.4_declarativeshops
Mar 25, 2023
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Internal note: previously #3072 |
Solxanich
requested changes
Jan 28, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Initial Pass Through.
Great job getting this going, I want to say we are more than half way there.
…IAmFox/tModLoader into 1.4.4_declarativeshops
Destructor-Ben
added a commit
to Destructor-Ben/tModLoader
that referenced
this pull request
Jun 12, 2023
commit 2e418452765d07751efaa2fc2bd1e1b67678bde1 Author: JavidPack <javidpack@gmail.com> Date: Mon Jun 12 15:13:49 2023 -0600 Add in workaround for mods that actually didn't have SlopeTexture commit 9c89fa9cf8b8b917846cf595ea0082fa4175fa27 Author: JavidPack <javidpack@gmail.com> Date: Mon Jun 12 14:34:03 2023 -0600 Fix ModWaterStyle.SlopeTexture not being used commit 5952f4eb397287e8ac3f246f6945c1a5348de3ad Author: direwolf420 <amakejk1@web.de> Date: Sun Jun 11 03:04:48 2023 +0200 [ExampleMod] Adjust torch dust to be like vanilla (#3531) * [ExampleMod] adjust torch dust to be like exampleMod * no fx for regular torch when wet commit bff80b67b55315f251d877c85981c1bc9437dbe9 Author: direwolf420 <amakejk1@web.de> Date: Sun Jun 11 03:03:34 2023 +0200 [ExampleMod] Adjust torch dust to be like vanilla (#3531) * [ExampleMod] adjust torch dust to be like exampleMod * no fx for regular torch when wet commit 8207adcc228874add6ae917198c5d9d6ff4283f6 Author: direwolf420 <amakejk1@web.de> Date: Sun Jun 11 02:46:24 2023 +0200 [ExampleMod] update existing mod integrations to 1.4.4 (#3524) * update exsting mod integrations to 1.4.4 * Added a note --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit 78d9636c26f5d6bfccda518267fc0c7777deecd4 Author: Rijam <jacobrmoreno@hotmail.com> Date: Sat Jun 10 18:26:21 2023 -0600 Raise Lamp Animation Fix (#3530) commit b6f0e8635a49c73cd5c415ae3e1a61489f457d56 Author: JavidPack <javidpack@gmail.com> Date: Sat Jun 10 17:48:26 2023 -0600 Fix #3529 commit 6d1a370df1835da572939ef1e9d023b65b3dd58f Author: JavidPack <javidpack@gmail.com> Date: Sat Jun 10 17:17:43 2023 -0600 Fix bad WorksInVoidBag advice. commit 2957c69ae429d21f85c1bb9e3b968623003c738e Author: JavidPack <javidpack@gmail.com> Date: Sat Jun 10 16:56:04 2023 -0600 Fix EM hjson syntax error commit 9e916b55db434c8dafd7cd846f02a98852d68114 Author: Kogsey <KadenKogsey@gmail.com> Date: Sat Jun 10 20:44:09 2023 +0800 Fix gravity being assigned over fall speed in maxFallSpeed. 🤦♂️ (#3532) commit 9d0ae34c5e14b005c27fdd4953c6edbfe59dc964 Merge: 6a80c9fa8 87d6d3e6e Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Fri Jun 9 21:34:46 2023 -0600 Merge branch '1.4.4' of https://github.com/tModLoader/tModLoader into 1.4.4 commit 87d6d3e6e378661c3800ba5db2a44944cceea4de Author: Chicken-Bones <mehvids@gmail.com> Date: Sat Jun 10 13:25:47 2023 +1000 Fix #3528, type based vanilla gravity effects were ignored by default commit 6a80c9fa8530fd38ab6723c46af86bc045556476 Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Fri Jun 9 21:25:44 2023 -0600 Closes #3527 commit c652289d4b18bda7185ea20cb184fe18390bf164 Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Fri Jun 9 21:19:43 2023 -0600 Fix Localization typo- UiModItem commit ad03f8ce06ea77a02753d380b6e6a9598843ce25 Author: Chicken-Bones <mehvids@gmail.com> Date: Sat Jun 10 13:09:48 2023 +1000 Fix pickaxes not calling UseTime hooks when mining commit 62a1b806f544c5784d2639e47a30a1ae8086f95e Author: direwolf420 <amakejk1@web.de> Date: Fri Jun 9 03:07:56 2023 +0200 [ExampleMod] Tweaks & fixes for example resource (#3525) * ExampleMod: Tweaks & fixes for example resource * public -> private commit b19bb40ed7207797bd1023ea42f4c80ad1793c1c Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Jun 9 08:37:36 2023 +1000 Update HookGen commit ab89ac74c278dd41c3f3bc6ab7b668aff0e691ba Author: Kogsey <kad4419@gmail.com> Date: Fri Jun 9 05:32:39 2023 +0800 Various NPC Gravity Changes (#3415) * Various NPC gravity changes, see tModLoader PR * Small doc changes and example edition to PartyZombie.cs * Changes in accordance with suggestions from Chicken Bones in thread on discord * Changed UpdateNPC_UpdateGravity back to private * Changes by ChickenBones's review * Fixed unnecessary backing field * Improve documentation phrasing, and some naming * Move new members to NPC.TML.cs --------- Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit c6c27f900656abec919d32e4407040a70325d3fc Author: Mirsario <me@mirsar.io> Date: Thu Jun 8 04:12:49 2023 +0300 Use full versions for 'versionsummary' workshop tag. commit b6c58498e1b66f3be457aa9de00a714863dede89 Author: Mirsario <me@mirsar.io> Date: Thu Jun 8 00:01:37 2023 +0300 Fixed unloaded items being researchable & duplicatable. commit b68fd7dd24c27a0919aa8d32cb1898da7d0eab0c Author: JavidPack <javidpack@gmail.com> Date: Wed Jun 7 12:32:00 2023 -0600 Small typos commit e1f925d9062e12e50cef64228d6828f9071ca00d Author: JavidPack <javidpack@gmail.com> Date: Tue Jun 6 19:41:10 2023 -0600 StaffMinionSlotsRequired changed from int[] to float[] to support more minion weapon options. commit 28849d11896cbd04eaed45f30a2003f12b76a9e2 Author: Chicken-Bones <mehvids@gmail.com> Date: Tue Jun 6 12:48:26 2023 +1000 Improve GoG version checker messages. Fix backup filename missing the 'v' before version number commit 9c8f4ffa2ed8bfe9cf36336cc9a055b57b548243 Author: JavidPack <javidpack@gmail.com> Date: Mon Jun 5 17:04:41 2023 -0600 Fix misleading error messages, include classname in error messages from ForEachAndAggregateExceptions commit df94e8bec59516d7fd1736f722e2ec2c00b9eed6 Author: JavidPack <javidpack@gmail.com> Date: Mon Jun 5 13:18:28 2023 -0600 Document ILocalizedModTypeExtensions methods commit 6df39026f30db61f82541c02128e52bdde80f399 Author: JavidPack <javidpack@gmail.com> Date: Sat Jun 3 22:46:15 2023 -0600 Spell Check commit 2795fcfb5fcb5d11318cf7c50207c0b1a2eb4db8 Author: Chicken-Bones <mehvids@gmail.com> Date: Sun Jun 4 10:31:10 2023 +1000 Make IEntitySource easier to use. Improve docs. Fix some projectile crit and armor pen bugs. (#3500) * Cleaner syntax and better performance and docs for EntitySource gore fallbacks. * Better Player.GetSource_Buff patch * Better organized and documented entity sources. * Make better EntitySource examples * Fix doc error * Replace PlayerDropItemCheck context with ThrowItem/EntitySource_OverfullInventory * Implement entity source transfer for projectile crit and armor pen * Actually make CritChance and ArmorPenetration update with ContinuouslyUpdateDamage * operator typo * Fix torch god item source * Doc fix * Fix recursion typo in wrapper method * Add tModPorter and restore some obsolete types with porting instructions * Add GetSource_Accessory_OnHurt. Add interfaces for item, hurt and hit sources. * Update example to pattern match IEntitySource_WithStatsFromItem interface * Add Player property to IEntitySource_WithStatsFromItem for convenience * fix typos * tModPorter, refactor obsolete fields and properties * Rename ContinuouslyUpdateDamage to ContinuouslyUpdateDamageStats commit db0c56c4047708cdee6eafbf7ab2016f423bb2ca Author: Solxanich <59670736+Solxanich@users.noreply.github.com> Date: Thu Jun 1 20:49:24 2023 -0600 Fixes #881 (#3512) commit f6cbae329bbbf830b89563229480ece01c843e82 Author: JavidPack <javidpack@gmail.com> Date: Wed May 31 20:37:27 2023 -0600 Fix #3510 commit d69c99a6dc334632d34bbd58059920e88f2eadff Author: JavidPack <javidpack@gmail.com> Date: Wed May 31 18:10:15 2023 -0600 Fix some remaining sbyte equip slot related fields. commit dddd7fb736e1fb32f133aaf0351ef6335d77f03d Author: JavidPack <javidpack@gmail.com> Date: Wed May 31 15:37:31 2023 -0600 Fix issue preventing successful 1st launch commit 28228cbe72c9280139822e23db8d0ce3b338024c Author: JavidPack <javidpack@gmail.com> Date: Wed May 31 14:01:50 2023 -0600 Added AddOnCraftCallback/AddConsumeItemCallback examples commit 785f5f3871811a3d26e8ccdae1c9fe631e297cc4 Author: JavidPack <javidpack@gmail.com> Date: Tue May 30 19:30:12 2023 -0600 Some recipe clarifications/typos commit 4792d341ad38cc712811f04b78400ee3f526a12b Author: JavidPack <javidpack@gmail.com> Date: Tue May 30 18:33:30 2023 -0600 Docs for LocalizedText/Lang/Language commit d332668baab152f1bcbe23c6709e2280a322b514 Author: RazzSG <51904365+RazzSG@users.noreply.github.com> Date: Tue May 30 21:39:13 2023 +0300 Update ru-RU tModLoader.json (#3502) commit 1c4609bab945ce24fb3ccc3fb47333e3f013d925 Author: JavidPack <javidpack@gmail.com> Date: Sat May 27 15:25:11 2023 -0600 Other changes missing from last commit commit be8e1dc247088f9a1c406463fd044b41b74f872a Author: JavidPack <javidpack@gmail.com> Date: Sat May 27 14:58:44 2023 -0600 Fix UpdateLocalizationFilesForMod not creating hjson files if none exists. Fix ExtractLocalizationFiles not extracting commit 8f209445587a8abec49b240fb6fcfe6c76e884e8 Author: JavidPack <javidpack@gmail.com> Date: Thu May 25 13:07:36 2023 -0600 Sentry related docs. commit 395a98e7ca8c3766e5faac2c0a2a40d83032706a Author: JavidPack <javidpack@gmail.com> Date: Thu May 25 12:46:24 2023 -0600 Allow underwater biome torches to work. Add DisableSmartInteract to ExampleTorch commit b6cecac480a5fc82edd6dba8b2afbda8d9e1a62c Author: Pixelnando <74513567+Pixelnando@users.noreply.github.com> Date: Thu May 25 00:11:11 2023 -0300 Update tModLoader.json (#3496) commit 9a9a9c6773dc5d478a4f6e56fc48d7f04c67c7a2 Author: JavidPack <javidpack@gmail.com> Date: Wed May 24 21:09:00 2023 -0600 Add HelpLink to ValueNotTranslationKeyException commit 984f47e093dadec6fab0c7011126035a2cab1028 Author: JavidPack <javidpack@gmail.com> Date: Wed May 24 19:35:14 2023 -0600 Mod config auto localization (Fix #3259) (#3302) * Fix empty hjson with prefixes not counting towards FindHJSONFileForKey * Initial implementation * Initial ExampleMod porting. * Initial Header auto localize implementation. * Tooltip optional, many logic fixes * Fix issue with separate page labels. * All config items now have tooltip key automatically. * Header now requires key or identifier, null no longer allowed, not maintainable. * Prevent accidental key collision. * Label/Tooltip string interpolation * Demonstrate pluralization * Label/TooltipKey added, Label/Tooltip obsolete, populate auto key value for porting. * Fix EM [ShowDespiteJsonIgnore] example * Another string formatting examples * typo * Use auto keys for non-ModConfig classes as well * Update ConfigManager.cs * Code cleanup, share more code * GetAndValidate refactor * Misc feedback items * More refactor/cleanup * scope simplification example, remove unused LocalizedLabelDynamic * Update ConfigAttributes.cs * Fix an issue with Type labels/keys not autoregistering * Fix errorOnType not being passed through correctly by removing it. * Reduce complexity, use ModConfig Type for keys, HashSet<Type> * No more StartsWith(modsDotModName) * Get rid of throwErrors parameters * Remove fallbackToClass parameter * AssemblyManager.GetAssemblyOwner approach * Use GetAssemblyOwner to detect non-mod assembly. * Further cleanup, GetDefaultLocalizationKey * Comment out currently not working converters. * Support Enums, remove autokey for Label on Type, register types used in collections/generics * Note about future polymorphism support * ModConfig.DisplayName approach * Refactor type tooltip localizations to separate method, enables recursion * TypeCaching.OnClear approach, fix build. * Various small feedback fixes. * Remove GetLocalizedHeader throwErrors parameter * If Type has [ConfigKey], and falling back to Type, use it regardless of if it is empty. * Simplify GetLocalizedText logic * Support ConfigArgs on Type * ModConfig : ILocalizedModType * Simplify exception handling logic. * Move enum registration code to own method. * #nullable enable ConfigManager.cs * Auto migrate legacy Config.DisplayName, clean up "Type or member is obsolete" * Formatting fixes * Cleanup equivalent code * GetLocalizedHeader refactor * FormatTextAttribute/GetLocalizedText suggestions * Clarify: GetCustomAttributeFromCollectionMemberThenElementType * GetCustomAttribute -> GetCustomAttributeFromMemberThenMemberType * Fix fallback bugs --------- Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit b746fb0e9b8c761e77dd99f5a2e5c89f098f44ae Author: JavidPack <javidpack@gmail.com> Date: Wed May 24 17:53:29 2023 -0600 Fix #3486 commit 63948ff0a75941a56e3a0cabbf90cd2d8a68c7f0 Author: JavidPack <javidpack@gmail.com> Date: Wed May 24 12:43:55 2023 -0600 Implement selective TownNPCMood key registration. (#3494) * Implement selective TownNPCMood key registration. * clean up * Auto-Migrate from legacy keys commit 35919ca3458b28122e5db2f91e69de66d553329f Author: JavidPack <javidpack@gmail.com> Date: Tue May 23 12:23:12 2023 -0600 More misc fixes, docs commit e117fdf5aab5348d1edc33956dd75418ae3a3c84 Author: JavidPack <javidpack@gmail.com> Date: Tue May 23 05:00:21 2023 -0600 Fix examplecampfire not dropping during tile swap, tooltip commit a07fe334ce06851231487167e91ca0037fac2fdf Author: JavidPack <javidpack@gmail.com> Date: Tue May 23 02:10:51 2023 -0600 More typos and clarifications for hjson. commit a0ad6e0de44a836ef16df6d2cee6ea8b39bedc61 Author: JavidPack <javidpack@gmail.com> Date: Tue May 23 01:53:30 2023 -0600 Typo commit 048ef6dfebc3bff763ffee8c48ab62f01895ce05 Author: JavidPack <javidpack@gmail.com> Date: Tue May 23 01:47:21 2023 -0600 ExamplePerson correct mood key order. commit c1f4909b8c5ab798e4a5c1c76e993faafe676f46 Author: JavidPack <javidpack@gmail.com> Date: Mon May 22 17:00:47 2023 -0600 Torch fixes (#3479) * Fix torch/glowstick automatic ResearchSorting * Clarify torch related Sets docs * Fix modded torches incorrectly placing in liquids (and dropping at same time) * Add missing MouseOver code to ExampleTorch, comments, missing SingleUseInGamepad * Fix Smart Cursor behavior with modded torches * Fix draw offset weirdness in ExampleTorch * Add ExampleWaterTorch, showcase newSubTile/addSubTile * tModPorter: Remove unused ModItem.AutoLightSelect, add other authors to PR Co-authors are all people who made PRs for issues that will be fully solved by this branch/PR. Many of the ideas, changes, and insights have been combined together for this PR. Co-Authored-By: Zak Berkelaar <45675291+ZakBerkelaar@users.noreply.github.com> Co-Authored-By: Jacob Forte <25934712+jacobforte@users.noreply.github.com> Co-Authored-By: Tomat <xxlennygamerxx@gmail.com> * Note about Mod/GlobalTile.PostDraw deficiency * UsingBiomeTorches/Torch God Favor support (and campfire) * Handle biome torch held item lighting. * Fix some tile drops, docs. * TileID.Sets.Campfire, ExampleCampfire, blockswap/biome support * Address feedback, clean up patches. * Move biome torch/campfire to ModBiome --------- Co-authored-by: Zak Berkelaar <45675291+ZakBerkelaar@users.noreply.github.com> Co-authored-by: Jacob Forte <25934712+jacobforte@users.noreply.github.com> Co-authored-by: Tomat <xxlennygamerxx@gmail.com> commit 7043efa8edac8f510f9f8b6dce0d1463ad6538b0 Author: JavidPack <javidpack@gmail.com> Date: Mon May 22 15:05:17 2023 -0600 Automatically register TownNPCMood localizations (#3446) * Automatically register TownNPCMood localizations * Add LikeNPC_Princess, half support Princess loves moddednpc * Localize biome names for use in townnpc mood. * Address key feedback. Default value feedback. Code location feedback. * NoTownNPCHappiness rename * Princess_LoveNPC -> Princess_LovesNPC * Address some feedback. * clean up patch, check specifically for princess. commit c29c8f4e4b879aff4df5a6e7c66e01460e9121e2 Author: Rijam <jacobrmoreno@hotmail.com> Date: Mon May 22 04:39:28 2023 -0600 Minor Example Mod Changes (#3480) * Spear, Whip, Yoyo, Quest Fish * Direwolf's changes * ExampleHook & Robes * MinionBossBag and typo fixes * ExampleRobe HideHands set * Remove potentially misleading comment --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit a6a9b243867d3b263340b4ed8095ad37aff3b4ba Author: Pixelnando <74513567+Pixelnando@users.noreply.github.com> Date: Mon May 22 03:48:33 2023 -0300 Update Brazilian Portuguese localization (#3489) * Update tModLoader.json * Update tModLoader.json * Update tModLoader.json commit 5a4a96eca31aa647265f38dda2de261e17ba3a5d Author: Chicken-Bones <mehvids@gmail.com> Date: Fri May 19 12:05:57 2023 +1000 Remove ILoadable from IModType commit 0e4e99d86abf1a8353ebf080f75c643944d7a796 Author: Chicken-Bones <mehvids@gmail.com> Date: Tue May 16 11:33:02 2023 +1000 Use AssemblyLoadContext.GetLoadContext for better assembly owner tracking commit 34bfa2d4fb9988cbc7ee5549196769b875165e3b Author: direwolf420 <amakejk1@web.de> Date: Mon May 15 19:38:04 2023 +0200 Add ItemID.Sets.CoinLuckValue (#3445) * CoinLuckValue set * use Item.value commit 501df17b3de1b04b98898d3ea7c7f0356b8cc3a1 Author: Caleb Mazalevskis <maikuolan@gmail.com> Date: Tue May 16 01:03:20 2023 +0800 Update language plural rules link. (#3474) Unicode has migrated its CLDR pages to a new URL. Current version is also now version 43 (version 37 isn't available for viewing as a page directly via the browser anymore, though it remains available as a downloadable ZIP archive). commit dd555f44d43863e16b182871ce37a84b3a73af7a Author: direwolf420 <amakejk1@web.de> Date: Sun May 14 16:07:07 2023 +0200 use correct layers for First/LastVanillaLayer (#3476) commit a8153292543bbf81eeac2acd5b911bd38094f014 Author: JavidPack <javidpack@gmail.com> Date: Thu May 11 16:34:10 2023 -0600 CopyFrom existing tiles examples. commit 1ef3dde7508cc29c0a12774117336e933045a6bf Author: JavidPack <javidpack@gmail.com> Date: Thu May 11 16:01:59 2023 -0600 Fix GetTileStyle/Door drops by accounting for TileObjectData.StyleLineSkip commit 4c0845c07aa7993258adf4bfd1a54a1e2c6807b6 Author: JavidPack <javidpack@gmail.com> Date: Thu May 11 11:33:22 2023 -0600 Fix many URLs pointing to 1.4 instead of 1.4.4 commit aae74fb2ab910209cdaab5cc91eac48a73c9ee7a Author: JavidPack <javidpack@gmail.com> Date: Thu May 11 11:01:26 2023 -0600 ModTile.RegisterItemDrop to add fallback and manual type+style item drops (#3420) * ModTile.RegisterItemDrop to add fallback and manual type+style item drops. * Example furniture more in-line with existing map entry patterns. * Remove ItemDropOverride, add RegisterItemDrop to ModWall * Update ModTile.cs * Remove ItemDropOverride from tests, porter, they were never live * Update ModWall.cs * AddMapEntry doc rework * OpenDoorID/CloseDoorID doc clarification * Update ModTile.cs * Address doc feedback * Add ExampleWallUnsafe, misc cleanup * Final feedback. commit 7f39d52e86c3f31dc8cd734d02a3733a43746ec4 Author: JavidPack <javidpack@gmail.com> Date: Wed May 10 19:09:21 2023 -0600 Update AmmoID.TML.cs commit 196cfaf179d83ec30766ecaef69c581054117571 Author: JavidPack <javidpack@gmail.com> Date: Wed May 10 15:47:03 2023 -0600 Fix #3462 . tModLoader specific info added to serverconfig.txt commit 9171879474d06f03ac92674dc704010e4c39ea90 Author: JavidPack <javidpack@gmail.com> Date: Wed May 10 15:05:27 2023 -0600 Fix #3470 , fix queen bee and deerclops music priority, docs. commit 0556ad988ace5d2f3b0b01e1ffe050d47c60fe4a Author: JavidPack <javidpack@gmail.com> Date: Wed May 10 13:15:06 2023 -0600 ModPrefix.GetTooltipLines, examples, plus inheritable localization example (#3466) * ModPrefix.GetTooltipLines, exampels, plus inheritable localization example * Leave most examples uncommented. commit 6274d2e34b942801f868d714e73a7bd3b6615fe9 Author: JavidPack <javidpack@gmail.com> Date: Tue May 9 12:04:41 2023 -0600 Update NetClientSocialModule.cs.patch (#3465) * Update NetClientSocialModule.cs.patch * Add a note about future improvements commit 38636a79289b1e9d909ef4502636374ebed7bfb9 Author: JavidPack <javidpack@gmail.com> Date: Mon May 8 19:19:35 2023 -0600 Add dust to ExampleWhipProjectileAdvanced commit 57d78f85c852abdb543bd36fc996afa53754bdfb Author: JavidPack <javidpack@gmail.com> Date: Sat May 6 18:00:53 2023 -0600 Fix #3440, AmmoID.Sets.IsRocket->IsSpecialist (#3447) * Fix #3440, AmmoID.Sets.IsRocket->IsSpecialist * Player.rocketDamage -> Player.specialistDamage * Better name for ItemID.Sets.Specialist->IsRangedSpecialistWeapon * Clarify comments commit fd8efaacab81fa30ebeda7a5fedc9f3beb8c3c18 Author: Tomat <xxlennygamerxx@gmail.com> Date: Fri May 5 02:02:04 2023 -0700 ModHair API (#3433) * Cache stylist results and always update hairstyle unlocks. * Working hair API, still needs premade conditions. * Oops, use Count instead of hairs.Count. * AtCharacterCreationOrStylist condition. * Slight formatting fix. * Use `_Alt` suffix instead of `Alt`. * Revert large whitespace changes * Added ExampleHair * Goodbye, moonman. * HairVisibility enum. * No longer holds true. * guh * Ternary `Gender` state instead of `IsMale` property. * Update ExampleMod to reflect changes. * EM comment. * Set hair visibility, add comments. * No more HairVisibility, boolean property for displaying. * Simplify inCharacterCreation condition/patches * Better patch for hairstyle unlock update --------- Co-authored-by: JavidPack <javidpack@gmail.com> Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit a46566f5c71cf2a0a46ed6292e614de74da83565 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri May 5 18:42:15 2023 +1000 Fix missing EyebrellaCloud PlayerDrawLayer. Add First/LastVanillaLayer properties and helpers commit 39607138bc95ad127c6de50ad07db624cd43ff20 Author: JavidPack <javidpack@gmail.com> Date: Thu May 4 15:50:05 2023 -0600 Update ShortswordGlobalItem.cs commit 43fe8b065416bcff5c7d6e7bf93b844ecc09abb4 Author: JavidPack <javidpack@gmail.com> Date: Wed May 3 19:39:09 2023 -0600 Update Projectile.cs.patch commit 2e16e4dc2360e44a77fdcfc195d29d74a6042b0a Author: JavidPack <javidpack@gmail.com> Date: Wed May 3 18:37:14 2023 -0600 Fix #3449 commit a532a537df39d3787829299e0835a3e29263fe7d Author: JavidPack <javidpack@gmail.com> Date: Wed May 3 16:47:22 2023 -0600 Fix issue with corrupted map files preventing saving fresh map file commit 7f7508ceec2105a76c4ac127d45593c4a5626c45 Author: JavidPack <javidpack@gmail.com> Date: Wed May 3 16:46:11 2023 -0600 Fix #3437 , add CanAccessoryBeEquippedWith example to WaspNest commit 10466a242e746ec824a2336495593ec8aaeab462 Author: Chicken-Bones <mehvids@gmail.com> Date: Thu May 4 06:29:53 2023 +1000 Convert negative NPC.defense into FlatBonusDamage commit 72e5c3dcdb67d3c862991fb35108a27ed2c85b83 Author: JavidPack <javidpack@gmail.com> Date: Mon May 1 18:57:48 2023 -0600 Note that WindPhysicsImmunity unused. commit 2ea7d503d614e74edd9624cc284ed6956084b5ec Author: JavidPack <javidpack@gmail.com> Date: Fri Apr 28 03:22:02 2023 -0600 Docs commit 66c58666c1e202b3346be436f59377faa6d21e28 Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 27 18:48:35 2023 -0600 Test doc reuse approach more. commit 2f2bd4d3b33ce6a3d38fa08a13bd91726071c355 Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 27 18:11:16 2023 -0600 More commonly asked for docs commit a43d747b7e8e0dbd3df6fc6e54291be5f16e7b02 Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 27 15:19:06 2023 -0600 Show rejection reason in MissingResourceException to show useful error for malformed texture files Current behavior just shows the usual MissingResourceException exception with closest guess being equal to the assetname. The real error shows up in logs, but is not displayed, this commit will show it to the modder. This type of error can be achieved by renaming a .webp to .png. jpg and gif seem to load fine if renamed to png, suprisingly. Others have reported that really big dimensions will also trigger this, but haven't replicated. commit ed830d65aecd80b41b8a8da0f3fb45bf23f8943a Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 27 14:08:46 2023 -0600 Localization now removes duplicates to avoid confusing situation where dup entries restore themselves commit b8b477490681b64078042a3f261a1653391b4d21 Author: JavidPack <javidpack@gmail.com> Date: Wed Apr 26 22:16:29 2023 -0600 Fix MissingResourceException issues (incorrect results or color tags too long) commit 48b21e0f00264545c0d18148bf9d154ccbf817b6 Author: JavidPack <javidpack@gmail.com> Date: Wed Apr 26 18:07:04 2023 -0600 Fixes for various reported issues commit 5fec2f8d37f8df5e451c2d1d633a71815b66fe80 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Apr 26 15:46:15 2023 +1000 Prevent registering hooks which can't be unloaded due to unidentifiable owner assembly commit 34f40d7447d9c7881e91906ee689a079cd35549b Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 24 18:25:14 2023 -0600 Minion related docs commit 2624e703efcf329e5ee571e026415ae70f1d3917 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 24 17:02:45 2023 -0600 Fix #3430 commit c4ae587c5353e1d3f4f2c7c9e24f376e2b7321be Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 24 15:27:35 2023 -0600 Update localization templates commit 3711fbc40025dcc4d4ac297845c1f9d3f60c0da9 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 24 15:24:28 2023 -0600 Misc docs and fixes commit 521b6b5b7a6460419e828d956d70a24b39094e7c Author: Stargazing Koishi <i@sgkoi.dev> Date: Mon Apr 24 12:18:44 2023 -0700 Update Chinese localization (#3426) * Update Chinese localization * Update localization * Update localization * Add newlines back * Add translation for dev and sponsored items commit 32d36290d11a730b44c00694cf45d34cae8ef603 Author: Destructor_Ben <62684035+Destructor-Ben@users.noreply.github.com> Date: Fri Apr 21 19:47:18 2023 +1200 More UI Fixes (#3343) * Fixes 1 Fixed a spacing issue in IngameOptions.cs caused by skipping the drawing of the achievements option incorrectly. Fixed a capitalization error: "Steam Workshop page" to "Steam Workshop Page". Add localization keys in the lang files for the "Next Page", "Previous Page", etc. in the informational accessories pages. Fixed the spread of the shadow in Utils.DrawBorderStringBig. * Added MouseText function to UICommon * Fixed IngameOptions * Changed MouseText Method to TooltipMouseText * Config Elements State if they require a reload * Revert "Config Elements State if they require a reload" This reverts commit cdab17a82aced84a1449f05d1333dde50630af4f. * Proper implementation of DrawBorderStringBig --------- Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit c1ca146e4a17a5a402dec772ebd0463cd99e3e42 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 21 14:52:08 2023 +1000 Fix AnyWeapon mod prefixes being stripped from class-specific items (Fixes #3408) commit e81ef50d83e5454970cdd16e7e1dbee65f6f49d1 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 21 14:44:04 2023 +1000 tModPorter can now CommentOut arrow expressions (Fixes #3421) commit 167295053c24cd1513c28afc6eb97ad34581844c Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 21 10:41:04 2023 +1000 Allow Language.GetOrRegister to work with default values generated during Load commit 27dc221d0c0b6699777787721446ea0deeb4b0fc Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 21 10:27:02 2023 +1000 A bunch of whitespace formatting, to help contributors commit bb65cf8f350d11a0ef491a9e15ad052835fcc0dc Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 21 10:07:10 2023 +1000 Fix typo in Condition.NotDownedKingSlime commit 1bec689f3ca3d1af6a748999207ce70ae03e101c Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 21 09:36:19 2023 +1000 Handle pluralization patterns in localization substitution arg offset remapping commit ba3750cbb8b0ab0675e1e8ed123c618edbc26362 Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 20 13:40:42 2023 -0600 Fix a sync issue with ExampleCustomSwingProjectile, docs commit 5b04805e4a3334eeb8a42daa9063e28a48963e50 Author: Yreorel <68769795+Ouroel@users.noreply.github.com> Date: Thu Apr 20 16:50:48 2023 +0800 Wrap many ModPlayer hooks in exception suppressors to prevent cascading failures (#3390) * trycatch the processtriggers in case a mod errors and causes cascading effects. * Update PlayerLoader.cs * Update PlayerLoader.cs * Add a lot of try-catch handlers around various ModPlayer hooks --------- Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit 53b16380ead91c52335ac238cb9e8e2b741e7d9e Author: Chicken-Bones <mehvids@gmail.com> Date: Thu Apr 20 17:05:46 2023 +1000 Apply correct damage class to new projectile based 'true melee' swords (Fixes #3419) commit b951578034b716e9365d5d12f21fb585423a4387 Author: Chicken-Bones <mehvids@gmail.com> Date: Thu Apr 20 16:32:17 2023 +1000 Fix /0 exception in IMM candidate paging implementation (Fixes #3425) commit 5f7ea462c8f04e4280de208c3de06c98cc5091c5 Author: HydroH <ixlesis@gmail.com> Date: Thu Apr 20 11:03:44 2023 +0800 Fix IME compability issue (#3375) * Fix IME compability issues for 64-bit tModLoader. * Remove message filter on IME dispose. * Add comments according to style guide. * Optimize finding window handle in InitializeClientServices. * Move ImmWrapper to a separate WinImm32IME. * Use try/finally to ensure ImmReleaseContext is called. * Add constants names. * Update composition string and candidate list only when necessary. * Remove redunant code, fix Message struct format. * Fix IME not typing in characters. * Replace Marshal.AllocHGlobal with stackalloc. * Use spans to handle candidate list. * Simplify candidate marshalling a bit more * Implement paging * Minimize patch size * Revert removed conditionals --------- Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit af4fddd9fd5ee81cc3a5a7d9eb5924ebe5a736c2 Author: JavidPack <javidpack@gmail.com> Date: Wed Apr 19 18:52:34 2023 -0600 Adjust a tmodporter message commit aca3b6777e5f5d6dd7db2f55629ca5e3b019c841 Author: Midnight417 <127630481+Midnight417@users.noreply.github.com> Date: Wed Apr 19 20:35:26 2023 -0400 ExampleMod Example for a Custom Swing Sword (#3403) * Add ExampleCustomSwingSword * fix style and syntax * Refactor custom swing and add new texture * custom swing projectile reorganization * final fixes to ExampleCustomSwingSword * Some fixes and clarifications --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit 18db721d825f4a50174de85c06249d65a9b5c78b Author: Jacob Adams <56134537+Jadams505@users.noreply.github.com> Date: Wed Apr 19 19:21:28 2023 -0400 BuyItem and PreReforge split into more granular methods, Fixed savings in void bag not being considered when reforging (#3392) * Update Player.TML.cs * BuyItem->CanAfford+PayCurrency. Remove Player.CanBuyItem * PreReforge->CanReforge+PreReforge. --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit e1ff158a1030532590744aa4d8a3d543bfdd0d8a Author: JavidPack <javidpack@gmail.com> Date: Wed Apr 19 16:09:32 2023 -0600 Fix #3388 , add ModDust.PreDraw, ExampleCustomDrawDust example. commit 6986ec9b07cfda9abc952f9576fc196af0aa2072 Author: Ishigh1 <45936615+Ishigh1@users.noreply.github.com> Date: Wed Apr 19 02:50:01 2023 +0200 Mod/GlobalNPC.CanBeHitByNPC hooks (#3423) * initial commit * Update NPCLoader.cs * aggressor -> attacker commit d01e000d5b019bc1eddbc83171add7a3b6ee20dd Author: JavidPack <javidpack@gmail.com> Date: Tue Apr 18 16:42:53 2023 -0600 Fix $parentVal issues commit aee4d0edc5eca452e355930dbe21ec24ee1f495d Author: Fernando Omori <54488262+nih0n@users.noreply.github.com> Date: Tue Apr 18 06:34:59 2023 -0300 Update AddContent<T> return type (#3411) commit ee6c693078416a54542713c8362de39271d04e4b Author: Solxanich <59670736+Solxanich@users.noreply.github.com> Date: Tue Apr 18 02:56:31 2023 -0600 Correct LogStartup order & Int.MaxValue UnloadedItem (#3418) * Correct LogStartup order & Int.MaxValue UnloadedItem * Ordering cleanups in to a dedicated StartUpSequence method * Cleanups per feedback - readjusted dependency check code * Make use of try-catch handlers during startup more consistent --------- Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit 835057fd67841a5c3a73dc63fc9d7f65afb26b18 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 17 19:07:45 2023 -0600 Added failing tests for Expression body methods using ModTranslation commit 85bc04067e32b2aa7485ebbfacb6d284ce24200e Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 17 18:54:42 2023 -0600 Consistent indentation for hjson comments, fix forced newline at start of file commit 607c5eda7e13de3aecf8fedb2fdac1d71054118f Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 17 12:51:03 2023 -0600 Note about projectile.owner commit a4d0efd598c713ee5f24039dfbc766125be1f365 Author: Chicken-Bones <mehvids@gmail.com> Date: Mon Apr 17 12:02:17 2023 +1000 Remove test exception from #3414 commit 724598b4dd0b90d591c6863d2c9c6d15f65ef177 Author: Solxanich <59670736+Solxanich@users.noreply.github.com> Date: Sun Apr 16 18:44:52 2023 -0600 Re-order Program startup so error messages are relevant (#3414) * Re-order Program startup so error messages are relevant * Refactor and Finalization after validation in support channel commit 3d8ce5504e4cf219ede897a1ab010b47c3793507 Author: JavidPack <javidpack@gmail.com> Date: Sat Apr 15 22:28:23 2023 -0600 Docs for various tile related fields, defense fields commit ea0150d5e5609b7413d119c6c56ab9412964c453 Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Sat Apr 15 11:15:08 2023 -0600 Fix side effect in last commit and include comment commit a614e184131ff75d3faea434839c779f083191e4 Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Sat Apr 15 10:56:59 2023 -0600 Fix #3410 commit 3b200e2825e30dc22bb6d02b42b9af801e5fa89f Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Fri Apr 14 16:30:19 2023 -0600 More Capitalization Content Fixes commit a8b1c37ca1755683553844894236064452183d6d Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 14 14:12:59 2023 +1000 Add NPC.HitModifiers.NonCritDamage commit c521bb3252384e395ca98ecf890a864b5bf7bf45 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 14 14:08:32 2023 +1000 Fix global type lookup building with CloneDefaults and other repeat calls commit c24b32bb9e2dc300e85f13a5f7de55697c07deaa Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 13 14:45:34 2023 -0600 Update ActiveSoundShowcaseProjectile.cs commit a6603c17659aa2896a653f9cdb67e83b2feee768 Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 13 12:56:45 2023 -0600 1.4.4 active sound showcase (#3407) * Wip showcase of active sounds. Looped sounds seem buggy currently * Fix "waterfall sound" issue, fix looped sounds getting orphaned * Finish ActiveSoundShowcase examples, best practices. commit c1f1c3b028c877768e7fbcb94957d27c5c474261 Author: JavidPack <javidpack@gmail.com> Date: Thu Apr 13 12:32:47 2023 -0600 Docs, BuffHandle_SpawnPetIfNeededAndSetTime usage commit 3bf71b907465f8d96199f46435d133c51ebfa432 Author: Yreorel <68769795+Ouroel@users.noreply.github.com> Date: Thu Apr 13 21:00:45 2023 +0800 [1.4.4] unhide (#3406) * unhide * Update GlobalNPC.cs commit 0a3ea0a7f387f6bdbacd11afb2c08d34d201fb6d Author: JavidPack <javidpack@gmail.com> Date: Wed Apr 12 18:42:01 2023 -0600 Fix #3400 (Item tags in tooltips "blurry") commit 3f42fd42014bc7ac5a275e25b830f550a3f878f4 Author: JavidPack <javidpack@gmail.com> Date: Wed Apr 12 16:40:42 2023 -0600 Detect mods that need rebuild feature. Hooked up to localization edits currently. commit e003bb3ca966634de41c471d4e2819a35f6e6478 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Apr 12 08:23:01 2023 +1000 Fix some missing data operations with TileWallBrightnessInvisibilityData commit fd0af9f637b385bcd17b46921d15a743e00461c2 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Apr 12 06:23:53 2023 +1000 Fix tModPorter commenting out some kinds of multi-line statements commit 1ca922c6773fbada14a1756013a1cc6273b05212 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Apr 12 04:56:38 2023 +1000 Fix bug causing vanilla saves to fail validating when modded NPCs were shimmered commit d23c4a2d95c1158672cbdb41a08c234ee3c75767 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Apr 12 04:21:01 2023 +1000 Fix global data on vanilla NPCs when the NPC is missing during load commit 2ae60e1c80ef0a78ad69826766bd6243919f8879 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Apr 12 03:50:38 2023 +1000 Significantly Improve GlobalType Performance (#3389) * Split globals into SlotPerEntity and singleton instances * Implement conditional globals without requiring a SlotPerEntity * Make TryGetGlobal return false instead of crashing on type 0 entities * Revert accidental change which broke custom ModPlayer hooks commit 823498ab1986750b9fec74e7c7bba5032f4765bf Author: BasicallyIAmFox <65787578+BasicallyIAmFox@users.noreply.github.com> Date: Tue Apr 11 07:40:41 2023 +0500 added overloads for UseImage (#3391) commit e04fd83162b3685eda70b3d11827944906261216 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 10 11:46:48 2023 -0600 Fix #3396 , add LocalizedText.Empty example to ExampleLamp commit 8261d3335dcaa0ad63a6de3ca97259804bec37db Author: JavidPack <javidpack@gmail.com> Date: Sat Apr 8 22:20:40 2023 -0600 Clean up Old folder: Remove already ported Tree examples. commit 5599de2526fb94c910b2ead6844928f8a3f7c310 Author: JavidPack <javidpack@gmail.com> Date: Sat Apr 8 22:06:04 2023 -0600 Mention ShimmerTransformToItem in ShimmerShowcase, docs. commit cd8d91f4c6ef82ac7a8228e34d1c59c5a6418f3f Author: Mirsario <me@mirsar.io> Date: Sun Apr 9 00:26:28 2023 +0300 Fixed keybinds getting reset, + handle legacy entries. commit 65f3825badfed4773808e015b8ba32dae58e8b53 Author: RazzSG <51904365+RazzSG@users.noreply.github.com> Date: Fri Apr 7 14:15:58 2023 +0300 Update ru-RU tModLoader.json (#3382) commit 361b8f11735ef89b0f45bd106fdde4bcb92f0417 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 7 11:27:13 2023 +1000 Internal refactors for maintainability (#3387) * Simplify HookList Enumerate calls (and improve performance a bit) * More loader cleanup, simpler registration and id count pattern * Delete stale code/comments * Remove duplicate type validation, and add add send/save pair checks * Remove net order syncing, rely on load order and better future validation * Make SystemLoader.HookList interface consistent * Cleanup GlobalItem/NPC/Projectile IO code, flatten the saving of UnloadedGlobalItem * Loop and variable naming consistency in item/npc/proj loader * Make ItemTagHandler only use base64 when necessary * Properly turn Deprecated items to air * Import cleanup cleanup * Group all global related methods * Remove missed legacy exactType = true argument * ResetStaticMembers recursive defaults to true commit 468d6c8030b1895520df5168d945a69244bfccdf Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 7 04:47:02 2023 +1000 Add /etc/paths.d fallback for finding system dotnet install path on OSX commit bc25503f04df7e6d325f2ead3bf36c47c6916eb1 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Apr 7 04:00:52 2023 +1000 Add replacement methods for removed HookEndpointManager APIs commit 3c2c4de0e2c95958bfb303c32d64a4642b664b27 Author: turtletowerz <turtletowerz@proton.me> Date: Wed Apr 5 00:27:01 2023 -0400 Fix console commands on Docker servers (#3372) * Fix server console in docker server * README Cleanup commit 956ccbfce0e3d3a0bd97ab176151a99e78b38013 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 3 20:11:17 2023 -0600 Fix example pylon hover text, errant localization keys. commit 78e8c45feaade7d6ca8504bd7dde941749404225 Author: Sahja <mtkloepf@mtu.edu> Date: Mon Apr 3 20:45:02 2023 -0400 Updated some documentation (#3374) * Updated some documentation per Issue #3316 * inheritdoc and some links. Remove tags that don't show: example and seealso --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit 2e17fedf0e05378a31d558e9e5b12eed16da811d Author: Hector <noctisatrae@pm.me> Date: Tue Apr 4 01:56:27 2023 +0200 Improving the documentation (Recipe.Create) (#3378) * Adding some documentation to the Recipe.Create method I recently saw in the documentation that it was not documentation even if it was important. * Even more recipe doc fixes --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit efba767f80452523462a39d9d87b6e5463eb7aa2 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 3 17:16:29 2023 -0600 Update tModLoader.json commit 92ddce0a0a007e5bb1d8418fdccc36f23829cb9e Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 3 17:14:37 2023 -0600 Update bug_report.yml commit 3bf4eac7fee6fbae7e954669bf94dc516fb7f9e5 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 3 16:06:36 2023 -0600 Update localization templates commit da2fd764cd8dfca61674e3452e62b8f8e4214499 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 3 15:59:20 2023 -0600 Fix #3373 (Fix single hook regression) commit e94722cbbc2b27d2140000294b896f0a0510a901 Author: JavidPack <javidpack@gmail.com> Date: Mon Apr 3 15:26:06 2023 -0600 Fix sounddisabled and dustdisabled not being applied to HurtInfo commit 651b706e06b006d6748cae11118865077bfcfb91 Author: Destructor_Ben <62684035+Destructor-Ben@users.noreply.github.com> Date: Tue Apr 4 09:14:33 2023 +1200 Better Mod Development Menu (#3344) * Fixed sizing and added links * Adjust some things, add back panel, don't lengthen input field. * Fix links --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit 320f9bfd31b9dbd59d4c99a6b8bbc5667dae7b5b Author: ScalarVector <bobfishkins23@yahoo.com> Date: Mon Apr 3 16:05:19 2023 -0400 Change legacy version message (#3377) commit ee5d73d193ad4044f61a426354b88c2db028a273 Author: Mirsario <me@mirsar.io> Date: Sun Apr 2 07:44:54 2023 +0300 Removed AprilFools.cs, and Herobrine. commit 3a0fa3aa7bf41af0e31d34039a1b855e3e6e9ac3 Author: DarioDaF <dario.fagotto@gmail.com> Date: Sun Apr 2 01:28:49 2023 +0200 Hotfix enumeration stopped error (Task edit UI) and icon disappearing (#3371) commit f2d24622a29a3f85671056aa2863c6d3aca172cc Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Sat Apr 1 09:30:16 2023 -0600 Bug fix for publishing net new mods commit e1c273f214dfd11bcf8bc62ec90ff0647fcaa464 Author: Solxanich <59670736+Solxanich@users.noreply.github.com> Date: Fri Mar 31 07:40:16 2023 -0600 finalize touchups for 1.4.4 preview for modders (#3363) commit 4c5d49d60a74c311f683f383a2355b89880a2111 Author: Destructor_Ben <62684035+Destructor-Ben@users.noreply.github.com> Date: Thu Mar 30 10:11:09 2023 +1300 IL Editing GenPasses (#3240) * IL Editing GenPasses * Method Split * Making GenPasses created at load time * IL Editing and Detouring * Fixes the EM example and made sure the hooks automatically unloaded * Made review changes * Changed VanillaGenPasses to IReadOnlyDictionary * Removed Unnecessary Reflection * Remove dictionary wrapper * Direct access the vanilla gen passes, since they won't change * Wrap IL example in try-catch and DumpIL on exception * Make examples a bit friendlier (logging only) * Handle MonoMod update (made HookEndpointManager inaccessible) * Better note about detour self reference --------- Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit 6a7137385bd5aa3170ec91fc8ace94cf13c36347 Author: Chicken-Bones <mehvids@gmail.com> Date: Thu Mar 30 05:38:34 2023 +1000 Add ModSystem.ClearWorld (#3360) * Add ModSystem.ClearWorld * Documentation, examples, call clearWorld before unloading mods * Doc fix commit 6ff524491af9f53d30a83e36db578aa4ab8763da Author: JavidPack <javidpack@gmail.com> Date: Tue Mar 28 17:13:10 2023 -0600 Town AttackType examples: ExampleTravelingMerchant swings weapons, ExampleBoneMerchant shoots gun. commit 8247be53aa13b2174ad6d9faf9cdf63b9b0710fb Author: JavidPack <javidpack@gmail.com> Date: Tue Mar 28 17:12:05 2023 -0600 Change DrawTownAttackGun to support any texture commit 6766754ed915cf6e7f9c7fb7c34ef414d9c9baab Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Mar 29 08:04:04 2023 +1000 Fix CheckBunny error in logs on non-windows platforms commit d728de6b694815fa0072f28c452a3dc61d1e2c9b Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Mar 29 07:18:19 2023 +1000 Update MonoMod commit a5eadbd284a815de254dfa77caedd78bbeb76691 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Mar 29 06:12:01 2023 +1000 Change some Main.max fields to static readonly in prep for future changes commit 8c5554bb2f2e8550ec34e91af691a3ddbc740766 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Mar 29 05:24:06 2023 +1000 Fix default value of DefenseEffectiveness for NPCs (Fixes #3325) commit 981eacf402270cb9d5743f2ab51655f2ee09f273 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Mar 29 05:02:17 2023 +1000 Provide HurtInfo argument to FreeDodge and ConsumableDodge (#3356) (#3359) commit d12c57caca1cdd38ba01764c5a9af613c37a5998 Author: JavidPack <javidpack@gmail.com> Date: Tue Mar 28 12:51:33 2023 -0600 Fix #3025 commit 91f398db20cb620cd671fe2b4c328f16e35ac219 Author: JavidPack <javidpack@gmail.com> Date: Tue Mar 28 12:29:03 2023 -0600 ExampleJavelinBuff->ExampleJavelinDebuff commit d81c53aceda2a2b0ed72d39c9fff0fe5524db8a2 Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Mar 29 03:21:37 2023 +1000 Followup Improvements to StrikeNPC, Hit and Hurt hooks (#3355) * Add max damage 'limit' to Hit/HurtModifiers * Minor cleanup to CalculateStrikeFromLegacyValues * Improve helper methods for simple StrikeNPC call use-cases * Add documentation to Player StrikeNPC methods * Fix inconsistent capitalization, `KnockBack` -> `Knockback` * tModPorter for the couple of renames * Reduce SuperArmor crit cap to 4 commit fb6c953d38fd3a010485440f594d1a88f6c48681 Author: Kogsey <68556893+Kogsey@users.noreply.github.com> Date: Tue Mar 28 09:02:32 2023 +0800 Fixes setting npcCatchable true forcing NPC.friendly to false (#3353) * Fixes setting npcCatchable true forcing NPC.friendly to falce * Fixed two possible coding practice sins * Fix issue by fixing some vanilla npc values and adding a bool to track. * Docs * Comment --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit b65b0de2832dea2e960bae2d24edf4dd55fe27ab Author: Chicken-Bones <mehvids@gmail.com> Date: Tue Mar 28 10:37:52 2023 +1000 Add tModPorter refactor for Condition.InGraveyard commit dd3b495a55f1a09cc4319b61312108064a90d6c2 Author: Chicken-Bones <mehvids@gmail.com> Date: Tue Mar 28 10:28:19 2023 +1000 Attempt to improve GetGlobal performance by removing unused arg - inexact type lookups were low performance and rarely used. Can still be implemented manually. commit 8574f4628b917c932e5bf694e09364be9a02a847 Author: Chicken-Bones <mehvids@gmail.com> Date: Tue Mar 28 09:54:58 2023 +1000 Update ExampleMod localization files in other languages commit 179db727e9734ad151761fe9c3060fc5c4d382ac Author: Chicken-Bones <mehvids@gmail.com> Date: Tue Mar 28 09:54:32 2023 +1000 Fix MonoModHooks.DumpIL implementation commit 9a45fa8aea291b68c8fa4791818c054f1e6a4505 Author: fkwilczek <38855936+fkwilczek@users.noreply.github.com> Date: Mon Mar 27 21:13:38 2023 +0200 Fixed double damage space by trimming DisplayName of DamageType (#3349) * Fixed double damage space by trimming DisplayName of DamageType * Alternate approach --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit b893b705f157d1e350c5748ebbee0ecd252eee8f Author: JavidPack <javidpack@gmail.com> Date: Mon Mar 27 12:03:23 2023 -0600 Update ContentSamples.cs.patch commit 75f165f3591feaf097ab6e74b1b5d6b949f9faed Author: MutantWafflez <61396445+MutantWafflez@users.noreply.github.com> Date: Sun Mar 26 22:04:23 2023 -0700 Final Batch of 1.4.4 TODOs (#3350) * Remove completed/ignored TODOs * Preserve Modded Data in Journey Dupe UI * BuyItemCreationContext w/ Example * Revert tML publicization of WorldGen vars * Small TODO comment update * Remove redundant timePass variables * Handful of ExampleOnBuyItem changes * Item NewItem overload for dropItemCheck * Update todo * Remove Obsolete MessageIDs, tModPorter * Remove redundant tab * Deerclops dayRate change * Unnecessary space removal * RefactorInstanceMember to RenameStaticField * Vanilla format for worldEventUpdates changes * Various formatting changes, isAShopItem unset * BuyItemCreationContext changes & EM changes * NPCBoughtFrom -> VendorNPC commit e75c100b4326fe6920e0e6476bd37b53a0f5a8b7 Author: Destructor_Ben <62684035+Destructor-Ben@users.noreply.github.com> Date: Mon Mar 27 14:11:52 2023 +1300 IL Editing QoL Stuff (#3252) * Hook Dumping and LogILPatchFailure * Added ILPatchFailureException commit 846151b6414326e3a998f6fa1721bb3c4eab6770 Author: Rijam <jacobrmoreno@hotmail.com> Date: Sun Mar 26 19:08:33 2023 -0600 More Conditions (#3348) * More Conditions * Added 3 more conditions commit 6fc7c1f777d11bf21f9e10e445aba36a12a4066c Author: fkwilczek <38855936+fkwilczek@users.noreply.github.com> Date: Mon Mar 27 02:57:39 2023 +0200 Fixed problem with opening folders on linux (#3336) commit 351d2c6ccdf5ff5d4c1acc936abe290f9d240573 Author: Exterminator <kristijan.kos99@gmail.com> Date: Sun Mar 26 19:59:23 2023 +0200 update hooks (#3351) commit 4a1aa0adccde03174881e89de799c3224c77411b Author: BasicallyIAmFox <65787578+BasicallyIAmFox@users.noreply.github.com> Date: Sat Mar 25 13:53:48 2023 +0500 Declarative Shops (#3219) * yay * changews * Update Chest.cs.patch * meow * forgot * Update TMLLootDatabase.cs * Update TMLLootDatabase.cs * uh * Update ExamplePerson.cs * A series of compilation fixes * Final Compilation fixes * Update TMLLootDatabase.cs * Update TMLLootDatabase.cs * Large Rework to Get it to Load in to a World for Testing * Update TMLLootDatabase.cs * Fixes for Invisible item issues * Re-Add Pylons + Dummyproof EmptyInstance for SetDefaults * queen and eol conditions * painter left. * painter * Remove duplicate shop id conversion array + example global PostSetupShop * Global NPC Test InsertAfter * pylons * trying to fix AddCandidates (№1) * . * Update ExampleGlobalNPC.cs * should we change Entry to be class? * Update ExampleBoneMerchant.cs * updated parameters for SetupShop * Update ExampleGlobalNPC.cs * Update ChestLoot.Entry.cs * removed old SetupShop hook and PylonShopNPC (not needed anymore hopefully) * ModifyActiveShop hook * Update NPCLoader.cs * Update ExampleGlobalNPC.cs * example mod fixes and expert/master conditions * Update Chest.cs.patch * changes * removed OnFail and OnSuccess * Review changes! * Removed this[int] method from NPCShop * Removed SetupLootboxShop and renamed TMLLootDatabase to NPCShopDatabase * Funny changes! (too many to put them all in here) * OrderLast, probably fixed SortBeforeAfter and added NoPylons dictionary * readded PylonShopNPC, made sorting run after recipes * guh * Dread * Mechanic is NOT Merchant! * Accessory Slots are evil * Moved DrawAccSlots call to be after shop rendering * Added missing entries in the shops * some documentation and tmodportertests (successful * unbroke traveling merchant * SetupShop is now ModifyActiveShop. BARTENDER * Fix tModPorter tests, SetupShop -> ModifyActiveShop * Better documentation and consistent parameter naming * ExampleMod localization auto-export update * Fix typo, Reverse -> Reserve * NPCShop.items -> entries * Improve NPCShop.Build code quality/performance * Make NPCShop.Entry ordering calls more user friendly (like Recipe) * Process NPCShop.Entry.OrdersLast before actual ordering * Refactor shop sorting into its own method. Simplify * Fix conditions in ExampleGlobalNPC * Fix NPCShop.SortBeforeAfter so it actually sorts * Move SortBeforeAfter into NPCShop (not entry) * Simplify iteration in for ModifyShop * Move bartender shop setup back into BartenderShopNPC * Improve code formatting of Bartender shop * Remove NPCShop. qualifiers everywhere in NPCShopDatabase * Added Entry.OnShopOpened and made NPCShop.Build to clone items rather than directly passing them. * Now Entry.OnShopOpen actually gets called whenever item is added to shop. * Minor compile fixes and refactors * Use a shop name for the travelling merchant's shop, for forwards compat * Simplify SetupShop, always has an NPC reference. Use null for empty slots * Add NPCShop.FillLastSlot * Fix PostBuyItem being called twice * More naming cleanup and property refactors * Cleanup Insert/Add overloads, add InsertBefore/After(Entry) * Fix brace formatting style * Move NPCLoader shopToNpc into NPCShopDatabase * doc fix * Order pylons last * Added condition for shimmered npcs. More in desc - Added an example where item appears just if NPC is shimmered. - Example where if NPC is shimmered, then all prices are reduces by 50% - Moved shop examples from ExampleGlobalNPC to ExampleNPCShop - :person_with_blond_hair: * Cleanup example shop conditions * Slight consistency/readability improvements for some moon phase conditions * Use generic Add method in ExampleMod where possible * Add Player.TalkNPC * Fix wrong pylon conditions * Improve pylon condition localisations * Shop database cleanup, some condition fixes in there * Keep vanilla setup shop method for comparison * Fix NoPylons exclusion, meant to be travelling merchant * Only make pylon entries once * Add automatic shop testing code * Fix several items, conditions and ordering issues in NPCShopDatabase * Change ModPylon to use the new NPCShop.Entry system * Improve localizations * Further improve localizations * Remaining localization key reference issues and naming tweaks * Remove condition parameters from ModPylon.GetNPCShopEntry * Fixed order of items in shops. * More condition fixes as well as NoPylons now used * Fixed compilation error * Made pylon entries list to clear on unload (incase it doesn't already) * Now using TryGetValue to avoid KeyNotFound exception * Change NoPylons to be a Set * Fix wrong condition for RoyalRomance * Implement pylons for bartender with hack that matches vanilla * Make shop test code ignore position rounding issues * Add localizations for DownedQueenSlime condition * Make shop overflow message less angry, and localize it * Fix bartender pylon selling logic when > 1 pylon sold * Revert the attempts to avoid condition quirks in shop tests * Fix corruption and crimson localizations being reversed * Use >= for golf score condition * Add special steampunker outfit condition * Disable testing code * Call GetOrRegister when making conditions via the string ctor overload * Merge NPCShop.Condition into Condition * Slightly more consistent condition localizations * Fix SetupTravelShop hook * Add AbstractNPCShop and info entries for Travelling Merchant * Rename Build -> FillShop. Add ICollection variant for future compat * Rename AbstractNPCShop.IShopEntry to Entry * Better ExampleTravelingMerchant showcasing new shop system * Fix bug with ExampleTravelingMerchant --------- Co-authored-by: nmoll <59670736+Solxanich@users.noreply.github.com> Co-authored-by: Chicken-Bones <mehvids@gmail.com> commit 7b0e83a2b2777ce058e9642a1745d51010ce1f98 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Mar 24 06:57:33 2023 +1000 Rename file to match classname commit 716aad7222e51d4ba72ad14c001bb6541d1bfe43 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Mar 24 06:51:55 2023 +1000 Fix typo commit 1434db5d01a020c0b65670741f181e8ca7bee037 Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Mar 24 06:45:47 2023 +1000 Unify Localized Conditions (#3341) * Move Recipe.Condition to Condition. Improve Localizations * Switch ItemVariants over to using Condition * Add a way to convert a Condition to an IItemDropRuleCondition * Add tModPorter * Fix custom recipe condition example (and localization of) * Improve example drop condition code. No need to check simulation * Add don't starve seed condition, and tweak some naming * Add some control/helpers for localizing SimpleItemDropRuleCondition * Simplify ExampleNPCLoot examples * Properly localize example drop conditions * Condition -> Conditions in localizations commit 40eb3d9214cd3376cfd39f89f8ba894898e911fe Author: Chicken-Bones <mehvids@gmail.com> Date: Fri Mar 24 04:57:02 2023 +1000 Fix memory/performance leak on reload (#3035) commit 048567ff43470dfa43022e9182eb9ff15b7e4fcd Author: blushiemagic <kayleekim96@gmail.com> Date: Wed Mar 22 21:33:33 2023 -0400 Patron sets for Frosty and Linus commit fe51840a7436d96d3278b3c9c742c2f72418ebac Author: fkwilczek <38855936+fkwilczek@users.noreply.github.com> Date: Thu Mar 23 00:11:18 2023 +0100 Fixed problem with detecting dotnet on linux (#3334) * Fixed problem with detecting dotnet on linux * Removed unnecessary semicolon * Added old dotnet sdk check method as fallback * Added check to make sure that dotnet path is valid * Fixed typo commit c855cb2be8ce589378c64c9982574f376440d985 Author: RegularPhoenix <90686797+RegularPhoenix@users.noreply.github.com> Date: Wed Mar 22 22:54:14 2023 +0300 Ported Example Javelin (#3080) * Added Example Javelin Added Example Javelin Projectile * Fixes, DoT, docs, glow, Old folder cleanup --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit b26de8e504e605781b6241d0de48b0021c180414 Author: JavidPack <javidpack@gmail.com> Date: Wed Mar 22 08:40:05 2023 -0600 Update ExampleExplosive.cs commit 38cebdf1e7c701f0fe6f2e5ef2d9d390e9ccad27 Author: John Baglio <30454621+absoluteAquarian@users.noreply.github.com> Date: Wed Mar 22 00:41:54 2023 -0500 improved the logic for prettifying StackTrace file paths to be more reliable (#3335) commit 40cb769e0f2484c8f53e5ce9ac403fbde99cf75a Author: John Baglio <30454621+absoluteAquarian@users.noreply.github.com> Date: Tue Mar 21 20:17:59 2023 -0500 Revert "Replace MonoMod Hooking of StackTrace with PathMap Usage in Projects (#3305)" This reverts commit e4cb910feb455a6033290da30ac15e1b1aac6b1d. commit e4cb910feb455a6033290da30ac15e1b1aac6b1d Author: John Baglio <30454621+absoluteAquarian@users.noreply.github.com> Date: Tue Mar 21 20:17:59 2023 -0500 Replace MonoMod Hooking of StackTrace with PathMap Usage in Projects (#3305) * replace StackTrace hooking with PathMap usage * remove `Logging.PrettifyStackTraceSources()` and its related members commit 9c04a89bb6791383cccb2d2711037ddf751982dd Author: Rijam <rijam35@gmail.com> Date: Tue Mar 21 18:22:31 2023 -0600 Fix Town NPC Melee Swinging Source Rectangle (#3329) * Updated DrawTownAttackSwing * Updated summary docs for DrawTownAttackSwing * Fixed typo in summary docs * Keep texture2d, add rectangle ref --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit dd4d9a8a719ced0b150f472d02ce9b139932b486 Author: JavidPack <javidpack@gmail.com> Date: Tue Mar 21 13:51:32 2023 -0600 Comment out ExampleGlobalWall teaching example that is laggy. commit 8f96b843357a082015a011c35efb001fbf58ee59 Author: JavidPack <javidpack@gmail.com> Date: Tue Mar 21 13:45:22 2023 -0600 Port ExampleExplosive, document related methods commit 2798560a8e3c6322f57221b024640177a4c83aef Author: Chicken-Bones <mehvids@gmail.com> Date: Wed Mar 22 04:12:19 2023 +1000 Add ModifyHurtInfo and example of ModifyHitInfo commit ec894a78cf9151446471768afe255cb0a266d6ef Author: JavidPack <javidpack@gmail.com> Date: Tue Mar 21 11:29:10 2023 -0600 CanBeCollidedWithPlayerMeleeAttack->CanCollideWithPlayerMeleeAttack commit feba5a30df77fe016ff01ca51228a9505036e6b8 Author: JavidPack <javidpack@gmail.com> Date: Mon Mar 20 16:55:54 2023 -0600 RegisterKeybind doc update commit d9eceb3249a19a4c5d03c62ebbfbe3ebd33882d2 Author: JavidPack <javidpack@gmail.com> Date: Mon Mar 20 16:32:45 2023 -0600 Port #2984 to 1.4.4. Fix #2984 (New hook for specifically item melee colliding) Co-Authored-By: Creray <82579877+ItsCreray@users.noreply.github.com> commit 8c4b3404508faef24308e6a25144ab62103ef06d Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Sun Mar 19 09:12:53 2023 -0600 Update xAqult.cs commit 6ffdf8727475fafcede90c4da70a50540116a6af Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Sat Mar 18 09:25:58 2023 -0600 Fix #3218 commit 93a201b9efe75a117c9c37451e65a1ad6720178e Author: nmoll <59670736+Solxanich@users.noreply.github.com> Date: Fri Mar 17 17:31:37 2023 -0600 Update xAqult.cs commit ef581f8b54433a6e930ebb1d7e15401f5085bc2b Author: JavidPack <javidpack@gmail.com> Date: Thu Mar 16 18:32:47 2023 -0600 Localize ExampleGlobalBuff commit 6bb248ec4ba99140701e372395d22ec00a282af3 Author: stormytuna <82264356+stormytuna@users.noreply.github.com> Date: Thu Mar 16 23:21:12 2023 +0000 Changes ModifyBuffTip hook into ModifyBuffText hook (#3307) (#3309) * ModifyBuffTip -> ModifyBuffText * Example mod changes * Add tModPorter tests * Remove comments * Flip tip and rare back around * Fix tests * Add a buffName editing example --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit 805018bcad38f556f12ac258493c068208193419 Author: JavidPack <javidpack@gmail.com> Date: Thu Mar 16 14:58:14 2023 -0600 RotatedRelativePoint, MountedCenter docs, fix Example Flail jitter commit dbfbe065be1aa44d2cb7723de4c9f9fab7af8fd3 Author: Blockaroz <33135119+Blockaroz@users.noreply.github.com> Date: Thu Mar 16 16:56:10 2023 -0400 Example Drill (#3271) * Example Drill * elaboration and accuracy * mini refactor * comment fix * comment fix 2 * Example Drill finished * Some fixes and cleanup for ExampleDrill, delete MoltenDrill from Old --------- Co-authored-by: JavidPack <javidpack@gmail.com> commit 2c89b51345f01102f5b1ed0674fb1a81909e3c9a Author: JavidPack <javidpack@gmail.com> Date: Wed Mar 15 16:32:27 2023 -0600 HandlePacket clarification, Count/HasItem docs commit 6060c3c7ef27bc1c8cd4782011f6b8df649f9667 Author: JavidPack <javidpack@gmail.com> Date: Wed Mar 15 15:04:35 2023 -0600 Docs for methods showing text to player. Test include file approach commit 1691fb34e065bfa03dd07fc5c45443aba659e97d Author: JavidPack <javidpack@gmail.com> Date: Wed Mar 15 15:02:05 2023 -0600 Fix walls not dropping regression. commit 406909dbdd7c5eeaf767c12fc25df377bd13e3de Author: blushiemagic <kayleekim96@gmail.com> Date: Wed Mar 15 14:58:01 2023 -0400 Patron set for xAqult commit b727c1562dfb9456187b6b25ebba3d3355a2ecc9 Author: JavidPack <javidpack@gmail.com> Date: Wed Mar 15 13:01:51 2023 -0600…
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is the new feature?
Modernizes NPC shops. #3067.
Replaces
ModNPC.SetupShop
hook withModNPC.AddShops
(see Porting Notes)ModNPC.ModifyActiveShop
allows manual shop creation in old style.Why should this be part of tModLoader?
It could allow checking what items NPC can sell or not, better mod compatibility, and also allows easily insert item before/after X item, as well as adding some conditions to already existing items. Also avoids possible IndexOutOfRangeException, if too many items were added in single shop. Info mods can show how to obtain X item because conditions for them are localized.
Are there alternative designs?
This PR offers a good compromise between flexibility (via
AbstractNPCShop
) and standardisation. Some aspects are not ideal like the implementation of the 'fixed layout' bartender, but work pretty well overall.Sample usage for the new feature
ExampleMod updates
ExampleNPCShop
,WeaponWithGrowingDamage
,ExampleGlobalNPC
were updated.And of course all town npcs. (
ExamplePerson
,ExampleTravelingMerchant
andExampleBoneMerchant
)Porting Notes
ModPylon.IsPylonForSale(int npcType, Player player, bool isNPCHappyEnough)
->ModPylon.GetNPCShopEntry()
ModNPC.SetupShop(Chest shop, ref int nextSlot)
->ModNPC.ModifyActiveShop()
ModNPC.OnChatButtonClicked(bool firstButton, ref bool shop)
->ModNPC.OnChatButtonClicked(bool firstButton, ref string shopName)
GlobalNPC.SetupShop(int type, Chest shop, ref int nextSlot)
->GlobalNPC.ModifyActiveShop(NPC npc, string shopName, Item[] items)
FAQ
Entry.ReserveSlot()
method afterwards. If conditions are not met, then it will put 'air' item instead of simply not doing anything. Example:ModifyActiveShop
TravellingMerchantShop.AddInfoEntry
to add entries to the 'informational' list of the shop, so mods like recipe browser can show how to obtain the item.