randomdude999
- randomdude999
- randomdude999
- Europe/Tallinn
- Yes
- No
When in a superflat world (gamemode doesn't matter), trying to boost elytra flight with fireworks results in the fireworks going off like normal. I am not aiming at a block, because the fireworks start from my position and go up like normal. This only happens when I am actually flying with the elytra, otherwise nothing will happen.
When in a superflat world (gamemode doesn't matter), trying to boost elytra flight with fireworks results in the fireworks going off like normal. I am not aiming at a block, because the fireworks start from my position and go up like normal. This only happens when I am actually flying with the elytra, otherwise nothing will happen.
EDIT: this only seems to happen when this is the first world you join after starting Minecraft, and only if it's a superflat world? really weird
When in a superflat world (gamemode doesn't matter), trying to boost elytra flight with fireworks results in the fireworks going off like normal. I am not aiming at a block, because the fireworks start from my position and go up like normal. This only happens when I am actually flying with the elytra, otherwise nothing will happen.
EDIT: this only seems to happen when this is the first world you join after starting Minecraft, and only if it's a superflat world? really weird
Possible reproduction:
1) Start Minecraft (restart it if it's already running)
2) Create a new creative superflat world (preset does not matter)
3) Get elytra and some fireworks
4) Try to use firework boostingNote that it works after reloading the world, or if any other world was loaded before.
I can't seem to find the book's JSON recipe. Might be that dinnerbone missed it when writing the 500+ JSON files.
The bug
The statistic minecraft.used:minecraft.firework_rocket is incremented when a firework rocket is launched normally, but not when it is used to boost an elytra.
There appears to be no reliable way to detect the usage of a rocket as a booster using commands.
Steps to Reproduce:
- Run the following commands:
/scoreboard objectives add firework minecraft.used:minecraft.firework_rocket /scoreboard objectives setdisplay sidebar firework /scoreboard players set @a firework 0
Launch a firework rocket on the ground normally.
→
The scores increased by 1.
Fly with an elytra and boost yourself with a firework rocket.
→
The score does not increase.
Code analysis
Code analysis by randomdude999 can be found in this comment.
console log, with my username replaced by USERNAME
Naah, I just left the launcher open (Edit Profile -> Launcher Visiblility -> Keep the laucher open)
Confirmed for 1.10.2 and 16w32b
An easy fix would be to reset the fall distance to 0 if a) the entity's Y motion is more than (or equal to) 0 (they are moving upwards) or b) the entity has the levitation effect. Also, there should be an option to preserve/override speed in the "tp" command (which should also reset the fall distance).
(Also, confirmed for 1.10.2)
This happens because the stats are increased automatically when a right click on a block succeeds, and all items that can be right clicked in the air have their own code to increase stats. The fireworks don't have any of that code, so they use the automatic stat increasing system when right clicked on a block, but no stats are modified when it's right clicked in air (to boost elytra flight).
The fix would be to add that one line of code to increase the use stats when fireworks are right clicked in air. Using MCP names, that would be playerIn.addStat(StatList.getObjectUseStats(this));
inside ItemFireworks.onItemRightClick.
If you close an application without giving it any time to finish what it's doing (e. g. power outage, kill via task manager), it's inevitable that things will break. In your case, it seems that Minecraft was in the middle of writing the <player>.dat file when you force closed it. The next time you started it, Minecraft detected that the file was invalid and ignored it, generating a new blank one instead.
Please put each bug in a separate bug report. That makes management much easier.