Commit Graph

186 Commits

Author SHA1 Message Date
Camotoy 0e07991edf
Changes as I was randomly staring at the code 2022-10-17 23:36:46 -04:00
Kevin Ludwig bd613987ce
Fix empty chunk encoding 2022-10-15 20:26:02 -04:00
Camotoy 8bf8b22d6b
Fix some regressions in custom item handling 2022-10-12 17:21:58 -04:00
Camotoy f59e33d749
Fix behavior of matching custom item predicates
Huge thanks to Kastle for helping me disect this behavior.

- The Unbreakable NBT tag is not the only source for determining if an item should be treated as unbreakable. The damage NBT is also taken into account.
- Custom item options must be processed in an ascending order.
- Multiple conditions may be necessary for an item to be selected.
- Conditions do not have to be exact. See the comments in CustomItemTranslator for an explanation.
- Added a test so we don't break this behavior in the future.
2022-10-10 15:40:07 -04:00
Camotoy 1b6cfad5ad
Fix ghost blocks when insta-mining on 1.19+
Fixes #3113
2022-09-27 19:24:50 -04:00
Kevin Ludwig 2c5c72f85f
Replace particle explosion with particle block explosion in JavaExplodePacket (#3301) 2022-09-23 10:04:15 -04:00
Camotoy 6df9081d6e
Possibly fix recipe class cast errors 2022-09-21 12:52:29 -04:00
Camotoy 5206bc3b99
Elaborate if secure profiles need to be disabled 2022-09-21 12:49:38 -04:00
Camotoy 4e2d750791
Gatekeep RequestAbilityPackets to 1.19.30+ 2022-09-18 12:20:54 -04:00
Camotoy 64c03b9610
Correctly detect flying in 1.19.30 2022-09-18 12:18:47 -04:00
Camotoy e64e12ff98
Initial support for 1.19.30 Bedrock 2022-09-14 21:17:08 -04:00
RednedEpic 8fb22ee225 Merge branch 'master' into feature/extensions 2022-09-04 16:42:14 -05:00
AJ Ferguson 8e47a9f5e9
Ensure bedrock inventory id is at most 100 (#3260) 2022-08-29 12:26:30 -04:00
Kas-tle e35f3785b2
Resolve fallout 2022-08-24 04:53:13 +00:00
Kas-tle 9232310b4d
Upstream 2022-08-24 04:53:00 +00:00
Camotoy 3716b7a84f
Remove initialized check in movement
This probably isn't needed anymore. This was introduced in https://github.com/GeyserMC/Geyser/pull/41 and is probably no longer needed since we never send movement before the player is spawned, and we don't allow movement to go through until the Bedrock player matches the unconfirmed teleport we create in JavaPlayerPositionTranslator. By removing this we should fix some instances of players kicked for 'flying' as players joining in the air would never respond to gravity until Bedrock finished loading.
2022-08-20 14:56:40 -04:00
David Choo 33af9e094c
Fix missing cool down indicator when attacking mobs (#3230) 2022-08-12 22:25:07 -04:00
Tim203 80588a07bd
Initial API changes 2022-08-11 23:17:56 +02:00
Konicai 737df21495
Merge remote-tracking branch 'upstream/master' into ext-1.19.20-fixes
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	pom.xml
2022-08-10 17:01:02 -04:00
Konicai ab2b79485b
Fix sending forms with floodgate for 1.19.20 (#3217)
* Fix sending forms with floodgate

* Comment about 1.19.20

* Swapped if-else

Co-authored-by: Tim203 <mctim203@gmail.com>
2022-08-10 22:09:55 +02:00
David Choo 25a18a2e4f
Fix maps not loading in Bedrock (#3218) 2022-08-09 21:35:26 -04:00
Konicai 7121051d9a
Merge mistake fixes 2022-08-02 00:25:07 -04:00
Konicai aee43e68fa
Merge remote-tracking branch 'upstream/master' into feature/extensions
# Conflicts:
#	ap/pom.xml
#	api/base/pom.xml
#	api/geyser/pom.xml
#	api/pom.xml
#	bootstrap/bungeecord/pom.xml
#	bootstrap/bungeecord/src/main/java/org/geysermc/geyser/platform/bungeecord/GeyserBungeePlugin.java
#	bootstrap/pom.xml
#	bootstrap/spigot/pom.xml
#	bootstrap/sponge/pom.xml
#	bootstrap/standalone/pom.xml
#	bootstrap/standalone/src/main/java/org/geysermc/geyser/platform/standalone/GeyserStandaloneBootstrap.java
#	bootstrap/velocity/pom.xml
#	common/pom.xml
#	core/pom.xml
#	core/src/main/java/org/geysermc/geyser/command/CommandManager.java
#	core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaLoginTranslator.java
#	core/src/main/resources/languages
#	pom.xml
2022-08-02 00:01:05 -04:00
Camotoy 8f8964761a
Merge branch 'feature/1.19.1' 2022-07-28 17:45:55 -04:00
Camotoy 40fde6b046
Some nitpicks and cleaning up the provider API
The command changes here are not final. Internally we're discussing if we want to allow extensions to register root commands on platforms.
2022-07-26 18:33:39 -04:00
Camotoy f4a5ccb1f9
Empty villager trades are valid
Fixes #3171
2022-07-24 19:41:05 -04:00
Camotoy a18ac29a91
Initial 1.19.1 Java support 2022-07-24 19:32:22 -04:00
Camotoy 616c088b66
Fix custom items with ItemTranslator#getBedrockItemMapping 2022-07-20 18:35:40 -04:00
Kas-tle 46faf02474 Merge remote-tracking branch 'upstream/master' into feature/extensions 2022-07-14 01:46:26 +00:00
Camotoy f6f8886f23
Fix PS4 players crashing on certain dimension switches 2022-07-13 21:31:10 -04:00
Kas-tle bca6359f7e
1.19.10 fallout 2022-07-12 05:29:39 +00:00
Kas-tle 363d72da91
Merge remote-tracking branch 'origin/master' into feature/extensions 2022-07-12 05:26:52 +00:00
Camotoy 83ba6b5ab5
Extensions have their own command 2022-07-10 20:58:48 -04:00
Camotoy fa726092e3
A cleaner error on illegal set slot packet 2022-07-10 15:52:11 -04:00
Camotoy 4d0952c224
Initial support for 1.19.10 Bedrock 2022-07-10 13:33:39 -04:00
Camotoy 2ce7ff850a
Support the 1.19.0 Java block prediction/ack system 2022-07-09 23:02:19 -04:00
David Choo dc810f1d39
Fix break time while submerged in water (#3110)
* Fix break time while submerged in water

* Review stuff

* LAYERS -> LEVELS
2022-07-02 21:17:14 -04:00
ImDaBigBoss 36c49a7256
Custom item support for extensions (#2822)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-07-02 12:50:16 -04:00
Camotoy 13e8b59ed0
Quick fix for NPE in SystemChatTranslator
This won't matter in 1.19.1 so.
2022-06-30 16:53:55 -04:00
David Choo 5d29bda7eb
Fix incorrect patterns in loom and DecoderException in beacons (#3090)
* Fix DecoderException when setting beacon effect

* Fix incorrect patterns applied in loom and remove old version stuff
2022-06-26 19:12:43 -04:00
Camotoy 2ea50116cf
Forward cooldowns for shields and goats
These are server-controlled as of 1.19. Ender pearls and chorus fruit still appear to be client-controlled.
2022-06-24 23:13:35 -04:00
David Choo 9ea22042eb
Fix some item interactions (#3083)
* Remove Bedrock only banner patterns from the creative inventory

* Add sound for tadpole bucket

* Fix lily pad and frogspawn placing on mobile/single stacks

* Workaround? Fix? for bucket usage on mobile

* Simplify math and update position+rotation whenever ServerboundUseItemPacket is sent

* Rotate the player back after using an item and fix glass bottles

* ITEM_USE actionType 1 does not need the rotation fix

Increase delay for look back

* Add some checks

* Prevent buckets and spawn eggs from being unintentionally placed when interacting with special blocks

As of 1.19 Bedrock no longer sends a PlayerActionPacket with action=BLOCK_INTERACT. Bedrock now sends action=ITEM_USE_ON_START before and action=ITEM_USE_ON_STOP after using an item on a block. However, this is not useful as it is sent for all block interactions.

* Fix inventory transactions being rejected after restoreCorrectBlock

The held item's netId is always 0 in the InventoryTransactionPacket.

* Touch ups

* Fix lookAt for different poses and sneaking + cauldron + bucket interactions

Fix boat items being desynced when placing them very close to collision
Fix bottles being desynced when tapping above water

Resend the held item if we do encounter a desync

* Avoid getting blockstate twice and fix comment

* Use generated interaction data

* Fix glass bottles being double filled and phantom water bottles/water buckets

* Don't update the entire inventory on useItem

* Use Geyser's inventory copy for check

* Use ItemTranslator#getBedrockItemMapping to avoid NBT translation

* mappings

Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-06-24 16:48:28 -04:00
AJ Ferguson 71c489b462
Add missing villager entity events (#3063) 2022-06-17 12:25:49 -04:00
David Choo 5e1769d2bd
Translate goat horns (#3057) 2022-06-15 22:55:11 -04:00
Camotoy 7739e8097e
Another locale string to pick up on for outdated servers 2022-06-15 19:59:27 -04:00
Camotoy ddd2262380
Custom chat types at login are valid
Fixes https://github.com/GeyserMC/Geyser-Fabric/issues/55
2022-06-15 18:32:27 -04:00
ImDaBigBoss db003293e9 Merge master 2022-06-12 10:33:32 +02:00
Camotoy 162aff4978
Better handle chat packets sent before login 2022-06-10 10:27:07 -04:00
Camotoy 72a9df58e0
Properly support differently setup chat registries
ViaVersion has two entries in its fake chat registry that are not in the same order as Java. This commit supports that properly and renders subtitled text correctly.

Resolves #3023
2022-06-08 22:30:34 -04:00
ImDaBigBoss 4e2f74481b Updated to 1.19 2022-06-08 14:09:14 +02:00