Commit graph

85 commits

Author SHA1 Message Date
Camotoy
3f4ed67597
Add Item classes to partially replace ItemMapping. Part 1? 2022-12-29 15:10:40 -05:00
Camotoy
7f38496d61
Return null if no definition found 2022-12-23 20:24:53 -05:00
Camotoy
e295f910c4
BlockMappings extends DefinitionRegistry 2022-12-23 19:40:42 -05:00
Camotoy
08c15a86ec
You can connect now. Command translation doesn't work though. 2022-12-23 16:18:48 -05:00
Camotoy
ebcb82c7e7
Fix custom item register message being printed twice 2022-12-23 12:18:09 -05:00
Konicai
4b847350b6
Protocol 3.0: ContainerType enum and registries (#3470)
* P3 Updates: ContainerType enum and registries

* Remove unused math import
2022-12-23 12:06:41 -05:00
Camotoy
3e778cdb49
Merge branch 'feature/protocol-3.0' of https://github.com/GeyserMC/Geyser into feature/protocol-3.0 2022-12-20 20:01:05 -05:00
Camotoy
4fe9aeca40
Merge branch 'master' of https://github.com/GeyserMC/Geyser into feature/protocol-3.0 2022-12-20 19:47:45 -05:00
Konicai
2d3dd89162
Some misc fixes 2022-12-14 17:57:08 -05:00
Konicai
a988fbf290
Update inventory translators 2022-12-14 17:23:55 -05:00
Konicai
84248fa902
Merge remote-tracking branch 'upstream/master' into feature/protocol-3.0
# Conflicts:
#	core/src/main/java/org/geysermc/geyser/entity/type/living/monster/EndermanEntity.java
#	core/src/main/java/org/geysermc/geyser/inventory/holder/BlockInventoryHolder.java
#	core/src/main/java/org/geysermc/geyser/network/ConnectorServerEventHandler.java
#	core/src/main/java/org/geysermc/geyser/network/GameProtocol.java
#	core/src/main/java/org/geysermc/geyser/network/UpstreamPacketHandler.java
#	core/src/main/java/org/geysermc/geyser/registry/populator/BlockRegistryPopulator.java
#	core/src/main/java/org/geysermc/geyser/registry/populator/ItemRegistryPopulator.java
#	core/src/main/java/org/geysermc/geyser/session/GeyserSession.java
#	core/src/main/java/org/geysermc/geyser/text/ChatTypeEntry.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/bedrock/BedrockInventoryTransactionTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaCommandsTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaDisguisedChatTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/JavaPlayerChatTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/entity/player/JavaPlayerInfoTranslator.java
#	core/src/main/java/org/geysermc/geyser/translator/protocol/java/level/JavaExplodeTranslator.java
#	core/src/main/java/org/geysermc/geyser/util/DimensionUtils.java
#	core/src/main/java/org/geysermc/geyser/util/InventoryUtils.java
#	gradle/libs.versions.toml
2022-12-14 15:58:17 -05:00
Kas-tle
b27b1c86bd
Makes bows, crossbows, tridents, projectiles, and lighters registered as custom items function properly (#3420)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-12-11 13:15:49 -05:00
Camotoy
6876a90c3b
Lower size of BiomeDefinitionsPacket 2022-12-09 13:39:24 -05:00
Konicai
7d165e329b
Revert "Drop anything below 1.19.50"
This reverts commit 58eede37
2022-12-03 17:20:33 -05:00
Konicai
58eede37c0
Drop anything below 1.19.50 2022-12-02 00:28:24 -05:00
Konicai
92aa2059d2
Merge remote-tracking branch 'upstream/master' into JE-1.19.3 2022-12-01 22:00:57 -05:00
RednedEpic
8f96823048 Add support for Bedrock 1.19.50 (560) 2022-11-28 20:53:17 -06:00
Konicai
2f56f02477
Recipe fix thing 2022-11-22 18:58:34 -05:00
Kas-tle
7171ade0bd
Prevent double placement for custom block items (#3399) 2022-11-18 14:04:22 -05:00
RednedEpic
74798d8071 Remove old network code & use manual ping 2022-10-30 17:00:08 -05:00
RednedEpic
3f42d68f4e Update to latest Protocol changes & cleanup item registry populator 2022-10-30 11:34:08 -05:00
RednedEpic
a133308f51 It compiles! 2022-10-29 22:02:11 -05:00
RednedEpic
18e7db8c30 Start on update to Protocol 3.0 2022-10-29 19:23:21 -05:00
Camotoy
a612be60aa
Warn when custom item name begins with a digit 2022-10-21 14:09:17 -04:00
Camotoy
0e07991edf
Changes as I was randomly staring at the code 2022-10-17 23:36:46 -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
cb864b3c98 Fix NPE with furnace minecart with NBT data 2022-09-30 21:21:37 -04:00
Camotoy
1b6cfad5ad
Fix ghost blocks when insta-mining on 1.19+
Fixes #3113
2022-09-27 19:24:50 -04:00
Camotoy
55f7253a98
Let biomes NBT be parsed by 1.19.30 2022-09-21 12:27:16 -04:00
Camotoy
e64e12ff98
Initial support for 1.19.30 Bedrock 2022-09-14 21:17:08 -04:00
ImDaBigBoss
f1da9d7072 Allow events to be registered by any class
Supersedes & closes #3073

Co-authored-by: Redned <redned235@gmail.com>
2022-09-04 16:11:08 -05:00
RednedEpic
e5337b6298 Reintroduce GeyserDefineCommandsEvent and cleanup a few things 2022-09-04 13:08:17 -05:00
Tim203
13046a8602
Fixed building and switched event library 2022-08-13 22:48:12 +02:00
Konicai
259fed247a
Merge remote-tracking branch 'upstream/master' into ext-1.19.20-fixes
# Conflicts:
#	core/pom.xml
2022-08-09 19:27:25 -04:00
7man7LMYT
ef81bdeb6b
Update items to 1.19.20 (#3215)
* Update to 1.19.20

* Add 1.19.20 mapping

* Revert biome changes
2022-08-09 16:52:53 -04:00
Konicai
ee5e916112
Merge remote-tracking branch 'upstream/master' into ext-1.19.20
# Conflicts:
#	core/pom.xml
2022-08-09 14:36:54 -04:00
Camotoy
f74713c0ed
Initial support for 1.19.20 Bedrock 2022-08-07 12:09:54 -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
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
sctigercat1
467286060c
Update items to 1.19.10 (#3151)
Co-authored-by: Camotoy <20743703+Camotoy@users.noreply.github.com>
2022-07-19 21:23:04 -04:00
Kas-tle
363d72da91
Merge remote-tracking branch 'origin/master' into feature/extensions 2022-07-12 05:26:52 +00:00
Camotoy
897c4dcfec
Changes 2022-07-09 18:39:02 -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
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
David Choo
5e1769d2bd
Translate goat horns (#3057) 2022-06-15 22:55:11 -04:00
ImDaBigBoss
4e2f74481b Updated to 1.19 2022-06-08 14:09:14 +02:00
Camotoy
c8856d487d
Compile too 2022-06-06 22:56:08 -04:00
Camotoy
3ac2c981a7
Swap pitch and volume for warden heartbeat 2022-06-02 18:57:33 -04:00
Camotoy
196742a597
Set entities silent client-side, and more
Add warden entity events. Fix up other things.
2022-05-31 14:25:15 -04:00
davchoo
41cd7f4574
SoundEvent and ParticleEvent are now combined 2022-05-26 19:57:45 -04:00