mirror of
https://gitlab.com/Kwoth/nadekobot.git
synced 2025-09-12 10:18:27 -04:00
Added bank information to .economy
This commit is contained in:
@@ -8,7 +8,7 @@ Experimental changelog. Mostly based on [keepachangelog](https://keepachangelog.
|
|||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Added support for embed arrays in commands such as .say, .greet, .bye, etc...
|
- Added support for embed arrays in commands such as .say, .greet, .bye, etc...
|
||||||
- Website to create them is live at eb2.nadeko.bot (it will soon be replacing eb.nadeko.bot)
|
- Website to create them is live at eb.nadeko.bot (old one is moved to oldeb.nadeko.bot)
|
||||||
- Embed arrays don't have a plainText property (it's renamed to 'content')
|
- Embed arrays don't have a plainText property (it's renamed to 'content')
|
||||||
- Embed arrays use color hex values instead of an integer
|
- Embed arrays use color hex values instead of an integer
|
||||||
- Old embed format will still work
|
- Old embed format will still work
|
||||||
@@ -21,6 +21,7 @@ Experimental changelog. Mostly based on [keepachangelog](https://keepachangelog.
|
|||||||
- Added `.h <command group>`
|
- Added `.h <command group>`
|
||||||
- Using this command will list all commands in the specified group
|
- Using this command will list all commands in the specified group
|
||||||
- Atm only .bank is a proper group (`.h bank`)
|
- Atm only .bank is a proper group (`.h bank`)
|
||||||
|
- Added "Bank Accounts" entry to `.economy`
|
||||||
|
|
||||||
### Changed
|
### Changed
|
||||||
|
|
||||||
|
@@ -77,7 +77,7 @@ public partial class Gambling : GamblingModule<GamblingService>
|
|||||||
[Cmd]
|
[Cmd]
|
||||||
public async partial Task Economy()
|
public async partial Task Economy()
|
||||||
{
|
{
|
||||||
var ec = _service.GetEconomy();
|
var ec = await _service.GetEconomyAsync();
|
||||||
decimal onePercent = 0;
|
decimal onePercent = 0;
|
||||||
|
|
||||||
// This stops the top 1% from owning more than 100% of the money
|
// This stops the top 1% from owning more than 100% of the money
|
||||||
@@ -94,7 +94,8 @@ public partial class Gambling : GamblingModule<GamblingService>
|
|||||||
.AddField(GetText(strs.currency_planted), N(ec.Planted))
|
.AddField(GetText(strs.currency_planted), N(ec.Planted))
|
||||||
.AddField(GetText(strs.owned_waifus_total), N(ec.Waifus))
|
.AddField(GetText(strs.owned_waifus_total), N(ec.Waifus))
|
||||||
.AddField(GetText(strs.bot_currency), N(ec.Bot))
|
.AddField(GetText(strs.bot_currency), N(ec.Bot))
|
||||||
.AddField(GetText(strs.total), N(ec.Cash + ec.Planted + ec.Waifus))
|
.AddField(GetText(strs.bank_accounts), N(ec.Bank))
|
||||||
|
.AddField(GetText(strs.total), N(ec.Cash + ec.Planted + ec.Waifus + ec.Bank))
|
||||||
.WithOkColor();
|
.WithOkColor();
|
||||||
|
|
||||||
// ec.Cash already contains ec.Bot as it's the total of all values in the CurrencyAmount column of the DiscordUser table
|
// ec.Cash already contains ec.Bot as it's the total of all values in the CurrencyAmount column of the DiscordUser table
|
||||||
|
@@ -1,8 +1,11 @@
|
|||||||
#nullable disable
|
#nullable disable
|
||||||
using LinqToDB;
|
using LinqToDB;
|
||||||
|
using LinqToDB.EntityFrameworkCore;
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
using NadekoBot.Common.ModuleBehaviors;
|
using NadekoBot.Common.ModuleBehaviors;
|
||||||
using NadekoBot.Db;
|
using NadekoBot.Db;
|
||||||
|
using NadekoBot.Db.Models;
|
||||||
|
using NadekoBot.Migrations;
|
||||||
using NadekoBot.Modules.Gambling.Common;
|
using NadekoBot.Modules.Gambling.Common;
|
||||||
using NadekoBot.Modules.Gambling.Common.Connect4;
|
using NadekoBot.Modules.Gambling.Common.Connect4;
|
||||||
using NadekoBot.Modules.Gambling.Common.Slot;
|
using NadekoBot.Modules.Gambling.Common.Slot;
|
||||||
@@ -158,7 +161,7 @@ public class GamblingService : INService, IReadyExecutor
|
|||||||
return toReturn;
|
return toReturn;
|
||||||
}
|
}
|
||||||
|
|
||||||
public EconomyResult GetEconomy()
|
public async Task<EconomyResult> GetEconomyAsync()
|
||||||
{
|
{
|
||||||
if (_cache.TryGetEconomy(out var data))
|
if (_cache.TryGetEconomy(out var data))
|
||||||
{
|
{
|
||||||
@@ -173,6 +176,7 @@ public class GamblingService : INService, IReadyExecutor
|
|||||||
decimal onePercent;
|
decimal onePercent;
|
||||||
decimal planted;
|
decimal planted;
|
||||||
decimal waifus;
|
decimal waifus;
|
||||||
|
decimal bank;
|
||||||
long bot;
|
long bot;
|
||||||
|
|
||||||
using (var uow = _db.GetDbContext())
|
using (var uow = _db.GetDbContext())
|
||||||
@@ -182,6 +186,8 @@ public class GamblingService : INService, IReadyExecutor
|
|||||||
planted = uow.PlantedCurrency.AsQueryable().Sum(x => x.Amount);
|
planted = uow.PlantedCurrency.AsQueryable().Sum(x => x.Amount);
|
||||||
waifus = uow.WaifuInfo.GetTotalValue();
|
waifus = uow.WaifuInfo.GetTotalValue();
|
||||||
bot = uow.DiscordUser.GetUserCurrency(_client.CurrentUser.Id);
|
bot = uow.DiscordUser.GetUserCurrency(_client.CurrentUser.Id);
|
||||||
|
bank = await uow.GetTable<BankUser>()
|
||||||
|
.SumAsyncLinqToDB(x => x.Balance);
|
||||||
}
|
}
|
||||||
|
|
||||||
var result = new EconomyResult
|
var result = new EconomyResult
|
||||||
@@ -190,7 +196,8 @@ public class GamblingService : INService, IReadyExecutor
|
|||||||
Planted = planted,
|
Planted = planted,
|
||||||
Bot = bot,
|
Bot = bot,
|
||||||
Waifus = waifus,
|
Waifus = waifus,
|
||||||
OnePercent = onePercent
|
OnePercent = onePercent,
|
||||||
|
Bank = bank
|
||||||
};
|
};
|
||||||
|
|
||||||
_cache.SetEconomy(JsonConvert.SerializeObject(result));
|
_cache.SetEconomy(JsonConvert.SerializeObject(result));
|
||||||
@@ -207,6 +214,7 @@ public class GamblingService : INService, IReadyExecutor
|
|||||||
public decimal Planted { get; set; }
|
public decimal Planted { get; set; }
|
||||||
public decimal Waifus { get; set; }
|
public decimal Waifus { get; set; }
|
||||||
public decimal OnePercent { get; set; }
|
public decimal OnePercent { get; set; }
|
||||||
|
public decimal Bank { get; set; }
|
||||||
public long Bot { get; set; }
|
public long Bot { get; set; }
|
||||||
}
|
}
|
||||||
}
|
}
|
@@ -939,6 +939,7 @@
|
|||||||
"owned_waifus_total": "Total value of owned waifus",
|
"owned_waifus_total": "Total value of owned waifus",
|
||||||
"bot_currency": "Currency owned by the bot",
|
"bot_currency": "Currency owned by the bot",
|
||||||
"total": "Total",
|
"total": "Total",
|
||||||
|
"bank_accounts": "Bank Accounts",
|
||||||
"no_invites": "No invites on this page.",
|
"no_invites": "No invites on this page.",
|
||||||
"invite_deleted": "Invite {0} has been deleted.",
|
"invite_deleted": "Invite {0} has been deleted.",
|
||||||
"group_name_added": "Group #{0} now has a name: {1}",
|
"group_name_added": "Group #{0} now has a name: {1}",
|
||||||
|
Reference in New Issue
Block a user