Commit Graph

182 Commits

Author SHA1 Message Date
Chomp 4babdb59ab Added QuestConditionExtensions removed questConditionHelper 2025-06-28 10:29:33 +01:00
Chomp d2d119f3b4 Added CurrencyTypeExtensions 2025-06-28 10:09:56 +01:00
Chomp 6126dc2394 Added item extensions 2025-06-28 10:04:52 +01:00
Chomp 0be02bc3f5 Created ProfileExtensions 2025-06-28 09:27:41 +01:00
Chomp 667995be37 Converted StoreHydrationEnergyTempInProfile into extension method 2025-06-28 09:06:16 +01:00
Chomp 65d8d7432d Converted DefaultVitality into extension method 2025-06-28 09:00:23 +01:00
Chomp 31df269eb8 Updated GetBotRandomizationDetails 2025-06-28 08:58:42 +01:00
Chomp b432a6d999 Updated GetAllBotDifficulties to iterate over enum instead of strings 2025-06-28 08:46:39 +01:00
Chomp 6f4bbe02fe Minor cleanup of DialogueHelper + nullguarding 2025-06-27 22:28:30 +01:00
Chomp 2438f39cf9 Formatting improvements in DurabilityLimitsHelper 2025-06-27 22:22:18 +01:00
Chomp 8fbae0d090 Fixed Mod items with children that alter their size not having their size calculated correctly #430
Renamed variables to improved readability
2025-06-27 12:58:24 +01:00
Chomp ba1db66e19 Cleanup of TraderAssortHelper
Improved caching of merged trader quest assorts
2025-06-24 23:16:41 +01:00
chompDev 04e648d862 .NET Format Style Fixes 2025-06-24 13:18:36 +00:00
Chomp c8f9769ad7 Added 2 handlers for locations and skills keywords 2025-06-24 14:17:56 +01:00
chompDev 059a86b773 .NET Format Style Fixes 2025-06-23 12:37:06 +00:00
Chomp 7511597c9e Added clearer check for expired player offers 2025-06-23 13:36:26 +01:00
chompDev f15440aa82 .NET Format Style Fixes 2025-06-23 09:08:42 +00:00
Chomp fec51f824c Fixed flea offers not filtering by currency 2025-06-23 10:08:05 +01:00
Cj b3dca61ac0 Break rest of repeatable quest generation code into components. Fix nullability of exploration generation and improve error handling, make new helper method, add pick random quest type method to controller (#419) 2025-06-23 10:03:56 +01:00
chompDev 6820d7b8be .NET Format Style Fixes 2025-06-22 19:51:53 +00:00
Cj 811791f7d3 Repeatable quest generation (Part 1) (#417)
* Refactor and breakout CompletionQuestGenerator.cs

* make `GenerateAvailableForFinish` protected
2025-06-22 20:51:18 +01:00
Chomp 34d4de1d54 Fixed nullref in loot generation when Location has no item limits 2025-06-22 08:35:58 +01:00
Chomp 21bd868abe Added ability to track loot items and prevent more than a pre-defined amount from spawning
Replaced `location.json` `forcedLootSingleSpawnById` with `lootMaxSpawnLimits`

Added 5 item limit to `Labrys research notes` #290
2025-06-21 14:45:08 +01:00
Archangel f7782e1b1a Begin cleanup of quest model & nullability in Quests & Achievements 2025-06-20 14:24:58 +02:00
chompDev ab22346870 .NET Format Style Fixes 2025-06-20 07:48:43 +00:00
Cj 445243aad5 Task: Quest config changes Part 1 (#407)
* Remove nullable and add properties, make side use an enum instead of a string.

* remove double semi-colon

* fix comment
2025-06-20 08:48:12 +01:00
chompDev 1a6f5f779d .NET Format Style Fixes 2025-06-19 13:36:57 +00:00
Lacyway 8ef16880f4 Fix stackoverflow (#406) 2025-06-19 14:36:21 +01:00
Chomp 8276e7bef8 Added rootItem to CreateOffersFromAssort and skip RemoveBannedPlatesFromPreset when creating replacement expired offer
Added  `isExpiredOffer` `CreateSingleOfferForItem`, Only remove armor plates on non-expired offers + added helper method `RemoveArmorPlates`
2025-06-19 12:10:08 +01:00
refringe 6e01428b2b .NET Format Style Fixes 2025-06-18 17:09:20 +00:00
Chomp be87e78ac0 Cleaned up caching used inside HandbookHelper
Removed INT cast when returning value from `FromRUB`
Renamed `HydrateLookup` and made protected
Made `LookupCollection` protected and moved inside `HandbookHelper
2025-06-18 15:02:21 +01:00
Chomp 73328b4711 Fixed typo in locale key 2025-06-18 13:59:52 +01:00
Chomp af31906cb4 Made SellToTraderQuestConditionCache a property 2025-06-18 13:41:54 +01:00
Cj 89f4d10faa Refactor SellItemToTrader logic (#403)
* Refactor SellItemToTrader logic

* add comments and make QuestHelper a singleton

* add localization for error

* grammar
2025-06-18 13:14:35 +01:00
Chomp a7a09a60e3 Fixed starting Burning rubber showing Easy Start Part 1
Accepting a quest now checks if player has valid level before adding addition quests to players profile
2025-06-17 16:00:54 +01:00
Chomp 48871eba81 Fixed warning being caused by ragfair code trying to add offer to expired cache twice 2025-06-16 20:34:44 +01:00
Chomp b69544ae2c Added lock to GetStaleOfferIds
Made `RagfairRequiredItemService` a singleton
Made `RagfairRequiredItemService ` store offerIds instead of offer objects, reducing memory footprint
Reworked `GetOffersThatRequireItem` to work with `RagfairRequiredItemService` changes
Moved `GenerateDynamicOffers` to run after garbage colelction, this means GC will work on memory prior to new offers being added but after stale offers are removed

Made `PaymentHelper` a singleton + Store currency tpls in a hashset instead of list

Comment improvements
2025-06-16 14:46:37 +01:00
Chomp e869f6ebef Refactored ragfair code for improved readability 2025-06-16 13:00:06 +01:00
Chomp 1f061cfe89 Refactor of airdrop code
Made forced loot aware of weapon and armors. Now adds their presets instead.
Made `GetLootThatFitsContainer` aware of items inside container and will fail when container is full
Fixed issue where split stacks were not added correctly to airdrops

Comment improvements
2025-06-14 18:56:19 +01:00
Chomp e596974d07 Cleaned up usings 2025-06-14 16:43:24 +01:00
Chomp 4e89fbbfd8 Fixed typos and improved code readability 2025-06-14 12:42:19 +01:00
agavalda 610e971568 Use double for quantity instead of int (#393)
Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2025-06-13 09:25:12 +01:00
Chomp 9c37b79c1d Improved GetDeltaQuests description 2025-06-12 23:05:28 +01:00
Chomp c2e0193450 Fixed inverted logic inside GetDeltaQuests 2025-06-12 23:03:29 +01:00
Chomp 6175e37044 Add todo for RewardType.WebPromoCode 2025-06-11 21:38:18 +01:00
Chomp 327ad33bb6 Added comments
Made fields readonly
2025-06-11 15:05:12 +01:00
Chomp e8b938faab Cleaned up GetPresetItemsByTpl and GetPresetItems 2025-06-10 16:24:42 +01:00
Chomp 650b94540b Expanded ragfair.offerItemCount functionality. #388
Is now defined per item type with a fallback.

Currently only ammo boxes have custom values (0 to 3 vs the default 7 to 30)
2025-06-10 16:20:00 +01:00
Chomp 05354d8cbc Cleaned up CompleteQuest
Optimised `GetDeltaQuests`
Simplified `FindAndRemoveQuestFromArrayIfExists`

Various comment formatting fixes
2025-06-10 14:57:36 +01:00
Chomp c8a6943eaf Fixed GetQuestsFromProfileFailedByCompletingQuest not processing multiple failure conditions #345 2025-06-10 10:32:29 +01:00