Map a lot of entity world interaction shenanigans. Feeling tired might remap later.

This commit is contained in:
Thalia Nero 2020-11-06 03:43:11 -05:00
parent 39b54d09e2
commit 6d0aa8cff7
21 changed files with 155 additions and 20 deletions

View File

@ -0,0 +1,42 @@
CLASS net/minecraft/class_5573 net/minecraft/EntityLocationTracker
COMMENT Stores entities with the chunk sections they are in.
FIELD field_27250 entityClass Ljava/lang/Class;
FIELD field_27251 managementCategoryDiscriminator Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction;
FIELD field_27252 entitySetsByChunkSection Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;
FIELD field_27253 packedChunkSectionPositions Lit/unimi/dsi/fastutil/longs/LongSortedSet;
METHOD <init> (Ljava/lang/Class;Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction;)V
ARG 1 entityClass
ARG 2 managementCategoryDiscriminator
METHOD method_31770 chunkPositions ()Lit/unimi/dsi/fastutil/longs/LongSet;
METHOD method_31771 getChunkSections (II)Lit/unimi/dsi/fastutil/longs/LongSortedSet;
ARG 1 chunkX
ARG 2 chunkZ
METHOD method_31772 getChunkSections (J)Ljava/util/stream/LongStream;
ARG 1 packedChunkPos
METHOD method_31773 forEachFilteredEntity (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Consumer;)V
ARG 1 filter
ARG 2 box
ARG 3 action
METHOD method_31775 intersecting (Lnet/minecraft/class_238;)Ljava/util/function/Predicate;
ARG 0 box
METHOD method_31777 forEachEntityByChunkSection (Lnet/minecraft/class_238;Ljava/util/function/Consumer;)V
ARG 1 box
ARG 2 action
METHOD method_31779 toPackedChunkSectionPos (Lnet/minecraft/class_2338;)J
ARG 0 pos
METHOD method_31781 chunkSectionCount ()I
METHOD method_31782 getEntitiesInChunkBySection (J)Ljava/util/stream/Stream;
ARG 1 packedChunkPos
METHOD method_31783 forEachEntity (Lnet/minecraft/class_238;Ljava/util/function/Consumer;)V
ARG 1 box
ARG 2 action
METHOD method_31784 getEntities (J)Lnet/minecraft/class_5572;
ARG 1 packedChunkSectionPos
METHOD method_31785 getEntitiesIfPresent (J)Lnet/minecraft/class_5572;
ARG 1 packedChunkSectionPos
METHOD method_31786 removeChunkSection (J)V
ARG 1 packedChunkSectionPos
METHOD method_31787 packedChunkPosFromChunkSectionPos (J)J
ARG 0 packedChunkSectionPos
METHOD method_31788 addChunkSection (J)Lnet/minecraft/class_5572;
ARG 1 packedChunkSectionPos

View File

@ -1,5 +0,0 @@
CLASS net/minecraft/class_5582
CLASS class_5583
FIELD field_27286 entity Lnet/minecraft/class_5568;
METHOD <init> (Lnet/minecraft/class_5582;Lnet/minecraft/class_5568;JLnet/minecraft/class_5572;)V
ARG 2 entity

View File

@ -1,8 +0,0 @@
CLASS net/minecraft/class_5584
FIELD field_27292 tracked Z
FIELD field_27293 tick Z
METHOD <init> (Ljava/lang/String;IZZ)V
ARG 3 tracked
ARG 4 tick
METHOD method_31883 shouldTick ()Z
METHOD method_31885 shouldTrack ()Z

View File

@ -0,0 +1,18 @@
CLASS net/minecraft/class_5582 net/minecraft/client/world/ClientEntityManager
FIELD field_27279 LOGGER Lorg/apache/logging/log4j/Logger;
FIELD field_27280 entityLoader Lnet/minecraft/class_5576;
FIELD field_27281 entities Lnet/minecraft/class_5570;
FIELD field_27284 entityStore Lnet/minecraft/class_5577;
METHOD method_31866 getStore ()Lnet/minecraft/class_5577;
METHOD method_31870 (Lnet/minecraft/class_5568;)V
ARG 1 entity
METHOD method_31874 getEntityCount ()I
METHOD method_31879 getDebugString ()Ljava/lang/String;
CLASS class_5583 ClientEntityChangeHandler
FIELD field_27286 entity Lnet/minecraft/class_5568;
FIELD field_27287 packedChunkSectionPos J
FIELD field_27288 entities Lnet/minecraft/class_5572;
METHOD <init> (Lnet/minecraft/class_5582;Lnet/minecraft/class_5568;JLnet/minecraft/class_5572;)V
ARG 2 entity
ARG 3 packedChunkSectionPos
ARG 5 entities

View File

@ -8,6 +8,7 @@ CLASS net/minecraft/class_638 net/minecraft/client/world/ClientWorld
FIELD field_24605 chunkManager Lnet/minecraft/class_631;
FIELD field_24606 skyProperties Lnet/minecraft/class_5294;
FIELD field_27733 entityList Lnet/minecraft/class_5574;
FIELD field_27734 entityManager Lnet/minecraft/class_5582;
FIELD field_3727 netHandler Lnet/minecraft/class_634;
FIELD field_3729 client Lnet/minecraft/class_310;
FIELD field_3733 scoreboard Lnet/minecraft/class_269;

View File

@ -11,7 +11,8 @@ CLASS net/minecraft/class_2300 net/minecraft/command/EntitySelector
FIELD field_10829 localWorldOnly Z
FIELD field_10830 includesNonPlayers Z
FIELD field_10831 playerName Ljava/lang/String;
FIELD field_10832 type Lnet/minecraft/class_5575;
FIELD field_10832 entityFilter Lnet/minecraft/class_5575;
FIELD field_27774 PASSTHROUGH_FILTER Lnet/minecraft/class_5575;
METHOD <init> (IZZLjava/util/function/Predicate;Lnet/minecraft/class_2096$class_2099;Ljava/util/function/Function;Lnet/minecraft/class_238;Ljava/util/function/BiConsumer;ZLjava/lang/String;Ljava/util/UUID;Lnet/minecraft/class_1299;Z)V
ARG 1 count
ARG 2 includesNonPlayers

View File

@ -9,6 +9,7 @@ CLASS net/minecraft/class_1297 net/minecraft/entity/Entity
FIELD field_23807 inanimate Z
FIELD field_25750 trackedPosition Lnet/minecraft/class_243;
FIELD field_26995 removalReason Lnet/minecraft/class_1297$class_5529;
FIELD field_26996 entityChangeListener Lnet/minecraft/class_5569;
FIELD field_5951 ridingCooldown I
FIELD field_5952 onGround Z
FIELD field_5953 firstUpdate Z

View File

@ -1,5 +1,7 @@
CLASS net/minecraft/class_5568
CLASS net/minecraft/class_5568 net/minecraft/entity/EntityLike
METHOD method_24515 getBlockPos ()Lnet/minecraft/class_2338;
METHOD method_31744 setChangeHandler (Lnet/minecraft/class_5569;)V
ARG 1 listener
METHOD method_31745 setRemoved (Lnet/minecraft/class_1297$class_5529;)V
ARG 1 reason
METHOD method_31747 isPlayer ()Z

View File

@ -1,8 +1,9 @@
CLASS net/minecraft/class_5579
CLASS net/minecraft/class_5579 net/minecraft/server/world/ServerEntityManager
FIELD field_27260 LOGGER Lorg/apache/logging/log4j/Logger;
FIELD field_27261 entityUuids Ljava/util/Set;
FIELD field_27262 entityLoader Lnet/minecraft/class_5576;
FIELD field_27264 trackedEntities Lnet/minecraft/class_5570;
FIELD field_27266 entities Lnet/minecraft/class_5577;
FIELD field_27270 loadingQueue Ljava/util/Queue;
METHOD <init> (Ljava/lang/Class;Lnet/minecraft/class_5576;Lnet/minecraft/class_5571;)V
ARG 2 entityLoader
@ -10,8 +11,12 @@ CLASS net/minecraft/class_5579
ARG 1 entity
METHOD method_31820 addEntity (Lnet/minecraft/class_5568;Z)Z
ARG 1 entity
METHOD method_31828 addEntitiesWithFlagSet (Ljava/util/stream/Stream;)V
ARG 1 entities
METHOD method_31831 canAddEntity (Lnet/minecraft/class_5568;)Z
ARG 1 entity
METHOD method_31835 addEntitiesWithFlagCleared (Ljava/util/stream/Stream;)V
ARG 1 entities
METHOD method_31838 (Lnet/minecraft/class_5568;)V
ARG 1 entity
METHOD method_31843 (Lnet/minecraft/class_5568;)V
@ -26,7 +31,9 @@ CLASS net/minecraft/class_5579
ARG 1 entity
METHOD method_31864 (Lnet/minecraft/class_5568;)V
ARG 1 entity
CLASS class_5580
CLASS class_5580 ServerEntityChangeHandler
FIELD field_27272 entity Lnet/minecraft/class_5568;
FIELD field_27273 packedChunkSectionPos J
METHOD <init> (Lnet/minecraft/class_5579;Lnet/minecraft/class_5568;JLnet/minecraft/class_5572;)V
ARG 2 entity
ARG 3 packedChunkSectionPos

View File

@ -20,6 +20,7 @@ CLASS net/minecraft/class_3218 net/minecraft/server/world/ServerWorld
FIELD field_25144 END_SPAWN_POS Lnet/minecraft/class_2338;
FIELD field_26933 dragonParts Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;
FIELD field_26934 entityList Lnet/minecraft/class_5574;
FIELD field_26935 entityManager Lnet/minecraft/class_5579;
METHOD <init> (Lnet/minecraft/server/MinecraftServer;Ljava/util/concurrent/Executor;Lnet/minecraft/class_32$class_5143;Lnet/minecraft/class_5268;Lnet/minecraft/class_5321;Lnet/minecraft/class_2874;Lnet/minecraft/class_3949;Lnet/minecraft/class_2794;ZJLjava/util/List;Z)V
ARG 1 server
ARG 2 workerExecutor

View File

@ -0,0 +1,10 @@
CLASS net/minecraft/class_5575 net/minecraft/util/Filter
COMMENT A filter determines if an object of some supertype {@code B} can be treated as an object
COMMENT of some subtype {@code T}.
METHOD method_31794 getBaseClass ()Ljava/lang/Class;
METHOD method_31795 forClass (Ljava/lang/Class;)Lnet/minecraft/class_5575;
COMMENT Creates a filter whose filtering condition is whether the object is an instance of the given class.
ARG 0 cls
METHOD method_31796 downcast (Ljava/lang/Object;)Ljava/lang/Object;
COMMENT If the argument can be converted to the type {@code T}, return the argument, otherwise {@code null}.
ARG 1 obj

View File

@ -0,0 +1,24 @@
CLASS net/minecraft/class_5572 net/minecraft/util/collection/FilterableCollection
FIELD field_27247 LOGGER Lorg/apache/logging/log4j/Logger;
FIELD field_27248 backingList Lnet/minecraft/class_3509;
FIELD field_27249 managementCategory Lnet/minecraft/class_5584;
METHOD <init> (Ljava/lang/Class;Lnet/minecraft/class_5584;)V
ARG 1 cls
ARG 2 managementCategory
METHOD method_31761 isEmpty ()Z
METHOD method_31762 forEachFiltered (Lnet/minecraft/class_5575;Ljava/util/function/Predicate;Ljava/util/function/Consumer;)V
ARG 1 filter
ARG 2 predicate
ARG 3 action
METHOD method_31763 getAndSetManagementCategory (Lnet/minecraft/class_5584;)Lnet/minecraft/class_5584;
ARG 1 managementCategory
METHOD method_31764 add (Ljava/lang/Object;)V
ARG 1 obj
METHOD method_31765 forEach (Ljava/util/function/Predicate;Ljava/util/function/Consumer;)V
ARG 1 predicate
ARG 2 action
METHOD method_31766 stream ()Ljava/util/stream/Stream;
METHOD method_31767 remove (Ljava/lang/Object;)Z
ARG 1 obj
METHOD method_31768 getManagementCategory ()Lnet/minecraft/class_5584;
METHOD method_31769 size ()I

View File

@ -127,6 +127,8 @@ CLASS net/minecraft/class_4076 net/minecraft/util/math/ChunkSectionPos
COMMENT Gets the world position of the given local position within this chunk section.
COMMENT @see #packLocal
ARG 1 packedLocalPos
METHOD method_32204 getSectionCoord (D)I
ARG 0 worldCoord
CLASS 1
FIELD field_19263 iterator Lnet/minecraft/class_3980;
METHOD tryAdvance (Ljava/util/function/Consumer;)Z

View File

@ -1,5 +1,8 @@
CLASS net/minecraft/class_1924 net/minecraft/world/EntityView
METHOD method_18023 getEntitiesByType (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Predicate;)Ljava/util/List;
ARG 1 filter
ARG 2 box
ARG 3 predicate
METHOD method_18456 getPlayers ()Ljava/util/List;
METHOD method_18458 isPlayerInRange (DDDD)Z
ARG 1 x

View File

@ -75,6 +75,7 @@ CLASS net/minecraft/class_1937 net/minecraft/world/World
COMMENT <p>Debug worlds are not modifiable and are typically meant for development and debug use only.
COMMENT See <a href="https://minecraft.gamepedia.com/Debug_mode">the minecraft wiki</a> as well.
METHOD method_27983 getRegistryKey ()Lnet/minecraft/class_5321;
METHOD method_31592 getEntityStore ()Lnet/minecraft/class_5577;
METHOD method_8413 updateListeners (Lnet/minecraft/class_2338;Lnet/minecraft/class_2680;Lnet/minecraft/class_2680;I)V
ARG 1 pos
ARG 2 oldState

View File

@ -1,4 +1,5 @@
CLASS net/minecraft/class_5569
CLASS net/minecraft/class_5569 net/minecraft/world/entity/EntityChangeHandler
FIELD field_27243 NO_OP Lnet/minecraft/class_5569;
METHOD method_31749 updateEntityPosition ()V
METHOD method_31750 remove (Lnet/minecraft/class_1297$class_5529;)V
ARG 1 reason

View File

@ -1,11 +1,15 @@
CLASS net/minecraft/class_5570
CLASS net/minecraft/class_5570 net/minecraft/world/entity/EntityCollection
FIELD field_27244 LOGGER Lorg/apache/logging/log4j/Logger;
FIELD field_27245 entitiesById Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;
FIELD field_27246 entitiesByUuid Ljava/util/Map;
METHOD method_31751 entities ()Ljava/lang/Iterable;
METHOD method_31752 getEntity (I)Lnet/minecraft/class_5568;
ARG 1 id
METHOD method_31753 addEntity (Lnet/minecraft/class_5568;)V
ARG 1 entity
METHOD method_31754 forEachEntity (Lnet/minecraft/class_5575;Ljava/util/function/Consumer;)V
ARG 1 filter
ARG 2 action
METHOD method_31755 getEntity (Ljava/util/UUID;)Lnet/minecraft/class_5568;
ARG 1 uuid
METHOD method_31756 getEntityCount ()I

View File

@ -1,4 +1,4 @@
CLASS net/minecraft/class_5576 net/minecraft/world/EntityLoader
CLASS net/minecraft/class_5576 net/minecraft/world/entity/EntityLoader
COMMENT Isolates client and server side specific logic when loading and unloading entities to and from a world.
METHOD method_31797 onUnloadEntity (Ljava/lang/Object;)V
ARG 1 entity

View File

@ -0,0 +1,10 @@
CLASS net/minecraft/class_5584 net/minecraft/world/entity/EntityManagementCategory
FIELD field_27292 tracked Z
FIELD field_27293 tick Z
METHOD <init> (Ljava/lang/String;IZZ)V
ARG 3 tracked
ARG 4 tick
METHOD method_31883 shouldTick ()Z
METHOD method_31884 fromLevelType (Lnet/minecraft/class_3193$class_3194;)Lnet/minecraft/class_5584;
ARG 0 levelType
METHOD method_31885 shouldTrack ()Z

View File

@ -0,0 +1,16 @@
CLASS net/minecraft/class_5577 net/minecraft/world/entity/EntityStore
METHOD method_31803 entities ()Ljava/lang/Iterable;
METHOD method_31804 getEntityById (I)Lnet/minecraft/class_5568;
ARG 1 id
METHOD method_31805 forEachEntity (Lnet/minecraft/class_5575;Lnet/minecraft/class_238;Ljava/util/function/Consumer;)V
ARG 1 filter
ARG 2 box
ARG 3 action
METHOD method_31806 forEachEntity (Lnet/minecraft/class_5575;Ljava/util/function/Consumer;)V
ARG 1 filter
ARG 2 action
METHOD method_31807 forEachEntity (Lnet/minecraft/class_238;Ljava/util/function/Consumer;)V
ARG 1 box
ARG 2 action
METHOD method_31808 getEntityByUuid (Ljava/util/UUID;)Lnet/minecraft/class_5568;
ARG 1 uuid

View File

@ -0,0 +1,4 @@
CLASS net/minecraft/class_5578 net/minecraft/world/entity/EntityStoreImpl
FIELD field_27258 entityStore Lnet/minecraft/class_5570;
METHOD <init> (Lnet/minecraft/class_5570;Lnet/minecraft/class_5573;)V
ARG 1 entityStore