fix(ecs): Make commands case-insensitive#440
Conversation
|
This would make all commands case-insensitive instead of allowing commands to be case-insensitive. Might be good to make it a configuration option on EcsBuilder |
|
@ikkentim This is the expected behavior. All SA-MP server commands are case-insensitive. PD: I have updated the title of the PR, it is a fix rather than a feature. |
When you use OnPlayerCommandText, it's up to you to decide how to handle the command text, including case sensitive, isn't it? Even strcmp accepts such a parameter. Command processors and the fact that it is a de facto standard is another matter |
You counter your own point here, besides, it would be a breaking change due to behavioral changes in existing systems |
|
Yes, it is a breaking change, but it is worth it, and even if we use a configuration option, it also introduces a breaking change, because we would have to inject an PD: To merge this PR, tell me specifically what I need to modify. |
|
the easiest way would be a simple extension on public static class CommandEcsBuilderExtensions
{
// note: default values in parameters reflect the default
// todo: xml doc block
public static IEcsBuilder ConfigureCommandService(this IEcsBuilder builder, bool ignoreCase = false)
{
var commandService = builder.Services.GetRequiredService<ICommandService>();
commandService.IgnoreCase = ignoreCase; // todo: add property to service
return builder;
}
}might also want to use a method instead of a property for |
Resolves #439