Commit Graph

85 Commits

Author SHA1 Message Date
Kwoth
da2ee0c158 await usings and minor cleanup 2021-12-20 03:02:02 +01:00
Kwoth
1b2017024c More target-typed new and redundant paranthesis cleanup 2021-12-20 00:33:11 +01:00
Kwoth
cd379fd308 vars and target-typed new 2021-12-20 00:15:39 +01:00
Kwoth
ee33313519 Global usings and file scoped namespaces 2021-12-19 05:14:11 +01:00
Kwoth
12a64c4c4d Merge branch 'xpstrspatch' into 'v3'
Update xpex channel to use the right string

See merge request Kwoth/nadekobot!201
2021-12-18 21:11:06 +00:00
Alan Beatty
d275dc36b2 Update xpex channel to use the right string 2021-12-18 11:13:02 +00:00
Alan Beatty
1c24f95efa Replace RequireUserPemission with UserPerm 2021-12-13 13:06:28 +00:00
Kwoth
71f1e43272 .xprewsreset now has correct permissions 2021-12-01 05:41:03 +01:00
Alan Beatty
c28f7cfa07 Remove deprecated method from XpService. 2021-11-20 17:55:33 -06:00
Kwoth
a562a571e2 - .shopadd will now ignore negative price input
- Make sure bot has manage roles permission for .xprr
- Small cleanup
2021-09-22 23:07:23 +02:00
Kwoth
619bee811d Fixed most of the commands which used wrong error color for confirm messages 2021-09-16 23:09:17 +02:00
Kwoth
a09be96200 Added DmHelpTextKeywords to data/bot.yml
- Bot now sends dm help text ONLY if the message contains one of the keywords specified
  - If no keywords are specified, bot will reply to every DM (like before)
- Fixed several commands which used error color for success confirmation messages
2021-09-16 22:52:04 +02:00
Alan Beatty
b17c3d934e Loop through xp rewards.
This allows them to still be applied in case a high amount of xp is gained.
2021-09-06 21:34:55 +02:00
Kwoth
919bedeae6 Changed (almost) all responses to make them use the new system instead of raw strings
- Fixed many invalid string keys
2021-09-06 21:34:53 +02:00
Kwoth
4484732f5d - Fixed counting parameters which have formats in response strings
- Almost finished porting localized string keys as methods
- Compiles
2021-09-06 21:34:53 +02:00
Kwoth
0115d35247 WIP: rework of localized strings, instead of generic LocStr, LocStr is now a struct which contains both the key, and the values which should be put into the value's placeholders. strs' properties are now methods which take values as arguments, and properties if they don't 2021-09-06 21:34:53 +02:00
Kwoth
9d375dccee wip strings rework, experimenting, nothing works 2021-09-06 21:34:52 +02:00
Kwoth
70288f7670 Second iteration of source generated localized strings
- Strs renamed to strs
- Generic params will now default to object instead of string for convenient argument passing
- Many strings changed to use generated properties
2021-09-06 21:34:52 +02:00
Kwoth
42d623b696 Replaced access to .Context with .ctx 2021-09-06 21:34:52 +02:00
Kwoth
5e4754fa40 - Reworked embed builder
- Use IEmbedBuilderService to create embed builders
- Wrapped embed builder and using IEmbedBuilder
2021-09-06 21:34:51 +02:00
Kwoth
0fc5f540d8 - Added Cloneable deep clone source generator nuget package
- Configs are no cloned using generated clone, not by serializing/deserializing
- Arrays/Lists (collections in geneeral) are still not cloned properly
- Removed GetRawData from config as it is no longer needed, new clone is very fast
- Added ICloneable<T> which all configs implement
- Cleaned up config classes/code
2021-09-06 21:34:50 +02:00
Kwoth
a8a4c9fb44 - NoPublicBotAttribute will now be properly ignored when built with GlobalNadeko configuration
- Added ILogCommandsService which will have dummy implementation on public bot, this means Logging Commands will be present on public bot to pull up help etc
- When .ve is enabled, NoPublicBot commands will show a nicer error message with link to selfhosting guide (thx ene)
- Fixed xp gain and .xp command not working on new users
- General cleanup
2021-09-06 21:34:50 +02:00
Kwoth
e681978f83 - xp template reload now uses new pubsub
- multiplexer.GetSubscriber().subscribe is no longer used in any service
- fixed some build warnings
2021-09-06 21:34:50 +02:00
Kwoth
3c82c1f919 - Started cleanup of command handler
- Removed IUnloadableService
- Started removing INService (removed it from services which implement behavior interfaces) - wip
- Added scrutor for better service registration - wip
2021-09-06 21:34:49 +02:00
Kwoth
670b0aca96 - Bot now takes shard id (optional) and total shards (optional) command line arguments (changed from shard id and parent process id)
- Sharding with coordinator now works properly
- Documented creds.yml RestartCommand - it has no effect when coordinator is starting the bot
- Regenerated creds_example.yml
- Removed all db migrators as the v3 requires the user to have updated 2.x all the way
- TotalShards in creds.yml gets overriden by coord.yml's TotalShards if the bot is ran through coordinator (more precisely, by the command line argument to the bot)
- Coordinator now runs on http://localhost:3442 by default, you can change this in appsettings.json
    - This is done because of macos https issues
    - Primarily because https for regular users is a massive hassle. Coordinator shouldn't be exposed anyway
- Minor cleanup
2021-09-06 21:34:49 +02:00
Kwoth
656db01aca - removed unused attributes on commands
- Removed some commented out files
2021-09-06 21:34:48 +02:00
Kwoth
49f9b96755 One of the last major cleanups. All NadekoBot.Core.* namespaces renamed to NadekoBot.* 2021-09-06 21:34:48 +02:00
Kwoth
c86bf6f300 - NadekoBot class renamed to Bot
- Implemented grpc based coordinator. Supports restarting, killing single or all shards, as well as getting current shard statuses. (Adaptation of the one used by the public bot)
- Coord is setup via coord.yml file
- Methods from SelfService which deal with shard/bot restart etc have been moved to ICoordinator (with GrpcRemoteCoordinator being the default implementation atm)
- Vastly simplified NadekoBot/Program.cs
2021-09-06 21:34:46 +02:00
Kwoth
d8c7cdc7f4 Changed all == null to is null and all !(* == null) to * is not null 2021-09-06 21:34:44 +02:00
Kwoth
d42705087e - Database namespace is now NadekoBot.Db
- Db related code is now in src/NadekoBot/Db
- Finished major part of the db refactor, but many optimizations are left to be made
2021-09-06 21:34:43 +02:00
Kwoth
c127dcd1e3 UnitOfWork compltely removed. GetDbContext now returns a NadekoContext. Changed every access to contect via uow._context to uow 2021-09-06 21:34:42 +02:00
Kwoth
51a4499809 DiscordUser repository removed 2021-09-06 21:34:41 +02:00
Kwoth
15dac7e3ed Massive cleanup
- Removed GuildConfigs repository, moved to extensions
- Moved StreamSettings extension to GuildConfig extensions
- namespace NadekoBot.Core has been simplified to NadekoBot in many places (more to come)
- Replaced some raw delete queries with simple linqtodb queries
2021-09-06 21:34:41 +02:00
Kwoth
dbf51a8a1b Removed clubs repository and moved functionality to an extension 2021-09-06 21:34:38 +02:00
Kwoth
91ecf9ca41 Restructured folders and project names, ci should be fixed 2021-09-06 21:29:51 +02:00