Commit Graph

55 Commits

Author SHA1 Message Date
Kwoth
bf817a1436 Medusa modules (sneks) should now inherit medusa description when listed in .mdls command 2022-10-12 23:29:48 +02:00
Kwoth
38e3badb87 Greatly unboilerplated and simplified nadeko interaction button construction 2022-08-07 17:00:36 +02:00
Kwoth
99c60459f8 Removed cmd source generator. Commands are no longer partial methods. Compilations should be slightly faster now. Updated packages and adapted drawing code to the new apis. There may be some bugs. 2022-07-18 04:33:50 +02:00
Kwoth
f41b1fb93c Base for 4.3 work. Split Nadeko.Common into a separate project 2022-07-11 00:06:34 +02:00
Kwoth
deaedce6c7 Renamed some of the classes which still had 'Cr' instead of 'Expr' in them 2022-06-16 04:03:59 +02:00
Kwoth
780eec62b3 [ci skip] undoed .gencmdlist path, no effect 2022-06-16 00:56:31 +02:00
Kwoth
7b5145f116 NadekoBot Patronage system, Search commands improvements + fixes 2022-06-14 07:24:33 +00:00
Kwoth
f132aa2624 - Added a simple bank system. Users can deposit, withdraw and check the balance of their currency in the bank.
- Users can't check other user's bank balances.
- Added a button on a .$ command which, when clicked, sends you a message with your bank balance that only you can see.
- Updated pagination, it now uses buttons instead of reactions
- using .h <command group> (atm only .bank is a proper group) will list commands with their descriptions in that group
2022-04-29 07:22:49 +02:00
Kwoth
78d97db224 .modules commanad now has a medusa module description 2022-04-28 06:20:46 +02:00
Kwoth
18400dc53a Fixed a nullref message when the bot is loading medusae. Added support for multiple embeds in features which support custom embeds in the form of
{plainText:text-here, embeds: [embedObject, embedObject, embedObject]}
2022-04-17 09:58:30 +02:00
Kwoth
7cb15f5278 Medusa System Added
Read about the medusa system [here](https://nadekobot.readthedocs.io/en/latest/medusa/creating-a-medusa/)
2022-04-16 12:44:46 +00:00
Kwoth
b7d1fd1b47 Many IDisposable fixes. GlobalNadeko won't have file watchers for creds. Wallet simplified 2022-03-21 15:33:18 +01:00
Kwoth
eda38e64d1 Added many more braces for multiline if's, Improved .crypto command quite a bit and applied locale-specific format 2022-02-04 06:00:17 +01:00
Kwoth
ffa2c3f119 Updated editorconfig to (mostly?) require braces around if/else statements, and applied the new formatting rules 2022-02-02 01:44:45 +01:00
Kwoth
6c39044435 - Using PeriodicTimer in a few places instead of Timer
- Some small refactorings
- Fixed reference to non-existent command in bot.yml
2022-01-05 08:00:25 +01:00
Kwoth
ca9fa1b0ac - Renamed Prefix to prefix
- Updated some command string keys which were using command name to use method names now
2022-01-02 16:52:39 +01:00
Kwoth
2edda76218 - Generator will now also add [NadekoDescription] attribute to commands
- CustomReactions module (and customreactions db table) renamed to Expressions. This was done to remove confusion about how it relates to discord Reactions (it doesn't, it was created and named before discord reactions existed)
- Permissionv2 db table renamed to Permissions
- Expression command now start with ex/expr and end with the name of the action or setting. For example .exd is expression delete
- CommandStrings will now use methodname as the key, and not the command name (first entry in aliases.yml). In other words aliases.yml and commands.en-US.yml will use the same keys (once again).
2022-01-02 12:01:33 +01:00
Kwoth
4b6af0e4ef Fixed some crashes in response strings source generator, reorganized more submodules into their folders 2022-01-02 03:49:54 +01:00
Kwoth
9b4eb21321 Using pattern matching for nulls where applicable, discarded unused lambda parameters, cleaned up some classes. Unignored ServerLog commands which was mistakenly ignored due to a .gitignore rule 2022-01-01 08:44:51 +01:00
Kwoth
25eeffa163 - Removed NadekoCommand and Aliases attribute from all commands
- All commands must be marked as partial
- Added [Cmd] Attribute to all commands
- Cmd Attribute comes from the source generator which adds [NadekoCommand] and [Aliases] Attribute to each command
- Should be updated in the future probably to be more performant and maybe add extra data to the commands
- Started reorganizing modules and submodules
2021-12-31 16:05:30 +01:00
Kwoth
82000c97a4 Applied codestyle to all .cs files 2021-12-29 06:07:16 +01:00
Kwoth
723447c7d4 - Updated editorconfig rules to hopefully look a bit nicer.
- Removed configureawait(false) from everywhere as it doesnt' do anything in a console app and just makes the code look ugly
- Started using .WhenAll extension instead of Task.WhenAll to make it look nicer when chaining methods
2021-12-28 21:14:40 +01:00
Kwoth
59f5056035 NadekoBot.Extensions should now be fully annotated with nullable reference types as well as many classes from NadekoBot.Common 2021-12-28 10:44:00 +01:00
Kwoth
d5fd6aae8e - More code cleanup and codestyle updates
- Fixed some possible nullref exceptions
- Methods signatures now have up to 3 parameters before breakaing down each parameter in a separate line
- Method invocations have the same rule, except the first parameter will be in the same line as the invocation to prevent some ugliness when passing lambas as arguments
- Applied many more codestyles
- Extensions folder fully reformatted
2021-12-26 17:28:39 +01:00
Kwoth
d18f9429c6 Kotz's editorconfig styles slightly modified. Target typed new usage. Brackets in expressions used for clarity. 2021-12-26 02:52:09 +01:00
Kwoth
26ee6ce4d3 Using new .Chunk and .DistinctBy Linq Extensions 2021-12-24 02:10:21 +01:00
Kwoth
da849f7c7b global using NadekoBot.Extensions 2021-12-23 08:04:00 +07:00
Kwoth
93b8bca018 Switch to discord.net 3.0.0 2021-12-23 08:02:23 +07:00
Kwoth
c66e491ce9 Implicit usings and more global usings 2021-12-21 02:36:47 +01:00
Kwoth
9223d78849 Removed redundant parenthesis 2021-12-20 03:54:30 +01:00
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
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
Kwoth
1df947d54b .rero now optionally takes a message id to which to attach the reaction roles 2021-09-12 01:07:19 +02:00
Kwoth
565c1132fa Changed last few usages of old string based gettext. All strings now use new system. Needs testing 2021-09-06 21:34:53 +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
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
9f6cbe0929 ban templates will now use smarttext instead of crembed 2021-09-06 21:34:51 +02:00
Kwoth
468bc5324d - Fixed calls to SendAsync - they don't require EmbedBuilderService
- DmHelpText now uses smarttext and supports user-related placeholders
2021-09-06 21:34:51 +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
5b4daa9dd3 All .AddField calls no longer use builder
- Cleaned up convertlist and listserver embeds slightly
2021-09-06 21:34:50 +02:00
Kwoth
cbecd823c1 Cleaned up embedbuilder calls to use parameters instead of footer builder 2021-09-06 21:34:50 +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
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
656db01aca - removed unused attributes on commands
- Removed some commented out files
2021-09-06 21:34:48 +02:00