feat: fix bloodweb for spoofed inventories

This commit is contained in:
2026-04-11 15:50:51 -03:00
parent ea49c39e53
commit 50413eb420
+22
View File
@@ -574,6 +574,28 @@ void Spoofer::onBloodweb(std::string& body, std::string& respHeaders)
}
}
/*
bloodweb fixup for perks
(if all perks are unlocked, the game will interpret bloodwebs with perks as invalid so perks will be replaced with PLACEHOLDER_ITEMID)
*/
if (_config.spoofInventory)
{
if (doc.contains("bloodWebData") && doc["bloodWebData"].contains("ringData"))
{
for (auto& ring : doc["bloodWebData"]["ringData"])
{
if (!ring.contains("nodeData")) continue;
for (auto& node : ring["nodeData"])
{
if (!node.contains("contentId")) continue;
std::string contentId = node["contentId"];
if (_camperPerkIds.contains(contentId) || _slasherPerkIds.contains(contentId))
node["contentId"] = PLACEHOLDER_ITEMID;
}
}
}
}
modifyCharacterData(doc);
body = doc.dump();
#ifdef _DEBUG