Remove duplicate
This commit is contained in:
parent
4338f2cb35
commit
cc73e0591c
@ -1,9 +0,0 @@
|
|||||||
# Exclude these folders from linting
|
|
||||||
node_modules
|
|
||||||
dist/
|
|
||||||
types/
|
|
||||||
|
|
||||||
# Exclude these filetypes from linting
|
|
||||||
*.json
|
|
||||||
*.txt
|
|
||||||
*.exe
|
|
@ -1,75 +0,0 @@
|
|||||||
{
|
|
||||||
"root": true,
|
|
||||||
"parser": "@typescript-eslint/parser",
|
|
||||||
"plugins": [
|
|
||||||
"@typescript-eslint"
|
|
||||||
],
|
|
||||||
"extends": [
|
|
||||||
"eslint:recommended",
|
|
||||||
"plugin:@typescript-eslint/eslint-recommended",
|
|
||||||
"plugin:@typescript-eslint/recommended"
|
|
||||||
],
|
|
||||||
"rules": {
|
|
||||||
"@typescript-eslint/no-explicit-any": 0,
|
|
||||||
"@typescript-eslint/no-unused-vars": 1,
|
|
||||||
"@typescript-eslint/no-empty-interface": 0,
|
|
||||||
"@typescript-eslint/no-namespace": 0,
|
|
||||||
"@typescript-eslint/comma-dangle": 1,
|
|
||||||
"@typescript-eslint/func-call-spacing": 2,
|
|
||||||
"@typescript-eslint/quotes": 1,
|
|
||||||
"@typescript-eslint/brace-style": [
|
|
||||||
"warn",
|
|
||||||
"allman"
|
|
||||||
],
|
|
||||||
"@typescript-eslint/naming-convention": [
|
|
||||||
"warn",
|
|
||||||
{
|
|
||||||
"selector": "default",
|
|
||||||
"format": ["camelCase"],
|
|
||||||
"leadingUnderscore": "allow"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"selector": "typeLike",
|
|
||||||
"format": ["PascalCase"]
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"selector": "objectLiteralProperty",
|
|
||||||
"format": ["PascalCase", "camelCase"],
|
|
||||||
"leadingUnderscore": "allow"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"selector": "typeProperty",
|
|
||||||
"format": ["PascalCase", "camelCase"],
|
|
||||||
"leadingUnderscore": "allow"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"selector": "enumMember",
|
|
||||||
"format": ["UPPER_CASE"]
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"@typescript-eslint/indent": [
|
|
||||||
"warn",
|
|
||||||
4
|
|
||||||
],
|
|
||||||
"@typescript-eslint/no-unused-expressions": [
|
|
||||||
"warn",
|
|
||||||
{
|
|
||||||
"allowShortCircuit": false,
|
|
||||||
"allowTernary": false
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"@typescript-eslint/keyword-spacing": [
|
|
||||||
"warn",
|
|
||||||
{
|
|
||||||
"before": true,
|
|
||||||
"after": true
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"@typescript-eslint/explicit-module-boundary-types": [
|
|
||||||
"warn",
|
|
||||||
{
|
|
||||||
"allowArgumentsExplicitlyTypedAsAny": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,64 +0,0 @@
|
|||||||
|
|
||||||
This project was created to automate most parts of building and setting up an environment.
|
|
||||||
|
|
||||||
## **NodeJS 14.15.3:**
|
|
||||||
|
|
||||||
The first step would be to install nodejs on your pc, the version you NEED is **14.15.3**
|
|
||||||
|
|
||||||
That version is the one that has been used to test the mod templates and build scripts.
|
|
||||||
|
|
||||||
It can be downloaded from here: https://nodejs.org/download/release/v14.15.3/
|
|
||||||
|
|
||||||
A system reboot may be needed after install.
|
|
||||||
|
|
||||||
## **IDE:**
|
|
||||||
|
|
||||||
The second step is having an IDE ready. For the currect purpose we've setup a VSCodium workspace file.
|
|
||||||
|
|
||||||
You CAN use Visual Studio Code if you so desire, just keep in mind that our dev tests on the mod files was done using VSCodium.
|
|
||||||
|
|
||||||
You can get VSCodium here: https://vscodium.com/#install
|
|
||||||
|
|
||||||
## **Workspace:**
|
|
||||||
|
|
||||||
Once you have NodeJS and VSCodium ready, open the mod.code-workspace file with VSCodium (File->Open Worspace from File...).
|
|
||||||
|
|
||||||
Once the project loads into VSCodium you will be recommended to install the ESLint plugin. This is HIGHLY recommended.
|
|
||||||
|
|
||||||
## **Environment Setup:**
|
|
||||||
|
|
||||||
There is a task that will automatically setup your environment to use typescript.
|
|
||||||
|
|
||||||
To run it, you just need to go to:
|
|
||||||
|
|
||||||
> Terminal->Run Task...->Show All Tasks...->npm: install
|
|
||||||
|
|
||||||
After running this task, your environment will be ready to start coding.
|
|
||||||
|
|
||||||
DO NOT remove the node_modules folder, this is an auto generated directory that has the required dependencies to be able to use typescript and more.
|
|
||||||
|
|
||||||
## **IMPORTANT:**
|
|
||||||
|
|
||||||
Before starting to work on your mod, we suggest you read about Dependency Injection and Inversion of Control as this is the adopted architecture SPT-AKI has adopted.
|
|
||||||
|
|
||||||
It will be difficult to understand some of the problems you may be having if you dont understand the basics of it.
|
|
||||||
|
|
||||||
A guide explaining all the essentials will be available on the hub on release for you to read about.
|
|
||||||
|
|
||||||
## **Coding:**
|
|
||||||
|
|
||||||
All your work should be centered around the mod.ts file as an entry point.
|
|
||||||
You can ONLY change the following properties from the package.json file: `"name"`, `"version"`, `"license"`: `"MIT"`, `"author"`, `"akiVersion"`.
|
|
||||||
|
|
||||||
If you have never used typescript before, you can read about it here: https://www.typescriptlang.org/docs/
|
|
||||||
|
|
||||||
## **Distributing your mod:**
|
|
||||||
|
|
||||||
The project has been set up with an automatic task that will copy and zip ALL required files for your mod to work on SPT-AKI.
|
|
||||||
To run this task you just need to go to:
|
|
||||||
|
|
||||||
> Terminal->Run Task...->Show All Tasks...->npm: build:zip
|
|
||||||
|
|
||||||
The output will be a mod.zip file that will appear on the root of the project.
|
|
||||||
|
|
||||||
Always verify that all files were included into the zip file.
|
|
@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"original_prices": true
|
|
||||||
}
|
|
@ -1,85 +0,0 @@
|
|||||||
{
|
|
||||||
"_id": "cat",
|
|
||||||
"working": true,
|
|
||||||
"customization_seller": false,
|
|
||||||
"name": "Cat",
|
|
||||||
"surname": " ",
|
|
||||||
"nickname": "Cat",
|
|
||||||
"location": "Get your food and drinks here ",
|
|
||||||
"avatar": "/files/trader/avatar/cat",
|
|
||||||
"balance_rub": 5000000,
|
|
||||||
"balance_dol": 0,
|
|
||||||
"balance_eur": 0,
|
|
||||||
"unlockedByDefault": true,
|
|
||||||
"discount": 0,
|
|
||||||
"discount_end": 0,
|
|
||||||
"buyer_up": true,
|
|
||||||
"currency": "RUB",
|
|
||||||
"nextResupply": 1615141448,
|
|
||||||
"repair": {
|
|
||||||
"availability": false,
|
|
||||||
"quality": "2",
|
|
||||||
"excluded_id_list": [],
|
|
||||||
"excluded_category": [],
|
|
||||||
"currency": "5449016a4bdc2d6f028b456f",
|
|
||||||
"currency_coefficient": 1,
|
|
||||||
"price_rate": 10
|
|
||||||
},
|
|
||||||
"insurance": {
|
|
||||||
"availability": false,
|
|
||||||
"min_payment": 0,
|
|
||||||
"min_return_hour": 0,
|
|
||||||
"max_return_hour": 0,
|
|
||||||
"max_storage_time": 99,
|
|
||||||
"excluded_category": []
|
|
||||||
},
|
|
||||||
"gridHeight": 150,
|
|
||||||
"loyaltyLevels": [
|
|
||||||
{
|
|
||||||
"minLevel": 1,
|
|
||||||
"minSalesSum": 0,
|
|
||||||
"minStanding": 0,
|
|
||||||
"buy_price_coef": 38,
|
|
||||||
"repair_price_coef": 175,
|
|
||||||
"insurance_price_coef": 10,
|
|
||||||
"exchange_price_coef": 0,
|
|
||||||
"heal_price_coef": 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"sell_category": [
|
|
||||||
"82e7fac0b7495d72d4083356",
|
|
||||||
"ac705d3440c1407645e33579",
|
|
||||||
"dc97aee367144dc03389405d",
|
|
||||||
"7ffcc96aa06c7e90940330c5",
|
|
||||||
"e8f46e3ad74b9d862121f9dc",
|
|
||||||
"5b47574386f77428ca22b33e",
|
|
||||||
"5b47574386f77428ca22b33f",
|
|
||||||
"5b5f78dc86f77409407a7f8e",
|
|
||||||
"5b47574386f77428ca22b346",
|
|
||||||
"5b47574386f77428ca22b340",
|
|
||||||
"5b47574386f77428ca22b344",
|
|
||||||
"5b47574386f77428ca22b342",
|
|
||||||
"5b47574386f77428ca22b341",
|
|
||||||
"5b47574386f77428ca22b345",
|
|
||||||
"5b47574386f77428ca22b343",
|
|
||||||
"5b5f71b386f774093f2ecf11",
|
|
||||||
"5b5f71c186f77409407a7ec0",
|
|
||||||
"5b5f71de86f774093f2ecf13",
|
|
||||||
"5b5f724186f77447ed5636ad",
|
|
||||||
"5b5f736886f774094242f193",
|
|
||||||
"5b5f73ec86f774093e6cb4fd",
|
|
||||||
"5b5f74cc86f77447ec5d770a",
|
|
||||||
"5b5f750686f774093e6cb503",
|
|
||||||
"5b5f751486f77447ec5d770c",
|
|
||||||
"5b5f752e86f774093e6cb505",
|
|
||||||
"5b5f754a86f774094242f19b",
|
|
||||||
"5b5f755f86f77447ec5d770e",
|
|
||||||
"5b5f757486f774093e6cb507",
|
|
||||||
"5b5f75b986f77447ec5d7710",
|
|
||||||
"5b5f75c686f774094242f19f",
|
|
||||||
"5b5f75e486f77447ec5d7712",
|
|
||||||
"5b5f760586f774093e6cb509",
|
|
||||||
"5b5f761f86f774094242f1a1",
|
|
||||||
"5b5f764186f77447ec5d7714"
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"folders": [
|
|
||||||
{
|
|
||||||
"path": "."
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"extensions": {
|
|
||||||
"recommendations": [
|
|
||||||
"dbaeumer.vscode-eslint"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"original_prices": true
|
|
||||||
}
|
|
@ -1,85 +0,0 @@
|
|||||||
{
|
|
||||||
"_id": "cat",
|
|
||||||
"working": true,
|
|
||||||
"customization_seller": false,
|
|
||||||
"name": "Cat",
|
|
||||||
"surname": " ",
|
|
||||||
"nickname": "Cat",
|
|
||||||
"location": "Get your food and drinks here ",
|
|
||||||
"avatar": "/files/trader/avatar/cat",
|
|
||||||
"balance_rub": 5000000,
|
|
||||||
"balance_dol": 0,
|
|
||||||
"balance_eur": 0,
|
|
||||||
"unlockedByDefault": true,
|
|
||||||
"discount": 0,
|
|
||||||
"discount_end": 0,
|
|
||||||
"buyer_up": true,
|
|
||||||
"currency": "RUB",
|
|
||||||
"nextResupply": 1615141448,
|
|
||||||
"repair": {
|
|
||||||
"availability": false,
|
|
||||||
"quality": "2",
|
|
||||||
"excluded_id_list": [],
|
|
||||||
"excluded_category": [],
|
|
||||||
"currency": "5449016a4bdc2d6f028b456f",
|
|
||||||
"currency_coefficient": 1,
|
|
||||||
"price_rate": 10
|
|
||||||
},
|
|
||||||
"insurance": {
|
|
||||||
"availability": false,
|
|
||||||
"min_payment": 0,
|
|
||||||
"min_return_hour": 0,
|
|
||||||
"max_return_hour": 0,
|
|
||||||
"max_storage_time": 99,
|
|
||||||
"excluded_category": []
|
|
||||||
},
|
|
||||||
"gridHeight": 150,
|
|
||||||
"loyaltyLevels": [
|
|
||||||
{
|
|
||||||
"minLevel": 1,
|
|
||||||
"minSalesSum": 0,
|
|
||||||
"minStanding": 0,
|
|
||||||
"buy_price_coef": 38,
|
|
||||||
"repair_price_coef": 175,
|
|
||||||
"insurance_price_coef": 10,
|
|
||||||
"exchange_price_coef": 0,
|
|
||||||
"heal_price_coef": 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"sell_category": [
|
|
||||||
"82e7fac0b7495d72d4083356",
|
|
||||||
"ac705d3440c1407645e33579",
|
|
||||||
"dc97aee367144dc03389405d",
|
|
||||||
"7ffcc96aa06c7e90940330c5",
|
|
||||||
"e8f46e3ad74b9d862121f9dc",
|
|
||||||
"5b47574386f77428ca22b33e",
|
|
||||||
"5b47574386f77428ca22b33f",
|
|
||||||
"5b5f78dc86f77409407a7f8e",
|
|
||||||
"5b47574386f77428ca22b346",
|
|
||||||
"5b47574386f77428ca22b340",
|
|
||||||
"5b47574386f77428ca22b344",
|
|
||||||
"5b47574386f77428ca22b342",
|
|
||||||
"5b47574386f77428ca22b341",
|
|
||||||
"5b47574386f77428ca22b345",
|
|
||||||
"5b47574386f77428ca22b343",
|
|
||||||
"5b5f71b386f774093f2ecf11",
|
|
||||||
"5b5f71c186f77409407a7ec0",
|
|
||||||
"5b5f71de86f774093f2ecf13",
|
|
||||||
"5b5f724186f77447ed5636ad",
|
|
||||||
"5b5f736886f774094242f193",
|
|
||||||
"5b5f73ec86f774093e6cb4fd",
|
|
||||||
"5b5f74cc86f77447ec5d770a",
|
|
||||||
"5b5f750686f774093e6cb503",
|
|
||||||
"5b5f751486f77447ec5d770c",
|
|
||||||
"5b5f752e86f774093e6cb505",
|
|
||||||
"5b5f754a86f774094242f19b",
|
|
||||||
"5b5f755f86f77447ec5d770e",
|
|
||||||
"5b5f757486f774093e6cb507",
|
|
||||||
"5b5f75b986f77447ec5d7710",
|
|
||||||
"5b5f75c686f774094242f19f",
|
|
||||||
"5b5f75e486f77447ec5d7712",
|
|
||||||
"5b5f760586f774093e6cb509",
|
|
||||||
"5b5f761f86f774094242f1a1",
|
|
||||||
"5b5f764186f77447ec5d7714"
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,132 +0,0 @@
|
|||||||
"use strict";
|
|
||||||
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
||||||
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
||||||
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
||||||
}
|
|
||||||
Object.defineProperty(o, k2, desc);
|
|
||||||
}) : (function(o, m, k, k2) {
|
|
||||||
if (k2 === undefined) k2 = k;
|
|
||||||
o[k2] = m[k];
|
|
||||||
}));
|
|
||||||
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
||||||
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
||||||
}) : function(o, v) {
|
|
||||||
o["default"] = v;
|
|
||||||
});
|
|
||||||
var __importStar = (this && this.__importStar) || function (mod) {
|
|
||||||
if (mod && mod.__esModule) return mod;
|
|
||||||
var result = {};
|
|
||||||
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
||||||
__setModuleDefault(result, mod);
|
|
||||||
return result;
|
|
||||||
};
|
|
||||||
Object.defineProperty(exports, "__esModule", { value: true });
|
|
||||||
const config_json_1 = require("../config/config.json");
|
|
||||||
const baseJson = __importStar(require("../db/base.json"));
|
|
||||||
class SampleTrader {
|
|
||||||
constructor() {
|
|
||||||
this.mod = "SampleTrader";
|
|
||||||
}
|
|
||||||
// Perform these actions before server fully loads
|
|
||||||
load(container) {
|
|
||||||
const logger = container.resolve("WinstonLogger");
|
|
||||||
logger.info(`Loading: ${this.mod}`);
|
|
||||||
this.initialModLoader = container.resolve("InitialModLoader");
|
|
||||||
this.hashUtil = container.resolve("HashUtil");
|
|
||||||
const imageRouteService = container.resolve("ImageRouteService");
|
|
||||||
const staticRouterModService = container.resolve("StaticRouterModService");
|
|
||||||
staticRouterModService.registerStaticRouter("SampleTraderImage", [
|
|
||||||
{
|
|
||||||
url: `${baseJson.avatar}`,
|
|
||||||
action: (url, info, sessionId, output) => {
|
|
||||||
logger.info("Custom static route hit");
|
|
||||||
return JSON.stringify({ response: "OK" });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
], "custom-static-my-mod");
|
|
||||||
const test = "aki-core" /* CORE */;
|
|
||||||
switch (test) {
|
|
||||||
case "aki-core" /* CORE */:
|
|
||||||
break;
|
|
||||||
case "aki-hideout" /* HIDEOUT */:
|
|
||||||
break;
|
|
||||||
case "aki-bot" /* BOT */:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
const imageFilepath = `${this.initialModLoader.getModPath(this.mod)}res`;
|
|
||||||
imageRouteService.addRoute(baseJson.avatar, `${imageFilepath}/cat.jpg`);
|
|
||||||
// Add refresh time in seconds when Config server allows to set configs
|
|
||||||
const configServer = container.resolve("ConfigServer");
|
|
||||||
const traderConfig = configServer.getConfig("aki-trader" /* TRADER */);
|
|
||||||
const traderRefreshConfig = { traderId: "cat", seconds: 3600 };
|
|
||||||
traderConfig.updateTime.push(traderRefreshConfig);
|
|
||||||
}
|
|
||||||
delayedLoad(container) {
|
|
||||||
const databaseServer = container.resolve("DatabaseServer");
|
|
||||||
const jsonUtil = container.resolve("JsonUtil");
|
|
||||||
this.tables = databaseServer.getTables();
|
|
||||||
this.tables.traders = {
|
|
||||||
...this.tables.traders, cat: {
|
|
||||||
assort: this.createFoodAndDrinkAssortTable(),
|
|
||||||
base: jsonUtil.deserialize(jsonUtil.serialize(baseJson)),
|
|
||||||
questassort: {}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
const locales = this.tables.locales.global;
|
|
||||||
for (const locale in locales) {
|
|
||||||
locales[locale].trading.cat = {
|
|
||||||
FullName: "Cat",
|
|
||||||
FirstName: "Cat",
|
|
||||||
Nickname: "Cat",
|
|
||||||
Location: "In the cat shop",
|
|
||||||
Description: "This is the cat shop"
|
|
||||||
};
|
|
||||||
}
|
|
||||||
this.tables.locales = { ...this.tables.locales, global: locales };
|
|
||||||
databaseServer.setTables(this.tables);
|
|
||||||
}
|
|
||||||
createFoodAndDrinkAssortTable() {
|
|
||||||
const FOOD_ID = "5448e8d04bdc2ddf718b4569";
|
|
||||||
const WATER_ID = "5448e8d64bdc2dce718b4568";
|
|
||||||
const FOOD_CONTAINER_ID = "5c093db286f7740a1b2617e3";
|
|
||||||
const SELL_AMOUNT = 10000;
|
|
||||||
const ROUBLE_ID = "5449016a4bdc2d6f028b456f";
|
|
||||||
const items = this.tables.templates.items;
|
|
||||||
const prices = this.tables.templates.prices;
|
|
||||||
return Object
|
|
||||||
.values(items)
|
|
||||||
.filter(item => item._parent === FOOD_ID || item._parent === WATER_ID || item._id === FOOD_CONTAINER_ID)
|
|
||||||
.map(item => {
|
|
||||||
return {
|
|
||||||
"_id": this.hashUtil.generate(),
|
|
||||||
"_tpl": item._id,
|
|
||||||
"parentId": "hideout",
|
|
||||||
"slotId": "hideout",
|
|
||||||
"upd": {
|
|
||||||
"UnlimitedCount": true,
|
|
||||||
"StackObjectsCount": 999999999
|
|
||||||
}
|
|
||||||
};
|
|
||||||
})
|
|
||||||
.reduce((acc, item) => {
|
|
||||||
acc.items.push(item);
|
|
||||||
acc.barter_scheme[item._id] = [
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"count": config_json_1.original_prices ? prices[item._tpl] : SELL_AMOUNT,
|
|
||||||
"_tpl": ROUBLE_ID
|
|
||||||
}
|
|
||||||
]
|
|
||||||
];
|
|
||||||
acc.loyal_level_items[item._id] = 1;
|
|
||||||
return acc;
|
|
||||||
}, {
|
|
||||||
items: [], barter_scheme: {}, loyal_level_items: {}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
module.exports = { mod: new SampleTrader() };
|
|
@ -1,25 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "AddTrader",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "src/mod.js",
|
|
||||||
"license": "MIT",
|
|
||||||
"author": "Shirito",
|
|
||||||
"akiVersion": "3.0.0",
|
|
||||||
"scripts": {
|
|
||||||
"setup:environment": "npm i",
|
|
||||||
"build:unzipped": "copyfiles -e \"./node_modules/**/*.*\" -e \"./dist/**/*.*\" -e \"./package-lock.json\" -e \"./tsconfig.json\" -e \"./README.txt\" -e \"./mod.code-workspace\" ./**/*.* ./dist",
|
|
||||||
"zip:files": "cd dist/ && bestzip ../mod.zip *",
|
|
||||||
"build:zip": "npm run clean:environment && npm run build:unzipped && npm run zip:files",
|
|
||||||
"clean:environment": "node -e \"require('fs').rm('mod.zip', ()=>{})\" && node -e \"require('fs').rmdir('./dist/',{recursive:true},()=>{})\""
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@types/node": "^14.15.3",
|
|
||||||
"@typescript-eslint/eslint-plugin": "^4.33.0",
|
|
||||||
"@typescript-eslint/parser": "^4.33.0",
|
|
||||||
"copyfiles": "2.4.1",
|
|
||||||
"eslint": "7.26.0",
|
|
||||||
"tsyringe": "4.6.0",
|
|
||||||
"typescript": "4.6.4",
|
|
||||||
"bestzip": "2.2.1"
|
|
||||||
}
|
|
||||||
}
|
|
Binary file not shown.
Before Width: | Height: | Size: 1.9 MiB |
@ -1,146 +0,0 @@
|
|||||||
import { DependencyContainer } from "tsyringe";
|
|
||||||
import type { IMod } from "../types/models/external/mod";
|
|
||||||
import type { ILogger } from "../types/models/spt/utils/ILogger";
|
|
||||||
import type { InitialModLoader } from "../types/loaders/InitialModLoader";
|
|
||||||
import type { DatabaseServer } from "../types/servers/DatabaseServer";
|
|
||||||
import type { IDatabaseTables } from "../types/models/spt/server/IDatabaseTables";
|
|
||||||
import type { HashUtil } from "../types/utils/HashUtil";
|
|
||||||
import type { ImageRouteService } from "../types/services/mod/image/ImageRouteService";
|
|
||||||
import type { ConfigServer } from "../types/servers/ConfigServer";
|
|
||||||
import { ConfigTypes } from "../types/models/enums/ConfigTypes";
|
|
||||||
import type { ITraderBase } from "../types/models/eft/common/tables/ITrader";
|
|
||||||
import type { ITraderConfig, UpdateTime } from '../types/models/spt/config/ITraderConfig';
|
|
||||||
import type { StaticRouterModService } from '../types/services/mod/staticRouter/StaticRouterModService';
|
|
||||||
import { original_prices } from "../config/config.json";
|
|
||||||
import * as baseJson from "../db/base.json";
|
|
||||||
import { JsonUtil } from "../types/utils/JsonUtil";
|
|
||||||
|
|
||||||
class SampleTrader implements IMod {
|
|
||||||
mod: string
|
|
||||||
tables: IDatabaseTables
|
|
||||||
initialModLoader: InitialModLoader
|
|
||||||
hashUtil: HashUtil
|
|
||||||
|
|
||||||
constructor() {
|
|
||||||
this.mod = "SampleTrader";
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
// Perform these actions before server fully loads
|
|
||||||
public load(container: DependencyContainer): void {
|
|
||||||
const logger = container.resolve<ILogger>("WinstonLogger");
|
|
||||||
logger.info(`Loading: ${this.mod}`);
|
|
||||||
|
|
||||||
this.initialModLoader = container.resolve<InitialModLoader>("InitialModLoader");
|
|
||||||
this.hashUtil = container.resolve<HashUtil>("HashUtil");
|
|
||||||
const imageRouteService = container.resolve<ImageRouteService>("ImageRouteService");
|
|
||||||
const staticRouterModService = container.resolve<StaticRouterModService>("StaticRouterModService");
|
|
||||||
staticRouterModService.registerStaticRouter(
|
|
||||||
"SampleTraderImage",
|
|
||||||
[
|
|
||||||
{
|
|
||||||
url: `${baseJson.avatar}`,
|
|
||||||
action: (url, info, sessionId, output) => {
|
|
||||||
logger.info("Custom static route hit")
|
|
||||||
return JSON.stringify({ response: "OK" });
|
|
||||||
}
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"custom-static-my-mod"
|
|
||||||
);
|
|
||||||
|
|
||||||
const test: string = ConfigTypes.CORE;
|
|
||||||
switch (test) {
|
|
||||||
case ConfigTypes.CORE:
|
|
||||||
break;
|
|
||||||
case ConfigTypes.HIDEOUT:
|
|
||||||
break;
|
|
||||||
case ConfigTypes.BOT:
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
break
|
|
||||||
}
|
|
||||||
|
|
||||||
const imageFilepath = `${this.initialModLoader.getModPath(this.mod)}res`;
|
|
||||||
imageRouteService.addRoute(baseJson.avatar, `${imageFilepath}/cat.jpg`);
|
|
||||||
|
|
||||||
// Add refresh time in seconds when Config server allows to set configs
|
|
||||||
const configServer = container.resolve<ConfigServer>("ConfigServer");
|
|
||||||
const traderConfig = configServer.getConfig<ITraderConfig>(ConfigTypes.TRADER);
|
|
||||||
const traderRefreshConfig: UpdateTime = { traderId: "cat", seconds: 3600 }
|
|
||||||
traderConfig.updateTime.push(traderRefreshConfig);
|
|
||||||
}
|
|
||||||
|
|
||||||
public delayedLoad(container: DependencyContainer): void {
|
|
||||||
const databaseServer = container.resolve<DatabaseServer>("DatabaseServer");
|
|
||||||
const jsonUtil = container.resolve<JsonUtil>("JsonUtil");
|
|
||||||
|
|
||||||
this.tables = databaseServer.getTables();
|
|
||||||
this.tables.traders = {
|
|
||||||
...this.tables.traders, cat: {
|
|
||||||
assort: this.createFoodAndDrinkAssortTable(),
|
|
||||||
base: jsonUtil.deserialize(jsonUtil.serialize(baseJson)) as ITraderBase,
|
|
||||||
questassort: {}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
const locales = this.tables.locales.global;
|
|
||||||
for (const locale in locales) {
|
|
||||||
locales[locale].trading.cat = {
|
|
||||||
FullName: "Cat",
|
|
||||||
FirstName: "Cat",
|
|
||||||
Nickname: "Cat",
|
|
||||||
Location: "In the cat shop",
|
|
||||||
Description: "This is the cat shop"
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
this.tables.locales = { ...this.tables.locales, global: locales };
|
|
||||||
databaseServer.setTables(this.tables);
|
|
||||||
}
|
|
||||||
|
|
||||||
createFoodAndDrinkAssortTable() {
|
|
||||||
const FOOD_ID = "5448e8d04bdc2ddf718b4569";
|
|
||||||
const WATER_ID = "5448e8d64bdc2dce718b4568";
|
|
||||||
const FOOD_CONTAINER_ID = "5c093db286f7740a1b2617e3";
|
|
||||||
const SELL_AMOUNT = 10000;
|
|
||||||
const ROUBLE_ID = "5449016a4bdc2d6f028b456f";
|
|
||||||
const items = this.tables.templates.items;
|
|
||||||
const prices = this.tables.templates.prices;
|
|
||||||
|
|
||||||
return Object
|
|
||||||
.values(items)
|
|
||||||
.filter(item => item._parent === FOOD_ID || item._parent === WATER_ID || item._id === FOOD_CONTAINER_ID)
|
|
||||||
.map(item => {
|
|
||||||
return {
|
|
||||||
"_id": this.hashUtil.generate(),
|
|
||||||
"_tpl": item._id,
|
|
||||||
"parentId": "hideout",
|
|
||||||
"slotId": "hideout",
|
|
||||||
"upd": {
|
|
||||||
"UnlimitedCount": true,
|
|
||||||
"StackObjectsCount": 999999999
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.reduce((acc, item) => {
|
|
||||||
acc.items.push(item);
|
|
||||||
acc.barter_scheme[item._id] = [
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"count": original_prices ? prices[item._tpl] : SELL_AMOUNT,
|
|
||||||
"_tpl": ROUBLE_ID
|
|
||||||
}
|
|
||||||
]
|
|
||||||
];
|
|
||||||
acc.loyal_level_items[item._id] = 1;
|
|
||||||
return acc;
|
|
||||||
},
|
|
||||||
{
|
|
||||||
items: [], barter_scheme: {}, loyal_level_items: {}
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { mod: new SampleTrader() }
|
|
@ -1,21 +0,0 @@
|
|||||||
{
|
|
||||||
"compilerOptions": {
|
|
||||||
"allowJs": true,
|
|
||||||
"module": "CommonJS",
|
|
||||||
"target": "es2020",
|
|
||||||
"moduleResolution": "node",
|
|
||||||
"esModuleInterop": true,
|
|
||||||
"downlevelIteration": true,
|
|
||||||
"experimentalDecorators": true,
|
|
||||||
"emitDecoratorMetadata": true,
|
|
||||||
"resolveJsonModule": true,
|
|
||||||
"outDir": "out"
|
|
||||||
},
|
|
||||||
"lib": [
|
|
||||||
"es2020"
|
|
||||||
],
|
|
||||||
"include": [
|
|
||||||
"src/*",
|
|
||||||
"src/**/*"
|
|
||||||
]
|
|
||||||
}
|
|
4
TypeScript/11AddTrader/types/Program.d.ts
vendored
4
TypeScript/11AddTrader/types/Program.d.ts
vendored
@ -1,4 +0,0 @@
|
|||||||
export declare class Program {
|
|
||||||
constructor();
|
|
||||||
start(): void;
|
|
||||||
}
|
|
3
TypeScript/11AddTrader/types/TYPES.d.ts
vendored
3
TypeScript/11AddTrader/types/TYPES.d.ts
vendored
@ -1,3 +0,0 @@
|
|||||||
export declare const TYPES: {
|
|
||||||
[name: string]: symbol;
|
|
||||||
};
|
|
0
TypeScript/11AddTrader/types/Utils.d.ts
vendored
0
TypeScript/11AddTrader/types/Utils.d.ts
vendored
@ -1,15 +0,0 @@
|
|||||||
import { BotController } from "../controllers/BotController";
|
|
||||||
import { IGenerateBotsRequestData } from "../models/eft/bot/IGenerateBotsRequestData";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IBotBase } from "../models/eft/common/tables/IBotBase";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class BotCallbacks {
|
|
||||||
private botController;
|
|
||||||
private httpResponse;
|
|
||||||
constructor(botController: BotController, httpResponse: HttpResponseUtil);
|
|
||||||
getBotLimit(url: string, info: IEmptyRequestData, sessionID: string): string;
|
|
||||||
getBotDifficulty(url: string, info: IEmptyRequestData, sessionID: string): string;
|
|
||||||
generateBots(url: string, info: IGenerateBotsRequestData, sessionID: string): IGetBodyResponseData<IBotBase[]>;
|
|
||||||
getBotCap(): string;
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
import { BundleLoader } from "../loaders/BundleLoader";
|
|
||||||
import { IHttpServer } from "../models/spt/server/IHttpServer";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class BundleCallbacks {
|
|
||||||
private logger;
|
|
||||||
private httpResponse;
|
|
||||||
private httpServer;
|
|
||||||
private bundleLoader;
|
|
||||||
private configServer;
|
|
||||||
private httpConfig;
|
|
||||||
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, bundleLoader: BundleLoader, configServer: ConfigServer);
|
|
||||||
sendBundle(sessionID: string, req: any, resp: any, body: any): any;
|
|
||||||
getBundles(url: string, info: any, sessionID: string): string;
|
|
||||||
getBundle(url: string, info: any, sessionID: string): string;
|
|
||||||
}
|
|
@ -1,23 +0,0 @@
|
|||||||
import { CustomizationController } from "../controllers/CustomizationController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { ISuit } from "../models/eft/common/tables/ITrader";
|
|
||||||
import { IBuyClothingRequestData } from "../models/eft/customization/IBuyClothingRequestData";
|
|
||||||
import { IWearClothingRequestData } from "../models/eft/customization/IWearClothingRequestData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class CustomizationCallbacks {
|
|
||||||
private customizationController;
|
|
||||||
private saveServer;
|
|
||||||
private httpResponse;
|
|
||||||
constructor(customizationController: CustomizationController, saveServer: SaveServer, httpResponse: HttpResponseUtil);
|
|
||||||
getSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<{
|
|
||||||
_id: string;
|
|
||||||
suites: string[];
|
|
||||||
}>;
|
|
||||||
getTraderSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ISuit[]>;
|
|
||||||
wearClothing(pmcData: IPmcData, body: IWearClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
buyClothing(pmcData: IPmcData, body: IBuyClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,32 +0,0 @@
|
|||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IGlobals } from "../models/eft/common/IGlobals";
|
|
||||||
import { ICustomizationItem } from "../models/eft/common/tables/ICustomizationItem";
|
|
||||||
import { IQuest } from "../models/eft/common/tables/IQuest";
|
|
||||||
import { IHideoutArea } from "../models/eft/hideout/IHideoutArea";
|
|
||||||
import { IHideoutProduction } from "../models/eft/hideout/IHideoutProduction";
|
|
||||||
import { IHideoutScavCase } from "../models/eft/hideout/IHideoutScavCase";
|
|
||||||
import { IHideoutSettingsBase } from "../models/eft/hideout/IHideoutSettingsBase";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { ILanguageBase } from "../models/spt/server/ILocaleBase";
|
|
||||||
import { ISettingsBase } from "../models/spt/server/ISettingsBase";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class DataCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private databaseServer;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, databaseServer: DatabaseServer);
|
|
||||||
getSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ISettingsBase>;
|
|
||||||
getGlobals(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGlobals>;
|
|
||||||
getTemplateItems(url: string, info: IEmptyRequestData, sessionID: string): string;
|
|
||||||
getTemplateHandbook(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getTemplateSuits(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, ICustomizationItem>>;
|
|
||||||
getTemplateCharacter(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string[]>;
|
|
||||||
getTemplateQuests(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IQuest[]>;
|
|
||||||
getHideoutSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutSettingsBase>;
|
|
||||||
getHideoutAreas(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutArea[]>;
|
|
||||||
gethideoutProduction(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutProduction[]>;
|
|
||||||
getHideoutScavcase(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IHideoutScavCase[]>;
|
|
||||||
getLocalesLanguages(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ILanguageBase[]>;
|
|
||||||
getLocalesMenu(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getLocalesGlobal(url: string, info: IEmptyRequestData, sessionID: string): string;
|
|
||||||
}
|
|
@ -1,45 +0,0 @@
|
|||||||
import { DialogueController } from "../controllers/DialogueController";
|
|
||||||
import { OnUpdate } from "../di/OnUpdate";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IFriendRequestData } from "../models/eft/dialog/IFriendRequestData";
|
|
||||||
import { IGetAllAttachmentsRequestData } from "../models/eft/dialog/IGetAllAttachmentsRequestData";
|
|
||||||
import { IGetAllAttachmentsResponse } from "../models/eft/dialog/IGetAllAttachmentsResponse";
|
|
||||||
import { IGetChatServerListRequestData } from "../models/eft/dialog/IGetChatServerListRequestData";
|
|
||||||
import { IGetFriendListDataResponse } from "../models/eft/dialog/IGetFriendListDataResponse";
|
|
||||||
import { IGetMailDialogInfoRequestData } from "../models/eft/dialog/IGetMailDialogInfoRequestData";
|
|
||||||
import { IGetMailDialogListRequestData } from "../models/eft/dialog/IGetMailDialogListRequestData";
|
|
||||||
import { IGetMailDialogViewRequestData } from "../models/eft/dialog/IGetMailDialogViewRequestData";
|
|
||||||
import { IGetMailDialogViewResponseData } from "../models/eft/dialog/IGetMailDialogViewResponseData";
|
|
||||||
import { IPinDialogRequestData } from "../models/eft/dialog/IPinDialogRequestData";
|
|
||||||
import { IRemoveDialogRequestData } from "../models/eft/dialog/IRemoveDialogRequestData";
|
|
||||||
import { ISendMessageRequest } from "../models/eft/dialog/ISendMessageRequest";
|
|
||||||
import { ISetDialogReadRequestData } from "../models/eft/dialog/ISetDialogReadRequestData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { INullResponseData } from "../models/eft/httpResponse/INullResponseData";
|
|
||||||
import { DialogueInfo } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class DialogueCallbacks extends OnUpdate {
|
|
||||||
private hashUtil;
|
|
||||||
private timeUtil;
|
|
||||||
private httpResponse;
|
|
||||||
private dialogueController;
|
|
||||||
constructor(hashUtil: HashUtil, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, dialogueController: DialogueController);
|
|
||||||
getFriendList(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IGetFriendListDataResponse>;
|
|
||||||
getChatServerList(url: string, info: IGetChatServerListRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
getMailDialogList(url: string, info: IGetMailDialogListRequestData, sessionID: string): IGetBodyResponseData<DialogueInfo[]>;
|
|
||||||
getMailDialogView(url: string, info: IGetMailDialogViewRequestData, sessionID: string): IGetBodyResponseData<IGetMailDialogViewResponseData>;
|
|
||||||
getMailDialogInfo(url: string, info: IGetMailDialogInfoRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
removeDialog(url: string, info: IRemoveDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
pinDialog(url: string, info: IPinDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
unpinDialog(url: string, info: IPinDialogRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
setRead(url: string, info: ISetDialogReadRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
getAllAttachments(url: string, info: IGetAllAttachmentsRequestData, sessionID: string): IGetBodyResponseData<IGetAllAttachmentsResponse>;
|
|
||||||
listOutbox(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
listInbox(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
friendRequest(url: string, request: IFriendRequestData, sessionID: string): INullResponseData;
|
|
||||||
sendMessage(url: string, request: ISendMessageRequest, sessionID: string): IGetBodyResponseData<number>;
|
|
||||||
onUpdate(timeSinceLastRun: number): boolean;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
@ -1,24 +0,0 @@
|
|||||||
import { GameController } from "../controllers/GameController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse";
|
|
||||||
import { IGameEmptyCrcRequestData } from "../models/eft/game/IGameEmptyCrcRequestData";
|
|
||||||
import { IVersionValidateRequestData } from "../models/eft/game/IVersionValidateRequestData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { INullResponseData } from "../models/eft/httpResponse/INullResponseData";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { Watermark } from "../utils/Watermark";
|
|
||||||
declare class GameCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private watermark;
|
|
||||||
private gameController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, watermark: Watermark, gameController: GameController);
|
|
||||||
versionValidate(url: string, info: IVersionValidateRequestData, sessionID: string): INullResponseData;
|
|
||||||
gameStart(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
gameLogout(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getGameConfig(url: string, info: IGameEmptyCrcRequestData, sessionID: string): IGetBodyResponseData<IGameConfigResponse>;
|
|
||||||
getServer(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
validateGameVersion(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
gameKeepalive(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getVersion(url: string, info: IEmptyRequestData, sessionID: string): string;
|
|
||||||
}
|
|
||||||
export { GameCallbacks };
|
|
@ -1,8 +0,0 @@
|
|||||||
import { HandbookController } from "../controllers/HandbookController";
|
|
||||||
import { OnLoad } from "../di/OnLoad";
|
|
||||||
export declare class HandbookCallbacks extends OnLoad {
|
|
||||||
private handbookController;
|
|
||||||
constructor(handbookController: HandbookController);
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
import { HealthController } from "../controllers/HealthController";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IHealthTreatmentRequestData } from "../models/eft/health/IHealthTreatmentRequestData";
|
|
||||||
import { IOffraidEatRequestData } from "../models/eft/health/IOffraidEatRequestData";
|
|
||||||
import { IOffraidHealRequestData } from "../models/eft/health/IOffraidHealRequestData";
|
|
||||||
import { ISyncHealthRequestData } from "../models/eft/health/ISyncHealthRequestData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class HealthCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private profileHelper;
|
|
||||||
private healthController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, healthController: HealthController);
|
|
||||||
syncHealth(url: string, info: ISyncHealthRequestData, sessionID: string): IGetBodyResponseData<string>;
|
|
||||||
offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
healthTreatment(pmcData: IPmcData, info: IHealthTreatmentRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,32 +0,0 @@
|
|||||||
import { HideoutController } from "../controllers/HideoutController";
|
|
||||||
import { OnUpdate } from "../di/OnUpdate";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IHideoutContinousProductionStartRequestData } from "../models/eft/hideout/IHideoutContinousProductionStartRequestData";
|
|
||||||
import { IHideoutPutItemInRequestData } from "../models/eft/hideout/IHideoutPutItemInRequestData";
|
|
||||||
import { IHideoutScavCaseStartRequestData } from "../models/eft/hideout/IHideoutScavCaseStartRequestData";
|
|
||||||
import { IHideoutSingleProductionStartRequestData } from "../models/eft/hideout/IHideoutSingleProductionStartRequestData";
|
|
||||||
import { IHideoutTakeItemOutRequestData } from "../models/eft/hideout/IHideoutTakeItemOutRequestData";
|
|
||||||
import { IHideoutTakeProductionRequestData } from "../models/eft/hideout/IHideoutTakeProductionRequestData";
|
|
||||||
import { IHideoutToggleAreaRequestData } from "../models/eft/hideout/IHideoutToggleAreaRequestData";
|
|
||||||
import { IHideoutUpgradeCompleteRequestData } from "../models/eft/hideout/IHideoutUpgradeCompleteRequestData";
|
|
||||||
import { IHideoutUpgradeRequestData } from "../models/eft/hideout/IHideoutUpgradeRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
export declare class HideoutCallbacks extends OnUpdate {
|
|
||||||
private hideoutController;
|
|
||||||
private configServer;
|
|
||||||
private hideoutConfig;
|
|
||||||
constructor(hideoutController: HideoutController, // TODO: delay needed
|
|
||||||
configServer: ConfigServer);
|
|
||||||
upgrade(pmcData: IPmcData, body: IHideoutUpgradeRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
upgradeComplete(pmcData: IPmcData, body: IHideoutUpgradeCompleteRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
putItemsInAreaSlots(pmcData: IPmcData, body: IHideoutPutItemInRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
takeItemsFromAreaSlots(pmcData: IPmcData, body: IHideoutTakeItemOutRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
toggleArea(pmcData: IPmcData, body: IHideoutToggleAreaRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
singleProductionStart(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
scavCaseProductionStart(pmcData: IPmcData, body: IHideoutScavCaseStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
continuousProductionStart(pmcData: IPmcData, body: IHideoutContinousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
takeProduction(pmcData: IPmcData, body: IHideoutTakeProductionRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
onUpdate(timeSinceLastRun: number): boolean;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
import { OnLoad } from "../di/OnLoad";
|
|
||||||
import { IHttpServer } from "../models/spt/server/IHttpServer";
|
|
||||||
export declare class HttpCallbacks extends OnLoad {
|
|
||||||
private httpServer;
|
|
||||||
constructor(httpServer: IHttpServer);
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
getImage(): string;
|
|
||||||
}
|
|
@ -1,21 +0,0 @@
|
|||||||
import { InraidController } from "../controllers/InraidController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { INullResponseData } from "../models/eft/httpResponse/INullResponseData";
|
|
||||||
import { IRegisterPlayerRequestData } from "../models/eft/inRaid/IRegisterPlayerRequestData";
|
|
||||||
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class InraidCallbacks {
|
|
||||||
private inraidController;
|
|
||||||
private httpResponse;
|
|
||||||
private configServer;
|
|
||||||
private airdropConfig;
|
|
||||||
private inraidConfig;
|
|
||||||
constructor(inraidController: InraidController, httpResponse: HttpResponseUtil, configServer: ConfigServer);
|
|
||||||
registerPlayer(url: string, info: IRegisterPlayerRequestData, sessionID: string): INullResponseData;
|
|
||||||
saveProgress(url: string, info: ISaveProgressRequestData, sessionID: string): INullResponseData;
|
|
||||||
getRaidEndState(): string;
|
|
||||||
getRaidMenuSettings(url: string, info: IEmptyRequestData, sessionID: string): string;
|
|
||||||
getWeaponDurability(url: string, info: any, sessionID: string): string;
|
|
||||||
getAirdropConfig(url: string, info: any, sessionID: string): string;
|
|
||||||
}
|
|
@ -1,23 +0,0 @@
|
|||||||
import { InsuranceController } from "../controllers/InsuranceController";
|
|
||||||
import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData";
|
|
||||||
import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { InsuranceService } from "../services/InsuranceService";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class InsuranceCallbacks extends OnLoadOnUpdate {
|
|
||||||
private insuranceController;
|
|
||||||
private insuranceService;
|
|
||||||
private httpResponse;
|
|
||||||
private configServer;
|
|
||||||
private insuranceConfig;
|
|
||||||
constructor(insuranceController: InsuranceController, insuranceService: InsuranceService, httpResponse: HttpResponseUtil, configServer: ConfigServer);
|
|
||||||
onLoad(): void;
|
|
||||||
getInsuranceCost(url: string, info: IGetInsuranceCostRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
onUpdate(secondsSinceLastRun: number): boolean;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
@ -1,39 +0,0 @@
|
|||||||
import { InventoryController } from "../controllers/InventoryController";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IInventoryBindRequestData } from "../models/eft/inventory/IInventoryBindRequestData";
|
|
||||||
import { IInventoryCreateMarkerRequestData } from "../models/eft/inventory/IInventoryCreateMarkerRequestData";
|
|
||||||
import { IInventoryDeleteMarkerRequestData } from "../models/eft/inventory/IInventoryDeleteMarkerRequestData";
|
|
||||||
import { IInventoryEditMarkerRequestData } from "../models/eft/inventory/IInventoryEditMarkerRequestData";
|
|
||||||
import { IInventoryExamineRequestData } from "../models/eft/inventory/IInventoryExamineRequestData";
|
|
||||||
import { IInventoryFoldRequestData } from "../models/eft/inventory/IInventoryFoldRequestData";
|
|
||||||
import { IInventoryMergeRequestData } from "../models/eft/inventory/IInventoryMergeRequestData";
|
|
||||||
import { IInventoryMoveRequestData } from "../models/eft/inventory/IInventoryMoveRequestData";
|
|
||||||
import { IInventoryReadEncyclopediaRequestData } from "../models/eft/inventory/IInventoryReadEncyclopediaRequestData";
|
|
||||||
import { IInventoryRemoveRequestData } from "../models/eft/inventory/IInventoryRemoveRequestData";
|
|
||||||
import { IInventorySortRequestData } from "../models/eft/inventory/IInventorySortRequestData";
|
|
||||||
import { IInventorySplitRequestData } from "../models/eft/inventory/IInventorySplitRequestData";
|
|
||||||
import { IInventorySwapRequestData } from "../models/eft/inventory/IInventorySwapRequestData";
|
|
||||||
import { IInventoryTagRequestData } from "../models/eft/inventory/IInventoryTagRequestData";
|
|
||||||
import { IInventoryToggleRequestData } from "../models/eft/inventory/IInventoryToggleRequestData";
|
|
||||||
import { IInventoryTransferRequestData } from "../models/eft/inventory/IInventoryTransferRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
export declare class InventoryCallbacks {
|
|
||||||
private inventoryController;
|
|
||||||
constructor(inventoryController: InventoryController);
|
|
||||||
moveItem(pmcData: IPmcData, body: IInventoryMoveRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
removeItem(pmcData: IPmcData, body: IInventoryRemoveRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
splitItem(pmcData: IPmcData, body: IInventorySplitRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
mergeItem(pmcData: IPmcData, body: IInventoryMergeRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
transferItem(pmcData: IPmcData, body: IInventoryTransferRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
swapItem(pmcData: IPmcData, body: IInventorySwapRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
foldItem(pmcData: IPmcData, body: IInventoryFoldRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
toggleItem(pmcData: IPmcData, body: IInventoryToggleRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
sortInventory(pmcData: IPmcData, body: IInventorySortRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
createMapMarker(pmcData: IPmcData, body: IInventoryCreateMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
deleteMapMarker(pmcData: IPmcData, body: IInventoryDeleteMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
editMapMarker(pmcData: IPmcData, body: IInventoryEditMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IItemEventRouterRequest } from "../models/eft/itemEvent/IItemEventRouterRequest";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class ItemEventCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private itemEventRouter;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter);
|
|
||||||
handleEvents(url: string, info: IItemEventRouterRequest, sessionID: string): IGetBodyResponseData<IItemEventRouterResponse>;
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
import { LauncherController } from "../controllers/LauncherController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IChangeRequestData } from "../models/eft/launcher/IChangeRequestData";
|
|
||||||
import { ILoginRequestData } from "../models/eft/launcher/ILoginRequestData";
|
|
||||||
import { IRegisterData } from "../models/eft/launcher/IRegisterData";
|
|
||||||
import { IRemoveProfileData } from "../models/eft/launcher/IRemoveProfileData";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { Watermark } from "../utils/Watermark";
|
|
||||||
declare class LauncherCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private launcherController;
|
|
||||||
private saveServer;
|
|
||||||
private watermark;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, launcherController: LauncherController, saveServer: SaveServer, watermark: Watermark);
|
|
||||||
connect(): string;
|
|
||||||
login(url: string, info: ILoginRequestData, sessionID: string): string;
|
|
||||||
register(url: string, info: IRegisterData, sessionID: string): "FAILED" | "OK";
|
|
||||||
get(url: string, info: ILoginRequestData, sessionID: string): string;
|
|
||||||
changeUsername(url: string, info: IChangeRequestData, sessionID: string): "FAILED" | "OK";
|
|
||||||
changePassword(url: string, info: IChangeRequestData, sessionID: string): "FAILED" | "OK";
|
|
||||||
wipe(url: string, info: IRegisterData, sessionID: string): "FAILED" | "OK";
|
|
||||||
getServerVersion(): string;
|
|
||||||
ping(url: string, info: IEmptyRequestData, sessionID: string): string;
|
|
||||||
removeProfile(url: string, info: IRemoveProfileData, sessionID: string): string;
|
|
||||||
getCompatibleTarkovVersion(): string;
|
|
||||||
}
|
|
||||||
export { LauncherCallbacks };
|
|
@ -1,14 +0,0 @@
|
|||||||
import { LocationController } from "../controllers/LocationController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { ILocationBase } from "../models/eft/common/ILocationBase";
|
|
||||||
import { ILocationsGenerateAllResponse } from "../models/eft/common/ILocationsSourceDestinationBase";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IGetLocationRequestData } from "../models/eft/location/IGetLocationRequestData";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class LocationCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private locationController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, locationController: LocationController);
|
|
||||||
getLocationData(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ILocationsGenerateAllResponse>;
|
|
||||||
getLocation(url: string, info: IGetLocationRequestData, sessionID: string): IGetBodyResponseData<ILocationBase>;
|
|
||||||
}
|
|
@ -1,35 +0,0 @@
|
|||||||
import { MatchController } from "../controllers/MatchController";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { INullResponseData } from "../models/eft/httpResponse/INullResponseData";
|
|
||||||
import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData";
|
|
||||||
import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData";
|
|
||||||
import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
export declare class MatchCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private jsonUtil;
|
|
||||||
private matchController;
|
|
||||||
private databaseServer;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, jsonUtil: JsonUtil, matchController: MatchController, databaseServer: DatabaseServer);
|
|
||||||
updatePing(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
exitMatch(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
exitToMenu(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
startGroupSearch(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
stopGroupSearch(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
sendGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
acceptGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
cancelGroupInvite(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
putMetrics(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
getProfile(url: string, info: IGetProfileRequestData, sessionID: string): IGetBodyResponseData<IPmcData[]>;
|
|
||||||
serverAvailable(url: string, info: any, sessionID: string): IGetBodyResponseData<any> | IGetBodyResponseData<true>;
|
|
||||||
joinMatch(url: string, info: any, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getMetrics(url: string, info: any, sessionID: string): IGetBodyResponseData<string>;
|
|
||||||
getGroupStatus(url: string, info: any, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
createGroup(url: string, info: any, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
deleteGroup(url: string, info: any, sessionID: string): INullResponseData;
|
|
||||||
startOfflineRaid(url: string, info: IStartOfflineRaidRequestData, sessionID: string): INullResponseData;
|
|
||||||
endOfflineRaid(url: string, info: IEndOfflineRaidRequestData, sessionID: string): INullResponseData;
|
|
||||||
}
|
|
@ -1,21 +0,0 @@
|
|||||||
import { OnLoad } from "../di/OnLoad";
|
|
||||||
import { DelayedModLoader } from "../loaders/DelayedModLoader";
|
|
||||||
import { IHttpServer } from "../models/spt/server/IHttpServer";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
declare class ModCallbacks extends OnLoad {
|
|
||||||
private logger;
|
|
||||||
private httpResponse;
|
|
||||||
private httpServer;
|
|
||||||
private modLoader;
|
|
||||||
private configServer;
|
|
||||||
private httpConfig;
|
|
||||||
constructor(logger: ILogger, httpResponse: HttpResponseUtil, httpServer: IHttpServer, modLoader: DelayedModLoader, configServer: ConfigServer);
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
sendBundle(sessionID: string, req: any, resp: any, body: any): void;
|
|
||||||
getBundles(url: string, info: any, sessionID: string): string;
|
|
||||||
getBundle(url: string, info: any, sessionID: string): string;
|
|
||||||
}
|
|
||||||
export { ModCallbacks };
|
|
@ -1,11 +0,0 @@
|
|||||||
import { NoteController } from "../controllers/NoteController";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { INoteActionData } from "../models/eft/notes/INoteActionData";
|
|
||||||
export declare class NoteCallbacks {
|
|
||||||
private noteController;
|
|
||||||
constructor(noteController: NoteController);
|
|
||||||
addNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
editNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
deleteNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,24 +0,0 @@
|
|||||||
import { NotifierController } from "../controllers/NotifierController";
|
|
||||||
import { HttpServerHelper } from "../helpers/HttpServerHelper";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { INotifierChannel } from "../models/eft/notifier/INotifier";
|
|
||||||
import { ISelectProfileRequestData } from "../models/eft/notifier/ISelectProfileRequestData";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class NotifierCallbacks {
|
|
||||||
private httpServerHelper;
|
|
||||||
private httpResponse;
|
|
||||||
private notifierController;
|
|
||||||
constructor(httpServerHelper: HttpServerHelper, httpResponse: HttpResponseUtil, notifierController: NotifierController);
|
|
||||||
/**
|
|
||||||
* If we don't have anything to send, it's ok to not send anything back
|
|
||||||
* because notification requests can be long-polling. In fact, we SHOULD wait
|
|
||||||
* until we actually have something to send because otherwise we'd spam the client
|
|
||||||
* and the client would abort the connection due to spam.
|
|
||||||
*/
|
|
||||||
sendNotification(sessionID: string, req: any, resp: any, data: any): void;
|
|
||||||
getNotifier(url: string, info: any, sessionID: string): IGetBodyResponseData<any[]>;
|
|
||||||
createNotifierChannel(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<INotifierChannel>;
|
|
||||||
selectProfile(url: string, info: ISelectProfileRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
notify(url: string, info: any, sessionID: string): string;
|
|
||||||
}
|
|
@ -1,15 +0,0 @@
|
|||||||
import { PresetBuildController } from "../controllers/PresetBuildController";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IPresetBuildActionRequestData } from "../models/eft/presetBuild/IPresetBuildActionRequestData";
|
|
||||||
import { WeaponBuild } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class PresetBuildCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private presetBuildController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, presetBuildController: PresetBuildController);
|
|
||||||
getHandbookUserlist(url: string, info: any, sessionID: string): IGetBodyResponseData<WeaponBuild[]>;
|
|
||||||
saveBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
removeBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
import { PresetController } from "../controllers/PresetController";
|
|
||||||
import { OnLoad } from "../di/OnLoad";
|
|
||||||
export declare class PresetCallbacks extends OnLoad {
|
|
||||||
private presetController;
|
|
||||||
constructor(presetController: PresetController);
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
import { ProfileController } from "../controllers/ProfileController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { INullResponseData } from "../models/eft/httpResponse/INullResponseData";
|
|
||||||
import { IGetMiniProfileRequestData } from "../models/eft/launcher/IGetMiniProfileRequestData";
|
|
||||||
import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData";
|
|
||||||
import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData";
|
|
||||||
import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData";
|
|
||||||
import { ISearchFriendRequestData } from "../models/eft/profile/ISearchFriendRequestData";
|
|
||||||
import { ISearchFriendResponse } from "../models/eft/profile/ISearchFriendResponse";
|
|
||||||
import { IValidateNicknameRequestData } from "../models/eft/profile/IValidateNicknameRequestData";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class ProfileCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private timeUtil;
|
|
||||||
private profileController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, timeUtil: TimeUtil, profileController: ProfileController);
|
|
||||||
createProfile(url: string, info: IProfileCreateRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getProfileData(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
regenerateScav(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
changeVoice(url: string, info: IProfileChangeVoiceRequestData, sessionID: string): INullResponseData;
|
|
||||||
changeNickname(url: string, info: IProfileChangeNicknameRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
validateNickname(url: string, info: IValidateNicknameRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getReservedNickname(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<string>;
|
|
||||||
getProfileStatus(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
searchFriend(url: string, info: ISearchFriendRequestData, sessionID: string): IGetBodyResponseData<ISearchFriendResponse[]>;
|
|
||||||
getMiniProfile(url: string, info: IGetMiniProfileRequestData, sessionID: string): string;
|
|
||||||
getAllMiniProfiles(url: string, info: any, sessionID: string): string;
|
|
||||||
}
|
|
@ -1,26 +0,0 @@
|
|||||||
import { QuestController } from "../controllers/QuestController";
|
|
||||||
import { RepeatableQuestController } from "../controllers/RepeatableQuestController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IQuest } from "../models/eft/common/tables/IQuest";
|
|
||||||
import { IPmcDataRepeatableQuest } from "../models/eft/common/tables/IRepeatableQuests";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IAcceptQuestRequestData } from "../models/eft/quests/IAcceptQuestRequestData";
|
|
||||||
import { ICompleteQuestRequestData } from "../models/eft/quests/ICompleteQuestRequestData";
|
|
||||||
import { IHandoverQuestRequestData } from "../models/eft/quests/IHandoverQuestRequestData";
|
|
||||||
import { IListQuestsRequestData } from "../models/eft/quests/IListQuestsRequestData";
|
|
||||||
import { IRepeatableQuestChangeRequest } from "../models/eft/quests/IRepeatableQuestChangeRequest";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class QuestCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private questController;
|
|
||||||
private repeatableQuestController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, questController: QuestController, repeatableQuestController: RepeatableQuestController);
|
|
||||||
changeRepeatableQuest(pmcData: IPmcData, body: IRepeatableQuestChangeRequest, sessionID: string): IItemEventRouterResponse;
|
|
||||||
acceptQuest(pmcData: IPmcData, body: IAcceptQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
completeQuest(pmcData: IPmcData, body: ICompleteQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
handoverQuest(pmcData: IPmcData, body: IHandoverQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
listQuests(url: string, info: IListQuestsRequestData, sessionID: string): IGetBodyResponseData<IQuest[]>;
|
|
||||||
activityPeriods(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<IPmcDataRepeatableQuest[]>;
|
|
||||||
}
|
|
@ -1,36 +0,0 @@
|
|||||||
import { RagfairController } from "../controllers/RagfairController";
|
|
||||||
import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IAddOfferRequestData } from "../models/eft/ragfair/IAddOfferRequestData";
|
|
||||||
import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData";
|
|
||||||
import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult";
|
|
||||||
import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData";
|
|
||||||
import { IRemoveOfferRequestData } from "../models/eft/ragfair/IRemoveOfferRequestData";
|
|
||||||
import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { RagfairServer } from "../servers/RagfairServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
export declare class RagfairCallbacks extends OnLoadOnUpdate {
|
|
||||||
private httpResponse;
|
|
||||||
private logger;
|
|
||||||
private jsonUtil;
|
|
||||||
private ragfairServer;
|
|
||||||
private ragfairController;
|
|
||||||
private configServer;
|
|
||||||
private ragfairConfig;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, logger: ILogger, jsonUtil: JsonUtil, ragfairServer: RagfairServer, ragfairController: RagfairController, configServer: ConfigServer);
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
search(url: string, info: ISearchRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
getMarketPrice(url: string, info: IGetMarketPriceRequestData, sessionID: string): IGetBodyResponseData<IGetItemPriceResult>;
|
|
||||||
getItemPrices(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
addOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
removeOffer(pmcData: IPmcData, info: IRemoveOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
extendOffer(pmcData: IPmcData, info: IExtendOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
onUpdate(timeSinceLastRun: number): boolean;
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import { RepairController } from "../controllers/RepairController";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IRepairActionDataRequest } from "../models/eft/repair/IRepairActionDataRequest";
|
|
||||||
import { ITraderRepairActionDataRequest } from "../models/eft/repair/ITraderRepairActionDataRequest";
|
|
||||||
export declare class RepairCallbacks {
|
|
||||||
private repairController;
|
|
||||||
constructor(repairController: RepairController);
|
|
||||||
traderRepair(pmcData: IPmcData, body: ITraderRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
|
||||||
repair(pmcData: IPmcData, body: IRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
export declare class SaveCallbacks extends OnLoadOnUpdate {
|
|
||||||
private saveServer;
|
|
||||||
constructor(saveServer: SaveServer);
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
onUpdate(secondsSinceLastRun: number): boolean;
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import { TradeController } from "../controllers/TradeController";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IProcessBaseTradeRequestData } from "../models/eft/trade/IProcessBaseTradeRequestData";
|
|
||||||
import { IProcessRagfairTradeRequestData } from "../models/eft/trade/IProcessRagfairTradeRequestData";
|
|
||||||
export declare class TradeCallbacks {
|
|
||||||
private tradeController;
|
|
||||||
constructor(tradeController: TradeController);
|
|
||||||
processTrade(pmcData: IPmcData, body: IProcessBaseTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
processRagfairTrade(pmcData: IPmcData, body: IProcessRagfairTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,18 +0,0 @@
|
|||||||
import { TraderController } from "../controllers/TraderController";
|
|
||||||
import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IBarterScheme, ITraderAssort, ITraderBase } from "../models/eft/common/tables/ITrader";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class TraderCallbacks extends OnLoadOnUpdate {
|
|
||||||
private httpResponse;
|
|
||||||
private traderController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, traderController: TraderController);
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
getTraderSettings(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderBase[]>;
|
|
||||||
getProfilePurchases(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<Record<string, IBarterScheme[][]>>;
|
|
||||||
getTrader(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderBase>;
|
|
||||||
getAssort(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ITraderAssort>;
|
|
||||||
onUpdate(): boolean;
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
import { WeatherController } from "../controllers/WeatherController";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class WeatherCallbacks {
|
|
||||||
private httpResponse;
|
|
||||||
private weatherController;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, weatherController: WeatherController);
|
|
||||||
getWeather(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
import { WishlistController } from "../controllers/WishlistController";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IWishlistActionData } from "../models/eft/wishlist/IWishlistActionData";
|
|
||||||
export declare class WishlistCallbacks {
|
|
||||||
private wishlistController;
|
|
||||||
constructor(wishlistController: WishlistController);
|
|
||||||
addToWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
removeFromWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
import { BotGenerator } from "../generators/BotGenerator";
|
|
||||||
import { BotHelper } from "../helpers/BotHelper";
|
|
||||||
import { IGenerateBotsRequestData } from "../models/eft/bot/IGenerateBotsRequestData";
|
|
||||||
import { IBotBase } from "../models/eft/common/tables/IBotBase";
|
|
||||||
import { IBotCore } from "../models/eft/common/tables/IBotCore";
|
|
||||||
import { Difficulty } from "../models/eft/common/tables/IBotType";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
export declare class BotController {
|
|
||||||
private databaseServer;
|
|
||||||
private botGenerator;
|
|
||||||
private botHelper;
|
|
||||||
private configServer;
|
|
||||||
private botConfig;
|
|
||||||
constructor(databaseServer: DatabaseServer, botGenerator: BotGenerator, botHelper: BotHelper, configServer: ConfigServer);
|
|
||||||
getBotLimit(type: string): number;
|
|
||||||
getBotDifficulty(type: string, difficulty: string): IBotCore | Difficulty;
|
|
||||||
generate(info: IGenerateBotsRequestData, playerScav?: boolean): IBotBase[];
|
|
||||||
getBotCap(): number;
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IWearClothingRequestData } from "../models/eft/customization/IWearClothingRequestData";
|
|
||||||
import { IBuyClothingRequestData } from "../models/eft/customization/IBuyClothingRequestData";
|
|
||||||
import { ISuit } from "../models/eft/common/tables/ITrader";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
export declare class CustomizationController {
|
|
||||||
private logger;
|
|
||||||
private itemEventRouter;
|
|
||||||
private databaseServer;
|
|
||||||
private saveServer;
|
|
||||||
private profileHelper;
|
|
||||||
constructor(logger: ILogger, itemEventRouter: ItemEventRouter, databaseServer: DatabaseServer, saveServer: SaveServer, profileHelper: ProfileHelper);
|
|
||||||
getTraderSuits(traderID: string, sessionID: string): ISuit[];
|
|
||||||
wearClothing(pmcData: IPmcData, body: IWearClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
buyClothing(pmcData: IPmcData, body: IBuyClothingRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
private getAllTraderSuits;
|
|
||||||
}
|
|
@ -1,24 +0,0 @@
|
|||||||
import { DialogueHelper } from "../helpers/DialogueHelper";
|
|
||||||
import { IGetAllAttachmentsResponse } from "../models/eft/dialog/IGetAllAttachmentsResponse";
|
|
||||||
import { IGetFriendListDataResponse } from "../models/eft/dialog/IGetFriendListDataResponse";
|
|
||||||
import { IGetMailDialogViewResponseData } from "../models/eft/dialog/IGetMailDialogViewResponseData";
|
|
||||||
import { IGetBodyResponseData } from "../models/eft/httpResponse/IGetBodyResponseData";
|
|
||||||
import { DialogueInfo } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
export declare class DialogueController {
|
|
||||||
private httpResponse;
|
|
||||||
private saveServer;
|
|
||||||
private dialogueHelper;
|
|
||||||
constructor(httpResponse: HttpResponseUtil, saveServer: SaveServer, dialogueHelper: DialogueHelper);
|
|
||||||
getFriendList(sessionID: string): IGetFriendListDataResponse;
|
|
||||||
generateDialogueList(sessionID: string): IGetBodyResponseData<DialogueInfo[]>;
|
|
||||||
getDialogueInfo(dialogueID: string, sessionID: string): DialogueInfo;
|
|
||||||
generateDialogueView(dialogueID: string, sessionID: string): IGetMailDialogViewResponseData;
|
|
||||||
removeDialogue(dialogueID: string, sessionID: string): void;
|
|
||||||
setDialoguePin(dialogueID: string, shouldPin: boolean, sessionID: string): void;
|
|
||||||
setRead(dialogueIDs: string[], sessionID: string): void;
|
|
||||||
getAllAttachments(dialogueID: string, sessionID: string): IGetAllAttachmentsResponse;
|
|
||||||
private removeExpiredItems;
|
|
||||||
update(): void;
|
|
||||||
}
|
|
@ -1,20 +0,0 @@
|
|||||||
import { HttpServerHelper } from "../helpers/HttpServerHelper";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { Watermark } from "../utils/Watermark";
|
|
||||||
export declare class GameController {
|
|
||||||
private logger;
|
|
||||||
private watermark;
|
|
||||||
private httpServerHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private configServer;
|
|
||||||
private httpConfig;
|
|
||||||
constructor(logger: ILogger, watermark: Watermark, httpServerHelper: HttpServerHelper, profileHelper: ProfileHelper, configServer: ConfigServer);
|
|
||||||
gameStart(url: string, info: IEmptyRequestData, sessionID: string): void;
|
|
||||||
getGameConfig(sessionID: string): IGameConfigResponse;
|
|
||||||
getServer(): any[];
|
|
||||||
private getActiveRepeatableQuests;
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HandbookHelper } from "../helpers/HandbookHelper";
|
|
||||||
export declare class HandbookController {
|
|
||||||
private databaseServer;
|
|
||||||
private handbookHelper;
|
|
||||||
constructor(databaseServer: DatabaseServer, handbookHelper: HandbookHelper);
|
|
||||||
load(): void;
|
|
||||||
}
|
|
@ -1,25 +0,0 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { PaymentService } from "../services/PaymentService";
|
|
||||||
import { InventoryHelper } from "../helpers/InventoryHelper";
|
|
||||||
import { HealthHelper } from "../helpers/HealthHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IHealthTreatmentRequestData } from "../models/eft/health/IHealthTreatmentRequestData";
|
|
||||||
import { IOffraidEatRequestData } from "../models/eft/health/IOffraidEatRequestData";
|
|
||||||
import { IOffraidHealRequestData } from "../models/eft/health/IOffraidHealRequestData";
|
|
||||||
import { ISyncHealthRequestData } from "../models/eft/health/ISyncHealthRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
export declare class HealthController {
|
|
||||||
private logger;
|
|
||||||
private itemEventRouter;
|
|
||||||
private itemHelper;
|
|
||||||
private paymentService;
|
|
||||||
private inventoryHelper;
|
|
||||||
private healthHelper;
|
|
||||||
constructor(logger: ILogger, itemEventRouter: ItemEventRouter, itemHelper: ItemHelper, paymentService: PaymentService, inventoryHelper: InventoryHelper, healthHelper: HealthHelper);
|
|
||||||
saveVitality(pmcData: IPmcData, info: ISyncHealthRequestData, sessionID: string): void;
|
|
||||||
offraidHeal(pmcData: IPmcData, body: IOffraidHealRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
offraidEat(pmcData: IPmcData, body: IOffraidEatRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
healthTreatment(pmcData: IPmcData, info: IHealthTreatmentRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,56 +0,0 @@
|
|||||||
import { HideoutHelper } from "../helpers/HideoutHelper";
|
|
||||||
import { InventoryHelper } from "../helpers/InventoryHelper";
|
|
||||||
import { PaymentHelper } from "../helpers/PaymentHelper";
|
|
||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { HideoutUpgradeCompleteRequestData } from "../models/eft/hideout/HideoutUpgradeCompleteRequestData";
|
|
||||||
import { IHideoutContinousProductionStartRequestData } from "../models/eft/hideout/IHideoutContinousProductionStartRequestData";
|
|
||||||
import { IHideoutPutItemInRequestData } from "../models/eft/hideout/IHideoutPutItemInRequestData";
|
|
||||||
import { IHideoutScavCaseStartRequestData } from "../models/eft/hideout/IHideoutScavCaseStartRequestData";
|
|
||||||
import { IHideoutSingleProductionStartRequestData } from "../models/eft/hideout/IHideoutSingleProductionStartRequestData";
|
|
||||||
import { IHideoutTakeItemOutRequestData } from "../models/eft/hideout/IHideoutTakeItemOutRequestData";
|
|
||||||
import { IHideoutTakeProductionRequestData } from "../models/eft/hideout/IHideoutTakeProductionRequestData";
|
|
||||||
import { IHideoutToggleAreaRequestData } from "../models/eft/hideout/IHideoutToggleAreaRequestData";
|
|
||||||
import { IHideoutUpgradeRequestData } from "../models/eft/hideout/IHideoutUpgradeRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { PlayerService } from "../services/PlayerService";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class HideoutController {
|
|
||||||
private logger;
|
|
||||||
private hashUtil;
|
|
||||||
private timeUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private randomUtil;
|
|
||||||
private inventoryHelper;
|
|
||||||
private saveServer;
|
|
||||||
private playerService;
|
|
||||||
private presetHelper;
|
|
||||||
private paymentHelper;
|
|
||||||
private itemEventRouter;
|
|
||||||
private httpResponse;
|
|
||||||
private profileHelper;
|
|
||||||
private hideoutHelper;
|
|
||||||
private configServer;
|
|
||||||
private hideoutConfig;
|
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, randomUtil: RandomUtil, inventoryHelper: InventoryHelper, saveServer: SaveServer, playerService: PlayerService, presetHelper: PresetHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, hideoutHelper: HideoutHelper, configServer: ConfigServer);
|
|
||||||
upgrade(pmcData: IPmcData, body: IHideoutUpgradeRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
upgradeComplete(pmcData: IPmcData, body: HideoutUpgradeCompleteRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
putItemsInAreaSlots(pmcData: IPmcData, body: IHideoutPutItemInRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
takeItemsFromAreaSlots(pmcData: IPmcData, body: IHideoutTakeItemOutRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
toggleArea(pmcData: IPmcData, body: IHideoutToggleAreaRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
singleProductionStart(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
scavCaseProductionStart(pmcData: IPmcData, body: IHideoutScavCaseStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
continuousProductionStart(pmcData: IPmcData, body: IHideoutContinousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
takeProduction(pmcData: IPmcData, body: IHideoutTakeProductionRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
registerProduction(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData | IHideoutContinousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
update(): void;
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
import { ExtendedProfileHelper } from "../helpers/ExtendedProfileHelper";
|
|
||||||
import { HealthHelper } from "../helpers/HealthHelper";
|
|
||||||
import { InRaidHelper } from "../helpers/InRaidHelper";
|
|
||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { QuestHelper } from "../helpers/QuestHelper";
|
|
||||||
import { TraderHelper } from "../helpers/TraderHelper";
|
|
||||||
import { IRegisterPlayerRequestData } from "../models/eft/inRaid/IRegisterPlayerRequestData";
|
|
||||||
import { ISaveProgressRequestData } from "../models/eft/inRaid/ISaveProgressRequestData";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { InsuranceService } from "../services/InsuranceService";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
export declare class InraidController {
|
|
||||||
private saveServer;
|
|
||||||
private jsonUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private questHelper;
|
|
||||||
private itemHelper;
|
|
||||||
private extendedProfileHelper;
|
|
||||||
private healthHelper;
|
|
||||||
private traderHelper;
|
|
||||||
private insuranceService;
|
|
||||||
private inRaidHelper;
|
|
||||||
private configServer;
|
|
||||||
private inraidConfig;
|
|
||||||
constructor(saveServer: SaveServer, jsonUtil: JsonUtil, databaseServer: DatabaseServer, questHelper: QuestHelper, itemHelper: ItemHelper, extendedProfileHelper: ExtendedProfileHelper, healthHelper: HealthHelper, traderHelper: TraderHelper, insuranceService: InsuranceService, inRaidHelper: InRaidHelper, configServer: ConfigServer);
|
|
||||||
addPlayer(sessionID: string, info: IRegisterPlayerRequestData): void;
|
|
||||||
saveProgress(offraidData: ISaveProgressRequestData, sessionID: string): void;
|
|
||||||
}
|
|
@ -1,37 +0,0 @@
|
|||||||
import { DialogueHelper } from "../helpers/DialogueHelper";
|
|
||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IGetInsuranceCostRequestData } from "../models/eft/insurance/IGetInsuranceCostRequestData";
|
|
||||||
import { IInsureRequestData } from "../models/eft/insurance/IInsureRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { InsuranceService } from "../services/InsuranceService";
|
|
||||||
import { PaymentService } from "../services/PaymentService";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class InsuranceController {
|
|
||||||
private logger;
|
|
||||||
private randomUtil;
|
|
||||||
private itemEventRouter;
|
|
||||||
private timeUtil;
|
|
||||||
private saveServer;
|
|
||||||
private databaseServer;
|
|
||||||
private itemHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private dialogueHelper;
|
|
||||||
private paymentService;
|
|
||||||
private insuranceService;
|
|
||||||
private configServer;
|
|
||||||
private insuranceConfig;
|
|
||||||
constructor(logger: ILogger, randomUtil: RandomUtil, itemEventRouter: ItemEventRouter, timeUtil: TimeUtil, saveServer: SaveServer, databaseServer: DatabaseServer, itemHelper: ItemHelper, profileHelper: ProfileHelper, dialogueHelper: DialogueHelper, paymentService: PaymentService, // TODO: delay required
|
|
||||||
insuranceService: InsuranceService, configServer: ConfigServer);
|
|
||||||
processReturn(): void;
|
|
||||||
insure(pmcData: IPmcData, body: IInsureRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
cost(info: IGetInsuranceCostRequestData, sessionID: string): any;
|
|
||||||
doAbsolutelyNothing(): void;
|
|
||||||
}
|
|
@ -1,107 +0,0 @@
|
|||||||
import { InventoryHelper } from "../helpers/InventoryHelper";
|
|
||||||
import { PaymentHelper } from "../helpers/PaymentHelper";
|
|
||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IAddItemRequestData } from "../models/eft/inventory/IAddItemRequestData";
|
|
||||||
import { IInventoryBindRequestData } from "../models/eft/inventory/IInventoryBindRequestData";
|
|
||||||
import { IInventoryCreateMarkerRequestData } from "../models/eft/inventory/IInventoryCreateMarkerRequestData";
|
|
||||||
import { IInventoryDeleteMarkerRequestData } from "../models/eft/inventory/IInventoryDeleteMarkerRequestData";
|
|
||||||
import { IInventoryEditMarkerRequestData } from "../models/eft/inventory/IInventoryEditMarkerRequestData";
|
|
||||||
import { IInventoryExamineRequestData } from "../models/eft/inventory/IInventoryExamineRequestData";
|
|
||||||
import { IInventoryFoldRequestData } from "../models/eft/inventory/IInventoryFoldRequestData";
|
|
||||||
import { IInventoryMergeRequestData } from "../models/eft/inventory/IInventoryMergeRequestData";
|
|
||||||
import { IInventoryMoveRequestData } from "../models/eft/inventory/IInventoryMoveRequestData";
|
|
||||||
import { IInventoryReadEncyclopediaRequestData } from "../models/eft/inventory/IInventoryReadEncyclopediaRequestData";
|
|
||||||
import { IInventoryRemoveRequestData } from "../models/eft/inventory/IInventoryRemoveRequestData";
|
|
||||||
import { IInventorySortRequestData } from "../models/eft/inventory/IInventorySortRequestData";
|
|
||||||
import { IInventorySplitRequestData } from "../models/eft/inventory/IInventorySplitRequestData";
|
|
||||||
import { IInventorySwapRequestData } from "../models/eft/inventory/IInventorySwapRequestData";
|
|
||||||
import { IInventoryTagRequestData } from "../models/eft/inventory/IInventoryTagRequestData";
|
|
||||||
import { IInventoryToggleRequestData } from "../models/eft/inventory/IInventoryToggleRequestData";
|
|
||||||
import { IInventoryTransferRequestData } from "../models/eft/inventory/IInventoryTransferRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
export declare class InventoryController {
|
|
||||||
private logger;
|
|
||||||
private hashUtil;
|
|
||||||
private jsonUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private presetHelper;
|
|
||||||
private inventoryHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private paymentHelper;
|
|
||||||
private itemEventRouter;
|
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, presetHelper: PresetHelper, inventoryHelper: InventoryHelper, profileHelper: ProfileHelper, paymentHelper: PaymentHelper, itemEventRouter: ItemEventRouter);
|
|
||||||
/**
|
|
||||||
* Move Item
|
|
||||||
* change location of item with parentId and slotId
|
|
||||||
* transfers items from one profile to another if fromOwner/toOwner is set in the body.
|
|
||||||
* otherwise, move is contained within the same profile_f.
|
|
||||||
*/
|
|
||||||
moveItem(pmcData: IPmcData, body: IInventoryMoveRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Remove Item from Profile
|
|
||||||
* Deep tree item deletion, also removes items from insurance list
|
|
||||||
*/
|
|
||||||
removeItem(pmcData: IPmcData, itemId: string, sessionID: string, output?: IItemEventRouterResponse): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Implements functionality "Discard" from Main menu (Stash etc.)
|
|
||||||
* Removes item from PMC Profile
|
|
||||||
*/
|
|
||||||
discardItem(pmcData: IPmcData, body: IInventoryRemoveRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Split Item
|
|
||||||
* spliting 1 item-stack into 2 separate items ...
|
|
||||||
*/
|
|
||||||
splitItem(pmcData: IPmcData, body: IInventorySplitRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Merge Item
|
|
||||||
* merges 2 items into one, deletes item from `body.item` and adding number of stacks into `body.with`
|
|
||||||
*/
|
|
||||||
mergeItem(pmcData: IPmcData, body: IInventoryMergeRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Transfer item
|
|
||||||
* Used to take items from scav inventory into stash or to insert ammo into mags (shotgun ones) and reloading weapon by clicking "Reload"
|
|
||||||
*/
|
|
||||||
transferItem(pmcData: IPmcData, body: IInventoryTransferRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Swap Item
|
|
||||||
* its used for "reload" if you have weapon in hands and magazine is somewhere else in rig or backpack in equipment
|
|
||||||
*/
|
|
||||||
swapItem(pmcData: IPmcData, body: IInventorySwapRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Give Item
|
|
||||||
* its used for "add" item like gifts etc.
|
|
||||||
*/
|
|
||||||
addItem(pmcData: IPmcData, body: IAddItemRequestData, output: IItemEventRouterResponse, sessionID: string, callback: any, foundInRaid?: boolean, addUpd?: any): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Handles folding of Weapons
|
|
||||||
*/
|
|
||||||
foldItem(pmcData: IPmcData, body: IInventoryFoldRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Toggles "Toggleable" items like night vision goggles and face shields.
|
|
||||||
*/
|
|
||||||
toggleItem(pmcData: IPmcData, body: IInventoryToggleRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Handles Tagging of items (primary Containers).
|
|
||||||
*/
|
|
||||||
tagItem(pmcData: IPmcData, body: IInventoryTagRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
bindItem(pmcData: IPmcData, body: IInventoryBindRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Handles examining of the item *
|
|
||||||
*/
|
|
||||||
examineItem(pmcData: IPmcData, body: IInventoryExamineRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
readEncyclopedia(pmcData: IPmcData, body: IInventoryReadEncyclopediaRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Handles sorting of Inventory.
|
|
||||||
*/
|
|
||||||
sortInventory(pmcData: IPmcData, body: IInventorySortRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
createMapMarker(pmcData: IPmcData, body: IInventoryCreateMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
deleteMapMarker(pmcData: IPmcData, body: IInventoryDeleteMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
editMapMarker(pmcData: IPmcData, body: IInventoryEditMarkerRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,27 +0,0 @@
|
|||||||
import { HttpServerHelper } from "../helpers/HttpServerHelper";
|
|
||||||
import { IChangeRequestData } from "../models/eft/launcher/IChangeRequestData";
|
|
||||||
import { ILoginRequestData } from "../models/eft/launcher/ILoginRequestData";
|
|
||||||
import { IRegisterData } from "../models/eft/launcher/IRegisterData";
|
|
||||||
import { Info } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
export declare class LauncherController {
|
|
||||||
private hashUtil;
|
|
||||||
private saveServer;
|
|
||||||
private httpServerHelper;
|
|
||||||
private databaseServer;
|
|
||||||
private configServer;
|
|
||||||
private coreConfig;
|
|
||||||
constructor(hashUtil: HashUtil, saveServer: SaveServer, httpServerHelper: HttpServerHelper, databaseServer: DatabaseServer, configServer: ConfigServer);
|
|
||||||
connect(): any;
|
|
||||||
find(sessionIdKey: string): Info;
|
|
||||||
login(info: ILoginRequestData): string;
|
|
||||||
register(info: IRegisterData): string;
|
|
||||||
private createAccount;
|
|
||||||
changeUsername(info: IChangeRequestData): string;
|
|
||||||
changePassword(info: IChangeRequestData): string;
|
|
||||||
wipe(info: IRegisterData): string;
|
|
||||||
getCompatibleTarkovVersion(): string;
|
|
||||||
}
|
|
@ -1,18 +0,0 @@
|
|||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { LocationGenerator } from "../generators/LocationGenerator";
|
|
||||||
import { ILocationBase } from "../models/eft/common/ILocationBase";
|
|
||||||
import { ILocationsGenerateAllResponse } from "../models/eft/common/ILocationsSourceDestinationBase";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
export declare class LocationController {
|
|
||||||
private jsonUtil;
|
|
||||||
private logger;
|
|
||||||
private locationGenerator;
|
|
||||||
private databaseServer;
|
|
||||||
private timeUtil;
|
|
||||||
constructor(jsonUtil: JsonUtil, logger: ILogger, locationGenerator: LocationGenerator, databaseServer: DatabaseServer, timeUtil: TimeUtil);
|
|
||||||
get(location: string): ILocationBase;
|
|
||||||
generate(name: string): ILocationBase;
|
|
||||||
generateAll(): ILocationsGenerateAllResponse;
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { TraderHelper } from "../helpers/TraderHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IEndOfflineRaidRequestData } from "../models/eft/match/IEndOfflineRaidRequestData";
|
|
||||||
import { IGetProfileRequestData } from "../models/eft/match/IGetProfileRequestData";
|
|
||||||
import { IStartOfflineRaidRequestData } from "../models/eft/match/IStartOffineRaidRequestData";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { MatchLocationService } from "../services/MatchLocationService";
|
|
||||||
export declare class MatchController {
|
|
||||||
private saveServer;
|
|
||||||
private profileHelper;
|
|
||||||
private matchLocationService;
|
|
||||||
private traderHelper;
|
|
||||||
private configServer;
|
|
||||||
private matchConfig;
|
|
||||||
private inraidConfig;
|
|
||||||
constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer);
|
|
||||||
getEnabled(): boolean;
|
|
||||||
getProfile(info: IGetProfileRequestData): IPmcData[];
|
|
||||||
private getMatch;
|
|
||||||
createGroup(sessionID: string, info: any): any;
|
|
||||||
deleteGroup(info: any): void;
|
|
||||||
joinMatch(info: any, sessionID: string): any[];
|
|
||||||
getGroupStatus(info: any): any;
|
|
||||||
startOfflineRaid(info: IStartOfflineRaidRequestData, sessionID: string): void;
|
|
||||||
endOfflineRaid(info: IEndOfflineRaidRequestData, sessionID: string): void;
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { INoteActionData } from "../models/eft/notes/INoteActionData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
declare class NoteController {
|
|
||||||
private itemEventRouter;
|
|
||||||
constructor(itemEventRouter: ItemEventRouter);
|
|
||||||
addNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
editNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
deleteNote(pmcData: IPmcData, body: INoteActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
||||||
export { NoteController };
|
|
@ -1,22 +0,0 @@
|
|||||||
import { NotifierHelper } from "../helpers/NotifierHelper";
|
|
||||||
import { NotificationService } from "../services/NotificationService";
|
|
||||||
import { INotifierChannel } from "../models/eft/notifier/INotifier";
|
|
||||||
import { HttpServerHelper } from "../helpers/HttpServerHelper";
|
|
||||||
export declare class NotifierController {
|
|
||||||
private notifierHelper;
|
|
||||||
private httpServerHelper;
|
|
||||||
private notificationService;
|
|
||||||
private pollInterval;
|
|
||||||
private timeout;
|
|
||||||
constructor(notifierHelper: NotifierHelper, httpServerHelper: HttpServerHelper, notificationService: NotificationService);
|
|
||||||
/**
|
|
||||||
* Resolve an array of session notifications.
|
|
||||||
*
|
|
||||||
* If no notifications are currently queued then intermittently check for new notifications until either
|
|
||||||
* one or more appear or when a timeout expires.
|
|
||||||
* If no notifications are available after the timeout, use a default message.
|
|
||||||
*/
|
|
||||||
notifyAsync(sessionID: string): Promise<unknown>;
|
|
||||||
getServer(sessionID: string): string;
|
|
||||||
getChannel(sessionID: string): INotifierChannel;
|
|
||||||
}
|
|
@ -1,18 +0,0 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IPresetBuildActionRequestData } from "../models/eft/presetBuild/IPresetBuildActionRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { WeaponBuild } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
export declare class PresetBuildController {
|
|
||||||
private hashUtil;
|
|
||||||
private itemEventRouter;
|
|
||||||
private itemHelper;
|
|
||||||
private saveServer;
|
|
||||||
constructor(hashUtil: HashUtil, itemEventRouter: ItemEventRouter, itemHelper: ItemHelper, saveServer: SaveServer);
|
|
||||||
getUserBuilds(sessionID: string): WeaponBuild[];
|
|
||||||
saveBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
removeBuild(pmcData: IPmcData, body: IPresetBuildActionRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
export declare class PresetController {
|
|
||||||
private presetHelper;
|
|
||||||
private databaseServer;
|
|
||||||
constructor(presetHelper: PresetHelper, databaseServer: DatabaseServer);
|
|
||||||
initialize(): void;
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { TraderHelper } from "../helpers/TraderHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IProfileChangeNicknameRequestData } from "../models/eft/profile/IProfileChangeNicknameRequestData";
|
|
||||||
import { IProfileChangeVoiceRequestData } from "../models/eft/profile/IProfileChangeVoiceRequestData";
|
|
||||||
import { IProfileCreateRequestData } from "../models/eft/profile/IProfileCreateRequestData";
|
|
||||||
import { IValidateNicknameRequestData } from "../models/eft/profile/IValidateNicknameRequestData";
|
|
||||||
import { ISearchFriendRequestData } from "../models/eft/profile/ISearchFriendRequestData";
|
|
||||||
import { ISearchFriendResponse } from "../models/eft/profile/ISearchFriendResponse";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
import { IMiniProfile } from "../models/eft/launcher/IMiniProfile";
|
|
||||||
import { ExtendedProfileHelper } from "../helpers/ExtendedProfileHelper";
|
|
||||||
export declare class ProfileController {
|
|
||||||
private hashUtil;
|
|
||||||
private timeUtil;
|
|
||||||
private saveServer;
|
|
||||||
private databaseServer;
|
|
||||||
private itemHelper;
|
|
||||||
private traderHelper;
|
|
||||||
private extendedProfileHelper;
|
|
||||||
constructor(hashUtil: HashUtil, timeUtil: TimeUtil, saveServer: SaveServer, databaseServer: DatabaseServer, itemHelper: ItemHelper, traderHelper: TraderHelper, extendedProfileHelper: ExtendedProfileHelper);
|
|
||||||
getMiniProfiles(): IMiniProfile[];
|
|
||||||
getMiniProfile(sessionID: string): any;
|
|
||||||
getCompleteProfile(sessionID: string): IPmcData[];
|
|
||||||
createProfile(info: IProfileCreateRequestData, sessionID: string): void;
|
|
||||||
generatePlayerScav(sessionID: string): IPmcData;
|
|
||||||
validateNickname(info: IValidateNicknameRequestData, sessionID: string): string;
|
|
||||||
changeNickname(info: IProfileChangeNicknameRequestData, sessionID: string): string;
|
|
||||||
changeVoice(info: IProfileChangeVoiceRequestData, sessionID: string): void;
|
|
||||||
getFriends(info: ISearchFriendRequestData, sessionID: string): ISearchFriendResponse[];
|
|
||||||
}
|
|
@ -1,37 +0,0 @@
|
|||||||
import { DialogueHelper } from "../helpers/DialogueHelper";
|
|
||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { QuestConditionHelper } from "../helpers/QuestConditionHelper";
|
|
||||||
import { QuestHelper } from "../helpers/QuestHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IQuest } from "../models/eft/common/tables/IQuest";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IAcceptQuestRequestData } from "../models/eft/quests/IAcceptQuestRequestData";
|
|
||||||
import { ICompleteQuestRequestData } from "../models/eft/quests/ICompleteQuestRequestData";
|
|
||||||
import { IHandoverQuestRequestData } from "../models/eft/quests/IHandoverQuestRequestData";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { PlayerService } from "../services/PlayerService";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class QuestController {
|
|
||||||
private logger;
|
|
||||||
private timeUtil;
|
|
||||||
private itemEventRouter;
|
|
||||||
private databaseServer;
|
|
||||||
private itemHelper;
|
|
||||||
private dialogueHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private questHelper;
|
|
||||||
private questConditionHelper;
|
|
||||||
private playerService;
|
|
||||||
private configServer;
|
|
||||||
private questConfig;
|
|
||||||
constructor(logger: ILogger, timeUtil: TimeUtil, itemEventRouter: ItemEventRouter, databaseServer: DatabaseServer, itemHelper: ItemHelper, dialogueHelper: DialogueHelper, profileHelper: ProfileHelper, questHelper: QuestHelper, questConditionHelper: QuestConditionHelper, playerService: PlayerService, configServer: ConfigServer);
|
|
||||||
getClientQuests(sessionID: string): IQuest[];
|
|
||||||
acceptQuest(pmcData: IPmcData, acceptedQuest: IAcceptQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
acceptRepeatableQuest(pmcData: IPmcData, acceptedQuest: IAcceptQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
completeQuest(pmcData: IPmcData, body: ICompleteQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
handoverQuest(pmcData: IPmcData, body: IHandoverQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,69 +0,0 @@
|
|||||||
import { RagfairOfferGenerator } from "../generators/RagfairOfferGenerator";
|
|
||||||
import { HandbookHelper } from "../helpers/HandbookHelper";
|
|
||||||
import { InventoryHelper } from "../helpers/InventoryHelper";
|
|
||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { PaymentHelper } from "../helpers/PaymentHelper";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { RagfairHelper } from "../helpers/RagfairHelper";
|
|
||||||
import { RagfairOfferHelper } from "../helpers/RagfairOfferHelper";
|
|
||||||
import { RagfairSellHelper } from "../helpers/RagfairSellHelper";
|
|
||||||
import { RagfairSortHelper } from "../helpers/RagfairSortHelper";
|
|
||||||
import { RagfairTaxHelper } from "../helpers/RagfairTaxHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { IAddOfferRequestData, Requirement } from "../models/eft/ragfair/IAddOfferRequestData";
|
|
||||||
import { IExtendOfferRequestData } from "../models/eft/ragfair/IExtendOfferRequestData";
|
|
||||||
import { IGetItemPriceResult } from "../models/eft/ragfair/IGetItemPriceResult";
|
|
||||||
import { IGetMarketPriceRequestData } from "../models/eft/ragfair/IGetMarketPriceRequestData";
|
|
||||||
import { IGetOffersResult } from "../models/eft/ragfair/IGetOffersResult";
|
|
||||||
import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer";
|
|
||||||
import { ISearchRequestData } from "../models/eft/ragfair/ISearchRequestData";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { RagfairServer } from "../servers/RagfairServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { PaymentService } from "../services/PaymentService";
|
|
||||||
import { RagfairOfferService } from "../services/RagfairOfferService";
|
|
||||||
import { RagfairPriceService } from "../services/RagfairPriceService";
|
|
||||||
import { RagfairRequiredItemsService } from "../services/RagfairRequiredItemsService";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class RagfairController {
|
|
||||||
private logger;
|
|
||||||
private timeUtil;
|
|
||||||
private httpResponse;
|
|
||||||
private itemEventRouter;
|
|
||||||
private ragfairServer;
|
|
||||||
private ragfairPriceService;
|
|
||||||
private databaseServer;
|
|
||||||
private itemHelper;
|
|
||||||
private saveServer;
|
|
||||||
private ragfairSellHelper;
|
|
||||||
private ragfairTaxHelper;
|
|
||||||
private ragfairSortHelper;
|
|
||||||
private ragfairOfferHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private paymentService;
|
|
||||||
private handbookHelper;
|
|
||||||
private paymentHelper;
|
|
||||||
private inventoryHelper;
|
|
||||||
private ragfairHelper;
|
|
||||||
private ragfairOfferService;
|
|
||||||
private ragfairRequiredItemsService;
|
|
||||||
private ragfairOfferGenerator;
|
|
||||||
private configServer;
|
|
||||||
private ragfairConfig;
|
|
||||||
constructor(logger: ILogger, timeUtil: TimeUtil, httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter, ragfairServer: RagfairServer, ragfairPriceService: RagfairPriceService, databaseServer: DatabaseServer, itemHelper: ItemHelper, saveServer: SaveServer, ragfairSellHelper: RagfairSellHelper, ragfairTaxHelper: RagfairTaxHelper, ragfairSortHelper: RagfairSortHelper, ragfairOfferHelper: RagfairOfferHelper, profileHelper: ProfileHelper, paymentService: PaymentService, handbookHelper: HandbookHelper, paymentHelper: PaymentHelper, inventoryHelper: InventoryHelper, ragfairHelper: RagfairHelper, ragfairOfferService: RagfairOfferService, ragfairRequiredItemsService: RagfairRequiredItemsService, ragfairOfferGenerator: RagfairOfferGenerator, configServer: ConfigServer);
|
|
||||||
getOffers(sessionID: string, info: ISearchRequestData): IGetOffersResult;
|
|
||||||
update(): void;
|
|
||||||
getItemPrice(info: IGetMarketPriceRequestData): IGetItemPriceResult;
|
|
||||||
addPlayerOffer(pmcData: IPmcData, info: IAddOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
createPlayerOffer(profile: IAkiProfile, requirements: Requirement[], items: Item[], sellInOnePiece: boolean, amountToSend: number): IRagfairOffer;
|
|
||||||
getAllFleaPrices(): Record<string, number>;
|
|
||||||
removeOffer(offerId: string, sessionID: string): IItemEventRouterResponse;
|
|
||||||
extendOffer(info: IExtendOfferRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,40 +0,0 @@
|
|||||||
import { QuestHelper } from "../helpers/QuestHelper";
|
|
||||||
import { RepairHelper } from "../helpers/RepairHelper";
|
|
||||||
import { TraderHelper } from "../helpers/TraderHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IRepairActionDataRequest } from "../models/eft/repair/IRepairActionDataRequest";
|
|
||||||
import { ITraderRepairActionDataRequest } from "../models/eft/repair/ITraderRepairActionDataRequest";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { PaymentService } from "../services/PaymentService";
|
|
||||||
export declare class RepairController {
|
|
||||||
private logger;
|
|
||||||
private itemEventRouter;
|
|
||||||
private databaseServer;
|
|
||||||
private questHelper;
|
|
||||||
private traderHelper;
|
|
||||||
private paymentService;
|
|
||||||
private repairHelper;
|
|
||||||
private configServer;
|
|
||||||
private repairConfig;
|
|
||||||
constructor(logger: ILogger, itemEventRouter: ItemEventRouter, databaseServer: DatabaseServer, questHelper: QuestHelper, traderHelper: TraderHelper, paymentService: PaymentService, repairHelper: RepairHelper, configServer: ConfigServer);
|
|
||||||
/**
|
|
||||||
* Repair with trader
|
|
||||||
* @param pmcData player profile
|
|
||||||
* @param body endpoint request data
|
|
||||||
* @param sessionID session id
|
|
||||||
* @returns item event router action
|
|
||||||
*/
|
|
||||||
traderRepair(pmcData: IPmcData, body: ITraderRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* Repair with repair kit
|
|
||||||
* @param pmcData player profile
|
|
||||||
* @param body endpoint request data
|
|
||||||
* @param sessionID session id
|
|
||||||
* @returns item event router action
|
|
||||||
*/
|
|
||||||
repair(pmcData: IPmcData, body: IRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,217 +0,0 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { RagfairServerHelper } from "../helpers/RagfairServerHelper";
|
|
||||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
|
||||||
import { Exit } from "../models/eft/common/ILocationBase";
|
|
||||||
import { IPmcData, TraderInfo } from "../models/eft/common/IPmcData";
|
|
||||||
import { ICompletion, ICompletionAvailableFor, IElimination, IEliminationCondition, IExploration, IExplorationCondition, IPmcDataRepeatableQuest, IRepeatableQuest, IReward, IRewards } from "../models/eft/common/tables/IRepeatableQuests";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IRepeatableQuestChangeRequest } from "../models/eft/quests/IRepeatableQuestChangeRequest";
|
|
||||||
import { ELocationName } from "../models/enums/ELocationName";
|
|
||||||
import { IRepeatableQuestConfig } from "../models/spt/config/IQuestConfig";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { PaymentService } from "../services/PaymentService";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { MathUtil } from "../utils/MathUtil";
|
|
||||||
import { ObjectId } from "../utils/ObjectId";
|
|
||||||
import { ProbabilityObject, ProbabilityObjectArray, RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export interface IQuestTypePool {
|
|
||||||
types: string[];
|
|
||||||
pool: IQuestPool;
|
|
||||||
}
|
|
||||||
export interface IQuestPool {
|
|
||||||
Exploration: IExplorationPool;
|
|
||||||
Elimination: IEliminationPool;
|
|
||||||
}
|
|
||||||
export interface IExplorationPool {
|
|
||||||
locations: Partial<Record<ELocationName, string[]>>;
|
|
||||||
}
|
|
||||||
export interface IEliminationPool {
|
|
||||||
targets: IEliminationTargetPool;
|
|
||||||
}
|
|
||||||
export interface IEliminationTargetPool {
|
|
||||||
Savage?: ITargetLocation;
|
|
||||||
AnyPmc?: ITargetLocation;
|
|
||||||
bossBully?: ITargetLocation;
|
|
||||||
bossGluhar?: ITargetLocation;
|
|
||||||
bossKilla?: ITargetLocation;
|
|
||||||
bossSanitar?: ITargetLocation;
|
|
||||||
bossTagilla?: ITargetLocation;
|
|
||||||
bossKojaniy?: ITargetLocation;
|
|
||||||
}
|
|
||||||
export interface ITargetLocation {
|
|
||||||
locations: string[];
|
|
||||||
}
|
|
||||||
export declare class RepeatableQuestController {
|
|
||||||
private timeUtil;
|
|
||||||
private logger;
|
|
||||||
private randomUtil;
|
|
||||||
private mathUtil;
|
|
||||||
private jsonUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private itemHelper;
|
|
||||||
private presetHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private ragfairServerHelper;
|
|
||||||
private itemEventRouter;
|
|
||||||
private paymentService;
|
|
||||||
private objectId;
|
|
||||||
private configServer;
|
|
||||||
private questConfig;
|
|
||||||
constructor(timeUtil: TimeUtil, logger: ILogger, randomUtil: RandomUtil, mathUtil: MathUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, itemHelper: ItemHelper, presetHelper: PresetHelper, profileHelper: ProfileHelper, ragfairServerHelper: RagfairServerHelper, itemEventRouter: ItemEventRouter, paymentService: PaymentService, objectId: ObjectId, configServer: ConfigServer);
|
|
||||||
/**
|
|
||||||
* This is the method reached by the /client/repeatalbeQuests/activityPeriods endpoint
|
|
||||||
* Returns an array of objects in the format of repeatable quests to the client.
|
|
||||||
* repeatableQuestObject = {
|
|
||||||
* id: Unique Id,
|
|
||||||
* name: "Daily",
|
|
||||||
* endTime: the time when the quests expire
|
|
||||||
* activeQuests: currently available quests in an array. Each element of quest type format (see assets/database/templates/repeatableQuests.json).
|
|
||||||
* inactiveQuests: the quests which were previously active (required by client to fail them if they are not completed)
|
|
||||||
* }
|
|
||||||
*
|
|
||||||
* The method checks if the player level requirement for repeatable quests (e.g. daily lvl5, weekly lvl15) is met and if the previously active quests
|
|
||||||
* are still valid. This ischecked by endTime persisted in profile accordning to the resetTime configured for each repeatable kind (daily, weekly)
|
|
||||||
* in QuestCondig.js
|
|
||||||
*
|
|
||||||
* If the condition is met, new repeatableQuests are created, old quests (which are persisted in the profile.RepeatableQuests[i].activeQuests) are
|
|
||||||
* moved to profile.RepeatableQuests[i].inactiveQuests. This memory is required to get rid of old repeatable quest data in the profile, otherwise
|
|
||||||
* they'll litter the profile's Quests field.
|
|
||||||
* (if the are on "Succeed" but not "Completed" we keep them, to allow the player to complete them and get the rewards)
|
|
||||||
* The new quests generated are again persisted in profile.RepeatableQuests
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* @param {string} sessionId Player's session id
|
|
||||||
* @returns {array} array of "repeatableQuestObjects" as descibed above
|
|
||||||
*/
|
|
||||||
getClientRepeatableQuests(info: IEmptyRequestData, sessionID: string): IPmcDataRepeatableQuest[];
|
|
||||||
/**
|
|
||||||
* This method is called by GetClientRepeatableQuests and creates one element of quest type format (see assets/database/templates/repeatableQuests.json).
|
|
||||||
* It randomly draws a quest type (currently Elimination, Completion or Exploration) as well as a trader who is providing the quest
|
|
||||||
*/
|
|
||||||
generateRepeatableQuest(pmcLevel: number, pmcTraderInfo: Record<string, TraderInfo>, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IRepeatableQuest;
|
|
||||||
/**
|
|
||||||
* Just for debug reasons. Draws dailies a random assort of dailies extracted from dumps
|
|
||||||
*/
|
|
||||||
generateDebugDailies(dailiesPool: any, factory: any, number: any): any;
|
|
||||||
/**
|
|
||||||
* Generates the base object of quest type format given as templates in assets/database/templates/repeatableQuests.json
|
|
||||||
* The templates include Elimination, Completion and Extraction quest types
|
|
||||||
*
|
|
||||||
* @param {string} type quest type: "Elimination", "Completion" or "Extraction"
|
|
||||||
* @param {string} traderId trader from which the quest will be provided
|
|
||||||
* @returns {object} a object which contains the base elements for repeatable quests of the requests type
|
|
||||||
* (needs to be filled with reward and conditions by called to make a valid quest)
|
|
||||||
*/
|
|
||||||
generateRepeatableTemplate(type: string, traderId: string): IRepeatableQuest;
|
|
||||||
/**
|
|
||||||
* Generates a valid Exploration quest
|
|
||||||
*
|
|
||||||
* @param {integer} pmcLevel player's level for reward generation
|
|
||||||
* @param {string} traderId trader from which the quest will be provided
|
|
||||||
* @param {object} questTypePool Pools for quests (used to avoid redundant quests)
|
|
||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
|
||||||
* @returns {object} object of quest type format for "Exploration" (see assets/database/templates/repeatableQuests.json)
|
|
||||||
*/
|
|
||||||
generateExplorationQuest(pmcLevel: number, traderId: string, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IExploration;
|
|
||||||
/**
|
|
||||||
* Generates a valid Completion quest
|
|
||||||
*
|
|
||||||
* @param {integer} pmcLevel player's level for requested items and reward generation
|
|
||||||
* @param {string} traderId trader from which the quest will be provided
|
|
||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
|
||||||
* @returns {object} object of quest type format for "Completion" (see assets/database/templates/repeatableQuests.json)
|
|
||||||
*/
|
|
||||||
generateCompletionQuest(pmcLevel: number, traderId: string, repeatableConfig: IRepeatableQuestConfig): ICompletion;
|
|
||||||
/**
|
|
||||||
* Generates a valid Elimination quest
|
|
||||||
*
|
|
||||||
* @param {integer} pmcLevel player's level for requested items and reward generation
|
|
||||||
* @param {string} traderId trader from which the quest will be provided
|
|
||||||
* @param {object} questTypePool Pools for quests (used to avoid redundant quests)
|
|
||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
|
||||||
* @returns {object} object of quest type format for "Elimination" (see assets/database/templates/repeatableQuests.json)
|
|
||||||
*/
|
|
||||||
generateEliminationQuest(pmcLevel: number, traderId: string, questTypePool: IQuestTypePool, repeatableConfig: IRepeatableQuestConfig): IElimination;
|
|
||||||
/**
|
|
||||||
* Exploration repeatable quests can specify a required extraction point.
|
|
||||||
* This method creates the according object which will be appended to the conditions array
|
|
||||||
*
|
|
||||||
* @param {string} exit The exit name to generate the condition for
|
|
||||||
* @returns {object} Exit condition
|
|
||||||
*/
|
|
||||||
generateExplorationExitCondition(exit: Exit): IExplorationCondition;
|
|
||||||
/**
|
|
||||||
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
|
||||||
* This is a helper method for GenerateCompletionQuest to create a completion condition (of which a completion quest theoretically can have many)
|
|
||||||
*
|
|
||||||
* @param {string} targetItemId id of the item to request
|
|
||||||
* @param {integer} value amount of items of this specific type to request
|
|
||||||
* @returns {object} object of "Completion"-condition
|
|
||||||
*/
|
|
||||||
generateCompletionAvailableForFinish(targetItemId: string, value: number): ICompletionAvailableFor;
|
|
||||||
/**
|
|
||||||
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
|
||||||
* This is a helper method for GenerateEliminationQuest to create a location condition.
|
|
||||||
*
|
|
||||||
* @param {string} location the location on which to fulfill the elimination quest
|
|
||||||
* @returns {object} object of "Elimination"-location-subcondition
|
|
||||||
*/
|
|
||||||
generateEliminationLocation(location: string[]): IEliminationCondition;
|
|
||||||
/**
|
|
||||||
* A repeatable quest, besides some more or less static components, exists of reward and condition (see assets/database/templates/repeatableQuests.json)
|
|
||||||
* This is a helper method for GenerateEliminationQuest to create a kill condition.
|
|
||||||
*
|
|
||||||
* @param {string} target array of target npcs e.g. "AnyPmc", "Savage"
|
|
||||||
* @param {array} bodyParts array of body parts with which to kill e.g. ["stomach", "thorax"]
|
|
||||||
* @param {number} distance distance from which to kill (currently only >= supported)
|
|
||||||
* @returns {object} object of "Elimination"-kill-subcondition
|
|
||||||
*/
|
|
||||||
generateEliminationCondition(target: string, bodyPart: string[], distance: number): IEliminationCondition;
|
|
||||||
/**
|
|
||||||
* Used to create a quest pool during each cycle of repeatable quest generation. The pool will be subsequently
|
|
||||||
* narrowed down during quest generation to avoid duplicate quests. Like duplicate extractions or elimination quests
|
|
||||||
* where you have to e.g. kill scavs in same locations.
|
|
||||||
*
|
|
||||||
* @returns {object} the quest pool
|
|
||||||
*/
|
|
||||||
generateQuestPool(repeatableConfig: IRepeatableQuestConfig): IQuestTypePool;
|
|
||||||
/**
|
|
||||||
* Generate the reward for a mission. A reward can consist of
|
|
||||||
* - Experience
|
|
||||||
* - Money
|
|
||||||
* - Items
|
|
||||||
* - Trader Reputation
|
|
||||||
*
|
|
||||||
* The reward is dependent on the player level as given by the wiki. The exact mapping of pmcLevel to
|
|
||||||
* experience / money / items / trader reputation can be defined in QuestConfig.js
|
|
||||||
*
|
|
||||||
* There's also a random variation of the reward the spread of which can be also defined in the config.
|
|
||||||
*
|
|
||||||
* Additonaly, a scaling factor w.r.t. quest difficulty going from 0.2...1 can be used
|
|
||||||
*
|
|
||||||
* @param {integer} pmcLevel player's level
|
|
||||||
* @param {number} difficulty a reward scaling factor goint from 0.2 to 1
|
|
||||||
* @param {string} traderId the trader for reputation gain (and possible in the future filtering of reward item type based on trader)
|
|
||||||
* @param {object} repeatableConfig The configuration for the repeatably kind (daily, weekly) as configured in QuestConfig for the requestd quest
|
|
||||||
* @returns {object} object of "Reward"-type that can be given for a repeatable mission
|
|
||||||
*/
|
|
||||||
generateReward(pmcLevel: number, difficulty: number, traderId: string, repeatableConfig: IRepeatableQuestConfig): IRewards;
|
|
||||||
/**
|
|
||||||
* Helper to create a reward item structured as required by the client
|
|
||||||
*
|
|
||||||
* @param {string} tpl itemId of the rewarded item
|
|
||||||
* @param {integer} value amount of items to give
|
|
||||||
* @param {integer} index all rewards will be appended to a list, for unkown reasons the client wants the index
|
|
||||||
* @returns {object} object of "Reward"-item-type
|
|
||||||
*/
|
|
||||||
generateRewardItem(tpl: string, value: number, index: number, preset?: any): IReward;
|
|
||||||
debugLogRepeatableQuestIds(pmcData: IPmcData): void;
|
|
||||||
probabilityObjectArray<K, V>(configArrayInput: ProbabilityObject<K, V>[]): ProbabilityObjectArray<K, V>;
|
|
||||||
changeRepeatableQuest(pmcDataIn: IPmcData, body: IRepeatableQuestChangeRequest, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
@ -1,21 +0,0 @@
|
|||||||
import { RagfairServer } from "../servers/RagfairServer";
|
|
||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { TradeHelper } from "../helpers/TradeHelper";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IProcessRagfairTradeRequestData } from "../models/eft/trade/IProcessRagfairTradeRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { Upd } from "../models/eft/common/tables/IItem";
|
|
||||||
import { IProcessBaseTradeRequestData } from "../models/eft/trade/IProcessBaseTradeRequestData";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
declare class TradeController {
|
|
||||||
private logger;
|
|
||||||
private itemEventRouter;
|
|
||||||
private tradeHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private ragfairServer;
|
|
||||||
constructor(logger: ILogger, itemEventRouter: ItemEventRouter, tradeHelper: TradeHelper, profileHelper: ProfileHelper, ragfairServer: RagfairServer);
|
|
||||||
confirmTrading(pmcData: IPmcData, body: IProcessBaseTradeRequestData, sessionID: string, foundInRaid?: boolean, upd?: Upd): IItemEventRouterResponse;
|
|
||||||
confirmRagfairTrading(pmcData: IPmcData, body: IProcessRagfairTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
||||||
export { TradeController };
|
|
@ -1,26 +0,0 @@
|
|||||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
|
||||||
import { TraderAssortHelper } from "../helpers/TraderAssortHelper";
|
|
||||||
import { TraderHelper } from "../helpers/TraderHelper";
|
|
||||||
import { IBarterScheme, ITraderAssort, ITraderBase } from "../models/eft/common/tables/ITrader";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { TraderAssortService } from "../services/TraderAssortService";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class TraderController {
|
|
||||||
private logger;
|
|
||||||
private databaseServer;
|
|
||||||
private traderAssortHelper;
|
|
||||||
private profileHelper;
|
|
||||||
private traderHelper;
|
|
||||||
private timeUtil;
|
|
||||||
private traderAssortService;
|
|
||||||
private jsonUtil;
|
|
||||||
constructor(logger: ILogger, databaseServer: DatabaseServer, traderAssortHelper: TraderAssortHelper, profileHelper: ProfileHelper, traderHelper: TraderHelper, timeUtil: TimeUtil, traderAssortService: TraderAssortService, jsonUtil: JsonUtil);
|
|
||||||
load(): void;
|
|
||||||
getTrader(traderID: string, sessionID: string): ITraderBase;
|
|
||||||
getAllTraders(sessionID: string): ITraderBase[];
|
|
||||||
updateTraders(): boolean;
|
|
||||||
getAssort(sessionId: string, traderId: string): ITraderAssort;
|
|
||||||
getPurchasesData(traderID: string, sessionID: string): Record<string, IBarterScheme[][]>;
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
import { WeatherGenerator } from "../generators/WeatherGenerator";
|
|
||||||
import { IWeatherData } from "../models/eft/weather/IWeatherData";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
export declare class WeatherController {
|
|
||||||
private weatherGenerator;
|
|
||||||
private configServer;
|
|
||||||
private weatherConfig;
|
|
||||||
constructor(weatherGenerator: WeatherGenerator, configServer: ConfigServer);
|
|
||||||
generate(): IWeatherData;
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IWishlistActionData } from "../models/eft/wishlist/IWishlistActionData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
export declare class WishlistController {
|
|
||||||
private itemEvenRouter;
|
|
||||||
constructor(itemEvenRouter: ItemEventRouter);
|
|
||||||
addToWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
removeFromWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
14
TypeScript/11AddTrader/types/di/Container.d.ts
vendored
14
TypeScript/11AddTrader/types/di/Container.d.ts
vendored
@ -1,14 +0,0 @@
|
|||||||
import { DependencyContainer } from "tsyringe";
|
|
||||||
export declare class Container {
|
|
||||||
static registerTypes(depContainer: DependencyContainer): void;
|
|
||||||
static registerListTypes(depContainer: DependencyContainer): void;
|
|
||||||
private static registerUtils;
|
|
||||||
private static registerRouters;
|
|
||||||
private static registerGenerators;
|
|
||||||
private static registerHelpers;
|
|
||||||
private static registerLoaders;
|
|
||||||
private static registerCallbacks;
|
|
||||||
private static registerServices;
|
|
||||||
private static registerServers;
|
|
||||||
private static registerControllers;
|
|
||||||
}
|
|
4
TypeScript/11AddTrader/types/di/OnLoad.d.ts
vendored
4
TypeScript/11AddTrader/types/di/OnLoad.d.ts
vendored
@ -1,4 +0,0 @@
|
|||||||
export declare class OnLoad {
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
@ -1,7 +0,0 @@
|
|||||||
import { OnLoad } from "./OnLoad";
|
|
||||||
import { OnUpdate } from "./OnUpdate";
|
|
||||||
export declare class OnLoadOnUpdate implements OnLoad, OnUpdate {
|
|
||||||
onUpdate(timeSinceLastRun: number): boolean;
|
|
||||||
onLoad(): void;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
@ -1,4 +0,0 @@
|
|||||||
export declare class OnUpdate {
|
|
||||||
onUpdate(timeSinceLastRun: number): boolean;
|
|
||||||
getRoute(): string;
|
|
||||||
}
|
|
40
TypeScript/11AddTrader/types/di/Router.d.ts
vendored
40
TypeScript/11AddTrader/types/di/Router.d.ts
vendored
@ -1,40 +0,0 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
|
||||||
export declare class Router {
|
|
||||||
private handledRoutes;
|
|
||||||
getTopLevelRoute(): string;
|
|
||||||
protected getHandledRoutes(): HandledRoute[];
|
|
||||||
private getInternalHandledRoutes;
|
|
||||||
canHandle(url: string, partialMatch?: boolean): boolean;
|
|
||||||
}
|
|
||||||
export declare class StaticRouter extends Router {
|
|
||||||
private routes;
|
|
||||||
constructor(routes: RouteAction[]);
|
|
||||||
handleStatic(url: string, info: any, sessionID: string, output: string): any;
|
|
||||||
getHandledRoutes(): HandledRoute[];
|
|
||||||
}
|
|
||||||
export declare class DynamicRouter extends Router {
|
|
||||||
private routes;
|
|
||||||
constructor(routes: RouteAction[]);
|
|
||||||
handleDynamic(url: string, info: any, sessionID: string, output: string): any;
|
|
||||||
getHandledRoutes(): HandledRoute[];
|
|
||||||
}
|
|
||||||
export declare class ItemEventRouterDefinition extends Router {
|
|
||||||
constructor();
|
|
||||||
handleItemEvent(url: string, pmcData: IPmcData, body: any, sessionID: string): IItemEventRouterResponse;
|
|
||||||
}
|
|
||||||
export declare class SaveLoadRouter extends Router {
|
|
||||||
constructor();
|
|
||||||
handleLoad(profile: IAkiProfile): IAkiProfile;
|
|
||||||
}
|
|
||||||
export declare class HandledRoute {
|
|
||||||
route: string;
|
|
||||||
dynamic: boolean;
|
|
||||||
constructor(route: string, dynamic: boolean);
|
|
||||||
}
|
|
||||||
export declare class RouteAction {
|
|
||||||
url: string;
|
|
||||||
action: (url: string, info: any, sessionID: string, output: string) => any;
|
|
||||||
constructor(url: string, action: (url: string, info: any, sessionID: string, output: string) => any);
|
|
||||||
}
|
|
@ -1,5 +0,0 @@
|
|||||||
import { IHttpServer } from "../models/spt/server/IHttpServer";
|
|
||||||
export declare class Serializer {
|
|
||||||
serialize(sessionID: string, req: any, resp: any, body: any, httpServer: IHttpServer): void;
|
|
||||||
canHandle(something: string): boolean;
|
|
||||||
}
|
|
@ -1,36 +0,0 @@
|
|||||||
import { BotHelper } from "../helpers/BotHelper";
|
|
||||||
import { GameEventHelper } from "../helpers/GameEventHelper";
|
|
||||||
import { IGenerateBotsRequestData } from "../models/eft/bot/IGenerateBotsRequestData";
|
|
||||||
import { IBotBase } from "../models/eft/common/tables/IBotBase";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { BotInventoryGenerator } from "./BotInventoryGenerator";
|
|
||||||
export declare class BotGenerator {
|
|
||||||
private logger;
|
|
||||||
private hashUtil;
|
|
||||||
private randomUtil;
|
|
||||||
private jsonUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private botInventoryGenerator;
|
|
||||||
private botHelper;
|
|
||||||
private gameEventHelper;
|
|
||||||
private configServer;
|
|
||||||
private botConfig;
|
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, randomUtil: RandomUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, botInventoryGenerator: BotInventoryGenerator, botHelper: BotHelper, gameEventHelper: GameEventHelper, configServer: ConfigServer);
|
|
||||||
generate(info: IGenerateBotsRequestData, playerScav?: boolean): IBotBase[];
|
|
||||||
private generateBot;
|
|
||||||
private generateRandomLevel;
|
|
||||||
/** Converts health object to the required format */
|
|
||||||
private generateHealth;
|
|
||||||
private generateSkills;
|
|
||||||
private getPmcRole;
|
|
||||||
private removeChristmasItemsFromBotInventory;
|
|
||||||
private generateId;
|
|
||||||
private generateInventoryID;
|
|
||||||
private getPMCDifficulty;
|
|
||||||
private generateDogtag;
|
|
||||||
}
|
|
@ -1,24 +0,0 @@
|
|||||||
import { Inventory as PmcInventory } from "../models/eft/common/IPmcData";
|
|
||||||
import { Inventory, Chances, Generation } from "../models/eft/common/tables/IBotType";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { BotGeneratorHelper } from "../helpers/BotGeneratorHelper";
|
|
||||||
import { BotWeaponGenerator } from "./BotWeaponGenerator";
|
|
||||||
import { BotLootGenerator } from "./BotLootGenerator";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
|
||||||
export declare class BotInventoryGenerator {
|
|
||||||
private logger;
|
|
||||||
private hashUtil;
|
|
||||||
private randomUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private botWeaponGenerator;
|
|
||||||
private botLootGenerator;
|
|
||||||
private botGeneratorHelper;
|
|
||||||
private weightedRandomHelper;
|
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, randomUtil: RandomUtil, databaseServer: DatabaseServer, botWeaponGenerator: BotWeaponGenerator, botLootGenerator: BotLootGenerator, botGeneratorHelper: BotGeneratorHelper, weightedRandomHelper: WeightedRandomHelper);
|
|
||||||
generateInventory(templateInventory: Inventory, equipmentChances: Chances, generation: Generation, botRole: string, isPmc: boolean): PmcInventory;
|
|
||||||
private generateEquipment;
|
|
||||||
private generateInventoryBase;
|
|
||||||
}
|
|
@ -1,27 +0,0 @@
|
|||||||
import { PMCLootGenerator } from "../generators/PMCLootGenerator";
|
|
||||||
import { BotGeneratorHelper } from "../helpers/BotGeneratorHelper";
|
|
||||||
import { HandbookHelper } from "../helpers/HandbookHelper";
|
|
||||||
import { Inventory as PmcInventory } from "../models/eft/common/IPmcData";
|
|
||||||
import { ItemMinMax, Items } from "../models/eft/common/tables/IBotType";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
export declare class BotLootGenerator {
|
|
||||||
private jsonUtil;
|
|
||||||
private hashUtil;
|
|
||||||
private randomUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private handbookHelper;
|
|
||||||
private botGeneratorHelper;
|
|
||||||
private pmcLootGenerator;
|
|
||||||
private configServer;
|
|
||||||
private botConfig;
|
|
||||||
constructor(jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, databaseServer: DatabaseServer, handbookHelper: HandbookHelper, botGeneratorHelper: BotGeneratorHelper, pmcLootGenerator: PMCLootGenerator, configServer: ConfigServer);
|
|
||||||
generateLoot(lootPool: Items, itemCounts: ItemMinMax, isPmc: boolean, inventory: PmcInventory): void;
|
|
||||||
private getRandomisedCount;
|
|
||||||
private addLootFromPool;
|
|
||||||
/** Compares two item templates by their price to spawn chance ratio */
|
|
||||||
private compareByValue;
|
|
||||||
}
|
|
@ -1,44 +0,0 @@
|
|||||||
import { BotGeneratorHelper } from "../helpers/BotGeneratorHelper";
|
|
||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
|
||||||
import { Inventory as PmcInventory } from "../models/eft/common/IPmcData";
|
|
||||||
import { MinMax, Mods, ModsChances } from "../models/eft/common/tables/IBotType";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
export declare class BotWeaponGenerator {
|
|
||||||
private logger;
|
|
||||||
private hashUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private itemHelper;
|
|
||||||
private weightedRandomHelper;
|
|
||||||
private botGeneratorHelper;
|
|
||||||
private randomUtil;
|
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, databaseServer: DatabaseServer, itemHelper: ItemHelper, weightedRandomHelper: WeightedRandomHelper, botGeneratorHelper: BotGeneratorHelper, randomUtil: RandomUtil);
|
|
||||||
generateWeapon(equipmentSlot: string, weaponPool: Record<string, number>, modPool: Mods, modChances: ModsChances, magCounts: MinMax, botRole: string, isPmc: boolean, inventory: PmcInventory): void;
|
|
||||||
/** Checks if all required slots are occupied on a weapon and all it's mods */
|
|
||||||
private isWeaponValid;
|
|
||||||
/**
|
|
||||||
* Generates extra magazines or bullets (if magazine is internal) and adds them to TacticalVest and Pockets.
|
|
||||||
* Additionally, adds extra bullets to SecuredContainer
|
|
||||||
*
|
|
||||||
* @param {*} weaponMods
|
|
||||||
* @param {*} weaponTemplate
|
|
||||||
* @param {*} magCounts
|
|
||||||
* @param {*} ammoTpl
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
private generateExtraMagazines;
|
|
||||||
private addBullets;
|
|
||||||
/**
|
|
||||||
* Finds and returns tpl of ammo that should be used, while making sure it's compatible
|
|
||||||
*
|
|
||||||
* @param {*} weaponMods
|
|
||||||
* @param {*} weaponTemplate
|
|
||||||
* @returns
|
|
||||||
*/
|
|
||||||
private getCompatibleAmmo;
|
|
||||||
/** Fill existing magazines to full, while replacing their contents with specified ammo */
|
|
||||||
private fillExistingMagazines;
|
|
||||||
}
|
|
@ -1,44 +0,0 @@
|
|||||||
import { ContainerHelper } from "../helpers/ContainerHelper";
|
|
||||||
import { GameEventHelper } from "../helpers/GameEventHelper";
|
|
||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
|
||||||
import { RagfairServerHelper } from "../helpers/RagfairServerHelper";
|
|
||||||
import { ILooseLoot, SpawnpointTemplate } from "../models/eft/common/ILooseLoot";
|
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
|
||||||
import { IStaticAmmoDetails, IStaticContainerProps, IStaticForcedProps, IStaticLootDetails } from "../models/eft/common/tables/ILootBase";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { MathUtil } from "../utils/MathUtil";
|
|
||||||
import { ObjectId } from "../utils/ObjectId";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
export interface IContainerItem {
|
|
||||||
items: Item[];
|
|
||||||
width: number;
|
|
||||||
height: number;
|
|
||||||
}
|
|
||||||
export declare class LocationGenerator {
|
|
||||||
private logger;
|
|
||||||
private jsonUtil;
|
|
||||||
private objectId;
|
|
||||||
private randomUtil;
|
|
||||||
private ragfairServerHelper;
|
|
||||||
private itemHelper;
|
|
||||||
private mathUtil;
|
|
||||||
private gameEventHelper;
|
|
||||||
private containerHelper;
|
|
||||||
private presetHelper;
|
|
||||||
private configServer;
|
|
||||||
private locationConfig;
|
|
||||||
constructor(logger: ILogger, jsonUtil: JsonUtil, objectId: ObjectId, randomUtil: RandomUtil, ragfairServerHelper: RagfairServerHelper, itemHelper: ItemHelper, mathUtil: MathUtil, gameEventHelper: GameEventHelper, containerHelper: ContainerHelper, presetHelper: PresetHelper, configServer: ConfigServer);
|
|
||||||
generateContainerLoot(containerIn: IStaticContainerProps, staticForced: IStaticForcedProps[], staticLootDist: Record<string, IStaticLootDetails>, staticAmmoDist: Record<string, IStaticAmmoDetails[]>, locationName: string): IStaticContainerProps;
|
|
||||||
private getLooseLootMultiplerForLocation;
|
|
||||||
private getStaticLootMultiplerForLocation;
|
|
||||||
generateDynamicLoot(dynamicLootDist: ILooseLoot, staticAmmoDist: Record<string, IStaticAmmoDetails[]>, locationName: string): SpawnpointTemplate[];
|
|
||||||
private createItem;
|
|
||||||
private getRandomCompatibleCaliberTemplateId;
|
|
||||||
private getRandomValidCaliber;
|
|
||||||
private drawAmmoTpl;
|
|
||||||
private createRandomMagCartridges;
|
|
||||||
private createCartidges;
|
|
||||||
}
|
|
@ -1,14 +0,0 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
export declare class PMCLootGenerator {
|
|
||||||
private itemHelper;
|
|
||||||
private databaseServer;
|
|
||||||
private configServer;
|
|
||||||
private pocketLootPool;
|
|
||||||
private backpackLootPool;
|
|
||||||
private botConfig;
|
|
||||||
constructor(itemHelper: ItemHelper, databaseServer: DatabaseServer, configServer: ConfigServer);
|
|
||||||
generatePMCPocketLootPool(): string[];
|
|
||||||
generatePMCBackpackLootPool(): string[];
|
|
||||||
}
|
|
@ -1,17 +0,0 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
export declare class RagfairAssortGenerator {
|
|
||||||
private jsonUtil;
|
|
||||||
private hashUtil;
|
|
||||||
private itemHelper;
|
|
||||||
private databaseServer;
|
|
||||||
private generatedAssortItems;
|
|
||||||
constructor(jsonUtil: JsonUtil, hashUtil: HashUtil, itemHelper: ItemHelper, databaseServer: DatabaseServer);
|
|
||||||
getAssortItems(): Item[];
|
|
||||||
private assortsAreGenerated;
|
|
||||||
private generateRagfairAssortItems;
|
|
||||||
private createRagfairAssortItem;
|
|
||||||
}
|
|
@ -1,51 +0,0 @@
|
|||||||
import { ItemHelper } from "../helpers/ItemHelper";
|
|
||||||
import { PresetHelper } from "../helpers/PresetHelper";
|
|
||||||
import { RagfairServerHelper } from "../helpers/RagfairServerHelper";
|
|
||||||
import { Item } from "../models/eft/common/tables/IItem";
|
|
||||||
import { IBarterScheme } from "../models/eft/common/tables/ITrader";
|
|
||||||
import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { FenceService } from "../services/FenceService";
|
|
||||||
import { RagfairOfferService } from "../services/RagfairOfferService";
|
|
||||||
import { RagfairPriceService } from "../services/RagfairPriceService";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
import { RagfairAssortGenerator } from "./RagfairAssortGenerator";
|
|
||||||
export declare class RagfairOfferGenerator {
|
|
||||||
private logger;
|
|
||||||
private jsonUtil;
|
|
||||||
private hashUtil;
|
|
||||||
private randomUtil;
|
|
||||||
private timeUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private ragfairServerHelper;
|
|
||||||
private saveServer;
|
|
||||||
private presetHelper;
|
|
||||||
private ragfairAssortGenerator;
|
|
||||||
private ragfairOfferService;
|
|
||||||
private ragfairPriceService;
|
|
||||||
private fenceService;
|
|
||||||
private itemHelper;
|
|
||||||
private configServer;
|
|
||||||
private ragfairConfig;
|
|
||||||
constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, timeUtil: TimeUtil, databaseServer: DatabaseServer, ragfairServerHelper: RagfairServerHelper, saveServer: SaveServer, presetHelper: PresetHelper, ragfairAssortGenerator: RagfairAssortGenerator, ragfairOfferService: RagfairOfferService, ragfairPriceService: RagfairPriceService, fenceService: FenceService, itemHelper: ItemHelper, configServer: ConfigServer);
|
|
||||||
createOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer;
|
|
||||||
private getTraderId;
|
|
||||||
private getRating;
|
|
||||||
private getRatingGrowing;
|
|
||||||
private getOfferEndTime;
|
|
||||||
generateDynamicOffers(expiredOffers?: Item[]): void;
|
|
||||||
generateTraderOffers(traderID: string): void;
|
|
||||||
private getItemCondition;
|
|
||||||
private addMissingCondition;
|
|
||||||
private getOfferRequirements;
|
|
||||||
/**
|
|
||||||
* Create a flea offer and store it in the Ragfair server offers array
|
|
||||||
*/
|
|
||||||
createFleaOffer(userID: string, time: number, items: Item[], barterScheme: IBarterScheme[], loyalLevel: number, price: number, sellInOnePiece?: boolean): IRagfairOffer;
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { IWeatherData } from "../models/eft/weather/IWeatherData";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class WeatherGenerator {
|
|
||||||
private weightedRandomHelper;
|
|
||||||
private randomUtil;
|
|
||||||
private timeUtil;
|
|
||||||
private configServer;
|
|
||||||
private weatherConfig;
|
|
||||||
constructor(weightedRandomHelper: WeightedRandomHelper, randomUtil: RandomUtil, timeUtil: TimeUtil, configServer: ConfigServer);
|
|
||||||
calculateTime(data: IWeatherData): IWeatherData;
|
|
||||||
generateWeather(data: IWeatherData): IWeatherData;
|
|
||||||
private getWeightedFog;
|
|
||||||
private getWeightedRain;
|
|
||||||
private getRandomFloat;
|
|
||||||
private getRandomInt;
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { ITraderAssort } from "../models/eft/common/tables/ITrader";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { ItemHelper } from "./ItemHelper";
|
|
||||||
import { QuestHelper } from "./QuestHelper";
|
|
||||||
export declare class AssortHelper {
|
|
||||||
private logger;
|
|
||||||
private itemHelper;
|
|
||||||
private databaseServer;
|
|
||||||
private questHelper;
|
|
||||||
constructor(logger: ILogger, itemHelper: ItemHelper, databaseServer: DatabaseServer, questHelper: QuestHelper);
|
|
||||||
removeItemFromAssort(assort: ITraderAssort, itemID: string): ITraderAssort;
|
|
||||||
stripQuestAssort(pmcProfile: IPmcData, sessionId: string, traderId: string, assort: ITraderAssort): ITraderAssort;
|
|
||||||
stripLoyaltyAssort(pmcProfile: IPmcData, sessionId: string, traderId: string, assort: ITraderAssort): ITraderAssort;
|
|
||||||
}
|
|
@ -1,60 +0,0 @@
|
|||||||
import { DurabilityLimitsHelper } from "../helpers/DurabilityLimitsHelper";
|
|
||||||
import { Inventory as PmcInventory } from "../models/eft/common/IPmcData";
|
|
||||||
import { Mods, ModsChances } from "../models/eft/common/tables/IBotType";
|
|
||||||
import { Item, Upd } from "../models/eft/common/tables/IItem";
|
|
||||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { ContainerHelper } from "./ContainerHelper";
|
|
||||||
import { InventoryHelper } from "./InventoryHelper";
|
|
||||||
import { ItemHelper } from "./ItemHelper";
|
|
||||||
export declare class BotGeneratorHelper {
|
|
||||||
private logger;
|
|
||||||
private jsonUtil;
|
|
||||||
private hashUtil;
|
|
||||||
private randomUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private durabilityLimitsHelper;
|
|
||||||
private itemHelper;
|
|
||||||
private inventoryHelper;
|
|
||||||
private containerHelper;
|
|
||||||
private configServer;
|
|
||||||
private botConfig;
|
|
||||||
constructor(logger: ILogger, jsonUtil: JsonUtil, hashUtil: HashUtil, randomUtil: RandomUtil, databaseServer: DatabaseServer, durabilityLimitsHelper: DurabilityLimitsHelper, itemHelper: ItemHelper, inventoryHelper: InventoryHelper, containerHelper: ContainerHelper, configServer: ConfigServer);
|
|
||||||
generateModsForItem(items: Item[], modPool: Mods, parentId: string, parentTemplate: ITemplateItem, modSpawnChances: ModsChances, isPmc?: boolean): Item[];
|
|
||||||
/**
|
|
||||||
* With the shotgun revolver (60db29ce99594040e04c4a27) 12.12 introduced CylinderMagazines.
|
|
||||||
* Those magazines (e.g. 60dc519adf4c47305f6d410d) have a "Cartridges" entry with a _max_count=0.
|
|
||||||
* Ammo is not put into the magazine directly but assigned to the magazine's slots: The "camora_xxx" slots.
|
|
||||||
* This function is a helper called by generateModsForItem for mods with parent type "CylinderMagazine"
|
|
||||||
*
|
|
||||||
* @param {object} items The items where the CylinderMagazine's camora are appended to
|
|
||||||
* @param {object} modPool modPool which should include available cartrigdes
|
|
||||||
* @param {string} parentId The CylinderMagazine's UID
|
|
||||||
* @param {object} parentTemplate The CylinderMagazine's template
|
|
||||||
*/
|
|
||||||
private fillCamora;
|
|
||||||
generateExtraPropertiesForItem(itemTemplate: ITemplateItem, botRole?: any): {
|
|
||||||
"upd"?: Upd;
|
|
||||||
};
|
|
||||||
private getModTplFromItemDb;
|
|
||||||
isItemIncompatibleWithCurrentItems(items: Item[], tplToCheck: string, equipmentSlot: string): boolean;
|
|
||||||
/** Adds an item with all its childern into specified equipmentSlots, wherever it fits.
|
|
||||||
* Returns a `boolean` indicating success. */
|
|
||||||
addItemWithChildrenToEquipmentSlot(equipmentSlots: string[], parentId: string, parentTpl: string, itemWithChildren: Item[], inventory: PmcInventory): boolean;
|
|
||||||
private itemAllowedInContainer;
|
|
||||||
}
|
|
||||||
export declare class ExhaustableArray<T> {
|
|
||||||
private itemPool;
|
|
||||||
private randomUtil;
|
|
||||||
private jsonUtil;
|
|
||||||
private pool;
|
|
||||||
constructor(itemPool: T[], randomUtil: RandomUtil, jsonUtil: JsonUtil);
|
|
||||||
getRandomValue(): T;
|
|
||||||
getFirstValue(): T;
|
|
||||||
hasValues(): boolean;
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
import { Difficulty } from "../models/eft/common/tables/IBotType";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
export declare class BotHelper {
|
|
||||||
private logger;
|
|
||||||
private jsonUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private randomUtil;
|
|
||||||
private configServer;
|
|
||||||
private botConfig;
|
|
||||||
constructor(logger: ILogger, jsonUtil: JsonUtil, databaseServer: DatabaseServer, randomUtil: RandomUtil, configServer: ConfigServer);
|
|
||||||
getBotDifficultySettings(type: string, difficulty: string): Difficulty;
|
|
||||||
getPmcDifficultySettings(type: string, difficulty: string): Difficulty;
|
|
||||||
randomisePmcHostility(difficultySettings: Difficulty): void;
|
|
||||||
isBotPmc(botRole: string): boolean;
|
|
||||||
isBotBoss(botRole: string): boolean;
|
|
||||||
isBotFollower(botRole: string): boolean;
|
|
||||||
addBotToFriendlyList(difficultySettings: Difficulty, typeToAdd: string): void;
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
export declare class FindSlotResult {
|
|
||||||
success: boolean;
|
|
||||||
x: any;
|
|
||||||
y: any;
|
|
||||||
rotation: boolean;
|
|
||||||
constructor(success?: boolean, x?: any, y?: any, rotation?: boolean);
|
|
||||||
}
|
|
||||||
export declare class ContainerHelper {
|
|
||||||
private locateSlot;
|
|
||||||
findSlotForItem(container2D: number[][], itemWidth: number, itemHeight: number): FindSlotResult;
|
|
||||||
fillContainerMapWithItem(container2D: number[][], x: number, y: number, itemW: number, itemH: number, rotate: boolean): any;
|
|
||||||
}
|
|
@ -1,21 +0,0 @@
|
|||||||
import { Dialogue, MessageContent, MessagePreview } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { MessageType } from "../models/enums/MessageType";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { ItemHelper } from "./ItemHelper";
|
|
||||||
import { NotificationSendHelper } from "./NotificationSendHelper";
|
|
||||||
import { NotifierHelper } from "./NotifierHelper";
|
|
||||||
export declare class DialogueHelper {
|
|
||||||
private hashUtil;
|
|
||||||
private saveServer;
|
|
||||||
private databaseServer;
|
|
||||||
private notifierHelper;
|
|
||||||
private notificationSendHelper;
|
|
||||||
private itemHelper;
|
|
||||||
constructor(hashUtil: HashUtil, saveServer: SaveServer, databaseServer: DatabaseServer, notifierHelper: NotifierHelper, notificationSendHelper: NotificationSendHelper, itemHelper: ItemHelper);
|
|
||||||
createMessageContext(templateId: string, messageType: MessageType, maxStoreTime: number): MessageContent;
|
|
||||||
addDialogueMessage(dialogueID: string, messageContent: MessageContent, sessionID: string, rewards?: any[]): void;
|
|
||||||
getMessagePreview(dialogue: Dialogue): MessagePreview;
|
|
||||||
getMessageItemContents(messageID: string, sessionID: string): any[];
|
|
||||||
}
|
|
@ -1,25 +0,0 @@
|
|||||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { BotHelper } from "./BotHelper";
|
|
||||||
export declare class DurabilityLimitsHelper {
|
|
||||||
private randomUtil;
|
|
||||||
private botHelper;
|
|
||||||
private configServer;
|
|
||||||
private botConfig;
|
|
||||||
constructor(randomUtil: RandomUtil, botHelper: BotHelper, configServer: ConfigServer);
|
|
||||||
getRandomisedMaxWeaponDurability(itemTemplate: ITemplateItem, botRole: string): number;
|
|
||||||
getRandomisedMaxArmorDurability(itemTemplate: ITemplateItem, botRole: string): number;
|
|
||||||
getRandomisedWeaponDurability(itemTemplate: ITemplateItem, botRole: string, maxDurability: number): number;
|
|
||||||
getRandomisedArmorDurability(itemTemplate: ITemplateItem, botRole: string, maxDurability: number): number;
|
|
||||||
private generateMaxWeaponDurability;
|
|
||||||
private generateMaxPmcArmorDurability;
|
|
||||||
private getLowestMaxWeaponFromConfig;
|
|
||||||
private getHighestMaxWeaponDurabilityFromConfig;
|
|
||||||
private generateWeaponDurability;
|
|
||||||
private generateArmorDurability;
|
|
||||||
private getMinWeaponDeltaFromConfig;
|
|
||||||
private getMaxWeaponDeltaFromConfig;
|
|
||||||
private getMinArmorDeltaFromConfig;
|
|
||||||
private getMaxArmorDeltaFromConfig;
|
|
||||||
}
|
|
@ -1,22 +0,0 @@
|
|||||||
import { BotGenerator } from "../generators/BotGenerator";
|
|
||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { FenceService } from "../services/FenceService";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
import { Watermark } from "../utils/Watermark";
|
|
||||||
import { ItemHelper } from "./ItemHelper";
|
|
||||||
import { ProfileHelper } from "./ProfileHelper";
|
|
||||||
export declare class ExtendedProfileHelper extends ProfileHelper {
|
|
||||||
private botGenerator;
|
|
||||||
constructor(jsonUtil: JsonUtil, watermark: Watermark, timeUtil: TimeUtil, saveServer: SaveServer, databaseServer: DatabaseServer, itemHelper: ItemHelper, fenceService: FenceService, botGenerator: BotGenerator);
|
|
||||||
generatePlayerScav(sessionID: string): IPmcData;
|
|
||||||
private getScavSkills;
|
|
||||||
private removeSecureContainer;
|
|
||||||
private getDefaultScavSkills;
|
|
||||||
private getScavStats;
|
|
||||||
private getScavLevel;
|
|
||||||
private getScavExperience;
|
|
||||||
private setScavCooldownTimer;
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
export declare class GameEventHelper {
|
|
||||||
private databaseServer;
|
|
||||||
constructor(databaseServer: DatabaseServer);
|
|
||||||
get EVENT(): Record<string, string>;
|
|
||||||
get christmasEventItems(): string[];
|
|
||||||
itemIsChristmasRelated(itemId: string): boolean;
|
|
||||||
christmasEventEnabled(): boolean;
|
|
||||||
}
|
|
@ -1,33 +0,0 @@
|
|||||||
declare class LookupItem {
|
|
||||||
byId: Record<number, string>;
|
|
||||||
byParent: Record<string, string[]>;
|
|
||||||
constructor();
|
|
||||||
}
|
|
||||||
export declare class LookupCollection {
|
|
||||||
items: LookupItem;
|
|
||||||
categories: LookupItem;
|
|
||||||
constructor();
|
|
||||||
}
|
|
||||||
export declare class HandbookHelper {
|
|
||||||
private lookup;
|
|
||||||
hydrateLookup(lookup: LookupCollection): void;
|
|
||||||
getTemplatePrice(x: string): number;
|
|
||||||
templatesWithParent(x: string): string[];
|
|
||||||
isCategory(x: string): boolean;
|
|
||||||
childrenCategories(x: string): string[];
|
|
||||||
/**
|
|
||||||
* Gets Currency to Ruble conversion Value
|
|
||||||
* @param {number} value
|
|
||||||
* @param {string} currencyFrom
|
|
||||||
* @returns number
|
|
||||||
*/
|
|
||||||
inRUB(value: number, currencyFrom: string): number;
|
|
||||||
/**
|
|
||||||
* Gets Ruble to Currency conversion Value
|
|
||||||
* @param {number} value
|
|
||||||
* @param {string} currencyTo
|
|
||||||
* @returns number
|
|
||||||
*/
|
|
||||||
fromRUB(value: number, currencyTo: string): number;
|
|
||||||
}
|
|
||||||
export {};
|
|
@ -1,23 +0,0 @@
|
|||||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
|
||||||
import { ISyncHealthRequestData } from "../models/eft/health/ISyncHealthRequestData";
|
|
||||||
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { SaveServer } from "../servers/SaveServer";
|
|
||||||
import { JsonUtil } from "../utils/JsonUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
export declare class HealthHelper {
|
|
||||||
private jsonUtil;
|
|
||||||
private logger;
|
|
||||||
private timeUtil;
|
|
||||||
private saveServer;
|
|
||||||
private configServer;
|
|
||||||
private healthConfig;
|
|
||||||
constructor(jsonUtil: JsonUtil, logger: ILogger, timeUtil: TimeUtil, saveServer: SaveServer, configServer: ConfigServer);
|
|
||||||
resetVitality(sessionID: string): IAkiProfile;
|
|
||||||
saveVitality(pmcData: IPmcData, info: ISyncHealthRequestData, sessionID: string): void;
|
|
||||||
private saveHealth;
|
|
||||||
private saveEffects;
|
|
||||||
private addEffect;
|
|
||||||
private isEmpty;
|
|
||||||
}
|
|
@ -1,64 +0,0 @@
|
|||||||
import { IPmcData, Production, Productive } from "../models/eft/common/IPmcData";
|
|
||||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
|
||||||
import { StageBonus } from "../models/eft/hideout/IHideoutArea";
|
|
||||||
import { IHideoutContinousProductionStartRequestData } from "../models/eft/hideout/IHideoutContinousProductionStartRequestData";
|
|
||||||
import { IHideoutSingleProductionStartRequestData } from "../models/eft/hideout/IHideoutSingleProductionStartRequestData";
|
|
||||||
import { IHideoutTakeProductionRequestData } from "../models/eft/hideout/IHideoutTakeProductionRequestData";
|
|
||||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
|
||||||
import { ILogger } from "../models/spt/utils/ILogger";
|
|
||||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
|
||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
|
||||||
import { PlayerService } from "../services/PlayerService";
|
|
||||||
import { HashUtil } from "../utils/HashUtil";
|
|
||||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
|
||||||
import { RandomUtil } from "../utils/RandomUtil";
|
|
||||||
import { TimeUtil } from "../utils/TimeUtil";
|
|
||||||
import { InventoryHelper } from "./InventoryHelper";
|
|
||||||
import { ProfileHelper } from "./ProfileHelper";
|
|
||||||
export declare class HideoutHelper {
|
|
||||||
private logger;
|
|
||||||
private hashUtil;
|
|
||||||
private timeUtil;
|
|
||||||
private randomUtil;
|
|
||||||
private databaseServer;
|
|
||||||
private itemEventRouter;
|
|
||||||
private httpResponse;
|
|
||||||
private profileHelper;
|
|
||||||
private inventoryHelper;
|
|
||||||
private playerService;
|
|
||||||
private configServer;
|
|
||||||
static BITCOIN_FARM: string;
|
|
||||||
private WATER_COLLECTOR;
|
|
||||||
private BITCOIN;
|
|
||||||
private EXPEDITIONARY_FUEL_TANK;
|
|
||||||
static NAME_BACKENDCOUNTERS_CRAFTING: string;
|
|
||||||
static SKILL_NAME_HIDEOUT: string;
|
|
||||||
static HOUR_FOR_SKILL_CRAFTING: number;
|
|
||||||
static SKILL_NAME_CRAFITING: string;
|
|
||||||
private hideoutConfig;
|
|
||||||
constructor(logger: ILogger, hashUtil: HashUtil, timeUtil: TimeUtil, randomUtil: RandomUtil, databaseServer: DatabaseServer, itemEventRouter: ItemEventRouter, httpResponse: HttpResponseUtil, profileHelper: ProfileHelper, inventoryHelper: InventoryHelper, playerService: PlayerService, configServer: ConfigServer);
|
|
||||||
registerProduction(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData | IHideoutContinousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
/**
|
|
||||||
* This convinience function intialies new Production Object
|
|
||||||
* with all the constants.
|
|
||||||
*/
|
|
||||||
initProduction(recipeId: string, productionTime: number): Production;
|
|
||||||
isProductionType(productive: Productive): productive is Production;
|
|
||||||
applyPlayerUpgradesBonuses(pmcData: IPmcData, bonus: StageBonus): void;
|
|
||||||
private applySkillXPBoost;
|
|
||||||
updatePlayerHideout(sessionID: string): void;
|
|
||||||
private updateFuel;
|
|
||||||
private updateWaterFilters;
|
|
||||||
private getAreaUpdObject;
|
|
||||||
private updateAirFilters;
|
|
||||||
private updateBitcoinFarm;
|
|
||||||
private getBTCSlots;
|
|
||||||
private getManagementSkillsSlots;
|
|
||||||
private hasManagementSkillSlots;
|
|
||||||
private getHideoutManagementSkill;
|
|
||||||
private getHideoutManagementConsumptionBonus;
|
|
||||||
isProduction(productive: Productive): productive is Production;
|
|
||||||
getBTC(pmcData: IPmcData, body: IHideoutTakeProductionRequestData, sessionID: string): IItemEventRouterResponse;
|
|
||||||
getRandomAmountRewardForScavCase(itemToCalculate: ITemplateItem): number;
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
import { ConfigServer } from "../servers/ConfigServer";
|
|
||||||
export declare class HttpServerHelper {
|
|
||||||
private configServer;
|
|
||||||
private httpConfig;
|
|
||||||
private mime;
|
|
||||||
constructor(configServer: ConfigServer);
|
|
||||||
getMimeText(key: string): string;
|
|
||||||
buildUrl(): string;
|
|
||||||
getBackendUrl(): string;
|
|
||||||
getWebsocketUrl(): string;
|
|
||||||
sendTextJson(resp: any, output: any): void;
|
|
||||||
}
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user