e4754ab029
PluginBase: Improved error messages for commands containing illegal characters
2021-11-12 00:16:53 +00:00
6b316dc29a
PluginManager: Make declaration of duplicate permissions a load error
2021-11-06 17:05:37 +00:00
3c754b079c
Move resources/locale to Composer dependency
...
all remaining submodules are now non-essential to running a server.
They are also versioned and updates can be done automatically using 'composer update'.
Finally, we can also put an end to the issue of translations being rendered incorrectly or being missing due to outdated submodules.
2021-11-06 00:32:58 +00:00
7e4be29fc4
Gracefully force-shutdown on failure to start RakLib
...
this now won't generate a crashdump.
2021-11-02 13:51:01 +00:00
aa408c9a97
Fixed 9646128d01
2021-10-20 21:54:57 +01:00
34f54750c8
Added support for creation-time validation of generator options, closes #2717
2021-10-11 17:37:47 +01:00
e1ee320c8d
PluginManager: Localize plugin loading error messages
2021-10-11 00:58:33 +01:00
ccc881ee58
Switch to custom permission denied message
...
closes #4494
2021-10-09 00:57:15 +01:00
a101d1cdf9
Drop pocketmine.plugin.fileError in favour of pocketmine.plugin.loadError
...
fileError was unnecessarily noisy, putting the directory path on the console twice. This conveys just as much information but with less wasted space.
2021-10-05 23:31:00 +01:00
e25c03eec1
Gracefully handle errors loading plugin manifest
...
this isn't perfect, but it covers the common cases.
Now, the server won't spam crashdumps just because some plugin declared nested permissions.
2021-10-05 20:28:43 +01:00
2db79cf58d
Fix build
2021-10-05 18:41:47 +01:00
7d06b76aaf
PluginManager: account for possible invalid format of API version
...
we're seeing a lot of crashes because of this.
2021-10-05 18:36:00 +01:00
fb570970a8
Localize gamemode command errors
2021-10-02 21:22:54 +01:00
30e10c38b6
Localize /help
2021-10-02 20:59:36 +01:00
05dc675d5b
Replace commands.generic.notFound with a custom PM version
...
this also fixes #4379 .
2021-10-02 20:42:59 +01:00
d63b9d1648
WorldManager: localize strings for world loading, generation and conversion
2021-10-02 20:33:32 +01:00
273aa8ab42
Drop useless usage translation strings for commands with no parameters
2021-09-11 17:06:26 +01:00
aa5a9f6d12
Enchantment: use Translatable instead of hardcoded translation keys
2021-09-03 20:52:05 +01:00
e140614a63
Localize /gc
2021-08-26 15:06:43 +01:00
47120022c2
Localize messages for /op and /deop
2021-08-26 13:31:19 +01:00
5da90b9530
Stop auto-translating strings when not asked
...
fixes #4371
2021-08-15 20:44:27 +01:00
39cdf23bd5
Language: Attempt to treat parameters as translation keys, even if they don't have %prefixes
...
%prefixes should only be necessary for embedded translations where the key isn't at the start of the string.
Longer term we should just drop raw string translation entirely and just translate Translatables exclusively, but this is a stepping stone.
2021-08-15 20:00:58 +01:00
60ac76a3bc
Remove more usages of hardcoded translation keys
2021-08-15 19:22:40 +01:00
715fbc9ee5
fix last remaining non-usages of KnownTranslationFactory
2021-08-15 16:35:51 +01:00
789a669395
Rename TranslationContainer -> Translatable
2021-08-15 16:17:46 +01:00
8b9d7d6390
Support for nested TranslationContainers
2021-08-14 20:57:13 +01:00
804d02b086
TranslationContainer: added prefix(), postfix() and format()
2021-08-14 16:08:22 +01:00
fd41a0f510
Remove colors from VersionCommand
...
these will have to stay gone for now, until we have some way to terminate formatting codes without breaking logger output. (we need &p!! #4364 )
2021-08-12 20:35:34 +01:00
f42c9bb6d6
Removed unused translation
2021-08-10 19:48:30 +01:00
2cdd6e634f
New /version format
2021-08-10 19:32:28 +01:00
27a2d06083
Fix CS
2021-08-10 14:53:03 +01:00
2293bd948d
Added KnownTranslationFactory and use it in as many places as possible
...
this makes translation usage much more statically analysable.
The only places this isn't used are:
- places that prefix translations with colours (those are still a problem)
- places where server/client translations don't match (e.g. gameMode.changed accepts different parameters in vanilla than in PM)
2021-08-10 14:50:40 +01:00
d39080c45a
TranslationContainer: Add support for named translation parameters
...
this also fixes use cases like:
[1] = something;
[0] = match(...)
It made no sense whatsoever to discard the keys anyway.
Language::translateString() already supported named parameters since
forever anyway.
2021-08-10 14:26:54 +01:00
94e16f416d
Added KnownTranslationKeys (generated) and start using it
2021-06-29 22:46:04 +01:00
83332024df
TranslationContainer: remove __toString()
...
it doesn't make any sense to use TranslationContainer in this way.
2021-06-29 20:07:39 +01:00
32d7b1e6af
Start using webmozart/pathutil for joining paths ( #4287 )
2021-06-29 19:40:43 +01:00
111f4b3778
Merge commit '2b6dcbc2e2f1dc8d629225c19cbcedfb9ae969c4'
...
# Conflicts:
# resources/vanilla
2020-06-26 18:46:29 +01:00
4c51f1dda3
Scrap TextContainer, make TranslationContainer immutable
...
TextContainer provided zero real value as a base of TranslationContainer, given that it required its own logic to be handled wherever accepted. As such, it's no better than a simple string.
Removing it also allows fixing an ambiguity when embedding translations inside other translations, allowing it to be made immutable.
2020-02-08 13:38:27 +00:00
fb1126797a
Merge branch 'stable'
2020-02-07 18:13:55 +00:00
cc33c8155f
Language: specify key type for lang and fallbackLang fields
2020-02-01 20:20:39 +00:00
ff63f6d055
fill in more iterable types (master)
2020-02-01 20:19:57 +00:00
cb16f5c142
Merge commit '260ac47588c76a2e6814cfba46773a990fb8c5da'
...
# Conflicts:
# resources/vanilla
# src/Server.php
# src/lang/Language.php
# src/network/mcpe/protocol/AddItemActorPacket.php
# src/network/mcpe/protocol/AddPlayerPacket.php
# src/network/mcpe/protocol/SetActorDataPacket.php
# src/network/mcpe/serializer/NetworkBinaryStream.php
# src/permission/Permission.php
# src/pocketmine/block/Leaves.php
# src/pocketmine/entity/DataPropertyManager.php
# src/pocketmine/entity/Entity.php
# src/pocketmine/item/Banner.php
# src/pocketmine/item/Item.php
# src/pocketmine/level/format/io/LevelProvider.php
# src/pocketmine/level/format/io/LevelProviderManager.php
# src/pocketmine/network/mcpe/protocol/AddActorPacket.php
# src/pocketmine/network/mcpe/protocol/LoginPacket.php
# src/pocketmine/tile/Banner.php
# src/scheduler/BulkCurlTask.php
# src/updater/AutoUpdater.php
# src/utils/Config.php
# src/utils/Utils.php
# src/world/generator/Flat.php
# src/world/generator/Generator.php
2020-01-31 21:07:34 +00:00
301460a0ea
Merge commit '8bf469f7fcd428ebc8c3c9b9ab777c79e2824c67'
...
# Conflicts:
# resources/vanilla
# src/lang/Language.php
2020-01-31 19:22:14 +00:00
67bcc1c0fb
phpdoc armageddon for master, pass 1
2020-01-22 11:55:03 +00:00
3ee6887792
populate remaining missing return types, using native returns where possible
...
this is done separately to stable so that stable changes can be integrated easily using an empty merge.
2020-01-19 10:26:35 +00:00
c36377ea5a
Merge branch 'next-minor'
2019-12-12 19:47:12 +00:00
5499ac620c
Removed pocketmine subdirectory, map PSR-4 style
2019-07-30 19:14:57 +01:00
825656feed
Fixed installer language strings, bumped MCPE build to 5 (already compatible)
2014-06-18 19:23:14 +02:00
2385b94ba3
Added PluginBase::getCommand()
2014-03-27 14:56:02 +01:00
cbc64462e6
New directory structure. More powerful startup scripts
2014-03-08 04:41:43 +01:00