Conversation
UserNugget
left a comment
There was a problem hiding this comment.
В основном все вроде хорошо, но у меня есть пара глобальных вопросов:
Стоит ли использовать {} в логгере с "большими" обьектами? (тот же ConnectedPlayer)
Логгер будет хранить сами обьекты пока не заллогирует сообщение, так что не уверен что так надо делать.
(вроде, надо перепроверить, последний раз я тыкал логгер года 2 назад)
Сами значения ItemComponent'ов не находятся в api, так что сторонним плагинам (тем же limbohub/limbofilter) которые их используют придется использовать сам плагин как либу.
Может как-то переместить их в api? (если возможно это как-то адекватно сделать конечно)
надо будет еще поубирать System.out.println и прочий старый закомментированный код, но это пока совсем не важно
| List the steps on how we can reproduce the issue. Make sure we can easily understand what you mean with each step. | ||
| placeholder: | | ||
| Example: | ||
| 1. Подключиться к оффлайн серверу с LimboAuth с лицензионного клиента |
There was a problem hiding this comment.
Может перевести этот текст на английский?
There was a problem hiding this comment.
потом chatgpt попрошу перевести, как я обычно это и делаю))
| description: | | ||
| Describe what exactly you expected to happen. | ||
| placeholder: | | ||
| Example: "Кот должен сесть." |
There was a problem hiding this comment.
Также, может перевести этот текст на английский?
| LOGGER.error("https://github.com/Elytrium/LimboAPI/releases/"); | ||
| LOGGER.error("****************************************"); | ||
| try { | ||
| if (!UpdatesChecker.checkVersionByURL("https://raw.githubusercontent.com/Elytrium/LimboAPI/master/VERSION", Settings.IMP.VERSION)) { |
There was a problem hiding this comment.
Может выполнять проверку обновлений в другом потоке чтобы оно не увеличивало время запуска?
(не уверен что это хоть на что-то сильно повлияет, но все же)
There was a problem hiding this comment.
надо будет в целом этот метод на HttpClient переделать или на что нибудь подобное что на CompletableFuture'ах работает
|
|
||
| public class RewritingKeyedVelocityTabList extends KeyedVelocityTabList implements RewritingTabList { | ||
|
|
||
| // To keep compatibility with other plugins that use internal fields |
There was a problem hiding this comment.
Ломает последний релиз Velocitab, но не уверен стоит ли оставлять, так как сам Velocitab поправил это у себя неделю назад
There was a problem hiding this comment.
я проверил что getDeclaredField достаёт до оригинальных и удалил за ненадобностью, так что лучше уж ответственность на разрабов плагинов которым оно надо повесить
There was a problem hiding this comment.
вообще я так подумал и надо будет сделать чтобы доставались ещё и оригинальные таб листы чтобы наши служили как мост, либо просто копировали существующие энтри
plugin/src/main/java/net/elytrium/limboapi/injection/tablist/RewritingTabList.java
Show resolved
Hide resolved
|
|
||
|
|
||
| this.getChunkOrNew((int) posX, (int) posZ); | ||
| //this.getChunkOrNew((int) Math.floor(posX), (int) Math.floor(posZ)); |
There was a problem hiding this comment.
хотел проверить несколько кейсов:
переход с фильтра с капчей со схемой на аутх без схемы
переход с фильтра без капчи на аутх без схемы
просто аутх без схемы
|
по поводу ItemComponent'ов я сразу написал в комменте
примеры: |
|
а все {} я потом пересмотрю и добавлю toString на не примитивных объектах |
…o 1.2.0 # Conflicts: # .github/workflows/build.yml # .github/workflows/release.yml # HEADER.txt # HEADER_MIXED.txt # api/HEADER.txt # api/src/main/java/net/elytrium/limboapi/api/chunk/BlockEntityVersion.java # api/src/main/java/net/elytrium/limboapi/api/material/WorldVersion.java # api/src/main/java/net/elytrium/limboapi/api/protocol/map/MapPalette.java # api/src/main/java/net/elytrium/limboapi/api/protocol/packets/PacketFactory.java # build.gradle # gradle/wrapper/gradle-wrapper.properties # plugin/build.gradle # plugin/src/main/java/net/elytrium/limboapi/injection/login/LoginListener.java # plugin/src/main/java/net/elytrium/limboapi/injection/login/LoginTasksQueue.java # plugin/src/main/java/net/elytrium/limboapi/injection/packet/UpsertPlayerInfoHook.java # plugin/src/main/java/net/elytrium/limboapi/injection/tablist/RewritingTabList.java # plugin/src/main/java/net/elytrium/limboapi/mcprotocollib/BitStorage116.java # plugin/src/main/java/net/elytrium/limboapi/protocol/data/StorageUtils.java # plugin/src/main/java/net/elytrium/limboapi/protocol/packets/s2c/ChunkDataPacket.java # plugin/src/main/java/net/elytrium/limboapi/protocol/packets/s2c/DefaultSpawnPositionPacket.java # plugin/src/main/java/net/elytrium/limboapi/protocol/packets/s2c/PositionRotationPacket.java # plugin/src/main/java/net/elytrium/limboapi/protocol/util/NetworkSection.java # plugin/src/main/java/net/elytrium/limboapi/server/LimboImpl.java # plugin/src/main/java/net/elytrium/limboapi/server/LimboPlayerImpl.java # plugin/src/main/java/net/elytrium/limboapi/server/item/SimpleItemComponentManager.java # plugin/src/main/java/net/elytrium/limboapi/server/item/type/BooleanItemComponent.java # plugin/src/main/java/net/elytrium/limboapi/server/item/type/ComponentsItemComponent.java # plugin/src/main/java/net/elytrium/limboapi/server/item/type/DyedColorItemComponent.java # plugin/src/main/java/net/elytrium/limboapi/server/world/SimpleBlock.java # plugin/src/main/java/net/elytrium/limboapi/server/world/SimpleItem.java # plugin/src/main/java/net/elytrium/limboapi/utils/LambdaUtil.java # plugin/src/main/java/net/elytrium/limboapi/utils/ProtocolTools.java
# Conflicts: # plugin/src/main/java/net/elytrium/limboapi/protocol/packets/c2s/MovePacket.java # plugin/src/main/java/net/elytrium/limboapi/protocol/packets/c2s/MovePositionOnlyPacket.java # plugin/src/main/java/net/elytrium/limboapi/protocol/packets/c2s/MoveRotationOnlyPacket.java # plugin/src/main/java/net/elytrium/limboapi/server/LimboImpl.java
Для мерджа нужны тесты item components и set entity data
Так же необходимо порешать все TODO (тот что в AbstractItemComponent надо сделать тем же путём что и в новых версиях апи пейпера, а именно через кучу интерфейсов и кучу бридж методов)
А так же доделать систему сборки (вернуть все плагины, добавить плагин на пуш плагина на modrinth и нормальный libs.versions.toml составить)