forked from CWX/ALT-Mods
WIP - Ready for testing
This commit is contained in:
parent
0ccced9915
commit
e308ac55ca
BIN
Ereshkigal-AkiConfig/dist/AKICONFIG README.pdf
vendored
Normal file
BIN
Ereshkigal-AkiConfig/dist/AKICONFIG README.pdf
vendored
Normal file
Binary file not shown.
64
Ereshkigal-AkiConfig/dist/README.md
vendored
Normal file
64
Ereshkigal-AkiConfig/dist/README.md
vendored
Normal file
@ -0,0 +1,64 @@
|
||||
|
||||
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.
|
335
Ereshkigal-AkiConfig/dist/config/config.json
vendored
Normal file
335
Ereshkigal-AkiConfig/dist/config/config.json
vendored
Normal file
@ -0,0 +1,335 @@
|
||||
{
|
||||
"Server values": {
|
||||
"HTTP": {
|
||||
"ip": "127.0.0.1",
|
||||
"port": 6969
|
||||
},
|
||||
"Health": {
|
||||
"healthMultipliers": {
|
||||
"death": 0.3,
|
||||
"blacked": 0.1
|
||||
},
|
||||
"save": {
|
||||
"health": true,
|
||||
"effects": true
|
||||
}
|
||||
},
|
||||
"Hideout": {
|
||||
"runIntervalSeconds": 900,
|
||||
"scavCase": {
|
||||
"rewardParentBlacklist": [
|
||||
"5485a8684bdc2da71d8b4567",
|
||||
"543be5dd4bdc2deb348b4569"
|
||||
],
|
||||
"rewardItemBlacklist": [],
|
||||
"ammoRewards": {
|
||||
"giveMultipleOfTen": true,
|
||||
"minAmount": 10
|
||||
},
|
||||
"moneyRewards": {
|
||||
"enabled": false,
|
||||
"rub": {
|
||||
"min": 1000,
|
||||
"max": 200000
|
||||
},
|
||||
"usd": {
|
||||
"min": 100,
|
||||
"max": 2000
|
||||
},
|
||||
"eur": {
|
||||
"min": 100,
|
||||
"max": 2000
|
||||
}
|
||||
}
|
||||
},
|
||||
"fuelDrainRateMultipler": 1
|
||||
}
|
||||
},
|
||||
"Raids values": {
|
||||
"Loot values": {
|
||||
"looseLootMultiplier": {
|
||||
"bigmap": 1,
|
||||
"develop": 1,
|
||||
"factory4_day": 1,
|
||||
"factory4_night": 1,
|
||||
"interchange": 1,
|
||||
"laboratory": 1,
|
||||
"rezervbase": 1,
|
||||
"shoreline": 1,
|
||||
"woods": 1,
|
||||
"hideout": 0,
|
||||
"lighthouse": 1,
|
||||
"privatearea": 1,
|
||||
"suburbs": 1,
|
||||
"tarkovstreets": 1,
|
||||
"terminal": 1,
|
||||
"town": 1
|
||||
},
|
||||
"staticLootMultiplier": {
|
||||
"bigmap": 1,
|
||||
"develop": 1,
|
||||
"factory4_day": 1,
|
||||
"factory4_night": 1,
|
||||
"interchange": 1,
|
||||
"laboratory": 1,
|
||||
"rezervbase": 1,
|
||||
"shoreline": 1,
|
||||
"woods": 1,
|
||||
"hideout": 0,
|
||||
"lighthouse": 1,
|
||||
"privatearea": 1,
|
||||
"suburbs": 1,
|
||||
"tarkovstreets": 1,
|
||||
"terminal": 1,
|
||||
"town": 1
|
||||
}
|
||||
},
|
||||
"Airdrop values": {
|
||||
"airdropChancePercent": {
|
||||
"bigmap": 25,
|
||||
"woods": 25,
|
||||
"lighthouse": 25,
|
||||
"shoreline": 25,
|
||||
"interchange": 25,
|
||||
"reserve": 25
|
||||
},
|
||||
"airdropMinStartTimeSeconds": 60,
|
||||
"airdropMaxStartTimeSeconds": 300,
|
||||
"airdropMinOpenHeight": 350,
|
||||
"airdropMaxOpenHeight": 400,
|
||||
"planeMinFlyHeight": 400,
|
||||
"planeMaxFlyHeight": 500,
|
||||
"planeVolume": 1
|
||||
},
|
||||
"MIAOnRaidEnd": false,
|
||||
"raidMenuSettings": {
|
||||
"aiAmount": "AsOnline",
|
||||
"aiDifficulty": "AsOnline",
|
||||
"bossEnabled": true,
|
||||
"scavWars": false,
|
||||
"taggedAndCursed": false
|
||||
},
|
||||
"save": {
|
||||
"loot": true,
|
||||
"durability": true
|
||||
},
|
||||
"carExtracts": [
|
||||
"Dorms V-Ex",
|
||||
"PP Exfil",
|
||||
"V-Ex_light",
|
||||
"South V-Ex"
|
||||
],
|
||||
"carExtractBaseStandingGain": 0.25,
|
||||
"scavExtractGain": 0.01
|
||||
},
|
||||
"Traders values": {
|
||||
"Traders": {
|
||||
"updateTime": [
|
||||
{
|
||||
"traderId": "54cb50c76803fa8b248b4571",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "54cb57776803fa99248b456e",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "579dc571d53a0658a154fbec",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "58330581ace78e27b8b10cee",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "5935c25fb3acc3127c3d8cd9",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "5a7c2eca46aef81a7ca2145d",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "5ac3b934156ae10c4430e83c",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "5c0647fdd443bc2504c2d371",
|
||||
"seconds": 3600
|
||||
},
|
||||
{
|
||||
"traderId": "ragfair",
|
||||
"seconds": 3600
|
||||
}
|
||||
],
|
||||
"updateTimeDefault": 3600,
|
||||
"fenceAssortSize": 100,
|
||||
"fenceMaxPresetsCount": 5,
|
||||
"fencePresetPriceMult": 2.5,
|
||||
"minDurabilityForSale": 60,
|
||||
"fenceItemIgnoreList": [
|
||||
"58ac60eb86f77401897560ff",
|
||||
"59e8936686f77467ce798647",
|
||||
"56e294cdd2720b603a8b4575",
|
||||
"5661632d4bdc2d903d8b456b",
|
||||
"543be5e94bdc2df1348b4568",
|
||||
"543be6674bdc2df1348b4569",
|
||||
"5448bf274bdc2dfc2f8b456a",
|
||||
"543be5664bdc2dd4348b4569",
|
||||
"5447bedf4bdc2d87278b4568"
|
||||
]
|
||||
},
|
||||
"Repair": {
|
||||
"priceMultiplier": 1
|
||||
},
|
||||
"Insurances": {
|
||||
"insuranceMultiplier": {
|
||||
"54cb50c76803fa8b248b4571": 0.16,
|
||||
"54cb57776803fa99248b456e": 0.25
|
||||
},
|
||||
"returnChancePercent": {
|
||||
"54cb50c76803fa8b248b4571": 80,
|
||||
"54cb57776803fa99248b456e": 85
|
||||
},
|
||||
"runIntervalSeconds": 600
|
||||
},
|
||||
"Trading": {
|
||||
"newItemsMarkedFound": false
|
||||
}
|
||||
},
|
||||
"FleaMarket configuration": {
|
||||
"runIntervalSeconds": 60,
|
||||
"sell": {
|
||||
"fees": true,
|
||||
"chance": {
|
||||
"base": 50,
|
||||
"overprices": 0.5,
|
||||
"underpriced": 2
|
||||
},
|
||||
"time": {
|
||||
"base": 15,
|
||||
"min": 5,
|
||||
"max": 15
|
||||
},
|
||||
"reputation": {
|
||||
"gain": 2e-7,
|
||||
"loss": 2e-7
|
||||
}
|
||||
},
|
||||
"traders": {
|
||||
"EnablePraporOffers": true,
|
||||
"EnableTheRapistOffers": true,
|
||||
"EnableFenceOffers": false,
|
||||
"EnableSkierOffers": true,
|
||||
"EnablePeacekeeperOffers": true,
|
||||
"EnableMechanicOffers": true,
|
||||
"EnableRagmanOffers": true,
|
||||
"EnableJaegerOffers": true,
|
||||
"EnableAllAvailableOffers": false
|
||||
},
|
||||
"dynamic": {
|
||||
"expiredOfferThreshold": 1500,
|
||||
"offerItemCount": {
|
||||
"min": 7,
|
||||
"max": 15
|
||||
},
|
||||
"price": {
|
||||
"min": 0.8,
|
||||
"max": 1.2
|
||||
},
|
||||
"endTimeSeconds": {
|
||||
"min": 180,
|
||||
"max": 1800
|
||||
},
|
||||
"condition": {
|
||||
"conditionChance": 0.2,
|
||||
"min": 0.6,
|
||||
"max": 1
|
||||
},
|
||||
"stackablePercent": {
|
||||
"min": 10,
|
||||
"max": 500
|
||||
},
|
||||
"nonStackableCount": {
|
||||
"min": 1,
|
||||
"max": 10
|
||||
},
|
||||
"rating": {
|
||||
"min": 0.1,
|
||||
"max": 0.95
|
||||
},
|
||||
"currencies": {
|
||||
"5449016a4bdc2d6f028b456f": 75,
|
||||
"5696686a4bdc2da3298b456a": 23,
|
||||
"569668774bdc2da2298b4568": 2
|
||||
},
|
||||
"showAsSingleStack": [
|
||||
"5422acb9af1c889c16000029",
|
||||
"5448e54d4bdc2dcc718b4568",
|
||||
"5795f317245977243854e041",
|
||||
"5448e53e4bdc2d60728b4567",
|
||||
"5448bf274bdc2dfc2f8b456a",
|
||||
"543be5e94bdc2df1348b4568",
|
||||
"5448f39d4bdc2d0a728b4568"
|
||||
],
|
||||
"blacklist": {
|
||||
"custom": [
|
||||
"5cdeb229d7f00c000e7ce174",
|
||||
"5996f6d686f77467977ba6cc",
|
||||
"5996f6cb86f774678763a6ca",
|
||||
"5943d9c186f7745a13413ac9",
|
||||
"5996f6fc86f7745e585b4de3",
|
||||
"5cde8864d7f00c0010373be1",
|
||||
"5d2f2ab648f03550091993ca"
|
||||
],
|
||||
"enableBsgList": true,
|
||||
"enableQuestList": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"Weather values": {
|
||||
"acceleration": 2,
|
||||
"weather": {
|
||||
"clouds": {
|
||||
"min": -1.5,
|
||||
"max": 1.5
|
||||
},
|
||||
"windSpeed": {
|
||||
"min": 0,
|
||||
"max": 3
|
||||
},
|
||||
"windDirection": {
|
||||
"min": 0,
|
||||
"max": 3
|
||||
},
|
||||
"windGustiness": {
|
||||
"min": 0,
|
||||
"max": 1
|
||||
},
|
||||
"rain": {
|
||||
"min": 1,
|
||||
"max": 4
|
||||
},
|
||||
"rainIntensity": {
|
||||
"min": 0.1,
|
||||
"max": 1
|
||||
},
|
||||
"fog": {
|
||||
"min": 0.001,
|
||||
"max": 0.03
|
||||
},
|
||||
"temp": {
|
||||
"min": 0,
|
||||
"max": 16
|
||||
},
|
||||
"pressure": {
|
||||
"min": 760,
|
||||
"max": 764
|
||||
}
|
||||
}
|
||||
},
|
||||
"other": {
|
||||
"hideWarningMessage": true,
|
||||
"showModLogs": true
|
||||
}
|
||||
}
|
537
Ereshkigal-AkiConfig/dist/config/dailyConfig.json
vendored
Normal file
537
Ereshkigal-AkiConfig/dist/config/dailyConfig.json
vendored
Normal file
@ -0,0 +1,537 @@
|
||||
{
|
||||
"redeemTime": 48,
|
||||
"repeatableQuests": [
|
||||
{
|
||||
"name": "Daily",
|
||||
"types": [
|
||||
"Elimination",
|
||||
"Completion",
|
||||
"Exploration"
|
||||
],
|
||||
"resetTime": 86400,
|
||||
"numQuests": 3,
|
||||
"minPlayerLevel": 5,
|
||||
"rewardScaling": {
|
||||
"levels": [
|
||||
1,
|
||||
20,
|
||||
45,
|
||||
100
|
||||
],
|
||||
"experience": [
|
||||
2000,
|
||||
4000,
|
||||
20000,
|
||||
80000
|
||||
],
|
||||
"roubles": [
|
||||
6000,
|
||||
10000,
|
||||
100000,
|
||||
250000
|
||||
],
|
||||
"items": [
|
||||
1,
|
||||
2,
|
||||
4,
|
||||
4
|
||||
],
|
||||
"reputation": [
|
||||
0.01,
|
||||
0.01,
|
||||
0.01,
|
||||
0.01
|
||||
],
|
||||
"rewardSpread": 0.5
|
||||
},
|
||||
"locations": {
|
||||
"any": [
|
||||
"any"
|
||||
],
|
||||
"factory4_day": [
|
||||
"factory4_day",
|
||||
"factory4_night"
|
||||
],
|
||||
"bigmap": [
|
||||
"bigmap"
|
||||
],
|
||||
"Woods": [
|
||||
"Woods"
|
||||
],
|
||||
"Shoreline": [
|
||||
"Shoreline"
|
||||
],
|
||||
"Interchange": [
|
||||
"Interchange"
|
||||
],
|
||||
"Lighthouse": [
|
||||
"Lighthouse"
|
||||
],
|
||||
"laboratory": [
|
||||
"laboratory"
|
||||
],
|
||||
"RezervBase": [
|
||||
"RezervBase"
|
||||
]
|
||||
},
|
||||
"traderWhitelist": [
|
||||
{
|
||||
"traderId": "54cb50c76803fa8b248b4571",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "54cb57776803fa99248b456e",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "58330581ace78e27b8b10cee",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5935c25fb3acc3127c3d8cd9",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5a7c2eca46aef81a7ca2145d",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5ac3b934156ae10c4430e83c",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5c0647fdd443bc2504c2d371",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
}
|
||||
],
|
||||
"questConfig": {
|
||||
"Exploration": {
|
||||
"maxExtracts": 3,
|
||||
"specificExits": {
|
||||
"probability": 0.25,
|
||||
"passageRequirementWhitelist": [
|
||||
"None",
|
||||
"TransferItem",
|
||||
"WorldEvent",
|
||||
"Train",
|
||||
"Reference",
|
||||
"Empty"
|
||||
]
|
||||
}
|
||||
},
|
||||
"Completion": {
|
||||
"minRequestedAmount": 1,
|
||||
"maxRequestedAmount": 5,
|
||||
"minRequestedBulletAmount": 20,
|
||||
"maxRequestedBulletAmount": 60,
|
||||
"useWhitelist": true,
|
||||
"useBlacklist": false
|
||||
},
|
||||
"Elimination": {
|
||||
"targets": [
|
||||
{
|
||||
"key": "Savage",
|
||||
"relativeProbability": 7,
|
||||
"data": {
|
||||
"isBoss": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "AnyPmc",
|
||||
"relativeProbability": 2,
|
||||
"data": {
|
||||
"isBoss": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossBully",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossGluhar",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossKilla",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossSanitar",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossTagilla",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossKojaniy",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"bodyPartProb": 0.4,
|
||||
"bodyParts": [
|
||||
{
|
||||
"key": "Head",
|
||||
"relativeProbability": 1,
|
||||
"data": [
|
||||
"Head"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Stomach",
|
||||
"relativeProbability": 3,
|
||||
"data": [
|
||||
"Stomach"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Chest",
|
||||
"relativeProbability": 5,
|
||||
"data": [
|
||||
"Chest"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Arms",
|
||||
"relativeProbability": 0.5,
|
||||
"data": [
|
||||
"LeftArm",
|
||||
"RightArm"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Legs",
|
||||
"relativeProbability": 1,
|
||||
"data": [
|
||||
"LeftLeg",
|
||||
"RightLeg"
|
||||
]
|
||||
}
|
||||
],
|
||||
"specificLocationProb": 0.25,
|
||||
"distLocationBlacklist": [
|
||||
"laboratory",
|
||||
"factory4_day",
|
||||
"factory4_night"
|
||||
],
|
||||
"distProb": 0.25,
|
||||
"maxDist": 200,
|
||||
"minDist": 20,
|
||||
"maxKills": 5,
|
||||
"minKills": 2
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Weekly",
|
||||
"types": [
|
||||
"Elimination",
|
||||
"Completion",
|
||||
"Exploration"
|
||||
],
|
||||
"resetTime": 604800,
|
||||
"numQuests": 1,
|
||||
"minPlayerLevel": 15,
|
||||
"rewardScaling": {
|
||||
"levels": [
|
||||
1,
|
||||
20,
|
||||
45,
|
||||
100
|
||||
],
|
||||
"experience": [
|
||||
4000,
|
||||
8000,
|
||||
40000,
|
||||
160000
|
||||
],
|
||||
"roubles": [
|
||||
12000,
|
||||
20000,
|
||||
200000,
|
||||
500000
|
||||
],
|
||||
"items": [
|
||||
3,
|
||||
3,
|
||||
4,
|
||||
4
|
||||
],
|
||||
"reputation": [
|
||||
0.02,
|
||||
0.03,
|
||||
0.03,
|
||||
0.03
|
||||
],
|
||||
"rewardSpread": 0.5
|
||||
},
|
||||
"locations": {
|
||||
"any": [
|
||||
"any"
|
||||
],
|
||||
"factory4_day": [
|
||||
"factory4_day",
|
||||
"factory4_night"
|
||||
],
|
||||
"bigmap": [
|
||||
"bigmap"
|
||||
],
|
||||
"Woods": [
|
||||
"Woods"
|
||||
],
|
||||
"Shoreline": [
|
||||
"Shoreline"
|
||||
],
|
||||
"Interchange": [
|
||||
"Interchange"
|
||||
],
|
||||
"Lighthouse": [
|
||||
"Lighthouse"
|
||||
],
|
||||
"laboratory": [
|
||||
"laboratory"
|
||||
],
|
||||
"RezervBase": [
|
||||
"RezervBase"
|
||||
]
|
||||
},
|
||||
"traderWhitelist": [
|
||||
{
|
||||
"traderId": "54cb50c76803fa8b248b4571",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "54cb57776803fa99248b456e",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "58330581ace78e27b8b10cee",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5935c25fb3acc3127c3d8cd9",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5a7c2eca46aef81a7ca2145d",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5ac3b934156ae10c4430e83c",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
},
|
||||
{
|
||||
"traderId": "5c0647fdd443bc2504c2d371",
|
||||
"questTypes": [
|
||||
"Completion",
|
||||
"Exploration",
|
||||
"Elimination"
|
||||
]
|
||||
}
|
||||
],
|
||||
"questConfig": {
|
||||
"Exploration": {
|
||||
"maxExtracts": 10,
|
||||
"specificExits": {
|
||||
"probability": 0.5,
|
||||
"passageRequirementWhitelist": [
|
||||
"None",
|
||||
"TransferItem",
|
||||
"WorldEvent",
|
||||
"Train",
|
||||
"Reference",
|
||||
"Empty"
|
||||
]
|
||||
}
|
||||
},
|
||||
"Completion": {
|
||||
"minRequestedAmount": 2,
|
||||
"maxRequestedAmount": 10,
|
||||
"minRequestedBulletAmount": 20,
|
||||
"maxRequestedBulletAmount": 60,
|
||||
"useWhitelist": true,
|
||||
"useBlacklist": false
|
||||
},
|
||||
"Elimination": {
|
||||
"targets": [
|
||||
{
|
||||
"key": "Savage",
|
||||
"relativeProbability": 7,
|
||||
"data": {
|
||||
"isBoss": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "AnyPmc",
|
||||
"relativeProbability": 2,
|
||||
"data": {
|
||||
"isBoss": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossBully",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossGluhar",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossKilla",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossSanitar",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossTagilla",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
},
|
||||
{
|
||||
"key": "bossKojaniy",
|
||||
"relativeProbability": 0.5,
|
||||
"data": {
|
||||
"isBoss": true
|
||||
}
|
||||
}
|
||||
],
|
||||
"bodyPartProb": 0.4,
|
||||
"bodyParts": [
|
||||
{
|
||||
"key": "Head",
|
||||
"relativeProbability": 1,
|
||||
"data": [
|
||||
"Head"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Stomach",
|
||||
"relativeProbability": 3,
|
||||
"data": [
|
||||
"Stomach"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Chest",
|
||||
"relativeProbability": 5,
|
||||
"data": [
|
||||
"Chest"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Arms",
|
||||
"relativeProbability": 0.5,
|
||||
"data": [
|
||||
"LeftArm",
|
||||
"RightArm"
|
||||
]
|
||||
},
|
||||
{
|
||||
"key": "Legs",
|
||||
"relativeProbability": 1,
|
||||
"data": [
|
||||
"LeftLeg",
|
||||
"RightLeg"
|
||||
]
|
||||
}
|
||||
],
|
||||
"specificLocationProb": 0.25,
|
||||
"distLocationBlacklist": [
|
||||
"laboratory",
|
||||
"factory4_day",
|
||||
"factory4_night"
|
||||
],
|
||||
"distProb": 0.25,
|
||||
"maxDist": 200,
|
||||
"minDist": 20,
|
||||
"maxKills": 15,
|
||||
"minKills": 5
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
296
Ereshkigal-AkiConfig/dist/config/pmcConfig.json
vendored
Normal file
296
Ereshkigal-AkiConfig/dist/config/pmcConfig.json
vendored
Normal file
@ -0,0 +1,296 @@
|
||||
{
|
||||
"presetBatch": {
|
||||
"assault": 120,
|
||||
"bossBully": 1,
|
||||
"bossGluhar": 1,
|
||||
"bossKilla": 1,
|
||||
"bossKojaniy": 1,
|
||||
"bossSanitar": 1,
|
||||
"bossTagilla": 1,
|
||||
"bossTest": 40,
|
||||
"cursedAssault": 120,
|
||||
"followerBully": 4,
|
||||
"followerGluharAssault": 2,
|
||||
"followerGluharScout": 2,
|
||||
"followerGluharSecurity": 2,
|
||||
"followerGluharSnipe": 2,
|
||||
"followerKojaniy": 2,
|
||||
"followerSanitar": 2,
|
||||
"followerTagilla": 2,
|
||||
"followerTest": 4,
|
||||
"marksman": 30,
|
||||
"pmcBot": 120,
|
||||
"sectantPriest": 1,
|
||||
"sectantWarrior": 5,
|
||||
"gifter": 1,
|
||||
"test": 40,
|
||||
"exUsec": 15
|
||||
},
|
||||
"bosses": [
|
||||
"bossbully",
|
||||
"bossgluhar",
|
||||
"bosskilla",
|
||||
"bosskojaniy",
|
||||
"bosssanitar",
|
||||
"bosstagilla"
|
||||
],
|
||||
"durability": {
|
||||
"default": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 50,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"pmc": {
|
||||
"armor": {
|
||||
"lowestMaxPercent": 90,
|
||||
"highestMaxPercent": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 95,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 5,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"boss": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 80,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"follower": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 80,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"assault": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 48,
|
||||
"highestMax": 70,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"cursedassault": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 50,
|
||||
"highestMax": 70,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"marksman": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 50,
|
||||
"highestMax": 70,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"pmcbot": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 80,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"exusec": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 79,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"sectantpriest": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 90,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
},
|
||||
"sectantwarrior": {
|
||||
"armor": {
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": 90,
|
||||
"highestMax": 100,
|
||||
"maxDelta": 10,
|
||||
"minDelta": 0
|
||||
}
|
||||
}
|
||||
},
|
||||
"lootNValue": {
|
||||
"scav": 3,
|
||||
"pmc": 1.8
|
||||
},
|
||||
"pmc": {
|
||||
"dynamicLoot": {
|
||||
"whitelist": [
|
||||
"57864a3d24597754843f8721",
|
||||
"57864a66245977548f04a81f",
|
||||
"57864ada245977548638de91",
|
||||
"57864bb7245977548b3b66c2",
|
||||
"57864c322459775490116fbf",
|
||||
"57864c8c245977548867e7f1",
|
||||
"57864e4c24597754843f8723",
|
||||
"57864ee62459775490116fc1",
|
||||
"5c164d2286f774194c5e69fa",
|
||||
"5c99f98d86f7745c314214b3",
|
||||
"55818add4bdc2d5b648b456f",
|
||||
"55818ad54bdc2ddc698b4569",
|
||||
"55818aeb4bdc2ddc698b456a",
|
||||
"55818ae44bdc2dde698b456c",
|
||||
"55818b164bdc2ddc698b456c",
|
||||
"5448bc234bdc2d3c308b4569",
|
||||
"5447e1d04bdc2dff2f8b4567",
|
||||
"5448eb774bdc2d0a728b4567",
|
||||
"550aa4cd4bdc2dd8348b456c",
|
||||
"55818af64bdc2d5b648b4570",
|
||||
"5448ecbe4bdc2d60728b4568",
|
||||
"5448e8d04bdc2ddf718b4569",
|
||||
"5d650c3e815116009f6201d2",
|
||||
"5448e8d64bdc2dce718b4568",
|
||||
"5448f3a14bdc2d27728b4569",
|
||||
"5448e54d4bdc2dcc718b4568",
|
||||
"5448f3a64bdc2d60728b456a",
|
||||
"543be5cb4bdc2deb348b4568",
|
||||
"5485a8684bdc2da71d8b4567",
|
||||
"543be5dd4bdc2deb348b4569",
|
||||
"590c745b86f7743cc433c5f2",
|
||||
"5448f39d4bdc2d0a728b4568",
|
||||
"543be6564bdc2df4348b4568"
|
||||
],
|
||||
"blacklist": [
|
||||
"5fca13ca637ee0341a484f46",
|
||||
"59f32c3b86f77472a31742f0",
|
||||
"59f32bb586f774757e1e8442",
|
||||
"617aa4dd8166f034d57de9c5",
|
||||
"5a2a57cfc4a2826c6e06d44a",
|
||||
"619256e5f8af2c1a4e1f5d92",
|
||||
"5a0c27731526d80618476ac4"
|
||||
],
|
||||
"spawnLimits": {
|
||||
"5c99f98d86f7745c314214b3": 1,
|
||||
"5c164d2286f774194c5e69fa": 1,
|
||||
"550aa4cd4bdc2dd8348b456c": 2,
|
||||
"55818add4bdc2d5b648b456f": 1,
|
||||
"55818ad54bdc2ddc698b4569": 1,
|
||||
"55818aeb4bdc2ddc698b456a": 1,
|
||||
"55818ae44bdc2dde698b456c": 1,
|
||||
"55818af64bdc2d5b648b4570": 1,
|
||||
"5448e54d4bdc2dcc718b4568": 1,
|
||||
"5448f3a64bdc2d60728b456a": 2,
|
||||
"5447e1d04bdc2dff2f8b4567": 1,
|
||||
"5a341c4686f77469e155819e": 1,
|
||||
"55818b164bdc2ddc698b456c": 2,
|
||||
"5448bc234bdc2d3c308b4569": 2,
|
||||
"543be5dd4bdc2deb348b4569": 2,
|
||||
"543be5cb4bdc2deb348b4568": 2,
|
||||
"5485a8684bdc2da71d8b4567": 2,
|
||||
"5d650c3e815116009f6201d2": 2,
|
||||
"5448f39d4bdc2d0a728b4568": 2,
|
||||
"543be6564bdc2df4348b4568": 1
|
||||
},
|
||||
"moneyStackLimits": {
|
||||
"5449016a4bdc2d6f028b456f": 4000,
|
||||
"5696686a4bdc2da3298b456a": 50,
|
||||
"569668774bdc2da2298b4568": 50
|
||||
}
|
||||
},
|
||||
"cartridgeBlacklist": [
|
||||
"56dff421d2720b5f5a8b4567",
|
||||
"56dff216d2720bbd668b4568",
|
||||
"56dff338d2720bbd668b4569",
|
||||
"56dff4ecd2720b5f5a8b4568",
|
||||
"59e6918f86f7746c9f75e849",
|
||||
"5c0d5ae286f7741e46554302",
|
||||
"5c0d56a986f774449d5de529",
|
||||
"5efb0e16aeb21837e749c7ff",
|
||||
"5737218f245977612125ba51",
|
||||
"57372140245977611f70ee91",
|
||||
"57371aab2459775a77142f22",
|
||||
"573719762459775a626ccbc1",
|
||||
"573601b42459776410737435",
|
||||
"573602322459776445391df1",
|
||||
"59e4d3d286f774176a36250a",
|
||||
"5e023e88277cce2b522ff2b1",
|
||||
"59e6658b86f77411d949b250",
|
||||
"5c0d591486f7744c505b416f",
|
||||
"5d6e68d1a4b93622fe60e845",
|
||||
"5d6e6869a4b9361c140bcfde",
|
||||
"5e85a9f4add9fe03027d9bf1",
|
||||
"5cadf6e5ae921500113bb973",
|
||||
"5cadf6ddae9215051e1c23b2",
|
||||
"6196365d58ef8c428c287da1",
|
||||
"5ba26812d4351e003201fef1",
|
||||
"5cc80f79e4a949033c7343b2"
|
||||
],
|
||||
"difficulty": "AsOnline",
|
||||
"isUsec": 50,
|
||||
"chanceSameSideIsHostilePercent": 50,
|
||||
"usecType": "bosstest",
|
||||
"bearType": "test",
|
||||
"maxBackpackLootTotalRub": 150000,
|
||||
"maxPocketLootTotalRub": 50000,
|
||||
"maxVestLootTotalRub": 50000,
|
||||
"types": {
|
||||
"assault": 25,
|
||||
"cursedAssault": 25,
|
||||
"pmcBot": 25,
|
||||
"exUsec": 10
|
||||
}
|
||||
},
|
||||
"showTypeInNickname": false,
|
||||
"maxBotCap": 20
|
||||
}
|
4
Ereshkigal-AkiConfig/dist/locale/DailyLocale.json
vendored
Normal file
4
Ereshkigal-AkiConfig/dist/locale/DailyLocale.json
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"redeemTime": "",
|
||||
"repeatableQuests": ""
|
||||
}
|
195
Ereshkigal-AkiConfig/dist/locale/PmcLocale.json
vendored
Normal file
195
Ereshkigal-AkiConfig/dist/locale/PmcLocale.json
vendored
Normal file
@ -0,0 +1,195 @@
|
||||
{
|
||||
"presetBatch": {
|
||||
"assault": "",
|
||||
"bossBully": "",
|
||||
"bossGluhar": "",
|
||||
"bossKilla": "",
|
||||
"bossKojaniy": "",
|
||||
"bossSanitar": "",
|
||||
"bossTagilla": "",
|
||||
"bossTest": "",
|
||||
"cursedAssault": "",
|
||||
"followerBully": "",
|
||||
"followerGluharAssault": "",
|
||||
"followerGluharScout": "",
|
||||
"followerGluharSecurity": "",
|
||||
"followerGluharSnipe": "",
|
||||
"followerKojaniy": "",
|
||||
"followerSanitar": "",
|
||||
"followerTagilla": "",
|
||||
"followerTest": "",
|
||||
"marksman": "",
|
||||
"pmcBot": "",
|
||||
"sectantPriest": "",
|
||||
"sectantWarrior": "",
|
||||
"gifter": "",
|
||||
"test": "",
|
||||
"exUsec": ""
|
||||
},
|
||||
"bosses": "",
|
||||
"durability": {
|
||||
"default": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"pmc": {
|
||||
"armor": {
|
||||
"lowestMaxPercent": "",
|
||||
"highestMaxPercent": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"boss": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"follower": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"assault": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"cursedassault": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"marksman": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"pmcbot": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"exusec": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"sectantpriest": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
},
|
||||
"sectantwarrior": {
|
||||
"armor": {
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
},
|
||||
"weapon": {
|
||||
"lowestMax": "",
|
||||
"highestMax": "",
|
||||
"maxDelta": "",
|
||||
"minDelta": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"lootNValue": {
|
||||
"scav": "",
|
||||
"pmc": ""
|
||||
},
|
||||
"pmc": {
|
||||
"dynamicLoot": {
|
||||
"whitelist": "",
|
||||
"blacklist": "",
|
||||
"spawnLimits": "",
|
||||
"moneyStackLimits": ""
|
||||
},
|
||||
"cartridgeBlacklist": "",
|
||||
"difficulty": "",
|
||||
"isUsec": "",
|
||||
"chanceSameSideIsHostilePercent": "",
|
||||
"usecType": "",
|
||||
"bearType": "",
|
||||
"maxBackpackLootTotalRub": "",
|
||||
"maxPocketLootTotalRub": "",
|
||||
"maxVestLootTotalRub": "",
|
||||
"types": {
|
||||
"assault": "",
|
||||
"cursedAssault": "",
|
||||
"pmcBot": "",
|
||||
"exUsec": ""
|
||||
}
|
||||
},
|
||||
"showTypeInNickname": "",
|
||||
"maxBotCap": ""
|
||||
}
|
254
Ereshkigal-AkiConfig/dist/locale/locale.json
vendored
Normal file
254
Ereshkigal-AkiConfig/dist/locale/locale.json
vendored
Normal file
@ -0,0 +1,254 @@
|
||||
{
|
||||
"Server values": {
|
||||
"HTTP": {
|
||||
"ip": "",
|
||||
"port": ""
|
||||
},
|
||||
"Health": {
|
||||
"healthMultipliers": {
|
||||
"death": "",
|
||||
"blacked": ""
|
||||
},
|
||||
"save": {
|
||||
"health": "",
|
||||
"effects": ""
|
||||
}
|
||||
},
|
||||
"Hideout": {
|
||||
"runIntervalSeconds": "",
|
||||
"scavCase": {
|
||||
"rewardParentBlacklist": "",
|
||||
"rewardItemBlacklist": "",
|
||||
"ammoRewards": {
|
||||
"giveMultipleOfTen": "",
|
||||
"minAmount": ""
|
||||
},
|
||||
"moneyRewards": {
|
||||
"enabled": "",
|
||||
"rub": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"usd": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"eur": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"enableChristmasGifts": ""
|
||||
},
|
||||
"Raids values": {
|
||||
"Loot values": {
|
||||
"looseLootMultiplier": {
|
||||
"bigmap": "",
|
||||
"develop": "",
|
||||
"factory4day": "",
|
||||
"factory4night": "",
|
||||
"interchange": "",
|
||||
"laboratory": "",
|
||||
"rezervbase": "",
|
||||
"shoreline": "",
|
||||
"woods": "",
|
||||
"hideout": "",
|
||||
"lighthouse": "",
|
||||
"privatearea": "",
|
||||
"suburbs": "",
|
||||
"tarkovstreets": "",
|
||||
"terminal": "",
|
||||
"town": ""
|
||||
},
|
||||
"staticLootMultiplier": {
|
||||
"bigmap": "",
|
||||
"develop": "",
|
||||
"factory4day": "",
|
||||
"factory4night": "",
|
||||
"interchange": "",
|
||||
"laboratory": "",
|
||||
"rezervbase": "",
|
||||
"shoreline": "",
|
||||
"woods": "",
|
||||
"hideout": "",
|
||||
"lighthouse": "",
|
||||
"privatearea": "",
|
||||
"suburbs": "",
|
||||
"tarkovstreets": "",
|
||||
"terminal": "",
|
||||
"town": ""
|
||||
}
|
||||
},
|
||||
"Airdrop values": {
|
||||
"airdropChancePercent": {
|
||||
"bigmap": "",
|
||||
"woods": "",
|
||||
"lighthouse": "",
|
||||
"shoreline": "",
|
||||
"interchange": "",
|
||||
"reserve": ""
|
||||
},
|
||||
"airdropMinStartTimeSeconds": "",
|
||||
"airdropMaxStartTimeSeconds": "",
|
||||
"airdropMinOpenHeight": "",
|
||||
"airdropMaxOpenHeight": "",
|
||||
"planeMinFlyHeight": "",
|
||||
"planeMaxFlyHeight": "",
|
||||
"planeVolume": ""
|
||||
},
|
||||
"MIAOnRaidEnd": "",
|
||||
"raidMenuSettings": {
|
||||
"aiAmount": "",
|
||||
"aiDifficulty": "",
|
||||
"bossEnabled": "",
|
||||
"scavWars": "",
|
||||
"taggedAndCursed": ""
|
||||
},
|
||||
"save": {
|
||||
"loot": "",
|
||||
"durability": ""
|
||||
},
|
||||
"carExtracts": "",
|
||||
"carExtractBaseStandingGain": "",
|
||||
"scavExtractGain": ""
|
||||
},
|
||||
"Traders values": {
|
||||
"Traders": {
|
||||
"updateTime": "",
|
||||
"updateTimeDefault": "",
|
||||
"fenceAssortSize": "",
|
||||
"fenceMaxPresetsCount": "",
|
||||
"fencePresetPriceMult": "",
|
||||
"minDurabilityForSale": "",
|
||||
"fenceItemIgnoreList": ""
|
||||
},
|
||||
"Repair": {
|
||||
"priceMultiplier": ""
|
||||
},
|
||||
"Insurances": {
|
||||
"insuranceMultiplier": "",
|
||||
"returnChancePercent": "",
|
||||
"runIntervalSeconds": ""
|
||||
},
|
||||
"Trading": {
|
||||
"newItemsMarkedFound": ""
|
||||
}
|
||||
},
|
||||
"FleaMarket configuration": {
|
||||
"runIntervalSeconds": "",
|
||||
"sell": {
|
||||
"fees": "",
|
||||
"chance": {
|
||||
"base": "",
|
||||
"overprices": "",
|
||||
"underpriced": ""
|
||||
},
|
||||
"time": {
|
||||
"base": "",
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"reputation": {
|
||||
"gain": "",
|
||||
"loss": ""
|
||||
}
|
||||
},
|
||||
"traders": {
|
||||
"EnablePraporOffers": "",
|
||||
"EnableTheRapistOffers": "",
|
||||
"EnableFenceOffers": "",
|
||||
"EnableSkierOffers": "",
|
||||
"EnablePeacekeeperOffers": "",
|
||||
"EnableMechanicOffers": "",
|
||||
"EnableRagmanOffers": "",
|
||||
"EnableJaegerOffers": "",
|
||||
"EnableAllAvailableOffers": ""
|
||||
},
|
||||
"dynamic": {
|
||||
"expiredOfferThreshold": "",
|
||||
"offerItemCount": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"price": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"endTimeSeconds": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"condition": {
|
||||
"conditionChance": "",
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"stackablePercent": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"nonStackableCount": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"rating": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"currencies": "",
|
||||
"showAsSingleStack": "",
|
||||
"blacklist": {
|
||||
"custom": "",
|
||||
"enableBsgList": "",
|
||||
"enableQuestList": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"Weather values": {
|
||||
"acceleration": "",
|
||||
"weather": {
|
||||
"clouds": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"windSpeed": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"windDirection": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"windGustiness": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"rain": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"rainIntensity": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"fog": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"temp": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
},
|
||||
"pressure": {
|
||||
"min": "",
|
||||
"max": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"other": {
|
||||
"hideWarningMessage": "",
|
||||
"showModLogs": ""
|
||||
}
|
||||
}
|
289
Ereshkigal-AkiConfig/dist/models/IConfig.ts
vendored
Normal file
289
Ereshkigal-AkiConfig/dist/models/IConfig.ts
vendored
Normal file
@ -0,0 +1,289 @@
|
||||
export interface HTTP
|
||||
{
|
||||
ip: string;
|
||||
port: number;
|
||||
}
|
||||
|
||||
export interface HealthMultipliers
|
||||
{
|
||||
death: number;
|
||||
blacked: number;
|
||||
}
|
||||
|
||||
export interface HealthSave
|
||||
{
|
||||
health: boolean;
|
||||
effects: boolean;
|
||||
}
|
||||
|
||||
export interface Health
|
||||
{
|
||||
healthMultipliers: HealthMultipliers;
|
||||
save: HealthSave;
|
||||
}
|
||||
|
||||
export interface AmmoRewards
|
||||
{
|
||||
giveMultipleOfTen: boolean;
|
||||
minAmount: number;
|
||||
}
|
||||
|
||||
export interface MinMax
|
||||
{
|
||||
min: number;
|
||||
max: number;
|
||||
}
|
||||
|
||||
export interface MoneyRewards
|
||||
{
|
||||
enabled: boolean;
|
||||
rub: MinMax;
|
||||
usd: MinMax;
|
||||
eur: MinMax
|
||||
}
|
||||
|
||||
export interface ScavCase
|
||||
{
|
||||
rewardParentBlacklist: any;
|
||||
rewardItemBlacklist: any;
|
||||
ammoRewards: AmmoRewards;
|
||||
moneyRewards: MoneyRewards;
|
||||
}
|
||||
|
||||
export interface Hideout
|
||||
{
|
||||
runIntervalSeconds: number;
|
||||
scavCase: ScavCase;
|
||||
fuelDrainRateMultipler: number;
|
||||
}
|
||||
|
||||
export interface LootMultiplier
|
||||
{
|
||||
bigmap: number;
|
||||
develop: number;
|
||||
factory4day: number;
|
||||
factory4night: number;
|
||||
interchange: number;
|
||||
laboratory: number;
|
||||
rezervbase: number;
|
||||
shoreline: number;
|
||||
woods: number;
|
||||
hideout: number;
|
||||
lighthouse: number;
|
||||
privatearea: number;
|
||||
suburbs: number;
|
||||
tarkovstreets: number;
|
||||
terminal: number;
|
||||
town: number;
|
||||
}
|
||||
|
||||
export interface LootValues
|
||||
{
|
||||
looseLootMultiplier: LootMultiplier;
|
||||
staticLootMultiplier: LootMultiplier;
|
||||
}
|
||||
|
||||
export interface AirdropChancePercent
|
||||
{
|
||||
bigmap: number;
|
||||
woods: number;
|
||||
lighthouse: number;
|
||||
shoreline: number;
|
||||
interchange: number;
|
||||
reserve: number;
|
||||
}
|
||||
|
||||
export interface AirdropValues
|
||||
{
|
||||
airdropChancePercent: AirdropChancePercent;
|
||||
airdropMinOpenHeight: number;
|
||||
airdropMaxOpenHeight: number;
|
||||
planeMinFlyHeight: number;
|
||||
planeMaxFlyHeight: number;
|
||||
planeVolume: number;
|
||||
airdropMinStartTimeSeconds: number;
|
||||
airdropMaxStartTimeSeconds: number;
|
||||
}
|
||||
|
||||
export interface RaidMenuSettings
|
||||
{
|
||||
aiAmount: string;
|
||||
aiDifficulty: string;
|
||||
bossEnabled: boolean;
|
||||
scavWars: boolean;
|
||||
taggedAndCursed: boolean;
|
||||
}
|
||||
|
||||
export interface RaidsValuesSave
|
||||
{
|
||||
loot: boolean;
|
||||
durability: boolean;
|
||||
}
|
||||
|
||||
export interface Traders
|
||||
{
|
||||
updateTime: any;
|
||||
updateTimeDefault: number;
|
||||
fenceAssortSize: number;
|
||||
fenceMaxPresetsCount: number;
|
||||
fencePresetPriceMult: number;
|
||||
minDurabilityForSale: number;
|
||||
fenceItemIgnoreList: any;
|
||||
}
|
||||
|
||||
export interface Repair
|
||||
{
|
||||
priceMultiplier: number;
|
||||
}
|
||||
|
||||
export interface Insurances
|
||||
{
|
||||
insuranceMultiplier: any;
|
||||
returnChancePercent: any;
|
||||
runIntervalSeconds: number;
|
||||
}
|
||||
|
||||
export interface Trading
|
||||
{
|
||||
newItemsMarkedFound: boolean;
|
||||
}
|
||||
|
||||
export interface Chance
|
||||
{
|
||||
base: number;
|
||||
overprices: number;
|
||||
underpriced: number;
|
||||
}
|
||||
|
||||
export interface Time
|
||||
{
|
||||
base: number;
|
||||
min: number;
|
||||
max: number;
|
||||
}
|
||||
|
||||
export interface Reputation
|
||||
{
|
||||
gain: number;
|
||||
loss: number;
|
||||
}
|
||||
|
||||
export interface Sell
|
||||
{
|
||||
fees: boolean;
|
||||
chance: Chance;
|
||||
time: Time;
|
||||
reputation: Reputation;
|
||||
}
|
||||
|
||||
export interface FleaMarketTraders
|
||||
{
|
||||
EnablePraporOffers: boolean;
|
||||
EnableTheRapistOffers: boolean;
|
||||
EnableFenceOffers: false,
|
||||
EnableSkierOffers: boolean;
|
||||
EnablePeacekeeperOffers: boolean;
|
||||
EnableMechanicOffers: boolean;
|
||||
EnableRagmanOffers: boolean;
|
||||
EnableJaegerOffers: boolean;
|
||||
EnableAllAvailableOffers: boolean;
|
||||
}
|
||||
|
||||
export interface Condition
|
||||
{
|
||||
conditionChance: number;
|
||||
min: number;
|
||||
max: number;
|
||||
}
|
||||
|
||||
export interface Blacklist
|
||||
{
|
||||
custom: any;
|
||||
enableBsgList: boolean;
|
||||
enableQuestList: boolean;
|
||||
}
|
||||
|
||||
export interface Dynamic
|
||||
{
|
||||
expiredOfferThreshold: number;
|
||||
offerItemCount: MinMax;
|
||||
price: MinMax;
|
||||
endTimeSeconds: MinMax;
|
||||
condition: Condition;
|
||||
stackablePercent: MinMax;
|
||||
nonStackableCount: MinMax;
|
||||
rating: MinMax;
|
||||
currencies: any;
|
||||
showAsSingleStack: any;
|
||||
blacklist: Blacklist;
|
||||
}
|
||||
|
||||
export interface Weather
|
||||
{
|
||||
clouds: MinMax;
|
||||
windSpeed: MinMax;
|
||||
windDirection: MinMax;
|
||||
windGustiness: MinMax;
|
||||
rain: MinMax;
|
||||
rainIntensity: MinMax;
|
||||
fog: MinMax;
|
||||
temp: MinMax;
|
||||
pressure: MinMax;
|
||||
}
|
||||
|
||||
export interface Other
|
||||
{
|
||||
hideWarningMessage: boolean;
|
||||
showModLogs: boolean;
|
||||
}
|
||||
|
||||
export interface ServerValues
|
||||
{
|
||||
http: HTTP;
|
||||
health: Health;
|
||||
hideout: Hideout;
|
||||
}
|
||||
|
||||
export interface RaidsValues
|
||||
{
|
||||
lootValues: LootValues;
|
||||
airdropValues: AirdropValues;
|
||||
miaOnRaidEnd: boolean;
|
||||
raidMenuSettings: RaidMenuSettings;
|
||||
save: RaidsValuesSave;
|
||||
carExtracts: any;
|
||||
carExtractBaseStandingGain: number;
|
||||
scavExtractGain: number;
|
||||
}
|
||||
|
||||
export interface TradersValues
|
||||
{
|
||||
traders: Traders;
|
||||
repair: Repair;
|
||||
insurances: Insurances;
|
||||
trading: Trading;
|
||||
}
|
||||
|
||||
export interface FleaMarketConfiguration
|
||||
{
|
||||
runIntervalSeconds: number;
|
||||
sell: Sell;
|
||||
traders: FleaMarketTraders;
|
||||
dynamic: Dynamic;
|
||||
}
|
||||
|
||||
export interface WeatherValues
|
||||
{
|
||||
acceleration: number;
|
||||
weather: Weather;
|
||||
}
|
||||
|
||||
export interface IConfig
|
||||
{
|
||||
serverValues: ServerValues;
|
||||
raidsValues: RaidsValues;
|
||||
tradersValues: TradersValues;
|
||||
fleaMarketConfiguration: FleaMarketConfiguration;
|
||||
weatherValues: WeatherValues;
|
||||
other: Other;
|
||||
}
|
5
Ereshkigal-AkiConfig/dist/models/IDailyConfig.ts
vendored
Normal file
5
Ereshkigal-AkiConfig/dist/models/IDailyConfig.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
export interface IDailyConfig
|
||||
{
|
||||
redeemTime: number;
|
||||
repeatableQuests: any;
|
||||
}
|
5
Ereshkigal-AkiConfig/dist/models/IDailyLocale.ts
vendored
Normal file
5
Ereshkigal-AkiConfig/dist/models/IDailyLocale.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
export interface IDailyLocale
|
||||
{
|
||||
redeemTime: string;
|
||||
repeatableQuests: string;
|
||||
}
|
289
Ereshkigal-AkiConfig/dist/models/ILocale.ts
vendored
Normal file
289
Ereshkigal-AkiConfig/dist/models/ILocale.ts
vendored
Normal file
@ -0,0 +1,289 @@
|
||||
export interface HTTP
|
||||
{
|
||||
ip: string;
|
||||
port: string;
|
||||
}
|
||||
|
||||
export interface HealthMultipliers
|
||||
{
|
||||
death: string;
|
||||
blacked: string;
|
||||
}
|
||||
|
||||
export interface HealthSave
|
||||
{
|
||||
health: boolean;
|
||||
effects: boolean;
|
||||
}
|
||||
|
||||
export interface Health
|
||||
{
|
||||
healthMultipliers: HealthMultipliers;
|
||||
save: HealthSave;
|
||||
}
|
||||
|
||||
export interface AmmoRewards
|
||||
{
|
||||
giveMultipleOfTen: boolean;
|
||||
minAmount: string;
|
||||
}
|
||||
|
||||
export interface MinMax
|
||||
{
|
||||
min: string;
|
||||
max: string;
|
||||
}
|
||||
|
||||
export interface MoneyRewards
|
||||
{
|
||||
enabled: boolean;
|
||||
rub: MinMax;
|
||||
usd: MinMax;
|
||||
eur: MinMax
|
||||
}
|
||||
|
||||
export interface ScavCase
|
||||
{
|
||||
rewardParentBlacklist: string;
|
||||
rewardItemBlacklist: string;
|
||||
ammoRewards: AmmoRewards;
|
||||
moneyRewards: MoneyRewards;
|
||||
}
|
||||
|
||||
export interface Hideout
|
||||
{
|
||||
runIntervalSeconds: string;
|
||||
scavCase: ScavCase;
|
||||
fuelDrainRateMultipler: number;
|
||||
}
|
||||
|
||||
export interface LootMultiplier
|
||||
{
|
||||
bigmap: string;
|
||||
develop: string;
|
||||
factory4day: string;
|
||||
factory4night: string;
|
||||
interchange: string;
|
||||
laboratory: string;
|
||||
rezervbase: string;
|
||||
shoreline: string;
|
||||
woods: string;
|
||||
hideout: string;
|
||||
lighthouse: string;
|
||||
privatearea: string;
|
||||
suburbs: string;
|
||||
tarkovstreets: string;
|
||||
terminal: string;
|
||||
town: string;
|
||||
}
|
||||
|
||||
export interface LootValues
|
||||
{
|
||||
looseLootMultiplier: LootMultiplier;
|
||||
staticLootMultiplier: LootMultiplier;
|
||||
}
|
||||
|
||||
export interface AirdropChancePercent
|
||||
{
|
||||
bigmap: number;
|
||||
woods: number;
|
||||
lighthouse: number;
|
||||
shoreline: number;
|
||||
interchange: number;
|
||||
reserve: number;
|
||||
}
|
||||
|
||||
export interface AirdropValues
|
||||
{
|
||||
airdropChancePercent: AirdropChancePercent;
|
||||
airdropMinOpenHeight: number;
|
||||
airdropMaxOpenHeight: number;
|
||||
planeMinFlyHeight: number;
|
||||
planeMaxFlyHeight: number;
|
||||
planeVolume: number;
|
||||
airdropMinStartTimeSeconds: number;
|
||||
airdropMaxStartTimeSeconds: number;
|
||||
}
|
||||
|
||||
export interface RaidMenuSettings
|
||||
{
|
||||
aiAmount: string;
|
||||
aiDifficulty: string;
|
||||
bossEnabled: boolean;
|
||||
scavWars: boolean;
|
||||
taggedAndCursed: boolean;
|
||||
}
|
||||
|
||||
export interface RaidsValuesSave
|
||||
{
|
||||
loot: boolean;
|
||||
durability: boolean;
|
||||
}
|
||||
|
||||
export interface Traders
|
||||
{
|
||||
updateTime: string;
|
||||
updateTimeDefault: string;
|
||||
fenceAssortSize: string;
|
||||
fenceMaxPresetsCount: string;
|
||||
fencePresetPriceMult: string;
|
||||
minDurabilityForSale: string;
|
||||
fenceItemIgnoreList: string;
|
||||
}
|
||||
|
||||
export interface Repair
|
||||
{
|
||||
priceMultiplier: string;
|
||||
}
|
||||
|
||||
export interface Insurances
|
||||
{
|
||||
insuranceMultiplier: string;
|
||||
returnChancePercent: string;
|
||||
runIntervalSeconds: string;
|
||||
}
|
||||
|
||||
export interface Trading
|
||||
{
|
||||
newItemsMarkedFound: boolean;
|
||||
}
|
||||
|
||||
export interface Chance
|
||||
{
|
||||
base: string;
|
||||
overprices: string;
|
||||
underpriced: string;
|
||||
}
|
||||
|
||||
export interface Time
|
||||
{
|
||||
base: string;
|
||||
min: string;
|
||||
max: string;
|
||||
}
|
||||
|
||||
export interface Reputation
|
||||
{
|
||||
gain: string;
|
||||
loss: string;
|
||||
}
|
||||
|
||||
export interface Sell
|
||||
{
|
||||
fees: boolean;
|
||||
chance: Chance;
|
||||
time: Time;
|
||||
reputation: Reputation;
|
||||
}
|
||||
|
||||
export interface FleaMarketTraders
|
||||
{
|
||||
EnablePraporOffers: boolean;
|
||||
EnableTheRapistOffers: boolean;
|
||||
EnableFenceOffers: false,
|
||||
EnableSkierOffers: boolean;
|
||||
EnablePeacekeeperOffers: boolean;
|
||||
EnableMechanicOffers: boolean;
|
||||
EnableRagmanOffers: boolean;
|
||||
EnableJaegerOffers: boolean;
|
||||
EnableAllAvailableOffers: boolean;
|
||||
}
|
||||
|
||||
export interface Condition
|
||||
{
|
||||
conditionChance: string;
|
||||
min: string;
|
||||
max: string;
|
||||
}
|
||||
|
||||
export interface Blacklist
|
||||
{
|
||||
custom: string;
|
||||
enableBsgList: boolean;
|
||||
enableQuestList: boolean;
|
||||
}
|
||||
|
||||
export interface Dynamic
|
||||
{
|
||||
expiredOfferThreshold: string;
|
||||
offerItemCount: MinMax;
|
||||
price: MinMax;
|
||||
endTimeSeconds: MinMax;
|
||||
condition: Condition;
|
||||
stackablePercent: MinMax;
|
||||
nonStackableCount: MinMax;
|
||||
rating: MinMax;
|
||||
currencies: string;
|
||||
showAsSingleStack: string;
|
||||
blacklist: Blacklist;
|
||||
}
|
||||
|
||||
export interface Weather
|
||||
{
|
||||
clouds: MinMax;
|
||||
windSpeed: MinMax;
|
||||
windDirection: MinMax;
|
||||
windGustiness: MinMax;
|
||||
rain: MinMax;
|
||||
rainIntensity: MinMax;
|
||||
fog: MinMax;
|
||||
temp: MinMax;
|
||||
pressure: MinMax;
|
||||
}
|
||||
|
||||
export interface Other
|
||||
{
|
||||
hideWarningMessage: boolean;
|
||||
showModLogs: boolean;
|
||||
}
|
||||
|
||||
export interface ServerValues
|
||||
{
|
||||
http: HTTP;
|
||||
health: Health;
|
||||
hideout: Hideout;
|
||||
}
|
||||
|
||||
export interface RaidsValues
|
||||
{
|
||||
lootValues: LootValues;
|
||||
airdropValues: AirdropValues;
|
||||
miaOnRaidEnd: boolean;
|
||||
raidMenuSettings: RaidMenuSettings;
|
||||
save: RaidsValuesSave;
|
||||
carExtracts: string;
|
||||
carExtractBaseStandingGain: string;
|
||||
scavExtractGain: string;
|
||||
}
|
||||
|
||||
export interface TradersValues
|
||||
{
|
||||
traders: Traders;
|
||||
repair: Repair;
|
||||
insurances: Insurances;
|
||||
trading: Trading;
|
||||
}
|
||||
|
||||
export interface FleaMarketConfiguration
|
||||
{
|
||||
runIntervalSeconds: string;
|
||||
sell: Sell;
|
||||
traders: FleaMarketTraders;
|
||||
dynamic: Dynamic;
|
||||
}
|
||||
|
||||
export interface WeatherValues
|
||||
{
|
||||
acceleration: string;
|
||||
weather: Weather;
|
||||
}
|
||||
|
||||
export interface ILocale
|
||||
{
|
||||
serverValues: ServerValues;
|
||||
raidsValues: RaidsValues;
|
||||
tradersValues: TradersValues;
|
||||
fleaMarketConfiguration: FleaMarketConfiguration;
|
||||
weatherValues: WeatherValues;
|
||||
other: Other;
|
||||
}
|
125
Ereshkigal-AkiConfig/dist/models/IPmcConfig.ts
vendored
Normal file
125
Ereshkigal-AkiConfig/dist/models/IPmcConfig.ts
vendored
Normal file
@ -0,0 +1,125 @@
|
||||
export interface PresetBatch
|
||||
{
|
||||
assault: number;
|
||||
bossBully: number;
|
||||
bossGluhar: number;
|
||||
bossKilla: number;
|
||||
bossKojaniy: number;
|
||||
bossSanitar: number;
|
||||
bossTagilla: number;
|
||||
bossTest: number;
|
||||
cursedAssault: number;
|
||||
followerBully: number;
|
||||
followerGluharAssault: number;
|
||||
followerGluharScout: number;
|
||||
followerGluharSecurity: number;
|
||||
followerGluharSnipe: number;
|
||||
followerKojaniy: number;
|
||||
followerSanitar: number;
|
||||
followerTagilla: number;
|
||||
followerTest: number;
|
||||
marksman: number;
|
||||
pmcBot: number;
|
||||
sectantPriest: number;
|
||||
sectantWarrior: number;
|
||||
gifter: number;
|
||||
test: number;
|
||||
exUsec: number;
|
||||
}
|
||||
|
||||
export interface DefaultArmor
|
||||
{
|
||||
maxDelta: number;
|
||||
minDelta: number;
|
||||
}
|
||||
|
||||
export interface PmcArmor
|
||||
{
|
||||
lowestMaxPercent: number;
|
||||
highestMaxPercent: number;
|
||||
maxDelta: number;
|
||||
minDelta: number;
|
||||
}
|
||||
|
||||
export interface Weapon
|
||||
{
|
||||
lowestMax: number;
|
||||
highestMax: number;
|
||||
maxDelta: number;
|
||||
minDelta: number;
|
||||
}
|
||||
|
||||
export interface Bot
|
||||
{
|
||||
armor: DefaultArmor;
|
||||
weapon: Weapon;
|
||||
}
|
||||
|
||||
export interface PMC
|
||||
{
|
||||
armor: PmcArmor;
|
||||
weapon: Weapon;
|
||||
}
|
||||
|
||||
export interface LootNValue
|
||||
{
|
||||
scav: number;
|
||||
pmc: number;
|
||||
}
|
||||
|
||||
export interface Durability
|
||||
{
|
||||
default: Bot;
|
||||
pmc: PMC;
|
||||
boss: Bot;
|
||||
follower: Bot;
|
||||
assault: Bot;
|
||||
cursedassault: Bot;
|
||||
marksman: Bot;
|
||||
pmcbot: Bot;
|
||||
exusec: Bot;
|
||||
sectantpriest: Bot;
|
||||
sectantwarrior: Bot;
|
||||
}
|
||||
|
||||
export interface DynamicLoot
|
||||
{
|
||||
whitelist: any;
|
||||
blacklist: any;
|
||||
spawnLimits: any;
|
||||
moneyStackLimits: any;
|
||||
}
|
||||
|
||||
export interface Types
|
||||
{
|
||||
assault: number;
|
||||
cursedAssault: number;
|
||||
pmcBot: number;
|
||||
exUsec: number;
|
||||
}
|
||||
|
||||
export interface PMCConfig
|
||||
{
|
||||
dynamicLoot: DynamicLoot;
|
||||
cartridgeBlacklist: any;
|
||||
difficulty: string;
|
||||
isUsec: number;
|
||||
chanceSameSideIsHostilePercent: number;
|
||||
usecType: string;
|
||||
bearType: string;
|
||||
maxBackpackLootTotalRub: number;
|
||||
maxPocketLootTotalRub: number;
|
||||
maxVestLootTotalRub: number;
|
||||
types: Types;
|
||||
}
|
||||
|
||||
export interface IPmcConfig
|
||||
{
|
||||
presetBatch: PresetBatch;
|
||||
bosses: any;
|
||||
durability: Durability;
|
||||
lootNValue: LootNValue;
|
||||
pmc: PMCConfig;
|
||||
showTypeInNickname: boolean;
|
||||
maxBotCap: number;
|
||||
}
|
125
Ereshkigal-AkiConfig/dist/models/IPmcLocale.ts
vendored
Normal file
125
Ereshkigal-AkiConfig/dist/models/IPmcLocale.ts
vendored
Normal file
@ -0,0 +1,125 @@
|
||||
export interface PresetBatch
|
||||
{
|
||||
assault: string;
|
||||
bossBully: string;
|
||||
bossGluhar: string;
|
||||
bossKilla: string;
|
||||
bossKojaniy: string;
|
||||
bossSanitar: string;
|
||||
bossTagilla: string;
|
||||
bossTest: string;
|
||||
cursedAssault: string;
|
||||
followerBully: string;
|
||||
followerGluharAssault: string;
|
||||
followerGluharScout: string;
|
||||
followerGluharSecurity: string;
|
||||
followerGluharSnipe: string;
|
||||
followerKojaniy: string;
|
||||
followerSanitar: string;
|
||||
followerTagilla: string;
|
||||
followerTest: string;
|
||||
marksman: string;
|
||||
pmcBot: string;
|
||||
sectantPriest: string;
|
||||
sectantWarrior: string;
|
||||
gifter: string;
|
||||
test: string;
|
||||
exUsec: string;
|
||||
}
|
||||
|
||||
export interface DefaultArmor
|
||||
{
|
||||
maxDelta: string;
|
||||
minDelta: string;
|
||||
}
|
||||
|
||||
export interface PmcArmor
|
||||
{
|
||||
lowestMaxPercent: string;
|
||||
highestMaxPercent: string;
|
||||
maxDelta: string;
|
||||
minDelta: string;
|
||||
}
|
||||
|
||||
export interface Weapon
|
||||
{
|
||||
lowestMax: string;
|
||||
highestMax: string;
|
||||
maxDelta: string;
|
||||
minDelta: string;
|
||||
}
|
||||
|
||||
export interface Bot
|
||||
{
|
||||
armor: DefaultArmor;
|
||||
weapon: Weapon;
|
||||
}
|
||||
|
||||
export interface PMC
|
||||
{
|
||||
armor: PmcArmor;
|
||||
weapon: Weapon;
|
||||
}
|
||||
|
||||
export interface LootNValue
|
||||
{
|
||||
scav: string;
|
||||
pmc: string;
|
||||
}
|
||||
|
||||
export interface Durability
|
||||
{
|
||||
default: Bot;
|
||||
pmc: PMC;
|
||||
boss: Bot;
|
||||
follower: Bot;
|
||||
assault: Bot;
|
||||
cursedassault: Bot;
|
||||
marksman: Bot;
|
||||
pmcbot: Bot;
|
||||
exusec: Bot;
|
||||
sectantpriest: Bot;
|
||||
sectantwarrior: Bot;
|
||||
}
|
||||
|
||||
export interface DynamicLoot
|
||||
{
|
||||
whitelist: string;
|
||||
blacklist: string;
|
||||
spawnLimits: string;
|
||||
moneyStackLimits: string;
|
||||
}
|
||||
|
||||
export interface Types
|
||||
{
|
||||
assault: string;
|
||||
cursedAssault: string;
|
||||
pmcBot: string;
|
||||
exUsec: string;
|
||||
}
|
||||
|
||||
export interface PMCConfig
|
||||
{
|
||||
dynamicLoot: DynamicLoot;
|
||||
cartridgeBlacklist: string;
|
||||
difficulty: string;
|
||||
isUsec: string;
|
||||
chanceSameSideIsHostilePercent: string;
|
||||
usecType: string;
|
||||
bearType: string;
|
||||
maxBackpackLootTotalRub: string;
|
||||
maxPocketLootTotalRub: string;
|
||||
maxVestLootTotalRub: string;
|
||||
types: Types;
|
||||
}
|
||||
|
||||
export interface IPmcLocale
|
||||
{
|
||||
presetBatch: PresetBatch;
|
||||
bosses: string;
|
||||
durability: Durability;
|
||||
lootNValue: LootNValue;
|
||||
pmc: PMCConfig;
|
||||
showTypeInNickname: boolean;
|
||||
maxBotCap: string;
|
||||
}
|
26
Ereshkigal-AkiConfig/dist/package.json
vendored
Normal file
26
Ereshkigal-AkiConfig/dist/package.json
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"name": "AkiConfig",
|
||||
"version": "3.0.0",
|
||||
"main": "src/mod.js",
|
||||
"license": "CC-BY-NC-ND 4.0",
|
||||
"author": "Ereshkigal",
|
||||
"akiVersion": "3.0.0",
|
||||
"updated by": "CWX, Valens, GGaulin",
|
||||
"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"
|
||||
}
|
||||
}
|
58
Ereshkigal-AkiConfig/dist/src/AkiConfigHandler.ts
vendored
Normal file
58
Ereshkigal-AkiConfig/dist/src/AkiConfigHandler.ts
vendored
Normal file
@ -0,0 +1,58 @@
|
||||
import { injectable } from "tsyringe";
|
||||
import { IConfig } from "../models/IConfig";
|
||||
import { IDailyConfig } from "../models/IDailyConfig";
|
||||
import { IPmcConfig } from "../models/IPmcConfig";
|
||||
import { ILocale } from "../models/ILocale";
|
||||
import { IDailyLocale } from "../models/IDailyLocale";
|
||||
import { IPmcLocale } from "../models/IPmcLocale";
|
||||
|
||||
@injectable()
|
||||
export class AkiConfigHandler
|
||||
{
|
||||
private config: IConfig;
|
||||
private dailyConfig: IDailyConfig;
|
||||
private pmcConfig: IPmcConfig;
|
||||
private locales: ILocale;
|
||||
private dailyLocales: IDailyLocale;
|
||||
private pmcLocales: IPmcLocale;
|
||||
|
||||
constructor()
|
||||
{
|
||||
this.config = require("../config/config.json");
|
||||
this.dailyConfig = require("../config/dailyConfig.json");
|
||||
this.pmcConfig = require("../config/pmcConfig.json");
|
||||
this.locales = require("../locale/locale.json");
|
||||
this.dailyLocales = require("../locale/dailyLocale.json");
|
||||
this.pmcLocales = require("../locale/pmcLocale.json");
|
||||
}
|
||||
|
||||
public getConfig(): IConfig
|
||||
{
|
||||
return this.config;
|
||||
}
|
||||
|
||||
public getDailyConfig(): IDailyConfig
|
||||
{
|
||||
return this.dailyConfig;
|
||||
}
|
||||
|
||||
public getPmcConfig(): IPmcConfig
|
||||
{
|
||||
return this.pmcConfig;
|
||||
}
|
||||
|
||||
public getLocales(): ILocale
|
||||
{
|
||||
return this.locales;
|
||||
}
|
||||
|
||||
public getDailyLocales(): IDailyLocale
|
||||
{
|
||||
return this.dailyLocales;
|
||||
}
|
||||
|
||||
public getPmcLocales(): IPmcLocale
|
||||
{
|
||||
return this.pmcLocales;
|
||||
}
|
||||
}
|
50
Ereshkigal-AkiConfig/dist/src/bots.ts
vendored
Normal file
50
Ereshkigal-AkiConfig/dist/src/bots.ts
vendored
Normal file
@ -0,0 +1,50 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IBotConfig } from "@spt-aki/models/spt/config/IBotConfig";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Bots
|
||||
{
|
||||
constructor(
|
||||
@inject("AkiConfigHandler") protected configHandler: AkiConfigHandler,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
public applyChanges(): void
|
||||
{
|
||||
const pmcConfig = this.configHandler.getPmcConfig();
|
||||
const bots = this.configServer.getConfig<IBotConfig>(ConfigTypes.BOT);
|
||||
|
||||
for (const bot in pmcConfig.pmc.types)
|
||||
{
|
||||
switch (bot)
|
||||
{
|
||||
default:
|
||||
bots.pmc.types[bot] = pmcConfig.pmc.types[bot];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for (const options in pmcConfig.pmc)
|
||||
{
|
||||
switch (options)
|
||||
{
|
||||
case "types":
|
||||
break;
|
||||
default:
|
||||
bots.pmc[options] = pmcConfig.pmc[options];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
for (const bot in pmcConfig.presetBatch)
|
||||
{
|
||||
bots.presetBatch[bot] = pmcConfig.presetBatch[bot];
|
||||
}
|
||||
}
|
||||
}
|
240
Ereshkigal-AkiConfig/dist/src/generator.ts
vendored
Normal file
240
Ereshkigal-AkiConfig/dist/src/generator.ts
vendored
Normal file
@ -0,0 +1,240 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IBotConfig } from "@spt-aki/models/spt/config/IBotConfig";
|
||||
import { IHealthConfig } from "@spt-aki/models/spt/config/IHealthConfig";
|
||||
import { IHideoutConfig } from "@spt-aki/models/spt/config/IHideoutConfig";
|
||||
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
|
||||
import { IInRaidConfig } from "@spt-aki/models/spt/config/IInRaidConfig";
|
||||
import { IInsuranceConfig } from "@spt-aki/models/spt/config/IInsuranceConfig";
|
||||
import { IInventoryConfig } from "@spt-aki/models/spt/config/IInventoryConfig";
|
||||
import { ILocationConfig } from "@spt-aki/models/spt/config/ILocationConfig";
|
||||
import { IQuestConfig } from "@spt-aki/models/spt/config/IQuestConfig";
|
||||
import { IRagfairConfig } from "@spt-aki/models/spt/config/IRagfairConfig";
|
||||
import { IRepairConfig } from "@spt-aki/models/spt/config/IRepairConfig";
|
||||
import { ITraderConfig } from "@spt-aki/models/spt/config/ITraderConfig";
|
||||
import { IWeatherConfig } from "@spt-aki/models/spt/config/IWeatherConfig";
|
||||
import { IAirdropConfig } from "@spt-aki/models/spt/config/IAirdropConfig";
|
||||
import { VFS } from "@spt-aki/utils/VFS";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { JsonUtil } from "@spt-aki/utils/JsonUtil";
|
||||
|
||||
@injectable()
|
||||
export class Generator
|
||||
{
|
||||
private pkg = require("../package.json");
|
||||
|
||||
constructor(
|
||||
@inject("VFS") protected vfs: VFS,
|
||||
@inject("JsonUtil") protected jsonUtil: JsonUtil,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
private createConfig(modPath: string, file: string): void
|
||||
{
|
||||
let config = null;
|
||||
let dailyConfig = null;
|
||||
let pmcConfig = null;
|
||||
/*
|
||||
Generate the whole configuration on first run
|
||||
This way the default values are always up to date to AKI.
|
||||
*/
|
||||
|
||||
//The default file type must be an object
|
||||
config = {
|
||||
"Server values": {
|
||||
//"Enable Christmas Gifts": false,
|
||||
"HTTP": {},
|
||||
"Health": {},
|
||||
"Hideout": {}
|
||||
},
|
||||
"Raids values": {
|
||||
"Loot values": {},
|
||||
"Airdrop values": {}
|
||||
},
|
||||
"Traders values": {
|
||||
"Traders": {},
|
||||
"Repair": {},
|
||||
"Insurances": {},
|
||||
"Trading": {}
|
||||
},
|
||||
"FleaMarket configuration": {},
|
||||
"Weather values": {}
|
||||
};
|
||||
dailyConfig = {};
|
||||
pmcConfig = {};
|
||||
|
||||
//We will have to gather every config that exists atm and throw them together into the object
|
||||
const bots = this.configServer.getConfig<IBotConfig>(ConfigTypes.BOT);
|
||||
const health = this.configServer.getConfig<IHealthConfig>(ConfigTypes.HEALTH);
|
||||
const hideout = this.configServer.getConfig<IHideoutConfig>(ConfigTypes.HIDEOUT);
|
||||
const http = this.configServer.getConfig<IHttpConfig>(ConfigTypes.HTTP);
|
||||
const inraid = this.configServer.getConfig<IInRaidConfig>(ConfigTypes.IN_RAID);
|
||||
const insurance = this.configServer.getConfig<IInsuranceConfig>(ConfigTypes.INSURANCE);
|
||||
const inventory = this.configServer.getConfig<IInventoryConfig>(ConfigTypes.INVENTORY);
|
||||
const location = this.configServer.getConfig<ILocationConfig>(ConfigTypes.LOCATION);
|
||||
const quest = this.configServer.getConfig<IQuestConfig>(ConfigTypes.QUEST);
|
||||
const ragfair = this.configServer.getConfig<IRagfairConfig>(ConfigTypes.RAGFAIR);
|
||||
const repair = this.configServer.getConfig<IRepairConfig>(ConfigTypes.REPAIR);
|
||||
const trader = this.configServer.getConfig<ITraderConfig>(ConfigTypes.TRADER);
|
||||
const weather = this.configServer.getConfig<IWeatherConfig>(ConfigTypes.WEATHER);
|
||||
const airdrops = this.configServer.getConfig<IAirdropConfig>(ConfigTypes.AIRDROP);
|
||||
|
||||
//Sorting the http values
|
||||
Object.assign(config["Server values"]["HTTP"], http);
|
||||
|
||||
//Sorting the health config
|
||||
Object.assign(config["Server values"]["Health"], health);
|
||||
|
||||
//Sorting the hideout values
|
||||
Object.assign(config["Server values"]["Hideout"], hideout);
|
||||
|
||||
//Sorting the inraid values
|
||||
Object.assign(config["Raids values"], inraid);
|
||||
|
||||
//Sorting location values
|
||||
Object.assign(config["Raids values"]["Loot values"], location);
|
||||
|
||||
//Sorting airdrop values
|
||||
//Object.assign(config["Raids values"]["Airdrop values"], airdrops)
|
||||
|
||||
//Sorting trader values
|
||||
Object.assign(config["Traders values"]["Traders"], trader);
|
||||
|
||||
//Sorting repair values
|
||||
Object.assign(config["Traders values"]["Repair"], repair);
|
||||
|
||||
//Sorting insurance values
|
||||
Object.assign(config["Traders values"]["Insurances"], insurance);
|
||||
|
||||
//Sorting inventory values
|
||||
Object.assign(config["Traders values"]["Trading"], inventory);
|
||||
|
||||
//Sorting quest values
|
||||
Object.assign(dailyConfig, quest);
|
||||
|
||||
//Sorting the bots config now
|
||||
Object.assign(pmcConfig, bots);
|
||||
|
||||
//Sorting ragfair values
|
||||
Object.assign(config["FleaMarket configuration"], ragfair);
|
||||
|
||||
//Weather values
|
||||
Object.assign(config["Weather values"], weather);
|
||||
|
||||
//Some personnal changes for end-user
|
||||
config["FleaMarket configuration"].traders = {
|
||||
EnablePraporOffers: true,
|
||||
EnableTheRapistOffers: true,
|
||||
EnableFenceOffers: false,
|
||||
EnableSkierOffers: true,
|
||||
EnablePeacekeeperOffers: true,
|
||||
EnableMechanicOffers: true,
|
||||
EnableRagmanOffers: true,
|
||||
EnableJaegerOffers: true,
|
||||
EnableAllAvailableOffers: false,
|
||||
};
|
||||
|
||||
if (file === null) {
|
||||
//Write the config in the folder
|
||||
this.vfs.writeFile(
|
||||
`${modPath}config/config.json`,
|
||||
this.jsonUtil.serialize(config, true)
|
||||
);
|
||||
this.vfs.writeFile(
|
||||
`${modPath}config/dailyConfig.json`,
|
||||
this.jsonUtil.serialize(dailyConfig, true)
|
||||
);
|
||||
this.vfs.writeFile(
|
||||
`${modPath}config/pmcConfig.json`,
|
||||
this.jsonUtil.serialize(pmcConfig, true)
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
this.logger.warning(`[AKI-CONFIG] - Generating ${file} file`)
|
||||
let toWrite = null
|
||||
if (file === "config")
|
||||
{
|
||||
toWrite = config
|
||||
}
|
||||
else if (file === 'dailyConfig')
|
||||
{
|
||||
toWrite = dailyConfig
|
||||
}
|
||||
else if (file === 'pmcConfig')
|
||||
{
|
||||
toWrite = pmcConfig
|
||||
}
|
||||
this.vfs.writeFile(
|
||||
`${modPath}config/${file}.json`,
|
||||
this.jsonUtil.serialize(toWrite, true)
|
||||
);
|
||||
}
|
||||
this.logger.error("[AKI-Config]: New configuration file created, please restart your server to use it.");
|
||||
}
|
||||
|
||||
public checkConfigExisting(modPath: string): void
|
||||
{
|
||||
const validation = [];
|
||||
|
||||
//Check if config folder exists
|
||||
if (this.vfs.exists(`${modPath}config`))
|
||||
{
|
||||
//Check if all the config folder exists
|
||||
const fileList = this.vfs.getFiles(`${modPath}config/`);
|
||||
for (const file in fileList)
|
||||
{
|
||||
const fileName = fileList[file];
|
||||
if (fileName === "config.json")
|
||||
{
|
||||
validation.push("config");
|
||||
}
|
||||
if (fileName === "dailyConfig.json")
|
||||
{
|
||||
validation.push("dailyConfig");
|
||||
}
|
||||
if (fileName === "pmcConfig.json")
|
||||
{
|
||||
validation.push("pmcConfig");
|
||||
}
|
||||
}
|
||||
//All configurations files existing
|
||||
if ((validation.length === 3))
|
||||
{
|
||||
this.logger.success(
|
||||
"[AKI-CONFIG] - All configurations files already created, all green."
|
||||
);
|
||||
}
|
||||
else
|
||||
{
|
||||
//One of the 3 file is missing, we only want to regenerate the missing one
|
||||
this.logger.error(
|
||||
"[AKI-CONFIG] - A config file is missing. Generating the missing file"
|
||||
);
|
||||
|
||||
if (!validation.includes("config"))
|
||||
{
|
||||
this.createConfig(modPath, "config");
|
||||
}
|
||||
if (!validation.includes("dailyConfig"))
|
||||
{
|
||||
this.createConfig(modPath, "dailyConfig");
|
||||
}
|
||||
if (!validation.includes("pmcConfig"))
|
||||
{
|
||||
this.createConfig(modPath, "pmcConfig");
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this.logger.warning(
|
||||
"First time AKI-Configurator is run, generating the config file..."
|
||||
);
|
||||
this.createConfig(modPath, null);
|
||||
}
|
||||
}
|
||||
}
|
61
Ereshkigal-AkiConfig/dist/src/mod.ts
vendored
Normal file
61
Ereshkigal-AkiConfig/dist/src/mod.ts
vendored
Normal file
@ -0,0 +1,61 @@
|
||||
import { DependencyContainer, Lifecycle } from "tsyringe";
|
||||
import type { IMod } from "@spt-aki/models/external/mod";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { InitialModLoader } from "@spt-aki/loaders/InitialModLoader";
|
||||
import { Generator } from "./generator";
|
||||
import { Ragfair } from "./ragfair";
|
||||
import { Weather } from "./weather";
|
||||
import { Bots } from "./bots";
|
||||
import { Raids } from "./raids";
|
||||
import { Server } from "./server";
|
||||
import { Traders } from "./traders";
|
||||
import { Quests } from "./quests";
|
||||
import { Notifications } from "./notifications";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
class AkiConfig implements IMod
|
||||
{
|
||||
private logger: ILogger;
|
||||
private pkg;
|
||||
|
||||
public load(container: DependencyContainer): void
|
||||
{
|
||||
container.register<AkiConfigHandler>("AkiConfigHandler", AkiConfigHandler, {lifecycle:Lifecycle.Singleton});
|
||||
container.register<Generator>("Generator", Generator);
|
||||
container.register<Ragfair>("Ragfair", Ragfair);
|
||||
container.register<Weather>("Weather", Weather);
|
||||
container.register<Bots>("Bots", Bots);
|
||||
container.register<Raids>("Raids", Raids);
|
||||
container.register<Server>("Server", Server);
|
||||
container.register<Traders>("Traders", Traders);
|
||||
container.register<Quests>("Quests", Quests);
|
||||
container.register<Notifications>("Notifications", Notifications);
|
||||
|
||||
this.logger = container.resolve<ILogger>("WinstonLogger");
|
||||
|
||||
this.pkg = require("../package.json");
|
||||
this.logger.info(`Loading: ${this.pkg.name} ${this.pkg.version}`);
|
||||
}
|
||||
|
||||
public delayedLoad(container: DependencyContainer): void
|
||||
{
|
||||
const initialModLoader = container.resolve<InitialModLoader>("InitialModLoader");
|
||||
const modPath = `./${initialModLoader.getModPath(this.pkg.name)}`;
|
||||
|
||||
container.resolve<Generator>("Generator").checkConfigExisting(modPath);
|
||||
container.resolve<Ragfair>("Ragfair").applyChanges();
|
||||
container.resolve<Weather>("Weather").applyChanges();
|
||||
container.resolve<Bots>("Bots").applyChanges();
|
||||
container.resolve<Raids>("Raids").applyChanges();
|
||||
container.resolve<Server>("Server").applyChanges();
|
||||
container.resolve<Traders>("Traders").applyChanges();
|
||||
container.resolve<Quests>("Quests").applyChanges();
|
||||
|
||||
if (container.resolve<AkiConfigHandler>("AkiConfigHandler").getConfig().other.showModLogs)
|
||||
{
|
||||
container.resolve<Notifications>("Notifications").sendNotifications()
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
module.exports = { mod: new AkiConfig() };
|
28
Ereshkigal-AkiConfig/dist/src/notifications.ts
vendored
Normal file
28
Ereshkigal-AkiConfig/dist/src/notifications.ts
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Notifications
|
||||
{
|
||||
constructor(
|
||||
@inject("WinstonLogger") private logger: ILogger,
|
||||
@inject("AkiConfigHandler") private configHandler: AkiConfigHandler
|
||||
)
|
||||
{}
|
||||
|
||||
public sendNotifications(): void
|
||||
{
|
||||
const config = this.configHandler.getConfig();
|
||||
const locale = this.configHandler.getLocales();
|
||||
|
||||
if (!config.other.hideWarningMessage)
|
||||
{
|
||||
this.logger.log("[AIO Config INFORMATION]", "yellow");
|
||||
this.logger.info("Please read the AKICONFIG README.pdf carefully as this has all the information you need.");
|
||||
this.logger.log("[AIO Config INFORMATION]", "yellow");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
26
Ereshkigal-AkiConfig/dist/src/quests.ts
vendored
Normal file
26
Ereshkigal-AkiConfig/dist/src/quests.ts
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IQuestConfig } from "@spt-aki/models/spt/config/IQuestConfig";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Quests
|
||||
{
|
||||
constructor(
|
||||
@inject("AkiConfigHandler") protected configHandler: AkiConfigHandler,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
public applyChanges(): void
|
||||
{
|
||||
const dailyConfig = this.configHandler.getDailyConfig();
|
||||
const questConfig = this.configServer.getConfig<IQuestConfig>(ConfigTypes.QUEST);
|
||||
|
||||
questConfig.redeemTime = dailyConfig.redeemTime;
|
||||
questConfig.repeatableQuests = dailyConfig.repeatableQuests;
|
||||
}
|
||||
}
|
72
Ereshkigal-AkiConfig/dist/src/ragfair.ts
vendored
Normal file
72
Ereshkigal-AkiConfig/dist/src/ragfair.ts
vendored
Normal file
@ -0,0 +1,72 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IRagfairConfig } from "@spt-aki/models/spt/config/IRagfairConfig";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { Traders } from "@spt-aki/models/enums/Traders";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Ragfair
|
||||
{
|
||||
constructor(
|
||||
@inject("AkiConfigHandler") protected configHandler: AkiConfigHandler,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
public applyChanges(): void
|
||||
{
|
||||
const config = this.configHandler.getConfig();
|
||||
const ragfair = this.configServer.getConfig<IRagfairConfig>(ConfigTypes.RAGFAIR);
|
||||
|
||||
for (const options in ragfair.sell)
|
||||
{
|
||||
ragfair.sell[options] = config["FleaMarket configuration"].sell[options];
|
||||
}
|
||||
|
||||
for (const options in ragfair.dynamic)
|
||||
{
|
||||
ragfair.dynamic[options] = config["FleaMarket configuration"].dynamic[options];
|
||||
}
|
||||
|
||||
const traderList = config["FleaMarket configuration"].traders;
|
||||
for (const trader in config["FleaMarket configuration"].traders)
|
||||
{
|
||||
switch (trader)
|
||||
{
|
||||
case "EnablePraporOffers":
|
||||
ragfair.traders[Traders.PRAPOR] = traderList.EnablePraporOffers;
|
||||
break;
|
||||
case "EnableTheRapistOffers":
|
||||
ragfair.traders[Traders.THERAPIST] = traderList.EnableTheRapistOffers;
|
||||
break;
|
||||
case "EnableFenceOffers":
|
||||
ragfair.traders[Traders.FENCE] = traderList.EnableFenceOffers;
|
||||
break;
|
||||
case "EnableSkierOffers":
|
||||
ragfair.traders[Traders.SKIER] = traderList.EnableSkierOffers;
|
||||
break;
|
||||
case "EnablePeacekeeperOffers":
|
||||
ragfair.traders[Traders.PEACEKEEPER] = traderList.EnablePeacekeeperOffers;
|
||||
break;
|
||||
case "EnableMechanicOffers":
|
||||
ragfair.traders[Traders.MECHANIC] = traderList.EnableMechanicOffers;
|
||||
break;
|
||||
case "EnableRagmanOffers":
|
||||
ragfair.traders[Traders.RAGMAN] = traderList.EnableRagmanOffers;
|
||||
break;
|
||||
case "EnableJaegerOffers":
|
||||
ragfair.traders[Traders.JAEGER] = traderList.EnableJaegerOffers;
|
||||
break;
|
||||
case "EnableAllAvailableOffers":
|
||||
ragfair.traders["ragfair"] = traderList.EnableAllAvailableOffers;
|
||||
break;
|
||||
default:
|
||||
ragfair.traders[trader] = traderList[trader];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
40
Ereshkigal-AkiConfig/dist/src/raids.ts
vendored
Normal file
40
Ereshkigal-AkiConfig/dist/src/raids.ts
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IInRaidConfig } from "@spt-aki/models/spt/config/IInRaidConfig";
|
||||
import { ILocationConfig } from "@spt-aki/models/spt/config/ILocationConfig";
|
||||
import { IAirdropConfig } from "@spt-aki/models/spt/config/IAirdropConfig";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Raids
|
||||
{
|
||||
constructor(
|
||||
@inject("AkiConfigHandler") protected configHandler: AkiConfigHandler,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
public applyChanges(): void
|
||||
{
|
||||
const config = this.configHandler.getConfig();
|
||||
const locationConfig = this.configServer.getConfig<ILocationConfig>(ConfigTypes.LOCATION);
|
||||
const airdropConfig = this.configServer.getConfig<IAirdropConfig>(ConfigTypes.AIRDROP);
|
||||
const inRaidConfig = this.configServer.getConfig<IInRaidConfig>(ConfigTypes.IN_RAID);
|
||||
|
||||
locationConfig.looseLootMultiplier = config["Raids values"]["Loot values"].looseLootMultiplier;
|
||||
locationConfig.staticLootMultiplier = config["Raids values"]["Loot values"].staticLootMultiplier;
|
||||
|
||||
for (const options in airdropConfig)
|
||||
{
|
||||
airdropConfig[options] = config["Raids values"]["Airdrop values"][options];
|
||||
}
|
||||
|
||||
for (const options in inRaidConfig)
|
||||
{
|
||||
inRaidConfig[options] = config["Raids values"][options];
|
||||
}
|
||||
}
|
||||
}
|
37
Ereshkigal-AkiConfig/dist/src/server.ts
vendored
Normal file
37
Ereshkigal-AkiConfig/dist/src/server.ts
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IHealthConfig } from "@spt-aki/models/spt/config/IHealthConfig";
|
||||
import { IHideoutConfig } from "@spt-aki/models/spt/config/IHideoutConfig";
|
||||
import { IHttpConfig } from "@spt-aki/models/spt/config/IHttpConfig";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Server
|
||||
{
|
||||
constructor(
|
||||
@inject("AkiConfigHandler") protected configHandler: AkiConfigHandler,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
public applyChanges(): void
|
||||
{
|
||||
const config = this.configHandler.getConfig();
|
||||
const serverConfig = this.configServer.getConfig<IHttpConfig>(ConfigTypes.HTTP);
|
||||
const healthConfig = this.configServer.getConfig<IHealthConfig>(ConfigTypes.HEALTH);
|
||||
const hideoutConfig = this.configServer.getConfig<IHideoutConfig>(ConfigTypes.HIDEOUT);
|
||||
|
||||
serverConfig.ip = config["Server values"].HTTP.ip;
|
||||
serverConfig.port = config["Server values"].HTTP.port;
|
||||
|
||||
healthConfig.healthMultipliers = config["Server values"].Health.healthMultipliers;
|
||||
healthConfig.save = config["Server values"].Health.save;
|
||||
|
||||
hideoutConfig.runIntervalSeconds = config["Server values"].Hideout.runIntervalSeconds;
|
||||
hideoutConfig.scavCase = config["Server values"].Hideout.scavCase;
|
||||
hideoutConfig.fuelDrainRateMultipler = config["Server values"].Hideout.fuelDrainRateMultipler;
|
||||
}
|
||||
}
|
49
Ereshkigal-AkiConfig/dist/src/traders.ts
vendored
Normal file
49
Ereshkigal-AkiConfig/dist/src/traders.ts
vendored
Normal file
@ -0,0 +1,49 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IInsuranceConfig } from "@spt-aki/models/spt/config/IInsuranceConfig";
|
||||
import { IInventoryConfig } from "@spt-aki/models/spt/config/IInventoryConfig";
|
||||
import { IRepairConfig } from "@spt-aki/models/spt/config/IRepairConfig";
|
||||
import { ITraderConfig } from "@spt-aki/models/spt/config/ITraderConfig";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Traders
|
||||
{
|
||||
constructor(
|
||||
@inject("AkiConfigHandler") protected configHandler: AkiConfigHandler,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
public applyChanges(): void
|
||||
{
|
||||
const config = this.configHandler.getConfig();
|
||||
const insurance = this.configServer.getConfig<IInsuranceConfig>(ConfigTypes.INSURANCE);
|
||||
const inventory = this.configServer.getConfig<IInventoryConfig>(ConfigTypes.INVENTORY);
|
||||
const repair = this.configServer.getConfig<IRepairConfig>(ConfigTypes.REPAIR);
|
||||
const trader = this.configServer.getConfig<ITraderConfig>(ConfigTypes.TRADER);
|
||||
|
||||
for (const options in insurance)
|
||||
{
|
||||
insurance[options] = config["Traders values"].Insurances[options];
|
||||
}
|
||||
|
||||
for (const options in inventory)
|
||||
{
|
||||
inventory[options] = config["Traders values"].Trading[options];
|
||||
}
|
||||
|
||||
for (const options in repair)
|
||||
{
|
||||
repair[options] = config["Traders values"].Repair[options];
|
||||
}
|
||||
|
||||
for (const options in trader)
|
||||
{
|
||||
trader[options] = config["Traders values"].Traders[options];
|
||||
}
|
||||
}
|
||||
}
|
43
Ereshkigal-AkiConfig/dist/src/weather.ts
vendored
Normal file
43
Ereshkigal-AkiConfig/dist/src/weather.ts
vendored
Normal file
@ -0,0 +1,43 @@
|
||||
import { inject, injectable } from "tsyringe";
|
||||
import type { ILogger } from "@spt-aki/models/spt/utils/ILogger";
|
||||
import { IWeatherConfig } from "@spt-aki/models/spt/config/IWeatherConfig";
|
||||
import { ConfigServer } from "@spt-aki/servers/ConfigServer";
|
||||
import { ConfigTypes } from "@spt-aki/models/enums/ConfigTypes";
|
||||
import { AkiConfigHandler } from "./AkiConfigHandler";
|
||||
|
||||
@injectable()
|
||||
export class Weather
|
||||
{
|
||||
constructor(
|
||||
@inject("AkiConfigHandler") protected configHandler: AkiConfigHandler,
|
||||
@inject("ConfigServer") protected configServer: ConfigServer,
|
||||
@inject("WinstonLogger") private logger: ILogger
|
||||
)
|
||||
{}
|
||||
|
||||
public applyChanges(): void
|
||||
{
|
||||
const config = this.configHandler.getConfig();
|
||||
const weatherValues = this.configServer.getConfig<IWeatherConfig>(ConfigTypes.WEATHER);
|
||||
|
||||
weatherValues.acceleration = config["Weather values"].acceleration;
|
||||
weatherValues.weather.clouds.min = config["Weather values"].weather.clouds.min;
|
||||
weatherValues.weather.clouds.max = config["Weather values"].weather.clouds.max;
|
||||
weatherValues.weather.windSpeed.min = config["Weather values"].weather.windSpeed.min;
|
||||
weatherValues.weather.windSpeed.max = config["Weather values"].weather.windSpeed.max;
|
||||
weatherValues.weather.windDirection.min = config["Weather values"].weather.windDirection.min;
|
||||
weatherValues.weather.windDirection.max = config["Weather values"].weather.windDirection.max;
|
||||
weatherValues.weather.windGustiness.min = config["Weather values"].weather.windGustiness.min;
|
||||
weatherValues.weather.windGustiness.max = config["Weather values"].weather.windGustiness.max;
|
||||
weatherValues.weather.rain.min = config["Weather values"].weather.rain.min;
|
||||
weatherValues.weather.rain.max = config["Weather values"].weather.rain.max;
|
||||
weatherValues.weather.rainIntensity.min = config["Weather values"].weather.rainIntensity.min;
|
||||
weatherValues.weather.rainIntensity.max = config["Weather values"].weather.rainIntensity.max;
|
||||
weatherValues.weather.fog.min = config["Weather values"].weather.fog.min;
|
||||
weatherValues.weather.fog.max = config["Weather values"].weather.fog.max;
|
||||
weatherValues.weather.temp.min = config["Weather values"].weather.temp.min;
|
||||
weatherValues.weather.temp.max = config["Weather values"].weather.temp.max;
|
||||
weatherValues.weather.pressure.min = config["Weather values"].weather.pressure.min;
|
||||
weatherValues.weather.pressure.max = config["Weather values"].weather.pressure.max;
|
||||
}
|
||||
}
|
4
Ereshkigal-AkiConfig/dist/types/Program.d.ts
vendored
Normal file
4
Ereshkigal-AkiConfig/dist/types/Program.d.ts
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
export declare class Program {
|
||||
constructor();
|
||||
start(): void;
|
||||
}
|
3
Ereshkigal-AkiConfig/dist/types/TYPES.d.ts
vendored
Normal file
3
Ereshkigal-AkiConfig/dist/types/TYPES.d.ts
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
export declare const TYPES: {
|
||||
[name: string]: symbol;
|
||||
};
|
15
Ereshkigal-AkiConfig/dist/types/callbacks/BotCallbacks.d.ts
vendored
Normal file
15
Ereshkigal-AkiConfig/dist/types/callbacks/BotCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
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 {
|
||||
protected botController: BotController;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
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;
|
||||
}
|
18
Ereshkigal-AkiConfig/dist/types/callbacks/BundleCallbacks.d.ts
vendored
Normal file
18
Ereshkigal-AkiConfig/dist/types/callbacks/BundleCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
import { BundleLoader } from "../loaders/BundleLoader";
|
||||
import { IHttpConfig } from "../models/spt/config/IHttpConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected httpServer: IHttpServer;
|
||||
protected bundleLoader: BundleLoader;
|
||||
protected configServer: ConfigServer;
|
||||
protected httpConfig: IHttpConfig;
|
||||
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;
|
||||
}
|
23
Ereshkigal-AkiConfig/dist/types/callbacks/CustomizationCallbacks.d.ts
vendored
Normal file
23
Ereshkigal-AkiConfig/dist/types/callbacks/CustomizationCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
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 {
|
||||
protected customizationController: CustomizationController;
|
||||
protected saveServer: SaveServer;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
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;
|
||||
}
|
32
Ereshkigal-AkiConfig/dist/types/callbacks/DataCallbacks.d.ts
vendored
Normal file
32
Ereshkigal-AkiConfig/dist/types/callbacks/DataCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,32 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected databaseServer: 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;
|
||||
}
|
45
Ereshkigal-AkiConfig/dist/types/callbacks/DialogueCallbacks.d.ts
vendored
Normal file
45
Ereshkigal-AkiConfig/dist/types/callbacks/DialogueCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,45 @@
|
||||
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 {
|
||||
protected hashUtil: HashUtil;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected dialogueController: 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;
|
||||
}
|
24
Ereshkigal-AkiConfig/dist/types/callbacks/GameCallbacks.d.ts
vendored
Normal file
24
Ereshkigal-AkiConfig/dist/types/callbacks/GameCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected watermark: Watermark;
|
||||
protected gameController: 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 };
|
8
Ereshkigal-AkiConfig/dist/types/callbacks/HandbookCallbacks.d.ts
vendored
Normal file
8
Ereshkigal-AkiConfig/dist/types/callbacks/HandbookCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
import { HandbookController } from "../controllers/HandbookController";
|
||||
import { OnLoad } from "../di/OnLoad";
|
||||
export declare class HandbookCallbacks extends OnLoad {
|
||||
protected handbookController: HandbookController;
|
||||
constructor(handbookController: HandbookController);
|
||||
onLoad(): void;
|
||||
getRoute(): string;
|
||||
}
|
20
Ereshkigal-AkiConfig/dist/types/callbacks/HealthCallbacks.d.ts
vendored
Normal file
20
Ereshkigal-AkiConfig/dist/types/callbacks/HealthCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,20 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected healthController: 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;
|
||||
}
|
33
Ereshkigal-AkiConfig/dist/types/callbacks/HideoutCallbacks.d.ts
vendored
Normal file
33
Ereshkigal-AkiConfig/dist/types/callbacks/HideoutCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
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 { IHideoutConfig } from "../models/spt/config/IHideoutConfig";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
export declare class HideoutCallbacks extends OnUpdate {
|
||||
protected hideoutController: HideoutController;
|
||||
protected configServer: ConfigServer;
|
||||
protected hideoutConfig: IHideoutConfig;
|
||||
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;
|
||||
}
|
9
Ereshkigal-AkiConfig/dist/types/callbacks/HttpCallbacks.d.ts
vendored
Normal file
9
Ereshkigal-AkiConfig/dist/types/callbacks/HttpCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
import { OnLoad } from "../di/OnLoad";
|
||||
import { IHttpServer } from "../models/spt/server/IHttpServer";
|
||||
export declare class HttpCallbacks extends OnLoad {
|
||||
protected httpServer: IHttpServer;
|
||||
constructor(httpServer: IHttpServer);
|
||||
onLoad(): void;
|
||||
getRoute(): string;
|
||||
getImage(): string;
|
||||
}
|
23
Ereshkigal-AkiConfig/dist/types/callbacks/InraidCallbacks.d.ts
vendored
Normal file
23
Ereshkigal-AkiConfig/dist/types/callbacks/InraidCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,23 @@
|
||||
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 { IAirdropConfig } from "../models/spt/config/IAirdropConfig";
|
||||
import { IInRaidConfig } from "../models/spt/config/IInRaidConfig";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
||||
export declare class InraidCallbacks {
|
||||
protected inraidController: InraidController;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected configServer: ConfigServer;
|
||||
protected airdropConfig: IAirdropConfig;
|
||||
protected inraidConfig: IInRaidConfig;
|
||||
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;
|
||||
}
|
24
Ereshkigal-AkiConfig/dist/types/callbacks/InsuranceCallbacks.d.ts
vendored
Normal file
24
Ereshkigal-AkiConfig/dist/types/callbacks/InsuranceCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
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 { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { InsuranceService } from "../services/InsuranceService";
|
||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
||||
export declare class InsuranceCallbacks extends OnLoadOnUpdate {
|
||||
protected insuranceController: InsuranceController;
|
||||
protected insuranceService: InsuranceService;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected configServer: ConfigServer;
|
||||
protected insuranceConfig: IInsuranceConfig;
|
||||
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;
|
||||
}
|
39
Ereshkigal-AkiConfig/dist/types/callbacks/InventoryCallbacks.d.ts
vendored
Normal file
39
Ereshkigal-AkiConfig/dist/types/callbacks/InventoryCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
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 {
|
||||
protected inventoryController: 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;
|
||||
}
|
11
Ereshkigal-AkiConfig/dist/types/callbacks/ItemEventCallbacks.d.ts
vendored
Normal file
11
Ereshkigal-AkiConfig/dist/types/callbacks/ItemEventCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
constructor(httpResponse: HttpResponseUtil, itemEventRouter: ItemEventRouter);
|
||||
handleEvents(url: string, info: IItemEventRouterRequest, sessionID: string): IGetBodyResponseData<IItemEventRouterResponse>;
|
||||
}
|
28
Ereshkigal-AkiConfig/dist/types/callbacks/LauncherCallbacks.d.ts
vendored
Normal file
28
Ereshkigal-AkiConfig/dist/types/callbacks/LauncherCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected launcherController: LauncherController;
|
||||
protected saveServer: SaveServer;
|
||||
protected watermark: 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 };
|
14
Ereshkigal-AkiConfig/dist/types/callbacks/LocationCallbacks.d.ts
vendored
Normal file
14
Ereshkigal-AkiConfig/dist/types/callbacks/LocationCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected locationController: LocationController;
|
||||
constructor(httpResponse: HttpResponseUtil, locationController: LocationController);
|
||||
getLocationData(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<ILocationsGenerateAllResponse>;
|
||||
getLocation(url: string, info: IGetLocationRequestData, sessionID: string): IGetBodyResponseData<ILocationBase>;
|
||||
}
|
35
Ereshkigal-AkiConfig/dist/types/callbacks/MatchCallbacks.d.ts
vendored
Normal file
35
Ereshkigal-AkiConfig/dist/types/callbacks/MatchCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected matchController: MatchController;
|
||||
protected databaseServer: 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;
|
||||
}
|
22
Ereshkigal-AkiConfig/dist/types/callbacks/ModCallbacks.d.ts
vendored
Normal file
22
Ereshkigal-AkiConfig/dist/types/callbacks/ModCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
import { OnLoad } from "../di/OnLoad";
|
||||
import { DelayedModLoader } from "../loaders/DelayedModLoader";
|
||||
import { IHttpConfig } from "../models/spt/config/IHttpConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected httpServer: IHttpServer;
|
||||
protected modLoader: DelayedModLoader;
|
||||
protected configServer: ConfigServer;
|
||||
protected httpConfig: IHttpConfig;
|
||||
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 };
|
11
Ereshkigal-AkiConfig/dist/types/callbacks/NoteCallbacks.d.ts
vendored
Normal file
11
Ereshkigal-AkiConfig/dist/types/callbacks/NoteCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
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 {
|
||||
protected noteController: 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;
|
||||
}
|
24
Ereshkigal-AkiConfig/dist/types/callbacks/NotifierCallbacks.d.ts
vendored
Normal file
24
Ereshkigal-AkiConfig/dist/types/callbacks/NotifierCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
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 {
|
||||
protected httpServerHelper: HttpServerHelper;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected notifierController: 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;
|
||||
}
|
15
Ereshkigal-AkiConfig/dist/types/callbacks/PresetBuildCallbacks.d.ts
vendored
Normal file
15
Ereshkigal-AkiConfig/dist/types/callbacks/PresetBuildCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected presetBuildController: 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;
|
||||
}
|
8
Ereshkigal-AkiConfig/dist/types/callbacks/PresetCallbacks.d.ts
vendored
Normal file
8
Ereshkigal-AkiConfig/dist/types/callbacks/PresetCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
import { PresetController } from "../controllers/PresetController";
|
||||
import { OnLoad } from "../di/OnLoad";
|
||||
export declare class PresetCallbacks extends OnLoad {
|
||||
protected presetController: PresetController;
|
||||
constructor(presetController: PresetController);
|
||||
onLoad(): void;
|
||||
getRoute(): string;
|
||||
}
|
30
Ereshkigal-AkiConfig/dist/types/callbacks/ProfileCallbacks.d.ts
vendored
Normal file
30
Ereshkigal-AkiConfig/dist/types/callbacks/ProfileCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected profileController: 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;
|
||||
}
|
26
Ereshkigal-AkiConfig/dist/types/callbacks/QuestCallbacks.d.ts
vendored
Normal file
26
Ereshkigal-AkiConfig/dist/types/callbacks/QuestCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected questController: QuestController;
|
||||
protected repeatableQuestController: 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[]>;
|
||||
}
|
39
Ereshkigal-AkiConfig/dist/types/callbacks/RagfairCallbacks.d.ts
vendored
Normal file
39
Ereshkigal-AkiConfig/dist/types/callbacks/RagfairCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
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 { INullResponseData } from "../models/eft/httpResponse/INullResponseData";
|
||||
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 { IRagfairConfig } from "../models/spt/config/IRagfairConfig";
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected logger: ILogger;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected ragfairServer: RagfairServer;
|
||||
protected ragfairController: RagfairController;
|
||||
protected configServer: ConfigServer;
|
||||
protected ragfairConfig: IRagfairConfig;
|
||||
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;
|
||||
sendReport(url: string, info: any, sessionID: string): INullResponseData;
|
||||
}
|
11
Ereshkigal-AkiConfig/dist/types/callbacks/RepairCallbacks.d.ts
vendored
Normal file
11
Ereshkigal-AkiConfig/dist/types/callbacks/RepairCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
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 {
|
||||
protected repairController: RepairController;
|
||||
constructor(repairController: RepairController);
|
||||
traderRepair(pmcData: IPmcData, body: ITraderRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
||||
repair(pmcData: IPmcData, body: IRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
||||
}
|
9
Ereshkigal-AkiConfig/dist/types/callbacks/SaveCallbacks.d.ts
vendored
Normal file
9
Ereshkigal-AkiConfig/dist/types/callbacks/SaveCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
import { OnLoadOnUpdate } from "../di/OnLoadOnUpdate";
|
||||
import { SaveServer } from "../servers/SaveServer";
|
||||
export declare class SaveCallbacks extends OnLoadOnUpdate {
|
||||
protected saveServer: SaveServer;
|
||||
constructor(saveServer: SaveServer);
|
||||
onLoad(): void;
|
||||
getRoute(): string;
|
||||
onUpdate(secondsSinceLastRun: number): boolean;
|
||||
}
|
11
Ereshkigal-AkiConfig/dist/types/callbacks/TradeCallbacks.d.ts
vendored
Normal file
11
Ereshkigal-AkiConfig/dist/types/callbacks/TradeCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
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 {
|
||||
protected tradeController: TradeController;
|
||||
constructor(tradeController: TradeController);
|
||||
processTrade(pmcData: IPmcData, body: IProcessBaseTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
processRagfairTrade(pmcData: IPmcData, body: IProcessRagfairTradeRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
}
|
18
Ereshkigal-AkiConfig/dist/types/callbacks/TraderCallbacks.d.ts
vendored
Normal file
18
Ereshkigal-AkiConfig/dist/types/callbacks/TraderCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected traderController: 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;
|
||||
}
|
10
Ereshkigal-AkiConfig/dist/types/callbacks/WeatherCallbacks.d.ts
vendored
Normal file
10
Ereshkigal-AkiConfig/dist/types/callbacks/WeatherCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
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 {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected weatherController: WeatherController;
|
||||
constructor(httpResponse: HttpResponseUtil, weatherController: WeatherController);
|
||||
getWeather(url: string, info: IEmptyRequestData, sessionID: string): IGetBodyResponseData<any>;
|
||||
}
|
10
Ereshkigal-AkiConfig/dist/types/callbacks/WishlistCallbacks.d.ts
vendored
Normal file
10
Ereshkigal-AkiConfig/dist/types/callbacks/WishlistCallbacks.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
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 {
|
||||
protected wishlistController: WishlistController;
|
||||
constructor(wishlistController: WishlistController);
|
||||
addToWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||
removeFromWishlist(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||
}
|
35
Ereshkigal-AkiConfig/dist/types/controllers/BotController.d.ts
vendored
Normal file
35
Ereshkigal-AkiConfig/dist/types/controllers/BotController.d.ts
vendored
Normal file
@ -0,0 +1,35 @@
|
||||
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 { IBotConfig } from "../models/spt/config/IBotConfig";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
export declare class BotController {
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected botGenerator: BotGenerator;
|
||||
protected botHelper: BotHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected botConfig: IBotConfig;
|
||||
constructor(databaseServer: DatabaseServer, botGenerator: BotGenerator, botHelper: BotHelper, configServer: ConfigServer);
|
||||
/**
|
||||
* Return the number of bot loadout varieties to be generated
|
||||
* @param type bot Type we want the loadout gen count for
|
||||
* @returns
|
||||
*/
|
||||
getBotPresetGenerationLimit(type: string): number;
|
||||
getBotCoreDifficulty(): IBotCore;
|
||||
/**
|
||||
* Get bot difficulty settings
|
||||
* adjust PMC settings to ensure they engage the correct bot types
|
||||
* @param type what bot the server is requesting settings for
|
||||
* @param difficulty difficulty level server requested settings for
|
||||
* @returns Difficulty object
|
||||
*/
|
||||
getBotDifficulty(type: string, difficulty: string): Difficulty;
|
||||
protected getPmcDifficultySettings(pmcType: "bear" | "usec", difficulty: string): Difficulty;
|
||||
generate(info: IGenerateBotsRequestData, playerScav?: boolean): IBotBase[];
|
||||
getBotCap(): number;
|
||||
}
|
22
Ereshkigal-AkiConfig/dist/types/controllers/CustomizationController.d.ts
vendored
Normal file
22
Ereshkigal-AkiConfig/dist/types/controllers/CustomizationController.d.ts
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
||||
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 { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
||||
import { ILogger } from "../models/spt/utils/ILogger";
|
||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { SaveServer } from "../servers/SaveServer";
|
||||
export declare class CustomizationController {
|
||||
protected logger: ILogger;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected saveServer: SaveServer;
|
||||
protected profileHelper: 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;
|
||||
protected getAllTraderSuits(sessionID: string): ISuit[];
|
||||
}
|
25
Ereshkigal-AkiConfig/dist/types/controllers/DialogueController.d.ts
vendored
Normal file
25
Ereshkigal-AkiConfig/dist/types/controllers/DialogueController.d.ts
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
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, Message } from "../models/eft/profile/IAkiProfile";
|
||||
import { SaveServer } from "../servers/SaveServer";
|
||||
import { HttpResponseUtil } from "../utils/HttpResponseUtil";
|
||||
export declare class DialogueController {
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected saveServer: SaveServer;
|
||||
protected dialogueHelper: 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;
|
||||
protected messagesHaveUncollectedRewards(messages: Message[]): boolean;
|
||||
protected removeExpiredItems(sessionID: string): void;
|
||||
update(): void;
|
||||
}
|
33
Ereshkigal-AkiConfig/dist/types/controllers/GameController.d.ts
vendored
Normal file
33
Ereshkigal-AkiConfig/dist/types/controllers/GameController.d.ts
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
import { GameHelper } from "../helpers/GameHelper";
|
||||
import { HttpServerHelper } from "../helpers/HttpServerHelper";
|
||||
import { ProfileHelper } from "../helpers/ProfileHelper";
|
||||
import { IEmptyRequestData } from "../models/eft/common/IEmptyRequestData";
|
||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||
import { IPmcDataRepeatableQuest, IRepeatableQuest } from "../models/eft/common/tables/IRepeatableQuests";
|
||||
import { IGameConfigResponse } from "../models/eft/game/IGameConfigResponse";
|
||||
import { IAkiProfile } from "../models/eft/profile/IAkiProfile";
|
||||
import { IHttpConfig } from "../models/spt/config/IHttpConfig";
|
||||
import { ILogger } from "../models/spt/utils/ILogger";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { Watermark } from "../utils/Watermark";
|
||||
export declare class GameController {
|
||||
protected logger: ILogger;
|
||||
protected watermark: Watermark;
|
||||
protected httpServerHelper: HttpServerHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected gameHelper: GameHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected httpConfig: IHttpConfig;
|
||||
constructor(logger: ILogger, watermark: Watermark, httpServerHelper: HttpServerHelper, profileHelper: ProfileHelper, gameHelper: GameHelper, configServer: ConfigServer);
|
||||
gameStart(_url: string, _info: IEmptyRequestData, sessionID: string): void;
|
||||
protected addMissingBonusesProperty(pmcProfile: IPmcData): void;
|
||||
protected addMissingRepeatableQuestsProperty(pmcProfile: IPmcData): void;
|
||||
protected addMissingWeaponRepairSkill(pmcProfile: IPmcData): void;
|
||||
protected addMissingAkiVersionTagToProfile(fullProfile: IAkiProfile): void;
|
||||
protected addMissingArmorRepairSkill(pmcProfile: IPmcData): void;
|
||||
protected fixNullTraderSalesSums(pmcProfile: IPmcData): void;
|
||||
protected removeDanglingBackendCounters(pmcProfile: IPmcData): void;
|
||||
getGameConfig(sessionID: string): IGameConfigResponse;
|
||||
getServer(): any[];
|
||||
protected getActiveRepeatableQuests(repeatableQuests: IPmcDataRepeatableQuest[]): IRepeatableQuest[];
|
||||
}
|
8
Ereshkigal-AkiConfig/dist/types/controllers/HandbookController.d.ts
vendored
Normal file
8
Ereshkigal-AkiConfig/dist/types/controllers/HandbookController.d.ts
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
import { HandbookHelper } from "../helpers/HandbookHelper";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
export declare class HandbookController {
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected handbookHelper: HandbookHelper;
|
||||
constructor(databaseServer: DatabaseServer, handbookHelper: HandbookHelper);
|
||||
load(): void;
|
||||
}
|
25
Ereshkigal-AkiConfig/dist/types/controllers/HealthController.d.ts
vendored
Normal file
25
Ereshkigal-AkiConfig/dist/types/controllers/HealthController.d.ts
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected paymentService: PaymentService;
|
||||
protected inventoryHelper: InventoryHelper;
|
||||
protected healthHelper: 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;
|
||||
}
|
68
Ereshkigal-AkiConfig/dist/types/controllers/HideoutController.d.ts
vendored
Normal file
68
Ereshkigal-AkiConfig/dist/types/controllers/HideoutController.d.ts
vendored
Normal file
@ -0,0 +1,68 @@
|
||||
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 { HideoutArea, IPmcData, Product } from "../models/eft/common/IPmcData";
|
||||
import { HideoutUpgradeCompleteRequestData } from "../models/eft/hideout/HideoutUpgradeCompleteRequestData";
|
||||
import { IHideoutContinousProductionStartRequestData } from "../models/eft/hideout/IHideoutContinousProductionStartRequestData";
|
||||
import { IHideoutProduction } from "../models/eft/hideout/IHideoutProduction";
|
||||
import { IHideoutPutItemInRequestData } from "../models/eft/hideout/IHideoutPutItemInRequestData";
|
||||
import { IHideoutScavCase } from "../models/eft/hideout/IHideoutScavCase";
|
||||
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 { IHideoutConfig } from "../models/spt/config/IHideoutConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected hashUtil: HashUtil;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected inventoryHelper: InventoryHelper;
|
||||
protected saveServer: SaveServer;
|
||||
protected playerService: PlayerService;
|
||||
protected presetHelper: PresetHelper;
|
||||
protected paymentHelper: PaymentHelper;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected hideoutHelper: HideoutHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected hideoutConfig: IHideoutConfig;
|
||||
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;
|
||||
protected removeItemFromGenerator(sessionID: string, pmcData: IPmcData, body: IHideoutTakeItemOutRequestData, output: IItemEventRouterResponse, hideoutArea: HideoutArea): 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;
|
||||
protected getRandomisedItemRarityCounter(recipe: IHideoutScavCase): {
|
||||
[x: string]: number;
|
||||
};
|
||||
protected getRandomisedScavRewards(rarityItemCounter: {
|
||||
[x: string]: number;
|
||||
}): Product[];
|
||||
continuousProductionStart(pmcData: IPmcData, body: IHideoutContinousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
takeProduction(pmcData: IPmcData, body: IHideoutTakeProductionRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
protected handleRecipie(sessionID: string, recipe: IHideoutProduction, pmcData: IPmcData, body: IHideoutTakeProductionRequestData, output: IItemEventRouterResponse): IItemEventRouterResponse;
|
||||
protected handleScavCase(sessionID: string, pmcData: IPmcData, body: IHideoutTakeProductionRequestData, output: IItemEventRouterResponse): IItemEventRouterResponse;
|
||||
registerProduction(pmcData: IPmcData, body: IHideoutSingleProductionStartRequestData | IHideoutContinousProductionStartRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
update(): void;
|
||||
}
|
31
Ereshkigal-AkiConfig/dist/types/controllers/InraidController.d.ts
vendored
Normal file
31
Ereshkigal-AkiConfig/dist/types/controllers/InraidController.d.ts
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
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 { IInRaidConfig } from "../models/spt/config/IInRaidConfig";
|
||||
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 {
|
||||
protected saveServer: SaveServer;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected questHelper: QuestHelper;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected extendedProfileHelper: ExtendedProfileHelper;
|
||||
protected healthHelper: HealthHelper;
|
||||
protected traderHelper: TraderHelper;
|
||||
protected insuranceService: InsuranceService;
|
||||
protected inRaidHelper: InRaidHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected inraidConfig: IInRaidConfig;
|
||||
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;
|
||||
}
|
38
Ereshkigal-AkiConfig/dist/types/controllers/InsuranceController.d.ts
vendored
Normal file
38
Ereshkigal-AkiConfig/dist/types/controllers/InsuranceController.d.ts
vendored
Normal file
@ -0,0 +1,38 @@
|
||||
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 { IInsuranceConfig } from "../models/spt/config/IInsuranceConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected saveServer: SaveServer;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected dialogueHelper: DialogueHelper;
|
||||
protected paymentService: PaymentService;
|
||||
protected insuranceService: InsuranceService;
|
||||
protected configServer: ConfigServer;
|
||||
protected insuranceConfig: IInsuranceConfig;
|
||||
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;
|
||||
}
|
107
Ereshkigal-AkiConfig/dist/types/controllers/InventoryController.d.ts
vendored
Normal file
107
Ereshkigal-AkiConfig/dist/types/controllers/InventoryController.d.ts
vendored
Normal file
@ -0,0 +1,107 @@
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected hashUtil: HashUtil;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected presetHelper: PresetHelper;
|
||||
protected inventoryHelper: InventoryHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected paymentHelper: PaymentHelper;
|
||||
protected itemEventRouter: 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;
|
||||
}
|
28
Ereshkigal-AkiConfig/dist/types/controllers/LauncherController.d.ts
vendored
Normal file
28
Ereshkigal-AkiConfig/dist/types/controllers/LauncherController.d.ts
vendored
Normal file
@ -0,0 +1,28 @@
|
||||
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 { ICoreConfig } from "../models/spt/config/ICoreConfig";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { SaveServer } from "../servers/SaveServer";
|
||||
import { HashUtil } from "../utils/HashUtil";
|
||||
export declare class LauncherController {
|
||||
protected hashUtil: HashUtil;
|
||||
protected saveServer: SaveServer;
|
||||
protected httpServerHelper: HttpServerHelper;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected configServer: ConfigServer;
|
||||
protected coreConfig: ICoreConfig;
|
||||
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;
|
||||
protected createAccount(info: IRegisterData): string;
|
||||
changeUsername(info: IChangeRequestData): string;
|
||||
changePassword(info: IChangeRequestData): string;
|
||||
wipe(info: IRegisterData): string;
|
||||
getCompatibleTarkovVersion(): string;
|
||||
}
|
18
Ereshkigal-AkiConfig/dist/types/controllers/LocationController.d.ts
vendored
Normal file
18
Ereshkigal-AkiConfig/dist/types/controllers/LocationController.d.ts
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
import { LocationGenerator } from "../generators/LocationGenerator";
|
||||
import { ILocationBase } from "../models/eft/common/ILocationBase";
|
||||
import { ILocationsGenerateAllResponse } from "../models/eft/common/ILocationsSourceDestinationBase";
|
||||
import { ILogger } from "../models/spt/utils/ILogger";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { JsonUtil } from "../utils/JsonUtil";
|
||||
import { TimeUtil } from "../utils/TimeUtil";
|
||||
export declare class LocationController {
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected logger: ILogger;
|
||||
protected locationGenerator: LocationGenerator;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected timeUtil: TimeUtil;
|
||||
constructor(jsonUtil: JsonUtil, logger: ILogger, locationGenerator: LocationGenerator, databaseServer: DatabaseServer, timeUtil: TimeUtil);
|
||||
get(location: string): ILocationBase;
|
||||
generate(name: string): ILocationBase;
|
||||
generateAll(): ILocationsGenerateAllResponse;
|
||||
}
|
30
Ereshkigal-AkiConfig/dist/types/controllers/MatchController.d.ts
vendored
Normal file
30
Ereshkigal-AkiConfig/dist/types/controllers/MatchController.d.ts
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
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 { IInRaidConfig } from "../models/spt/config/IInRaidConfig";
|
||||
import { IMatchConfig } from "../models/spt/config/IMatchConfig";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { SaveServer } from "../servers/SaveServer";
|
||||
import { MatchLocationService } from "../services/MatchLocationService";
|
||||
export declare class MatchController {
|
||||
protected saveServer: SaveServer;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected matchLocationService: MatchLocationService;
|
||||
protected traderHelper: TraderHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected matchConfig: IMatchConfig;
|
||||
protected inraidConfig: IInRaidConfig;
|
||||
constructor(saveServer: SaveServer, profileHelper: ProfileHelper, matchLocationService: MatchLocationService, traderHelper: TraderHelper, configServer: ConfigServer);
|
||||
getEnabled(): boolean;
|
||||
getProfile(info: IGetProfileRequestData): IPmcData[];
|
||||
protected getMatch(location: any): any;
|
||||
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;
|
||||
}
|
12
Ereshkigal-AkiConfig/dist/types/controllers/NoteController.d.ts
vendored
Normal file
12
Ereshkigal-AkiConfig/dist/types/controllers/NoteController.d.ts
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
||||
import { INoteActionData } from "../models/eft/notes/INoteActionData";
|
||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
||||
declare class NoteController {
|
||||
protected itemEventRouter: 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 };
|
22
Ereshkigal-AkiConfig/dist/types/controllers/NotifierController.d.ts
vendored
Normal file
22
Ereshkigal-AkiConfig/dist/types/controllers/NotifierController.d.ts
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
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 {
|
||||
protected notifierHelper: NotifierHelper;
|
||||
protected httpServerHelper: HttpServerHelper;
|
||||
protected notificationService: NotificationService;
|
||||
protected pollInterval: number;
|
||||
protected timeout: number;
|
||||
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;
|
||||
}
|
18
Ereshkigal-AkiConfig/dist/types/controllers/PresetBuildController.d.ts
vendored
Normal file
18
Ereshkigal-AkiConfig/dist/types/controllers/PresetBuildController.d.ts
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
import { ItemHelper } from "../helpers/ItemHelper";
|
||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||
import { IItemEventRouterResponse } from "../models/eft/itemEvent/IItemEventRouterResponse";
|
||||
import { IPresetBuildActionRequestData } from "../models/eft/presetBuild/IPresetBuildActionRequestData";
|
||||
import { WeaponBuild } from "../models/eft/profile/IAkiProfile";
|
||||
import { ItemEventRouter } from "../routers/ItemEventRouter";
|
||||
import { SaveServer } from "../servers/SaveServer";
|
||||
import { HashUtil } from "../utils/HashUtil";
|
||||
export declare class PresetBuildController {
|
||||
protected hashUtil: HashUtil;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected saveServer: 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;
|
||||
}
|
8
Ereshkigal-AkiConfig/dist/types/controllers/PresetController.d.ts
vendored
Normal file
8
Ereshkigal-AkiConfig/dist/types/controllers/PresetController.d.ts
vendored
Normal file
@ -0,0 +1,8 @@
|
||||
import { PresetHelper } from "../helpers/PresetHelper";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
export declare class PresetController {
|
||||
protected presetHelper: PresetHelper;
|
||||
protected databaseServer: DatabaseServer;
|
||||
constructor(presetHelper: PresetHelper, databaseServer: DatabaseServer);
|
||||
initialize(): void;
|
||||
}
|
34
Ereshkigal-AkiConfig/dist/types/controllers/ProfileController.d.ts
vendored
Normal file
34
Ereshkigal-AkiConfig/dist/types/controllers/ProfileController.d.ts
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
import { ExtendedProfileHelper } from "../helpers/ExtendedProfileHelper";
|
||||
import { ItemHelper } from "../helpers/ItemHelper";
|
||||
import { TraderHelper } from "../helpers/TraderHelper";
|
||||
import { IPmcData } from "../models/eft/common/IPmcData";
|
||||
import { IMiniProfile } from "../models/eft/launcher/IMiniProfile";
|
||||
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 { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { SaveServer } from "../servers/SaveServer";
|
||||
import { HashUtil } from "../utils/HashUtil";
|
||||
import { TimeUtil } from "../utils/TimeUtil";
|
||||
export declare class ProfileController {
|
||||
protected hashUtil: HashUtil;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected saveServer: SaveServer;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected traderHelper: TraderHelper;
|
||||
protected extendedProfileHelper: 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[];
|
||||
}
|
74
Ereshkigal-AkiConfig/dist/types/controllers/QuestController.d.ts
vendored
Normal file
74
Ereshkigal-AkiConfig/dist/types/controllers/QuestController.d.ts
vendored
Normal file
@ -0,0 +1,74 @@
|
||||
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, Reward } 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 { IQuestConfig } 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 { PlayerService } from "../services/PlayerService";
|
||||
import { TimeUtil } from "../utils/TimeUtil";
|
||||
export declare class QuestController {
|
||||
protected logger: ILogger;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected dialogueHelper: DialogueHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected questHelper: QuestHelper;
|
||||
protected questConditionHelper: QuestConditionHelper;
|
||||
protected playerService: PlayerService;
|
||||
protected configServer: ConfigServer;
|
||||
protected questConfig: IQuestConfig;
|
||||
constructor(logger: ILogger, timeUtil: TimeUtil, itemEventRouter: ItemEventRouter, databaseServer: DatabaseServer, itemHelper: ItemHelper, dialogueHelper: DialogueHelper, profileHelper: ProfileHelper, questHelper: QuestHelper, questConditionHelper: QuestConditionHelper, playerService: PlayerService, configServer: ConfigServer);
|
||||
/**
|
||||
* Get all quests visible to player
|
||||
* Exclude quests with incomplete preconditions (level/loyalty)
|
||||
* @param sessionID session id
|
||||
* @returns array of IQuest
|
||||
*/
|
||||
getClientQuests(sessionID: string): IQuest[];
|
||||
acceptQuest(pmcData: IPmcData, acceptedQuest: IAcceptQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
acceptRepeatableQuest(pmcData: IPmcData, acceptedQuest: IAcceptQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
/**
|
||||
* Remove completed quest from profile
|
||||
* Add newly unlocked quests to profile
|
||||
* Also recalculate thier level due to exp rewards
|
||||
* @param pmcData Player profile
|
||||
* @param body completed quest request
|
||||
* @param sessionID session id
|
||||
* @returns ItemEvent response
|
||||
*/
|
||||
completeQuest(pmcData: IPmcData, body: ICompleteQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
/**
|
||||
* Send a popup to player on completion of a quest
|
||||
* @param sessionID session id
|
||||
* @param pmcData player profile
|
||||
* @param completedQuestId completed quest id
|
||||
* @param questRewards rewards given to player
|
||||
*/
|
||||
protected sendDialogMessageOnQuestComplete(sessionID: string, pmcData: IPmcData, completedQuestId: string, questRewards: Reward[]): void;
|
||||
/**
|
||||
* Returns a list of quests that should be failed when a quest is completed
|
||||
* @param completedQuestId quest completed id
|
||||
* @returns array of quests
|
||||
*/
|
||||
protected getQuestsFailedByCompletingQuest(completedQuestId: string): IQuest[];
|
||||
/**
|
||||
* Fail the quests provided
|
||||
* @param sessionID session id
|
||||
* @param pmcData player profile
|
||||
* @param questsToFail quests to fail
|
||||
*/
|
||||
protected failQuests(sessionID: string, pmcData: IPmcData, questsToFail: IQuest[]): void;
|
||||
handoverQuest(pmcData: IPmcData, body: IHandoverQuestRequestData, sessionID: string): IItemEventRouterResponse;
|
||||
}
|
70
Ereshkigal-AkiConfig/dist/types/controllers/RagfairController.d.ts
vendored
Normal file
70
Ereshkigal-AkiConfig/dist/types/controllers/RagfairController.d.ts
vendored
Normal file
@ -0,0 +1,70 @@
|
||||
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 { IRagfairConfig } from "../models/spt/config/IRagfairConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected httpResponse: HttpResponseUtil;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected ragfairServer: RagfairServer;
|
||||
protected ragfairPriceService: RagfairPriceService;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected saveServer: SaveServer;
|
||||
protected ragfairSellHelper: RagfairSellHelper;
|
||||
protected ragfairTaxHelper: RagfairTaxHelper;
|
||||
protected ragfairSortHelper: RagfairSortHelper;
|
||||
protected ragfairOfferHelper: RagfairOfferHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected paymentService: PaymentService;
|
||||
protected handbookHelper: HandbookHelper;
|
||||
protected paymentHelper: PaymentHelper;
|
||||
protected inventoryHelper: InventoryHelper;
|
||||
protected ragfairHelper: RagfairHelper;
|
||||
protected ragfairOfferService: RagfairOfferService;
|
||||
protected ragfairRequiredItemsService: RagfairRequiredItemsService;
|
||||
protected ragfairOfferGenerator: RagfairOfferGenerator;
|
||||
protected configServer: ConfigServer;
|
||||
protected ragfairConfig: IRagfairConfig;
|
||||
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;
|
||||
}
|
42
Ereshkigal-AkiConfig/dist/types/controllers/RepairController.d.ts
vendored
Normal file
42
Ereshkigal-AkiConfig/dist/types/controllers/RepairController.d.ts
vendored
Normal file
@ -0,0 +1,42 @@
|
||||
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 { IRepairConfig } from "../models/spt/config/IRepairConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected questHelper: QuestHelper;
|
||||
protected traderHelper: TraderHelper;
|
||||
protected paymentService: PaymentService;
|
||||
protected repairHelper: RepairHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected repairConfig: IRepairConfig;
|
||||
protected readonly WEAPON_SKILL_REPAIR_GAIN: number;
|
||||
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
|
||||
*/
|
||||
repairWithKit(pmcData: IPmcData, body: IRepairActionDataRequest, sessionID: string): IItemEventRouterResponse;
|
||||
}
|
219
Ereshkigal-AkiConfig/dist/types/controllers/RepeatableQuestController.d.ts
vendored
Normal file
219
Ereshkigal-AkiConfig/dist/types/controllers/RepeatableQuestController.d.ts
vendored
Normal file
@ -0,0 +1,219 @@
|
||||
import { GameHelper } from "../helpers/GameHelper";
|
||||
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 { IQuestConfig, 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 {
|
||||
protected timeUtil: TimeUtil;
|
||||
protected logger: ILogger;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected mathUtil: MathUtil;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected presetHelper: PresetHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected gameHelper: GameHelper;
|
||||
protected ragfairServerHelper: RagfairServerHelper;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected paymentService: PaymentService;
|
||||
protected objectId: ObjectId;
|
||||
protected configServer: ConfigServer;
|
||||
protected questConfig: IQuestConfig;
|
||||
constructor(timeUtil: TimeUtil, logger: ILogger, randomUtil: RandomUtil, mathUtil: MathUtil, jsonUtil: JsonUtil, databaseServer: DatabaseServer, itemHelper: ItemHelper, presetHelper: PresetHelper, profileHelper: ProfileHelper, gameHelper: GameHelper, 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;
|
||||
}
|
21
Ereshkigal-AkiConfig/dist/types/controllers/TradeController.d.ts
vendored
Normal file
21
Ereshkigal-AkiConfig/dist/types/controllers/TradeController.d.ts
vendored
Normal file
@ -0,0 +1,21 @@
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected itemEventRouter: ItemEventRouter;
|
||||
protected tradeHelper: TradeHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected ragfairServer: 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 };
|
26
Ereshkigal-AkiConfig/dist/types/controllers/TraderController.d.ts
vendored
Normal file
26
Ereshkigal-AkiConfig/dist/types/controllers/TraderController.d.ts
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected traderAssortHelper: TraderAssortHelper;
|
||||
protected profileHelper: ProfileHelper;
|
||||
protected traderHelper: TraderHelper;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected traderAssortService: TraderAssortService;
|
||||
protected jsonUtil: 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[][]>;
|
||||
}
|
11
Ereshkigal-AkiConfig/dist/types/controllers/WeatherController.d.ts
vendored
Normal file
11
Ereshkigal-AkiConfig/dist/types/controllers/WeatherController.d.ts
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
import { WeatherGenerator } from "../generators/WeatherGenerator";
|
||||
import { IWeatherData } from "../models/eft/weather/IWeatherData";
|
||||
import { IWeatherConfig } from "../models/spt/config/IWeatherConfig";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
export declare class WeatherController {
|
||||
protected weatherGenerator: WeatherGenerator;
|
||||
protected configServer: ConfigServer;
|
||||
protected weatherConfig: IWeatherConfig;
|
||||
constructor(weatherGenerator: WeatherGenerator, configServer: ConfigServer);
|
||||
generate(): IWeatherData;
|
||||
}
|
10
Ereshkigal-AkiConfig/dist/types/controllers/WishlistController.d.ts
vendored
Normal file
10
Ereshkigal-AkiConfig/dist/types/controllers/WishlistController.d.ts
vendored
Normal file
@ -0,0 +1,10 @@
|
||||
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 {
|
||||
protected itemEvenRouter: ItemEventRouter;
|
||||
constructor(itemEvenRouter: ItemEventRouter);
|
||||
addToWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||
removeFromWishList(pmcData: IPmcData, body: IWishlistActionData, sessionID: string): IItemEventRouterResponse;
|
||||
}
|
14
Ereshkigal-AkiConfig/dist/types/di/Container.d.ts
vendored
Normal file
14
Ereshkigal-AkiConfig/dist/types/di/Container.d.ts
vendored
Normal file
@ -0,0 +1,14 @@
|
||||
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
Ereshkigal-AkiConfig/dist/types/di/OnLoad.d.ts
vendored
Normal file
4
Ereshkigal-AkiConfig/dist/types/di/OnLoad.d.ts
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
export declare class OnLoad {
|
||||
onLoad(): void;
|
||||
getRoute(): string;
|
||||
}
|
7
Ereshkigal-AkiConfig/dist/types/di/OnLoadOnUpdate.d.ts
vendored
Normal file
7
Ereshkigal-AkiConfig/dist/types/di/OnLoadOnUpdate.d.ts
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
import { OnLoad } from "./OnLoad";
|
||||
import { OnUpdate } from "./OnUpdate";
|
||||
export declare class OnLoadOnUpdate implements OnLoad, OnUpdate {
|
||||
onUpdate(timeSinceLastRun: number): boolean;
|
||||
onLoad(): void;
|
||||
getRoute(): string;
|
||||
}
|
4
Ereshkigal-AkiConfig/dist/types/di/OnUpdate.d.ts
vendored
Normal file
4
Ereshkigal-AkiConfig/dist/types/di/OnUpdate.d.ts
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
export declare class OnUpdate {
|
||||
onUpdate(timeSinceLastRun: number): boolean;
|
||||
getRoute(): string;
|
||||
}
|
40
Ereshkigal-AkiConfig/dist/types/di/Router.d.ts
vendored
Normal file
40
Ereshkigal-AkiConfig/dist/types/di/Router.d.ts
vendored
Normal file
@ -0,0 +1,40 @@
|
||||
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);
|
||||
}
|
5
Ereshkigal-AkiConfig/dist/types/di/Serializer.d.ts
vendored
Normal file
5
Ereshkigal-AkiConfig/dist/types/di/Serializer.d.ts
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
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;
|
||||
}
|
46
Ereshkigal-AkiConfig/dist/types/generators/BotGenerator.d.ts
vendored
Normal file
46
Ereshkigal-AkiConfig/dist/types/generators/BotGenerator.d.ts
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
import { BotHelper } from "../helpers/BotHelper";
|
||||
import { GameEventHelper } from "../helpers/GameEventHelper";
|
||||
import { IGenerateBotsRequestData } from "../models/eft/bot/IGenerateBotsRequestData";
|
||||
import { Health as PmcHealth } from "../models/eft/common/IPmcData";
|
||||
import { IBotBase } from "../models/eft/common/tables/IBotBase";
|
||||
import { Health, Inventory, Skills } from "../models/eft/common/tables/IBotType";
|
||||
import { IBotConfig } from "../models/spt/config/IBotConfig";
|
||||
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";
|
||||
declare namespace BotGenerator {
|
||||
interface IRandomisedBotLevelResult {
|
||||
level: number;
|
||||
exp: number;
|
||||
}
|
||||
}
|
||||
export declare class BotGenerator {
|
||||
protected logger: ILogger;
|
||||
protected hashUtil: HashUtil;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected botInventoryGenerator: BotInventoryGenerator;
|
||||
protected botHelper: BotHelper;
|
||||
protected gameEventHelper: GameEventHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected botConfig: IBotConfig;
|
||||
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[];
|
||||
protected generateBot(bot: IBotBase, role: string, isPmc: boolean): IBotBase;
|
||||
protected generateRandomLevel(min: number, max: number): BotGenerator.IRandomisedBotLevelResult;
|
||||
/** Converts health object to the required format */
|
||||
protected generateHealth(healthObj: Health, playerScav?: boolean): PmcHealth;
|
||||
protected generateSkills(skillsObj: Skills): Skills;
|
||||
protected getPmcRole(pmcSide: string): string;
|
||||
protected removeChristmasItemsFromBotInventory(nodeInventory: Inventory): void;
|
||||
protected generateId(bot: IBotBase): IBotBase;
|
||||
protected generateInventoryID(profile: IBotBase): IBotBase;
|
||||
protected getPMCDifficulty(requestedDifficulty: string): string;
|
||||
protected generateDogtag(bot: IBotBase): IBotBase;
|
||||
}
|
||||
export {};
|
24
Ereshkigal-AkiConfig/dist/types/generators/BotInventoryGenerator.d.ts
vendored
Normal file
24
Ereshkigal-AkiConfig/dist/types/generators/BotInventoryGenerator.d.ts
vendored
Normal file
@ -0,0 +1,24 @@
|
||||
import { Inventory as PmcInventory } from "../models/eft/common/IPmcData";
|
||||
import { Inventory, Chances, Generation, Mods } 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 {
|
||||
protected logger: ILogger;
|
||||
protected hashUtil: HashUtil;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected botWeaponGenerator: BotWeaponGenerator;
|
||||
protected botLootGenerator: BotLootGenerator;
|
||||
protected botGeneratorHelper: BotGeneratorHelper;
|
||||
protected weightedRandomHelper: 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;
|
||||
protected generateEquipment(equipmentSlot: string, equipmentPool: Record<string, number>, modPool: Mods, spawnChances: Chances, botRole: string, inventory: PmcInventory): void;
|
||||
protected generateInventoryBase(): PmcInventory;
|
||||
}
|
29
Ereshkigal-AkiConfig/dist/types/generators/BotLootGenerator.d.ts
vendored
Normal file
29
Ereshkigal-AkiConfig/dist/types/generators/BotLootGenerator.d.ts
vendored
Normal file
@ -0,0 +1,29 @@
|
||||
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 { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||
import { IBotConfig } from "../models/spt/config/IBotConfig";
|
||||
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 {
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected hashUtil: HashUtil;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected handbookHelper: HandbookHelper;
|
||||
protected botGeneratorHelper: BotGeneratorHelper;
|
||||
protected pmcLootGenerator: PMCLootGenerator;
|
||||
protected configServer: ConfigServer;
|
||||
protected botConfig: IBotConfig;
|
||||
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;
|
||||
protected getRandomisedCount(min: number, max: number, nValue: number): number;
|
||||
protected addLootFromPool(pool: ITemplateItem[], equipmentSlots: string[], count: number, inventory: PmcInventory, totalValueLimit?: number, useLimits?: boolean): void;
|
||||
/** Compares two item templates by their price to spawn chance ratio */
|
||||
protected compareByValue(a: ITemplateItem, b: ITemplateItem): number;
|
||||
}
|
88
Ereshkigal-AkiConfig/dist/types/generators/BotWeaponGenerator.d.ts
vendored
Normal file
88
Ereshkigal-AkiConfig/dist/types/generators/BotWeaponGenerator.d.ts
vendored
Normal file
@ -0,0 +1,88 @@
|
||||
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 { Inventory, MinMax, ModsChances } from "../models/eft/common/tables/IBotType";
|
||||
import { Item } from "../models/eft/common/tables/IItem";
|
||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected hashUtil: HashUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected weightedRandomHelper: WeightedRandomHelper;
|
||||
protected botGeneratorHelper: BotGeneratorHelper;
|
||||
protected randomUtil: RandomUtil;
|
||||
private readonly modMagazineSlotId;
|
||||
constructor(logger: ILogger, hashUtil: HashUtil, databaseServer: DatabaseServer, itemHelper: ItemHelper, weightedRandomHelper: WeightedRandomHelper, botGeneratorHelper: BotGeneratorHelper, randomUtil: RandomUtil);
|
||||
generateWeapon(equipmentSlot: string, templateInventory: Inventory, modChances: ModsChances, magCounts: MinMax, botRole: string, isPmc: boolean, inventory: PmcInventory): void;
|
||||
/**
|
||||
* Get the mods necessary to kit out a weapon to its preset level
|
||||
* @param weaponTpl weapon to find preset for
|
||||
* @param equipmentSlot the slot the weapon will be placed in
|
||||
* @param weaponParentId
|
||||
* @returns array of weapon mods
|
||||
*/
|
||||
protected getPresetWeaponMods(weaponTpl: string, equipmentSlot: string, weaponParentId: string, itemTemplate: ITemplateItem, botRole: string): Item[];
|
||||
/** Checks if all required slots are occupied on a weapon and all it's mods */
|
||||
protected isWeaponValid(itemList: Item[]): boolean;
|
||||
/**
|
||||
* 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
|
||||
* @param inventory
|
||||
* @returns
|
||||
*/
|
||||
protected generateExtraMagazines(weaponMods: Item[], weaponTemplate: ITemplateItem, magCounts: MinMax, ammoTpl: string, inventory: PmcInventory): void;
|
||||
/**
|
||||
* Get a randomised count of magazines
|
||||
* @param magCounts min and max value returned value can be between
|
||||
* @returns numberical value of magazine count
|
||||
*/
|
||||
protected getRandomisedMagazineCount(magCounts: MinMax): number;
|
||||
/**
|
||||
* Add ammo to the secure container
|
||||
* @param stackCount How many stacks of ammo to add
|
||||
* @param ammoTpl Ammo type to add
|
||||
* @param stackSize Size of the ammo stack to add
|
||||
* @param inventory Player inventory
|
||||
*/
|
||||
protected addAmmoToSecureContainer(stackCount: number, ammoTpl: string, stackSize: number, inventory: PmcInventory): void;
|
||||
/**
|
||||
* Get a weapons magazine tpl from a weapon template
|
||||
* @param weaponMods mods from a weapon template
|
||||
* @param weaponTemplate Weapon to get magazine tpl for
|
||||
* @returns magazine tpl string
|
||||
*/
|
||||
protected getMagazineTplFromWeaponTemplate(weaponMods: Item[], weaponTemplate: ITemplateItem): string;
|
||||
protected addBulletsToVestAndPockets(ammoTpl: string, bulletCount: number, inventory: PmcInventory): void;
|
||||
/**
|
||||
* Finds and returns compatible ammo tpl
|
||||
*
|
||||
* @param {*} weaponMods
|
||||
* @param {*} weaponTemplate
|
||||
* @returns compatible ammo tpl
|
||||
*/
|
||||
protected getCompatibleAmmo(weaponMods: Item[], weaponTemplate: ITemplateItem): string;
|
||||
/**
|
||||
* Fill existing magazines to full, while replacing their contents with specified ammo
|
||||
* @param weaponMods
|
||||
* @param magazine
|
||||
* @param ammoTpl
|
||||
*/
|
||||
protected fillExistingMagazines(weaponMods: Item[], magazine: Item, ammoTpl: string): void;
|
||||
/**
|
||||
* Fill each Camora with a bullet
|
||||
* @param weaponMods Weapon mods to find and update camora mod(s) from
|
||||
* @param magazineId magazine id to find and add to
|
||||
* @param ammoTpl ammo template id to hydate with
|
||||
*/
|
||||
protected fillCamorasWithAmmo(weaponMods: Item[], magazineId: string, ammoTpl: string): void;
|
||||
}
|
46
Ereshkigal-AkiConfig/dist/types/generators/LocationGenerator.d.ts
vendored
Normal file
46
Ereshkigal-AkiConfig/dist/types/generators/LocationGenerator.d.ts
vendored
Normal file
@ -0,0 +1,46 @@
|
||||
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 { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||
import { ILocationConfig } from "../models/spt/config/ILocationConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected objectId: ObjectId;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected ragfairServerHelper: RagfairServerHelper;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected mathUtil: MathUtil;
|
||||
protected gameEventHelper: GameEventHelper;
|
||||
protected containerHelper: ContainerHelper;
|
||||
protected presetHelper: PresetHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected locationConfig: ILocationConfig;
|
||||
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;
|
||||
protected getLooseLootMultiplerForLocation(location: string): number;
|
||||
protected getStaticLootMultiplerForLocation(location: string): number;
|
||||
generateDynamicLoot(dynamicLootDist: ILooseLoot, staticAmmoDist: Record<string, IStaticAmmoDetails[]>, locationName: string): SpawnpointTemplate[];
|
||||
protected createItem(tpl: string, staticAmmoDist: Record<string, IStaticAmmoDetails[]>, parentId?: string): IContainerItem;
|
||||
protected getRandomCompatibleCaliberTemplateId(item: ITemplateItem): string;
|
||||
protected getRandomValidCaliber(magTemplate: ITemplateItem): string;
|
||||
protected drawAmmoTpl(caliber: string, staticAmmoDist: Record<string, IStaticAmmoDetails[]>): string;
|
||||
protected createRandomMagCartridges(magTemplate: ITemplateItem, parentId: string, staticAmmoDist: Record<string, IStaticAmmoDetails[]>, caliber?: string): Item;
|
||||
protected createCartidges(parentId: string, ammoTpl: string, stackCount: number): Item;
|
||||
}
|
15
Ereshkigal-AkiConfig/dist/types/generators/PMCLootGenerator.d.ts
vendored
Normal file
15
Ereshkigal-AkiConfig/dist/types/generators/PMCLootGenerator.d.ts
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
import { ItemHelper } from "../helpers/ItemHelper";
|
||||
import { DatabaseServer } from "../servers/DatabaseServer";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { IBotConfig } from "../models/spt/config/IBotConfig";
|
||||
export declare class PMCLootGenerator {
|
||||
protected itemHelper: ItemHelper;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected configServer: ConfigServer;
|
||||
protected pocketLootPool: string[];
|
||||
protected backpackLootPool: string[];
|
||||
protected botConfig: IBotConfig;
|
||||
constructor(itemHelper: ItemHelper, databaseServer: DatabaseServer, configServer: ConfigServer);
|
||||
generatePMCPocketLootPool(): string[];
|
||||
generatePMCBackpackLootPool(): string[];
|
||||
}
|
25
Ereshkigal-AkiConfig/dist/types/generators/RagfairAssortGenerator.d.ts
vendored
Normal file
25
Ereshkigal-AkiConfig/dist/types/generators/RagfairAssortGenerator.d.ts
vendored
Normal file
@ -0,0 +1,25 @@
|
||||
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 {
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected hashUtil: HashUtil;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected generatedAssortItems: Item[];
|
||||
constructor(jsonUtil: JsonUtil, hashUtil: HashUtil, itemHelper: ItemHelper, databaseServer: DatabaseServer);
|
||||
/**
|
||||
* Get an array of unique items that can be sold on the flea
|
||||
* @returns array of unique items
|
||||
*/
|
||||
getAssortItems(): Item[];
|
||||
protected assortsAreGenerated(): boolean;
|
||||
/**
|
||||
* Generate an array of items the flea can sell
|
||||
* @returns array of unique items
|
||||
*/
|
||||
protected generateRagfairAssortItems(): Item[];
|
||||
protected createRagfairAssortItem(tplId: string, id?: string): Item;
|
||||
}
|
60
Ereshkigal-AkiConfig/dist/types/generators/RagfairOfferGenerator.d.ts
vendored
Normal file
60
Ereshkigal-AkiConfig/dist/types/generators/RagfairOfferGenerator.d.ts
vendored
Normal file
@ -0,0 +1,60 @@
|
||||
import { ItemHelper } from "../helpers/ItemHelper";
|
||||
import { PresetHelper } from "../helpers/PresetHelper";
|
||||
import { RagfairServerHelper } from "../helpers/RagfairServerHelper";
|
||||
import { Item } from "../models/eft/common/tables/IItem";
|
||||
import { ITemplateItem } from "../models/eft/common/tables/ITemplateItem";
|
||||
import { IBarterScheme } from "../models/eft/common/tables/ITrader";
|
||||
import { IRagfairOffer } from "../models/eft/ragfair/IRagfairOffer";
|
||||
import { IRagfairConfig } from "../models/spt/config/IRagfairConfig";
|
||||
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 {
|
||||
protected logger: ILogger;
|
||||
protected jsonUtil: JsonUtil;
|
||||
protected hashUtil: HashUtil;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected databaseServer: DatabaseServer;
|
||||
protected ragfairServerHelper: RagfairServerHelper;
|
||||
protected saveServer: SaveServer;
|
||||
protected presetHelper: PresetHelper;
|
||||
protected ragfairAssortGenerator: RagfairAssortGenerator;
|
||||
protected ragfairOfferService: RagfairOfferService;
|
||||
protected ragfairPriceService: RagfairPriceService;
|
||||
protected fenceService: FenceService;
|
||||
protected itemHelper: ItemHelper;
|
||||
protected configServer: ConfigServer;
|
||||
protected ragfairConfig: IRagfairConfig;
|
||||
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;
|
||||
protected getTraderId(userID: string): string;
|
||||
protected getRating(userID: string): number;
|
||||
protected getRatingGrowing(userID: string): boolean;
|
||||
protected getOfferEndTime(userID: string, time: number): number;
|
||||
/**
|
||||
* Create multiple offers for items by using a unique list of items we've generated previously
|
||||
* @param expiredOffers
|
||||
*/
|
||||
generateDynamicOffers(expiredOffers?: Item[]): void;
|
||||
generateTraderOffers(traderID: string): void;
|
||||
protected getItemCondition(userID: string, items: Item[], itemDetails: ITemplateItem): Item[];
|
||||
protected addMissingCondition(item: Item): Item;
|
||||
protected getOfferRequirements(items: Item[]): {
|
||||
count: number;
|
||||
_tpl: string;
|
||||
}[];
|
||||
/**
|
||||
* 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;
|
||||
}
|
33
Ereshkigal-AkiConfig/dist/types/generators/WeatherGenerator.d.ts
vendored
Normal file
33
Ereshkigal-AkiConfig/dist/types/generators/WeatherGenerator.d.ts
vendored
Normal file
@ -0,0 +1,33 @@
|
||||
import { WeightedRandomHelper } from "../helpers/WeightedRandomHelper";
|
||||
import { ConfigServer } from "../servers/ConfigServer";
|
||||
import { IWeatherData } from "../models/eft/weather/IWeatherData";
|
||||
import { IWeatherConfig } from "../models/spt/config/IWeatherConfig";
|
||||
import { RandomUtil } from "../utils/RandomUtil";
|
||||
import { TimeUtil } from "../utils/TimeUtil";
|
||||
export declare class WeatherGenerator {
|
||||
protected weightedRandomHelper: WeightedRandomHelper;
|
||||
protected randomUtil: RandomUtil;
|
||||
protected timeUtil: TimeUtil;
|
||||
protected configServer: ConfigServer;
|
||||
protected weatherConfig: IWeatherConfig;
|
||||
constructor(weightedRandomHelper: WeightedRandomHelper, randomUtil: RandomUtil, timeUtil: TimeUtil, configServer: ConfigServer);
|
||||
calculateTime(data: IWeatherData): IWeatherData;
|
||||
/**
|
||||
* Get server uptime seconds multiplied by a multiplier and add to current time as seconds
|
||||
* Format to BSGs requirements
|
||||
* @param computedDate current date
|
||||
* @returns formatted time
|
||||
*/
|
||||
protected getAcceleratedTime(computedDate: Date): string;
|
||||
/**
|
||||
* Get current time formatted to fit BSGs requirement
|
||||
* @param computedDate
|
||||
* @returns
|
||||
*/
|
||||
protected getNormalTime(computedDate: Date): string;
|
||||
generateWeather(data: IWeatherData): IWeatherData;
|
||||
protected getWeightedFog(): string;
|
||||
protected getWeightedRain(): number;
|
||||
protected getRandomFloat(node: string): number;
|
||||
protected getRandomInt(node: string): number;
|
||||
}
|
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