* item property getter
Signed-off-by: liach <liach@users.noreply.github.com>
* rename this to model predicate provider as it provides values for model predicates
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
* Some javadoc and param names in mostly server related classes.
* Update mappings/net/minecraft/client/gui/hud/InGameHud.mapping
Co-Authored-By: Yanis48 <doublecraft.official@gmail.com>
* Update mappings/net/minecraft/server/rcon/RconBase.mapping
Co-Authored-By: Yanis48 <doublecraft.official@gmail.com>
* Make javadoc a bit nicer
* fixes 2
* Update ArgumentTypes.mapping
Co-authored-by: Yanis48 <doublecraft.official@gmail.com>
* a lot of very random mappings
* fix mappings
* typo
* Update mappings/net/minecraft/client/font/TextRenderer.mapping
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Move enigma above stitch so we don't use stitch's enigma
Signed-off-by: liach <liach@users.noreply.github.com>
* This runs for now
Signed-off-by: liach <liach@users.noreply.github.com>
* This should look good
Signed-off-by: liach <liach@users.noreply.github.com>
* Prepare to use stitch 0.4.6 later
Signed-off-by: liach <liach@users.noreply.github.com>
* Use actual stitch
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
* Update mappingpoet
Jd still builds without warning, should be good
Signed-off-by: liach <liach@users.noreply.github.com>
* Bump version for other things as well
* Rollback enigma (See FabricMC/Enigma#224)
Signed-off-by: liach <liach@users.noreply.github.com>
* Update enigma again, thanks juuxel
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
This is jigsaw generate things not things generate jigsaw
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
* Map some 20w15a new classes (entities, enchantments)
Signed-off-by: liach <liach@users.noreply.github.com>
* Some javadocs
* Just refer by id
Signed-off-by: liach <liach@users.noreply.github.com>
* Fix bad class name
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
* Eww, embrace #1266! Die in a 🔥 bukkit javadocs!
Signed-off-by: liach <liach@users.noreply.github.com>
* Add jd artifact, travis start doing javadoc [ci skip]
doesn't have mapping poet ready yet
Signed-off-by: liach <liach@users.noreply.github.com>
* Make it fail on error (otherwise it just outputs an empty directory) [ci skip]
* Update to handle javadocs with annos [ci skip]
Signed-off-by: liach <liach@users.noreply.github.com>
* Use the maven dep, nice
Signed-off-by: liach <liach@users.noreply.github.com>
* Link to more useful libraries
Signed-off-by: liach <liach@users.noreply.github.com>
* Is it old gradle wrapper causing problems
Signed-off-by: liach <liach@users.noreply.github.com>
* Try clean and see if it changes. Dunno why, this always worked on my machine
* No clue
Signed-off-by: liach <liach@users.noreply.github.com>
* Err
* ???
* err
* .
Signed-off-by: liach <liach@users.noreply.github.com>
* I thonk I fixed it
Signed-off-by: liach <liach@users.noreply.github.com>
* Tweak jenkinsfile
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
I hate unqualified static method/field calls and static inference!
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
move two matrices to non-client;
move two transformations to util math;
move globalpos to dynamic;
move propagator to world;
a few other util additions
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
* part.render(matrix, vertices, light, overlay, red, green, blue, alpha)
* Fixed bad names
* Determined by the call to part.render(matrix, vertices, light, overlay)
which delegates to part.render(matrix, vertices, light, overlay, 1, 1, 1, 1)
* Now we extrapolate to everything that calls part.render(matrix, vertices, light, overlay)
Meanhile VertexConsumerProvider is
* Now we extrapolate to everything that cals pars.render(matrix, vertices, light, overlay, red, green, blue, alpha)
* This is not a render method! It sets the yaw and pitch on the skull
* Now we extrapolate to things that call mode.render(matrix, vertices, light, overlay, red, green, blue, alpha)
Not much to change there though
* These are known from EntityRenderDispatcher
* render calls renderLabelIfPresent
* Now we're looking at things which call EntityRenderDispatcher.render(entity, x, y, z, yaw, matrix, provider, light)
* In ClientPlayNetworkHandler.onItemPickupAnimation the second entity is gotten from packet.getCollectorEntityId and defaulted to the player if null. The first entity is an item entity or an experience orb entity
* Going back to EntityRenderDispatcher, we can see the code for rendering shadows was moved here from the renderer itself
if (this.gameOptions.entityShadows && this.renderShadows && entityRenderer14.shadowRadius > 0.0f && !entity.isInvisible()) {
double double22 = this.getSquaredDistanceToCamera(entity.getX(), entity.getY(), entity.getZ());
float float24 = (float)((1.0 - double22 / 256.0) * entityRenderer14.field_4672);
if (float24 > 0.0f) {
renderShadow(matrix, provider, entity, float24, tickDelta, this.world, entityRenderer14.shadowRadius);
}
}
* The last parameter is shadow radius, but to be sure we check, nd indeed it is reduced when the rendered entity is a baby
private static void renderShadow(MatrixStack matrix, VertexConsumerProvider provider, Entity entity, float float4, float tickDelta, WorldView world, float radius) {
float float8 = radius;
if (entity instanceof MobEntity) {
if (((MobEntity)entity).isBaby()) {
float8 *= 0.5f;
}
}
* float4 was a myster, but it's just passed down as-is and used to determine the opacity of the shadow!
float float16 = (float)((opacity - (y - pos.getY()) / 2.0) * 0.5 * world.getBrightness(pos));
if (float16 >= 0.0f) {
* Forgot this one
* This is all low-hanging fruit.
* EntityRenderDispatcher.shouldRender(entity, frustrum, x, y, z)
-> EntityRenderer.isVisible(entity, frustrum, x, y, z)
-> Entity.shouldRenderFrom(x, y, z)
@Environment(EnvType.CLIENT)
public boolean shouldRenderFrom(double x, double y, double z) {
double double8 = this.getX() - x;
double double10 = this.getY() - y;
double double12 = this.getZ() - z;
double double14 = double8 * double8 + double10 * double10 + double12 * double12;
return this.shouldRenderAtDistance(double14);
}
* More things we know
* This is set by calling entity.getLeaningPitch
* This is only overriden by CreeperEntityRenderer and returns a float computed from the fuse time.
The value is then passed to getOverlay where it's passed to OverlayTexture.getU(animationCounter).
This causes the creeper to flash white when active. The same method,
interestingly, will use the V to create the hurt/death overlay
OverlayTexture.packUv(
OverlayTexture.getU(animationCounter),
OverlayTexture.getV(entity.hurtTime > 0 || entity.deathTime > 0)
)
* The final patches
* xrayEnabled -> isGlowing
* Commit suggestions/name changes I missed during rebase
Co-Authored-By: Juuxel <6596629+Juuxel@users.noreply.github.com>
* Fix typos
* yaw -> tickDelta
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
* provider -> vertexConsumers
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
* matrix -> matrices
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
* Fixed some encorrect names
* entry -> matrices
* textureU/V -> u/v
* isBanner -> isBannerBlock
* frustrum -> frustum
Co-Authored-By: Gegy <gegy1000@gmail.com>
* Fix broken/changed mappings for 20w10a
* grammar
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
* Update mappings/net/minecraft/client/particle/ItemPickupParticle.mapping
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
Co-authored-by: Juuxel <6596629+Juuxel@users.noreply.github.com>
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
Co-authored-by: Gegy <gegy1000@gmail.com>
* Add CONTRIBUTING.md, mention mojmap being ARR
Closes#1221. Created CONTRIBUTING.md file that is basically
a copy-paste from the README.
Closes#1209. CONVENTIONS.md now mentions that names from
mojmap should not be used.
* Suggestions
Fixes#908.
This context is exclusively used by block's 3 shape checking methods.
For its usage outside of blocks, it is used to be eventually passed to call one of the shape checking methods (as in CollisionView#canPlace or RayTraceContext)
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
* Fully map out block state model generator
Now eliminated all unmapped classes! 🎉
Signed-off-by: liach <liach@users.noreply.github.com>
* The block is cocoa
* Model map fixes
* derivative -> texture/model pool
Co-authored-by: liach <liach@users.noreply.github.com>
* Map reverse portal particle
and many other missing fields in particle/factories
Signed-off-by: liach <liach@users.noreply.github.com>
* Update mappings/net/minecraft/client/particle/CurrentDownParticle.mapping
Co-Authored-By: Joseph Burton <burtonjae@hotmail.co.uk>
Co-authored-by: liach <liach@users.noreply.github.com>
Co-authored-by: Joseph Burton <burtonjae@hotmail.co.uk>
Signed-off-by: liach <liach@users.noreply.github.com>
Add jd to note this is the mood percentage for biome sound
Co-authored-by: liach <liach@users.noreply.github.com>
Now enigma takes too long decompiling some classes. Weird...
Signed-off-by: liach <liach@users.noreply.github.com>
Co-authored-by: liach <liach@users.noreply.github.com>
* update abstract block mappings
* rename slowDownMultiplier to unify with settings name
* add in all the parameters
* Apply suggestions from code review
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
* change a few names
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* Moved a lot of "util" classes to more appropriate packages
* Move UncaughtExceptionLogger to the correct package
* These are all collections/sets/iterables
* Move stuff relating to dyamics into util/dynamic
* UnaryOperator is only used in the context of loot tables
* Functional classes into util/function
* Time classes into a util/time package
* JsonHelper -> JsonUtil
* Whatever that name is, this is a world class
* Moved ReusableStream to util/collection
* TODO: this name is wrong
* Update mappings/net/minecraft/util/io/CsvWriter.mapping
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
* Move OffsetDoubleList to the shape package (since it's only used there)
* Move CsvWriter to the profiler package
* io package is gone :crab_dance:
* time package is gone :crab_dance:
* And now it lets me add them...
* Move Lazy back to util/
* Revert JsonUtil to JsonHelper
* Jeon -> Json
* Update mappings/net/minecraft/util/Identifier.mapping
Co-Authored-By: liach <7806504+liach@users.noreply.github.com>
* ids -> initialSize
Co-authored-by: liach <7806504+liach@users.noreply.github.com>
* InfoEnchantment -> EnchantmentsEntry (extends WeightedPicker.Entry)
Enchantment$Weight -> Enchantment$Rarity
again time to end that utter nonsense
Signed-off-by: liach <liach@users.noreply.github.com>
* Don't cry at me for not closing #1181 if you get fooled into think this is the actual "enchantment"
this thing is just a weighted picker entry; even client data gen properties entry (key-value pair) has proper hashCode and equals and this thing doesn't
Signed-off-by: liach <liach@users.noreply.github.com>
* Good suggestions earthcomputer
Signed-off-by: liach <liach@users.noreply.github.com>
* Suggested EnchantmentLevelEntry
Signed-off-by: liach <liach@users.noreply.github.com>
* Selected changes for enchantment helper
* Rephrase to make it less confusing per juuz
Co-authored-by: liach <liach@users.noreply.github.com>