Commit graph

818 commits

Author SHA1 Message Date
RednedEpic
b0d0c168d2 Fix bossbar causing players to be unable to break blocks or interact in small areas (Closes #537) 2020-05-17 01:06:07 -05:00
Camotoy
57717795a3
Add enchantment table book on chunk load (#568)
Java's block entity ID is enchantment_table whereas Bedrock's is EnchantTable; this commit adds an exception to the block entity regex as such.
2020-05-16 23:59:03 -05:00
rtm516
95b7055c10
Added map icons (#572)
* Added map icons

* Cleaned up and moved to enum
2020-05-16 23:58:00 -05:00
Camotoy
563cde2ade
Switch to client's translation for jukebox song name. (#573)
Just for consistency with the other part of the code.
2020-05-16 23:57:34 -05:00
rtm516
3220532083
Fixed fishing rod lines not connecting to other players (#580) 2020-05-16 23:57:18 -05:00
Camotoy
b4ecb88d49 Add air bubble UI support (#569)
This commit translates entity metadata ID 1 into the AIR entity metadata.
2020-05-15 15:29:54 -05:00
Camotoy
1b260c16d7
Leash fixes (#567)
* Leash fixes

- Adds visuals for leash string by translating ServerEntityAttachPacket
- Updates position offset for lead knots, making them properly appear on fences

* Add basic description of JavaEntityAttachTranslator
2020-05-15 12:50:34 -05:00
rtm516
2830756a55
Fixed unusable space being off by 1 (#561) 2020-05-15 11:08:44 -05:00
rtm516
919af5203d
Fix banner items loosing patterns in inventory (#560) 2020-05-14 19:41:42 -05:00
Camotoy
d4995acec6
Add support for absorption (golden hearts) (#553)
Absorption is an attribute in Bedrock and an entity metadata value in Java. This commit sends an attribute update packet when the metadata value is updated.
2020-05-14 11:30:33 -05:00
Camotoy
d5c14921e9
Add message when playing record (#549)
It appears that the record message is client-sided in Java Edition, so this sends a message whenever a record is played in-world.
2020-05-13 16:08:52 -05:00
Camotoy
278f59103e
Replace illusioners with pillagers (#550)
Illusioners do not exist in Bedrock edition; this commit replaces them with pillagers so they can be somewhat replicated.
2020-05-13 16:08:32 -05:00
rtm516
6aadfb3a63
Fixed wither shield (#544) 2020-05-13 16:08:14 -05:00
rtm516
46b0054435
Fixed guardian beam getting stuck on players (#540)
* Fixed guardian beam getting stuck on players

* Fixed formatting
2020-05-12 21:31:42 -05:00
rtm516
0c60af66b2
Fixed customised skins causing strange display (#534)
* Fixed customised skins causing strange display

* Cleaned up floodgate player checking

* Fixed cape scale

Co-authored-by: James Harrison <james@fasttortoise.co.uk>
2020-05-11 23:45:16 -05:00
rtm516
c84c0f23cb
Fixed invisible flag not getting set back (#535)
* Fixed invisible flag not getting set back

* Fixed indentation
2020-05-11 23:44:30 -05:00
rtm516
324bc67c97
Fixed small armour stands not respecting invisibility (#533) 2020-05-11 14:56:50 -05:00
rtm516
f9ee569cd5
Various entity fixes (#529)
* Fixed invisible entities nametags being displayed

* Fixed most entity collision boxes

* Fixed area effect cloud not displaying

* Fixed armour stand size and marker

* Fix baby collision boxes

* Fixed squid animation (rotation still broken)

* Fix Guardian beam for local player

* Fixed armour stand invisibility

* Fixed Wither boss data

* Fixed  fishing line attach to entities
2020-05-11 00:09:16 -05:00
Camotoy
64bfad2af9
Use Bukkit methods to send block sound (#522) 2020-05-10 15:25:28 -05:00
720ae3c92d
Add survival-style block pick support (#526)
* Add survival-style block pick support

* Add BedrockBlockPickRequestPacketTranslator.java

* Remove unnecessary println

* Edit styling and add null check

* Fix compile error

* Remove nesting and unnecessary check

* Further reduce nesting

* Change 1-line statements and add missing comment

* Fix creating translator

* Fix imports
2020-05-10 15:05:51 -05:00
RednedEpic
d2a18f8fd5 Remove dangling entity link packet in PlayerEntity for parrots 2020-05-10 14:47:40 -05:00
Camotoy
6192237cc9
Add parrots on player shoulders (#530)
* Add parrots on player shoulders

Parrots on player shoulders are a separate entity in Bedrock, but part of the player metadata in Java. This commit creates a parrot entity from the NBT data given by the player's entity data.

* Remove unused import

* Nullify parrot after despawning

* Remove debug code
2020-05-10 14:38:39 -05:00
Camotoy
34d4817795
Add visual support for double chests (#523)
* Add visual support for double chests

* Update mappings submodule
2020-05-10 14:26:00 -05:00
RednedEpic
e58ffdd3c0 Add support for block break animations from java players to bedrock 2020-05-08 00:18:05 -05:00
RednedEpic
edc8ea998c Add slime and magma cube size support 2020-05-07 22:57:08 -05:00
James Harrison
2355c503c9
Enderchest and Invisible Players fix. (#506)
* Fix EnderChests not showing on legacy servers (Hypixel)
Fix NPCs/Players sometimes being invisible

* Remove unused import

* Fix standard
2020-05-07 21:49:44 -05:00
Camotoy
f11bae0bf0
Fix signs (#439)
* Fix signs on everything except Paper

* Fix sign line placement

* Update shulker box block entity

Co-authored-by: James Harrison <james@fasttortoise.co.uk>
2020-05-06 16:52:57 -05:00
rtm516
5ae95433e5
Bedrock to Bedrock legacy skin support (#276)
* Added legacy skin support for bedrock to bedrock clients

* Added bedrock to bedrock cape handling

* Added bedrock geometry support

* Bedrock skins now work in all auth modes

* Tonne of debug info

* Added fix to prevent customised skins from being loaded

* Added skin size to bedrock client data

* Cleaned debugging code

* Made bedrock cape take priority over third party

* Cut the customised skin image in half to hopefully get it to map

* Removed hacky conversion attempt

* Fixed bedrock skin caching on load and 1.14.60 support

* Cleaned up debug messages

* Added linked player ignore
2020-05-06 16:50:01 -05:00
Luke
4c1dae6714
Add unusable inventory space message (#492)
* Add unusable inventory space message

* Remove unused imports

* Fixed barrier pickup (#1)

Co-authored-by: rtm516 <rtm516@users.noreply.github.com>
2020-05-06 16:05:03 -05:00
Camotoy
48147c2ce3
Fix Floodgate players causing errors on Bukkit. (#490)
Co-authored-by: Tim203 <mctim203@gmail.com>
2020-05-05 12:53:25 -05:00
Luke
7195d20fae
Implement helper methods for sending packets (#487)
* Implement helper methods for sending packets, fixes an NPE when chatting before connecting to the remote server

* Change method names

* Add a space between doc comment lines

* Add debug messages
2020-05-05 10:51:43 -05:00
rtm516
96a7770c22
Fixed entity bugs introduced by 6642f1e and added fishing lines (#483)
* Fixed entity bugs introduced by 6642f1e

* Fixed fishing line not displaying

* Clean extra line and added todo
2020-05-05 10:48:01 -05:00
RednedEpic
20bbbee3eb Remove flower pot debug code 2020-05-05 00:10:23 -05:00
RednedEpic
6642f1ec26 Fix a few entities not showing up and include identifiers for entities in EntityType 2020-05-05 00:09:36 -05:00
RednedEpic
26266bf9b6 Fix black texture of offhand item (Closes #332) 2020-05-04 22:01:34 -05:00
rtm516
eeb4cafbc8
Fix some nested language strings (#482) 2020-05-04 21:32:57 -05:00
James Harrison
5b3e7c965f
Chat/Skin fixes (#480)
* Made MessageUtils mimic java chat behavior
Send ClientSettingsPacket when player joins a server

* Fix comments
Set use client locale instead of hard coding

* Moved chat reset to fix some broken formatting

* Revert MessageUtil as rtm516 has implemented a better fix
2020-05-04 21:32:37 -05:00
Camotoy
b49004ddaf
Add block entity translators for Bedrock-only block entities (#478)
* Initial work on flower pots

* Flowers work in-game, not yet chunk load

* Don't overwrite my code before merge

* Finish up flower pots; add piston support on chunk load

* Clean up

* Remove debug line; update mappings
2020-05-04 21:32:02 -05:00
rtm516
fcf1949b28
Fix trapped chests not displaying (#481) 2020-05-04 19:39:44 -05:00
rtm516
129e10c920
Added automatic git version infomation to startup (#327)
* Added automatic git version infomation to startup

* Moved to compile time replacement

* Cleaned up old functions

* Removed redundant variable

* Added project version to version string
2020-05-04 14:17:25 -05:00
ForceUpdate1
d0a2f6ac27
Fix movement issues #466 (#473) 2020-05-04 01:06:08 -05:00
RednedEpic
7d67b65777 Merge branch 'master' into feature/sounds 2020-05-04 00:51:22 -05:00
RednedEpic
0532d5310f Update mappings 2020-05-04 00:29:22 -05:00
RednedEpic
25d3e0708f Map most all missing sounds 2020-05-03 23:56:07 -05:00
RednedEpic
1aca44ec7f Fix playsounds 2020-05-03 15:56:46 -05:00
rtm516
692e46146c
Remove duplicate commands by name (#474)
* Remove duplicate commands by name

* Removed comment
2020-05-03 15:26:14 -05:00
RednedEpic
7f7d89e517 Add tnt sounds/particles and support for level event sounds 2020-05-03 01:48:38 -05:00
RednedEpic
3370ad3db9 Merge branch 'master' into feature/sounds 2020-05-02 23:06:53 -05:00
Camotoy
9846058377
Add item frames (#415)
* Initial attempt

* Item frames 'work'

* Blocks in the item frames work

* Remove commented code

* Small changes

* More progress

* Whittling down

* Fix swords, etc

* NBT data implemented

* Remove unused import

* Add item frame item removing; add checks for removing item frames

* Add requested changes; clean up logic

* Add license

* Always delay item frame updates by 500 milliseconds

* Switch to per-session item frame cache

* Revert item translator refactoring
2020-05-02 15:44:05 -05:00
RednedEpic
d7592d8216 Add back in explosion translator, add identifier support for sounds
Some sounds require an identifier be added, otherwise they don't properly play.
2020-05-02 01:56:08 -05:00
RednedEpic
99e8ca83ab Fix eating sounds and bow sounds 2020-05-02 01:29:30 -05:00
RednedEpic
ff26dcad0d Start work on entity sounds, other misc implementations/fixes 2020-05-02 01:06:22 -05:00
Camotoy
b07161b0a9
Add block values + note block note graphics (#455)
* Add note block visual without note pitch

* Add rest of block value code

* Add rest of block value code

* Fix pistons, somewhat

* Remove note block attempt

* Re-add whitespace

* Simplify sendPacket of BlockEventPacket

* Add note block visual without note pitch

* Add rest of block value code

* Fix pistons, somewhat

* Remove note block attempt

* Re-add whitespace

* Add mappings for noteblock pitch

* Change noteblock pitch code

* Noteblock Pitch Attempt

* Commit with PistonBlockEntityTranslator

* Cleanup for PR

* Improve pistons

Co-authored-by: blazewalker462 <blazewalker462@protonmail.com>
2020-05-01 00:51:23 -05:00
rtm516
2e3f32d769
Only replace the first '.' in a message (#463) 2020-05-01 00:49:29 -05:00
RednedEpic
f057edb526 Don't show block break animation at all in creative 2020-04-30 00:53:28 -05:00
RednedEpic
0ac4789f2c Don't send sound updates if block of the same type already exists in placing position
This prevents the block place sound (most notably buttons or blocks that don't occupy one whole block) from spamming the client if they have their place button held down.
2020-04-30 00:45:27 -05:00
RednedEpic
ad596cdccb Add sound handlers for block interaction
These sound handlers had to be added since on Minecraft: Java Edition, these sounds are handled clientside whilst Minecraft: Bedrock Edition expects something from the server. To counter this, we emulate the sounds of that on Minecraft: Java Edition within Geyser and send it to the client. The code may seem a tadredundant, but there is not much of an alternative unfortunately.
2020-04-30 00:21:02 -05:00
RednedEpic
4d32f6ab70 Access world manager instead of chunk cache to fix particles on Bukkit version 2020-04-29 15:56:41 -05:00
RednedEpic
364aac7e1a Fix block break particles not displaying in survival 2020-04-29 15:47:29 -05:00
RednedEpic
1fbb755d26 Merge branch 'master' into sound-master 2020-04-29 15:14:25 -05:00
RednedEpic
31be608038 Add block break sounds for blocks with 0 hardness, and refactor some things
The refactors in this commit go a bit beyond the scope of what the sound/effects branch was meant to accomplish, however most of these changes are necessary so chunk caching could be reintroduced for the standalone version. The chunk caching here allows for us to get the block ID before the block was broken, and in the future allow us to implement newer features. Chunk caching is optional (and disabled by default) as on non-Bukkit versions, it can eat up a lot of RAM with many players online.
2020-04-29 15:01:53 -05:00
rtm516
bea070395f
Handle player teleports properly (#389)
* Handle player teleports properly

Co-authored-by: ForceUpdate1 <mneuhaus44@gmail.com>

* impl teleport cache

* impl teleport cache

* removed debugs

* Cleanup

Co-authored-by: ForceUpdate1 <mneuhaus44@gmail.com>
2020-04-29 11:06:25 -05:00
ForceUpdate1
82433f8078
Fix capes (#436)
* fix capes

* remove gson

* clean up

* clean up

* formatting code

* Made the changes fit a bit better into the already existing code

* Throw the nullptr before the download complete message,
making debugging skins less confusing

Co-authored-by: Tim203 <mctim203@gmail.com>
2020-04-29 11:04:45 -05:00
rtm516
7a9fff1a64
Fix shulkers being upside down on load (#446)
* Added shulker box direction handeling

* Update mappings

* Added missing Object2ByteMap

* Cleaned javadoc

* Moved shulker box direction conversion to the mappings generator
2020-04-29 11:01:56 -05:00
ForceUpdate1
87be8c378e
Fix Item Name and Lore (#443)
* add basic item translator

* add licence
remove debugs

* fix default lore
2020-04-29 10:58:29 -05:00
Camotoy
ebbb656d45
Revert sending message when creative crafting table is used (#440) 2020-04-27 15:49:24 -05:00
rtm516
78f2d2c089
Added translation to container names (#442) 2020-04-27 15:48:53 -05:00
rtm516
fc17b7cc7a Disabled attempted rendering of the globe pattern 2020-04-27 02:01:15 -05:00
rtm516
3163ab8ddc
Update mappings (#432) 2020-04-27 01:47:13 -05:00
RednedEpic
efcf739973 Merge branch 'feature/sounds' of https://github.com/GeyserMC/Geyser into sound-master 2020-04-26 00:32:01 -05:00
RednedEpic
c22eb170ec Merge branch 'master' into feature/sounds 2020-04-26 00:26:14 -05:00
RednedEpic
08b7857292 Remove unused imports in GeyserSession 2020-04-26 00:24:06 -05:00
rtm516
2fabcefb8d
Fixed error when certain items are spawned from the creative inventory (#430) 2020-04-25 23:55:20 -05:00
rtm516
257918904b
Fixed spawn egg colours not loading in (#429) 2020-04-25 23:55:06 -05:00
Camotoy
0caecf68db
Only add entity to entity cache if ID doesn't exist (#428) 2020-04-25 23:54:42 -05:00
RednedEpic
497825dd96 Fix NPE in console when a sound was missing and clean up nesting 2020-04-25 18:23:01 -05:00
RednedEpic
7320e38a08 Update mappings 2020-04-25 17:56:39 -05:00
RednedEpic
61587ec320 Use Int2ObjectMap in InventoryCache and JavaServerDeclareCommandsTranslator 2020-04-25 17:56:19 -05:00
RednedEpic
8b487df698 Properly remove players from Geyser playerlist (Fixes #421 2020-04-25 17:53:35 -05:00
rtm516
1a53f53d78
Added barriers to creative inventory crafting grid (#426) 2020-04-25 17:33:52 -05:00
Camotoy
36708da1d6
Add message when you try to use creative crafting table (#422)
* Add message when you try to use creative crafting table

* Update message; set access level
2020-04-25 17:29:26 -05:00
Gerrygames
74f869beb5
Fix map colors, remove unnecessary array stream (#423) 2020-04-25 15:46:24 -05:00
rtm516
602166b25d
Added offhand command (#412) 2020-04-24 23:03:34 -05:00
AJ Ferguson
357b681841
Fix movement when far away from the center of the world (#419)
* Fix movement when far away from the center of the world

* Add comment on why we parse a float as string

Co-authored-by: Redned <redned235@gmail.com>
2020-04-24 22:56:56 -05:00
OnlyBMan
e82adf2cf9
Implement shield blocking (#395)
* basic shield blocking

* Offhand works

* Add Shield as id in BlockTranslator

* Change Block Translator to Item Translator

* Fix formatting

Co-authored-by: DoctorMacc <toy.fighter1@gmail.com>
Co-authored-by: Redned <redned235@gmail.com>
2020-04-24 22:11:28 -05:00
Redned
6a8f4dfa8b
Add missing license header from EffectUtils 2020-04-23 02:12:50 -05:00
RednedEpic
59b2805a4a Fix NPE for unknown enchantments/enchantments not in bedrock 2020-04-23 02:09:40 -05:00
ForceUpdate1
6f7ad4b569
Implement Book pages (#408)
* add text component library
implement books

* add licence header
2020-04-23 01:26:54 -05:00
RednedEpic
79185fabb5 Only send block sounds when a block is being placed
Previously, any time a block was clicked whether it be with a block in the hand or not, a sound would play. This checks if the item in the players hand is indeed a block as well as the same block in the UpdateBlockPacket, and properly plays the packet.
2020-04-23 01:01:33 -05:00
RednedEpic
09297a467c Update submodules 2020-04-22 23:51:22 -05:00
DoctorMacc
b0a8b9219a Add effects support and block break particles/place sounds
Co-authored-by: RednedEpic <redned235@gmail.com>
2020-04-22 23:40:49 -05:00
RednedEpic
3e15d21931 Merge branch 'master' into sound-master 2020-04-22 18:18:13 -05:00
RednedEpic
987edbb217 Nitpicks and add serverbound sound packet translator 2020-04-22 18:17:34 -05:00
ForceUpdate1
733ec2a0ec
Implement Updated Item Translator (#388)
* add item translator

* add item translator

* add nbt item translator

* fix empty list tags

* formatting code

* use Int2ObjectMap
remove session

* rename annotation
2020-04-22 16:26:16 -05:00
RednedEpic
a8805d9d71 Add a /geyser list command (Closes #342) 2020-04-22 01:51:49 -05:00
RednedEpic
e8bf8ff2a0 Fix javadoc related errors 2020-04-22 01:03:46 -05:00
Redned
7ca1d1bea6
Merge pull request #398 from GeyserMC/inventory
Merges branch 'inventory' into master
2020-04-22 00:49:48 -05:00
rtm516
daba0d6d5e
Improved the outdated version kick message (#394)
* Improved the outdated version kick message

* Swapped 'server' to 'proxy'
2020-04-22 00:41:25 -05:00
Camotoy
aad4536990
Fix /fly command (#396)
* Fix /fly

* Add comment
2020-04-21 14:36:13 -05:00
Camotoy
94ecb2c6c7
Block entity rewrite (#382)
* Initial attempt

* Rewrite of the rewrite

* First working implementation

* Far better working implementation

* Clean up imports

* Remove commented code

* Cleanup code; change things

* Remove unused imports

* Cleanup code

* Add licenses; add comment

* More cleanup

* Clarifications

* It complained about a JavaDoc comment

* Update access permissions

* Switch from reflections to iteration over BlockEntityTranslators
2020-04-21 00:32:32 -05:00