Commit Graph

549 Commits

Author SHA1 Message Date
Christopher F
7fb032c9d2 Make changes per discussion
Instead of using fields, we will now use properties (that must have a setter).
2016-12-14 17:07:24 -05:00
Christopher F
b33df6ad77 Add InjectAttribute, inject into fields flagged with it from DepMap
This allows users to flag a field with InjectAttribute, and when the module is created at runtime, this field will be filled in with the object from the dependency map.
2016-12-14 16:38:28 -05:00
Christopher F
0f334d24a0 Add Transients/Factories to Dependency Injection 2016-12-14 16:12:02 -05:00
Finite Reality
9aa924f75c Remove blank line 2016-12-11 18:07:30 +00:00
FiniteReality
b4f8b0601f Fix #408
A.K.A. "FiniteReality is a twat"
2016-12-10 19:05:33 +00:00
FiniteReality
70d30efb94 Implement configurable command node separators
This fixes #304 over foxbot's PR for the same issue.
2016-12-09 10:31:57 +00:00
RogueException
803b65212e Merge pull request #364 from FiniteReality/feature/parameter-tweaks
Parameter preconditions and typereader overriding
2016-12-07 21:39:55 -04:00
RogueException
f772956558 Merge branch 'issue/384' of git://github.com/james7132/Discord.Net into james7132-issue/384 2016-12-05 19:00:39 -04:00
Aux
d4d8e721db Resolves #390
Fix case insensitive commands forcing parameters to return lowercase
2016-12-04 17:29:39 -04:00
FiniteReality
704b2b75f4 Fix changes after review 2016-12-03 23:51:20 +00:00
FiniteReality
254e874c99 Fix OverrideTypeReader
This commit also adds a TypeReaders property to CommandService, so
it is possible to see all of the registered TypeReaders. This makes
it possible for users to implement their own parsing instead of
using the built-in parsing.
2016-12-03 23:51:20 +00:00
FiniteReality
d2d7b4dce7 Make _typeReaderTypeInfo static
Seems I missed this originally, whoops.
2016-12-03 23:49:05 +00:00
FiniteReality
156483bf71 Rename overridenType to overridenTypeReader
The previous name was causing some confusion
2016-12-03 23:49:05 +00:00
FiniteReality
f11f416024 Add IDependencyMap to parameter preconditions 2016-12-03 23:49:05 +00:00
FiniteReality
b7a5ee6542 Parameter preconditions and typereader overriding 2016-12-03 23:49:05 +00:00
james7132
2c768c413a Revert CommandService.Modules change 2016-11-30 19:52:58 +00:00
james7132
790ca10d17 Fix accidental line join 2016-11-28 20:44:29 -08:00
james7132
4896524d1a Limit CommandService.Modules to top level modules 2016-11-28 20:44:29 -08:00
james7132
6865318071 Fix IsSubmodule property's correctness 2016-11-28 20:40:44 -08:00
james7132
0771fcce63 Add Parent property to ModuleInfo 2016-11-28 20:40:44 -08:00
james7132
3e35666186 Add TimeSpan TypeReader 2016-11-27 01:57:12 -08:00
RogueException
08ae9e4e86 Fixed logic in precondition attribute docstrings 2016-11-27 01:13:29 -04:00
RogueException
2a33bb0c12 Escaped amp in XML example. 2016-11-27 01:07:19 -04:00
Christopher F
d72122eef9 Resolve conflicts. 2016-11-26 23:15:36 -05:00
Christopher F
ecc3d9c729 Add configuration option for case insensitive commands
Currently, commands are case-sensitive. This PR allows for commands to be case insensitive (which is now the default option).
2016-11-26 23:12:23 -05:00
RogueException
a0c9ba92db Merge branch 'dev' into feature/more-preconditions 2016-11-26 23:41:45 -04:00
Christopher F
55f6efd080 Merge branch 'issue/365'
Conflicts:
	src/Discord.Net.Commands/CommandService.cs
2016-11-26 22:26:47 -05:00
Christopher F
fb99b019a0 Fix issues with DefaultRunMode
For a command to use the DefaultRunMode, it must now have it's RunMode set to RunMode.Default (this is the default value on CommandAttribute now).
2016-11-26 22:04:02 -05:00
Christopher F
1ed4f703bf Cache the current application on DiscordSocketClient 2016-11-26 14:59:20 -05:00
Christopher F
f9c5e229d0 Add CommandServiceConfig, DefaultRunMode
This adds an (optional) CommandServiceConfig, as well as a DefaultRunMode for commands.

This resolves #368 (for commands where a RunMode is not explicitly specified, a custom default value should be used)
2016-11-25 18:49:35 -05:00
Christopher F
defc8f1c4e Add docstrings to preconditions. 2016-11-25 18:09:18 -05:00
Christopher F
ea148db08b Add RequireBotPermission, rename RequirePermission
This is a breaking change.

Adds a precondition that requires the bot has a specified permission (Resolves #211).

Renames RequirePermission to RequireUserPermission.
2016-11-25 17:48:08 -05:00
Christopher F
fdecfe6bd4 Add RequireOwner Precondition
This precondition will require that the invoker of the command is the owner of the bot.
2016-11-25 17:44:37 -05:00
FiniteReality
5cdda592c1 Add requested changes 2016-11-25 21:19:41 +00:00
FiniteReality
bc76e38ce5 Fix additional issue with aliases building incorrectly 2016-11-25 21:15:39 +00:00
FiniteReality
05fb81c617 Fix a bunch of issues with aliases 2016-11-20 20:20:23 +00:00
FiniteReality
fd5e237b41 Fix commands from being created with invalid aliases 2016-11-20 13:55:55 +00:00
Davipb
b0286975cd Fix parsing of multiple quoted parameters
This should Fix #262
2016-11-19 11:05:53 -02:00
RogueException
593ba46f1c Cleaned up command builders and async func names 2016-11-18 08:18:00 -04:00
RogueException
a73e411edb Merge branch 'feature/command-builders' of git://github.com/FiniteReality/Discord.Net into FiniteReality-feature/command-builders 2016-11-18 06:11:07 -04:00
FiniteReality
196cce05af Clean up attribute checking and extraneous casts
This probably isn't all of them. This is what I get for copy+pasting code.
2016-11-18 09:24:31 +00:00
FiniteReality
de645548a9 Complete command builders implementation
In theory this should just work, more testing is needed though
2016-11-18 09:14:19 +00:00
RogueException
42cbd67ee0 Removed prerelease tag from project.json 2016-11-17 16:23:12 -04:00
RogueException
cf42bd1854 Restored project.json and old build script 2016-11-17 16:18:49 -04:00
RogueException
9b79019b54 Merge pull request #355 from AntiTcb/fix/enumTypeReader
Values in ImmutableDictionaries were strings rather than enumType
2016-11-17 15:24:17 -04:00
RogueException
0f674d2404 Updated dependencies to .NET Core 1.1 2016-11-17 17:30:51 -04:00
ObsidianMinor
ddca1bc6a4 Migrated projects to Visual Studio 2017 2016-11-17 10:05:30 -06:00
AntiTcb
ef0337752e Proper fix this time, fully tested on names and values. 2016-11-16 23:16:37 -05:00
FiniteReality
6d46347ebc Finish implementation of command builders 2016-11-16 21:01:11 +00:00
AntiTcb
59d393b357 Values in ImmutableDictionaries were strings rather than enumType 2016-11-16 11:43:23 -05:00