Update readme
Delete unused examples
This commit is contained in:
parent
bd8a707087
commit
1d4301682a
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "LogToConsole",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "src/mod.js",
|
|
||||||
"license": "MIT",
|
|
||||||
"author": "Chomp",
|
|
||||||
"akiVersion": "2.4.0"
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
class Mod
|
|
||||||
{
|
|
||||||
// Code added here will load BEFORE the server has started loading
|
|
||||||
load(container)
|
|
||||||
{
|
|
||||||
// get the logger from the server container
|
|
||||||
const logger = container.resolve("WinstonLogger");
|
|
||||||
|
|
||||||
logger.info("I am logging info!");
|
|
||||||
logger.warning("I am logging a warning!");
|
|
||||||
logger.error("I am logging an error!");
|
|
||||||
}
|
|
||||||
|
|
||||||
// Code added here will be run AFTER the server has started
|
|
||||||
delayedLoad(container)
|
|
||||||
{ return }
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { mod: new Mod() }
|
|
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "EditDatabase",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "src/mod.js",
|
|
||||||
"license": "MIT",
|
|
||||||
"author": "Chomp",
|
|
||||||
"akiVersion": "2.4.0"
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
class Mod
|
|
||||||
{
|
|
||||||
// not used for this example
|
|
||||||
load(container)
|
|
||||||
{ return }
|
|
||||||
|
|
||||||
delayedLoad(container)
|
|
||||||
{
|
|
||||||
// get database from server
|
|
||||||
const databaseServer = container.resolve("DatabaseServer");
|
|
||||||
|
|
||||||
// Get all the in-memory json found in /assets/database
|
|
||||||
const tables = databaseServer.getTables();
|
|
||||||
|
|
||||||
// find the ledx item by its Id
|
|
||||||
const ledx = tables.templates.items["5c0530ee86f774697952d952"];
|
|
||||||
|
|
||||||
// update one of its properties to be true
|
|
||||||
ledx._props.CanSellOnRagfair = true;
|
|
||||||
|
|
||||||
|
|
||||||
// example #2
|
|
||||||
// get globals settings and set flea market min level to be 1
|
|
||||||
tables.globals.config.RagFair.minUserLevel = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { mod: new Mod() }
|
|
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "GetSptConfigFile",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "src/mod.js",
|
|
||||||
"license": "MIT",
|
|
||||||
"author": "Chomp",
|
|
||||||
"akiVersion": "2.4.0"
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
class Mod
|
|
||||||
{
|
|
||||||
// not used for this example
|
|
||||||
load(container)
|
|
||||||
{ return }
|
|
||||||
|
|
||||||
delayedLoad(container)
|
|
||||||
{
|
|
||||||
// get logger
|
|
||||||
const logger = container.resolve("WinstonLogger");
|
|
||||||
|
|
||||||
// get the config server
|
|
||||||
const configServer = container.resolve("ConfigServer");
|
|
||||||
|
|
||||||
// Request bot config
|
|
||||||
// Required - ConfigTypes.BOT is the enum of the config we want, others include ConfigTypes.Airdrop
|
|
||||||
const botConfig = configServer.getConfig("aki-bot");
|
|
||||||
|
|
||||||
// log the original pmc difficulty
|
|
||||||
logger.info(`here is the original bot pmc difficulty: ${botConfig.pmc.difficulty}`)
|
|
||||||
|
|
||||||
// adjust the difficulty
|
|
||||||
botConfig.pmc.difficulty = "easy";
|
|
||||||
|
|
||||||
// log the new pmc difficulty
|
|
||||||
logger.info(`here is the altered bot pmc difficulty: ${botConfig.pmc.difficulty}`)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { mod: new Mod() }
|
|
@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"myProperty": "wow"
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "EditDatabase",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "src/mod.js",
|
|
||||||
"license": "MIT",
|
|
||||||
"author": "Chomp",
|
|
||||||
"akiVersion": "2.4.0"
|
|
||||||
}
|
|
@ -1,19 +0,0 @@
|
|||||||
const modConfig = require("../config/config.json");
|
|
||||||
|
|
||||||
class Mod
|
|
||||||
{
|
|
||||||
// not used for this example
|
|
||||||
load(container)
|
|
||||||
{ return }
|
|
||||||
|
|
||||||
delayedLoad(container)
|
|
||||||
{
|
|
||||||
// get logger
|
|
||||||
const logger = container.resolve("WinstonLogger");
|
|
||||||
|
|
||||||
// log the 'myProperty' value to the console
|
|
||||||
logger.info(`here is the value from my config: ${modConfig.myProperty}`);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { mod: new Mod() }
|
|
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "ReplaceFunction",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "src/mod.js",
|
|
||||||
"license": "MIT",
|
|
||||||
"author": "Chomp",
|
|
||||||
"akiVersion": "2.4.0"
|
|
||||||
}
|
|
@ -1,24 +0,0 @@
|
|||||||
class Mod
|
|
||||||
{
|
|
||||||
// Perform these actions before server fully loads
|
|
||||||
load(container)
|
|
||||||
{
|
|
||||||
// get watermarkLocale class from server
|
|
||||||
const watermarkLocale = container.resolve("WatermarkLocale");
|
|
||||||
|
|
||||||
// Replace the getDescription() function with the one below called 'replacementFunction()'
|
|
||||||
watermarkLocale.getDescription = this.replacementFunction;
|
|
||||||
}
|
|
||||||
|
|
||||||
// not used for this example
|
|
||||||
delayedLoad(container)
|
|
||||||
{ return }
|
|
||||||
|
|
||||||
// our new replacement function, ready to be used
|
|
||||||
replacementFunction()
|
|
||||||
{
|
|
||||||
return ["SPT AKI, WOW VERY COOL"];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { mod: new Mod() }
|
|
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "EditDatabase",
|
|
||||||
"version": "1.0.0",
|
|
||||||
"main": "src/mod.js",
|
|
||||||
"license": "MIT",
|
|
||||||
"author": "Chomp",
|
|
||||||
"akiVersion": "2.4.0"
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
class MoreCode
|
|
||||||
{
|
|
||||||
getTheWordFlub()
|
|
||||||
{
|
|
||||||
return "flub";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { MoreCode: new MoreCode()}
|
|
@ -1,25 +0,0 @@
|
|||||||
const MoreCode = require("./MoreCode");
|
|
||||||
|
|
||||||
class Mod
|
|
||||||
{
|
|
||||||
// not used for this example
|
|
||||||
load(container)
|
|
||||||
{ return }
|
|
||||||
|
|
||||||
delayedLoad(container)
|
|
||||||
{
|
|
||||||
// get logger
|
|
||||||
const logger = container.resolve("WinstonLogger");
|
|
||||||
|
|
||||||
// Make a new instance of the 'MoreCode' class
|
|
||||||
const moreCode = new MoreCode();
|
|
||||||
|
|
||||||
// call the function 'getTheWordFlub()' and assign the result to 'result'
|
|
||||||
const result = moreCode.getTheWordFlub();
|
|
||||||
|
|
||||||
// log the 'myProperty' property to the console
|
|
||||||
logger.info(`Here is the value from my second class: ${result}`);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports = { mod: new Mod() }
|
|
@ -1,31 +0,0 @@
|
|||||||
Copyright (c) 2022 Revingly. All rights reserved.
|
|
||||||
|
|
||||||
Developed by: - Wulv
|
|
||||||
- Revingly
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person
|
|
||||||
obtaining a copy of this software and associated documentation files
|
|
||||||
(the "Software"), to deal with the Software without restriction,
|
|
||||||
including without limitation the rights to use, copy, modify, merge,
|
|
||||||
publish, distribute, sublicense, and/or sell copies of the Software,
|
|
||||||
and to permit persons to whom the Software is furnished to do so,
|
|
||||||
subject to the following conditions:
|
|
||||||
|
|
||||||
* Redistributions of source code must retain the above copyright notice,
|
|
||||||
this list of conditions and the following disclaimers.
|
|
||||||
|
|
||||||
* Redistributions in binary form must reproduce the above copyright
|
|
||||||
notice, this list of conditions and the following disclaimers in the
|
|
||||||
documentation and/or other materials provided with the distribution.
|
|
||||||
|
|
||||||
* Neither the names of Revingly, Food&Drinks-redux nor the names of its
|
|
||||||
contributors may be used to endorse or promote products derived from
|
|
||||||
this Software without specific prior written permission.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
||||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH
|
|
||||||
THE SOFTWARE.
|
|
@ -1,2 +0,0 @@
|
|||||||
This file should be placed into user/mods.
|
|
||||||
File name should be FoodDrink
|
|
@ -1,85 +0,0 @@
|
|||||||
{
|
|
||||||
"_id": "FoodDrink",
|
|
||||||
"working": true,
|
|
||||||
"customization_seller": false,
|
|
||||||
"name": "FoodDrink",
|
|
||||||
"surname": " ",
|
|
||||||
"nickname": "FoodDrink",
|
|
||||||
"location": "Get your food and drinks here ",
|
|
||||||
"avatar": "/files/trader/avatar/FoodDrink.jpg",
|
|
||||||
"balance_rub": 5000000,
|
|
||||||
"balance_dol": 0,
|
|
||||||
"balance_eur": 0,
|
|
||||||
"unlockedByDefault": true,
|
|
||||||
"discount": 0,
|
|
||||||
"discount_end": 0,
|
|
||||||
"buyer_up": true,
|
|
||||||
"currency": "RUB",
|
|
||||||
"nextResupply": 1615141448,
|
|
||||||
"repair": {
|
|
||||||
"availability": false,
|
|
||||||
"quality": "2",
|
|
||||||
"excluded_id_list": [],
|
|
||||||
"excluded_category": [],
|
|
||||||
"currency": "5449016a4bdc2d6f028b456f",
|
|
||||||
"currency_coefficient": 1,
|
|
||||||
"price_rate": 10
|
|
||||||
},
|
|
||||||
"insurance": {
|
|
||||||
"availability": false,
|
|
||||||
"min_payment": 0,
|
|
||||||
"min_return_hour": 0,
|
|
||||||
"max_return_hour": 0,
|
|
||||||
"max_storage_time": 99,
|
|
||||||
"excluded_category": []
|
|
||||||
},
|
|
||||||
"gridHeight": 150,
|
|
||||||
"loyaltyLevels": [
|
|
||||||
{
|
|
||||||
"minLevel": 1,
|
|
||||||
"minSalesSum": 0,
|
|
||||||
"minStanding": 0,
|
|
||||||
"buy_price_coef": 38,
|
|
||||||
"repair_price_coef": 175,
|
|
||||||
"insurance_price_coef": 10,
|
|
||||||
"exchange_price_coef": 0,
|
|
||||||
"heal_price_coef": 0
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"sell_category": [
|
|
||||||
"82e7fac0b7495d72d4083356",
|
|
||||||
"ac705d3440c1407645e33579",
|
|
||||||
"dc97aee367144dc03389405d",
|
|
||||||
"7ffcc96aa06c7e90940330c5",
|
|
||||||
"e8f46e3ad74b9d862121f9dc",
|
|
||||||
"5b47574386f77428ca22b33e",
|
|
||||||
"5b47574386f77428ca22b33f",
|
|
||||||
"5b5f78dc86f77409407a7f8e",
|
|
||||||
"5b47574386f77428ca22b346",
|
|
||||||
"5b47574386f77428ca22b340",
|
|
||||||
"5b47574386f77428ca22b344",
|
|
||||||
"5b47574386f77428ca22b342",
|
|
||||||
"5b47574386f77428ca22b341",
|
|
||||||
"5b47574386f77428ca22b345",
|
|
||||||
"5b47574386f77428ca22b343",
|
|
||||||
"5b5f71b386f774093f2ecf11",
|
|
||||||
"5b5f71c186f77409407a7ec0",
|
|
||||||
"5b5f71de86f774093f2ecf13",
|
|
||||||
"5b5f724186f77447ed5636ad",
|
|
||||||
"5b5f736886f774094242f193",
|
|
||||||
"5b5f73ec86f774093e6cb4fd",
|
|
||||||
"5b5f74cc86f77447ec5d770a",
|
|
||||||
"5b5f750686f774093e6cb503",
|
|
||||||
"5b5f751486f77447ec5d770c",
|
|
||||||
"5b5f752e86f774093e6cb505",
|
|
||||||
"5b5f754a86f774094242f19b",
|
|
||||||
"5b5f755f86f77447ec5d770e",
|
|
||||||
"5b5f757486f774093e6cb507",
|
|
||||||
"5b5f75b986f77447ec5d7710",
|
|
||||||
"5b5f75c686f774094242f19f",
|
|
||||||
"5b5f75e486f77447ec5d7712",
|
|
||||||
"5b5f760586f774093e6cb509",
|
|
||||||
"5b5f761f86f774094242f1a1",
|
|
||||||
"5b5f764186f77447ec5d7714"
|
|
||||||
]
|
|
||||||
}
|
|
@ -1,8 +0,0 @@
|
|||||||
/**
|
|
||||||
* authors: - Wulv
|
|
||||||
* - Revingly
|
|
||||||
*/
|
|
||||||
|
|
||||||
const { Mod } = require("./src/mod.js");
|
|
||||||
|
|
||||||
module.exports.mod = new Mod();
|
|
@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"name": "FoodDrink-Redux",
|
|
||||||
"author": "Revingly",
|
|
||||||
"version": "2.9.0",
|
|
||||||
"license": "NCSA",
|
|
||||||
"main": "package.js",
|
|
||||||
"akiVersion": "2.3.1"
|
|
||||||
}
|
|
Binary file not shown.
Before Width: | Height: | Size: 28 KiB |
@ -1,3 +0,0 @@
|
|||||||
{
|
|
||||||
"original_prices": true
|
|
||||||
}
|
|
@ -1,106 +0,0 @@
|
|||||||
/**
|
|
||||||
* authors: - Wulv
|
|
||||||
* - Revingly
|
|
||||||
*/
|
|
||||||
|
|
||||||
"use strict";
|
|
||||||
|
|
||||||
class Mod {
|
|
||||||
constructor() {
|
|
||||||
this.mod = "Revingly-FoodDrink-Redux";
|
|
||||||
this.funcptr = HttpServer.onRespond["IMAGE"];
|
|
||||||
|
|
||||||
Logger.info(`Loading: ${this.mod}`);
|
|
||||||
ModLoader.onLoad[this.mod] = this.load.bind(this);
|
|
||||||
HttpServer.onRespond["IMAGE"] = this.getImage.bind(this);
|
|
||||||
this.itemsToSell = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
getImage(sessionID, req, resp, body) {
|
|
||||||
const filepath = `${ModLoader.getModPath(this.mod)}res/`;
|
|
||||||
|
|
||||||
if (req.url.includes("/avatar/FoodDrink")) {
|
|
||||||
HttpServer.sendFile(resp, `${filepath}FoodDrink.jpg`);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this.funcptr(sessionID, req, resp, body);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
load() {
|
|
||||||
Logger.info(`Loading: ${this.mod}`);
|
|
||||||
|
|
||||||
const filepath = `${ModLoader.getModPath(this.mod)}db/`;
|
|
||||||
|
|
||||||
DatabaseServer.tables.traders.FoodDrink = {
|
|
||||||
"assort": this.createFoodAndDrinkAssortTable(),
|
|
||||||
"base": JsonUtil.deserialize(VFS.readFile(`${filepath}base.json`))
|
|
||||||
};
|
|
||||||
|
|
||||||
let locales = DatabaseServer.tables.locales.global;
|
|
||||||
|
|
||||||
for (const locale in locales) {
|
|
||||||
locales[locale].trading.FoodDrink = {
|
|
||||||
"FullName": "Food & Drink",
|
|
||||||
"FirstName": "Food & Drink",
|
|
||||||
"Nickname": "Food & Drink",
|
|
||||||
"Location": "In the food shop",
|
|
||||||
"Description": "Get your food and drink here!"
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
DatabaseServer.tables.locales.global = locales;
|
|
||||||
|
|
||||||
// Add refresh time in seconds
|
|
||||||
const traderRefreshConfig = {"traderId": "FoodDrink","seconds": 3600}
|
|
||||||
TraderConfig["updateTime"].push(traderRefreshConfig);
|
|
||||||
}
|
|
||||||
|
|
||||||
createFoodAndDrinkAssortTable() {
|
|
||||||
const { original_prices } = require('./config.json');
|
|
||||||
const FOOD_ID = "5448e8d04bdc2ddf718b4569";
|
|
||||||
const WATER_ID = "5448e8d64bdc2dce718b4568";
|
|
||||||
const FOOD_CONTAINER_ID = "5c093db286f7740a1b2617e3";
|
|
||||||
const SELL_AMOUNT = 10000;
|
|
||||||
const ROUBLE_ID = "5449016a4bdc2d6f028b456f";
|
|
||||||
const items = DatabaseServer.tables.templates.items;
|
|
||||||
const prices = DatabaseServer.tables.templates.prices;
|
|
||||||
|
|
||||||
return Object
|
|
||||||
.values(items)
|
|
||||||
.filter(item => item._parent === FOOD_ID || item._parent === WATER_ID || item._id === FOOD_CONTAINER_ID)
|
|
||||||
.map(item => {
|
|
||||||
return {
|
|
||||||
"_id": HashUtil.generate(),
|
|
||||||
"_tpl": item._id,
|
|
||||||
"parentId": "hideout",
|
|
||||||
"slotId": "hideout",
|
|
||||||
"upd": {
|
|
||||||
"UnlimitedCount": true,
|
|
||||||
"StackObjectsCount": 999999999
|
|
||||||
}
|
|
||||||
}
|
|
||||||
})
|
|
||||||
.reduce((acc, item) => {
|
|
||||||
acc.items.push(item);
|
|
||||||
acc.barter_scheme[item._id] = [
|
|
||||||
[
|
|
||||||
{
|
|
||||||
"count": original_prices ? prices[item._tpl] : SELL_AMOUNT ,
|
|
||||||
"_tpl": ROUBLE_ID
|
|
||||||
}
|
|
||||||
]
|
|
||||||
];
|
|
||||||
acc.loyal_level_items[item._id] = 1;
|
|
||||||
return acc;
|
|
||||||
},
|
|
||||||
{
|
|
||||||
items: [], barter_scheme: {}, loyal_level_items: {}
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module.exports.Mod = Mod;
|
|
Loading…
x
Reference in New Issue
Block a user