forked from OpenWF/SpaceNinjaServer
revert removal of unlockAllSkins cheat
This commit is contained in:
parent
cc92609740
commit
ddf5468bff
@ -11,6 +11,7 @@
|
||||
"administratorNames": [],
|
||||
"autoCreateAccount": true,
|
||||
"skipTutorial": false,
|
||||
"unlockAllSkins": false,
|
||||
"fullyStockedVendors": false,
|
||||
"skipClanKeyCrafting": false,
|
||||
"spoofMasteryRank": -1,
|
||||
|
||||
@ -10,6 +10,7 @@ import { equipmentKeys } from "../../types/inventoryTypes/inventoryTypes.ts";
|
||||
import type { IPolarity } from "../../types/inventoryTypes/commonInventoryTypes.ts";
|
||||
import { ArtifactPolarity } from "../../types/inventoryTypes/commonInventoryTypes.ts";
|
||||
import type { ICountedItem } from "warframe-public-export-plus";
|
||||
import { ExportCustoms } from "warframe-public-export-plus";
|
||||
import { applyCheatsToInfestedFoundry, handleSubsumeCompletion } from "../../services/infestedFoundryService.ts";
|
||||
import {
|
||||
addEmailItem,
|
||||
@ -22,7 +23,7 @@ import {
|
||||
getCalendarProgress
|
||||
} from "../../services/inventoryService.ts";
|
||||
import { logger } from "../../utils/logger.ts";
|
||||
import { addString } from "../../helpers/stringHelpers.ts";
|
||||
import { addString, catBreadHash } from "../../helpers/stringHelpers.ts";
|
||||
import { Types } from "mongoose";
|
||||
import { getNemesisManifest } from "../../helpers/nemesisHelpers.ts";
|
||||
import { getPersonalRooms } from "../../services/personalRoomsService.ts";
|
||||
@ -331,6 +332,20 @@ export const getInventoryResponse = async (
|
||||
inventoryResponse.FlavourItems.push({ ItemType: uniqueName });
|
||||
}
|
||||
});
|
||||
|
||||
if (config.unlockAllSkins) {
|
||||
const ownedWeaponSkins = new Set<string>(inventoryResponse.WeaponSkins.map(x => x.ItemType));
|
||||
for (const [uniqueName, meta] of Object.entries(ExportCustoms)) {
|
||||
if (!meta.alwaysAvailable && !ownedWeaponSkins.has(uniqueName)) {
|
||||
inventoryResponse.WeaponSkins.push({
|
||||
ItemId: {
|
||||
$oid: "ca70ca70ca70ca70" + catBreadHash(uniqueName).toString(16).padStart(8, "0")
|
||||
},
|
||||
ItemType: uniqueName
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (typeof config.spoofMasteryRank === "number" && config.spoofMasteryRank >= 0) {
|
||||
|
||||
@ -21,6 +21,7 @@ export interface IConfig {
|
||||
administratorNames?: string[];
|
||||
autoCreateAccount?: boolean;
|
||||
skipTutorial?: boolean;
|
||||
unlockAllSkins?: boolean;
|
||||
fullyStockedVendors?: boolean;
|
||||
skipClanKeyCrafting?: boolean;
|
||||
spoofMasteryRank?: number;
|
||||
@ -128,8 +129,7 @@ export const configRemovedOptionsKeys = [
|
||||
"fastClanAscension",
|
||||
"unlockAllFlavourItems",
|
||||
"unlockAllShipDecorations",
|
||||
"unlockAllDecoRecipes",
|
||||
"unlockAllSkins"
|
||||
"unlockAllDecoRecipes"
|
||||
];
|
||||
|
||||
export const configPath = path.join(repoDir, args.configPath ?? "config.json");
|
||||
|
||||
@ -139,6 +139,11 @@ export const handleInventoryItemConfigChange = async (
|
||||
case "WeaponSkins": {
|
||||
const itemEntries = equipment as IItemEntry;
|
||||
for (const [itemId, itemConfigEntries] of Object.entries(itemEntries)) {
|
||||
if (itemId.startsWith("ca70ca70ca70ca70")) {
|
||||
logger.warn(
|
||||
`unlockAllSkins does not work with favoriting items because you don't actually own it`
|
||||
);
|
||||
} else {
|
||||
const inventoryItem = inventory.WeaponSkins.id(itemId);
|
||||
if (!inventoryItem) {
|
||||
logger.warn(`inventory item WeaponSkins not found with id ${itemId}`);
|
||||
@ -151,6 +156,7 @@ export const handleInventoryItemConfigChange = async (
|
||||
inventoryItem.IsNew = itemConfigEntries.IsNew;
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "LotusCustomization": {
|
||||
|
||||
@ -1112,6 +1112,10 @@
|
||||
<input class="form-check-input" type="checkbox" id="skipTutorial" />
|
||||
<label class="form-check-label" for="skipTutorial" data-loc="cheats_skipTutorial"></label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" id="unlockAllSkins" />
|
||||
<label class="form-check-label" for="unlockAllSkins" data-loc="cheats_unlockAllSkins"></label>
|
||||
</div>
|
||||
<div class="form-check">
|
||||
<input class="form-check-input" type="checkbox" id="fullyStockedVendors" />
|
||||
<label class="form-check-label" for="fullyStockedVendors" data-loc="cheats_fullyStockedVendors"></label>
|
||||
|
||||
@ -215,6 +215,7 @@ dict = {
|
||||
cheats_dontSubtractVoidTraces: `Void-Spuren nicht verbrauchen`,
|
||||
cheats_dontSubtractConsumables: `Verbrauchsgegenstände (Ausrüstung) nicht verbrauchen`,
|
||||
cheats_unlockAllShipFeatures: `Alle Schiffs-Funktionen freischalten`,
|
||||
cheats_unlockAllSkins: `Alle Skins freischalten`,
|
||||
cheats_unlockAllCapturaScenes: `Alle Photora-Szenen freischalten`,
|
||||
cheats_universalPolarityEverywhere: `Universelle Polarität überall`,
|
||||
cheats_unlockDoubleCapacityPotatoesEverywhere: `Orokin Reaktor & Beschleuniger überall`,
|
||||
|
||||
@ -214,6 +214,7 @@ dict = {
|
||||
cheats_dontSubtractVoidTraces: `Don't Subtract Void Traces`,
|
||||
cheats_dontSubtractConsumables: `Don't Subtract Consumables`,
|
||||
cheats_unlockAllShipFeatures: `Unlock All Ship Features`,
|
||||
cheats_unlockAllSkins: `Unlock All Skins`,
|
||||
cheats_unlockAllCapturaScenes: `Unlock All Captura Scenes`,
|
||||
cheats_universalPolarityEverywhere: `Universal Polarity Everywhere`,
|
||||
cheats_unlockDoubleCapacityPotatoesEverywhere: `Potatoes Everywhere`,
|
||||
|
||||
@ -215,6 +215,7 @@ dict = {
|
||||
cheats_dontSubtractVoidTraces: `No descontar vestigios del Vacío`,
|
||||
cheats_dontSubtractConsumables: `No restar consumibles`,
|
||||
cheats_unlockAllShipFeatures: `Desbloquear todas las funciones de nave`,
|
||||
cheats_unlockAllSkins: `Desbloquear todas las skins`,
|
||||
cheats_unlockAllCapturaScenes: `Desbloquear todas las escenas de Captura`,
|
||||
cheats_universalPolarityEverywhere: `Polaridad universal en todas partes`,
|
||||
cheats_unlockDoubleCapacityPotatoesEverywhere: `Patatas en todas partes`,
|
||||
|
||||
@ -215,6 +215,7 @@ dict = {
|
||||
cheats_dontSubtractVoidTraces: `Ne pas consommer de Void Traces`,
|
||||
cheats_dontSubtractConsumables: `Ne pas retirer de consommables`,
|
||||
cheats_unlockAllShipFeatures: `Débloquer tous les segments du vaisseau`,
|
||||
cheats_unlockAllSkins: `Débloquer tous les skins`,
|
||||
cheats_unlockAllCapturaScenes: `Débloquer toutes les scènes captura`,
|
||||
cheats_universalPolarityEverywhere: `Polarités universelles partout`,
|
||||
cheats_unlockDoubleCapacityPotatoesEverywhere: `Réacteurs et Catalyseurs partout`,
|
||||
|
||||
@ -215,6 +215,7 @@ dict = {
|
||||
cheats_dontSubtractVoidTraces: `Не вычитать количество Отголосков Бездны`,
|
||||
cheats_dontSubtractConsumables: `Не вычитать количество расходников`,
|
||||
cheats_unlockAllShipFeatures: `Разблокировать все функции корабля`,
|
||||
cheats_unlockAllSkins: `Разблокировать все скины`,
|
||||
cheats_unlockAllCapturaScenes: `Разблокировать все сцены Каптуры`,
|
||||
cheats_universalPolarityEverywhere: `Универсальная полярность везде`,
|
||||
cheats_unlockDoubleCapacityPotatoesEverywhere: `Реакторы/Катализаторы орокин везде`,
|
||||
|
||||
@ -215,6 +215,7 @@ dict = {
|
||||
cheats_dontSubtractVoidTraces: `Не вираховувати кількість Відлуння`,
|
||||
cheats_dontSubtractConsumables: `Не вираховувати кількість витратних матеріалів`,
|
||||
cheats_unlockAllShipFeatures: `Розблокувати всі функції судна`,
|
||||
cheats_unlockAllSkins: `Розблокувати всі скіни`,
|
||||
cheats_unlockAllCapturaScenes: `Розблокувати всі сцени Світлописця`,
|
||||
cheats_universalPolarityEverywhere: `Будь-яка полярність скрізь`,
|
||||
cheats_unlockDoubleCapacityPotatoesEverywhere: `Орокінські Реактори/Каталізатори скрізь`,
|
||||
|
||||
@ -215,6 +215,7 @@ dict = {
|
||||
cheats_dontSubtractVoidTraces: `虚空光体无消耗`,
|
||||
cheats_dontSubtractConsumables: `消耗物品使用时无损耗`,
|
||||
cheats_unlockAllShipFeatures: `解锁所有飞船功能`,
|
||||
cheats_unlockAllSkins: `解锁所有外观`,
|
||||
cheats_unlockAllCapturaScenes: `解锁所有Captura场景`,
|
||||
cheats_universalPolarityEverywhere: `全局万用极性`,
|
||||
cheats_unlockDoubleCapacityPotatoesEverywhere: `全物品自带Orokin反应堆`,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user