Skip to content

Commit b178126

Browse files
committed
Fixing vector on useentity
1 parent 5a900b6 commit b178126

File tree

2 files changed

+18
-10
lines changed

2 files changed

+18
-10
lines changed

AtlasParent/Atlas/src/main/java/cc/funkemunky/api/reflections/Reflections.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111

1212
import cc.funkemunky.api.reflections.types.WrappedClass;
1313
import cc.funkemunky.api.tinyprotocol.api.ProtocolVersion;
14+
import cc.funkemunky.api.tinyprotocol.reflection.Reflection;
1415
import cc.funkemunky.api.utils.ClassScanner;
1516
import cc.funkemunky.api.utils.objects.QuadFunction;
1617
import cc.funkemunky.api.utils.objects.TriFunction;
@@ -24,6 +25,7 @@
2425
import java.lang.invoke.MethodHandles;
2526
import java.lang.invoke.MethodType;
2627
import java.lang.reflect.Method;
28+
import java.util.Collections;
2729
import java.util.Set;
2830
import java.util.function.BiFunction;
2931
import java.util.function.Function;
@@ -41,7 +43,12 @@ public class Reflections {
4143
craftBukkitString = "org.bukkit.craftbukkit." + version + ".";
4244
netMinecraftServerString = "net.minecraft.server." + version + ".";
4345

44-
classNames = ClassScanner.scanFile2(null, Main.class);
46+
try {
47+
classNames = ClassScanner.scanFile2(null,
48+
Class.forName("org.bukkit.craftbukkit.Main"));
49+
} catch(ClassNotFoundException e) {
50+
classNames = Collections.emptySet();
51+
}
4552
}
4653

4754
public static boolean classExists(String name) {

AtlasParent/Atlas/src/main/java/cc/funkemunky/api/tinyprotocol/packet/in/WrappedInUseEntityPacket.java

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public class WrappedInUseEntityPacket extends NMSObject {
3232
private int id;
3333
private EnumEntityUseAction action;
3434
private Entity entity;
35-
private Vec3D vec = new Vec3D(-1,-1,-1);
35+
private Vec3D vec;
3636
private WrappedEnumHand enumHand = WrappedEnumHand.MAIN_HAND;
3737
private boolean sneaking;
3838

@@ -52,14 +52,8 @@ public void process(Player player, ProtocolVersion version) {
5252
Enum fieldAct = fetch(fieldAction);
5353
action = fieldAct == null ? EnumEntityUseAction.INTERACT_AT : EnumEntityUseAction.valueOf(fieldAct.name());
5454

55-
if(ProtocolVersion.getGameVersion().isOrAbove(ProtocolVersion.V1_8)) {
56-
Object vec = fetch(fieldVec);
57-
if(vec != null)
58-
this.vec = new Vec3D(vec);
59-
60-
if(ProtocolVersion.getGameVersion().isOrAbove(ProtocolVersion.V1_9)) {
61-
enumHand = WrappedEnumHand.getFromVanilla(fetch(fieldHand));
62-
}
55+
if(ProtocolVersion.getGameVersion().isOrAbove(ProtocolVersion.V1_9)) {
56+
enumHand = WrappedEnumHand.getFromVanilla(fetch(fieldHand));
6357
}
6458
} else { //1.17 specific code
6559
Object actionField = fetch(fieldAction);
@@ -79,6 +73,13 @@ public void process(Player player, ProtocolVersion version) {
7973
if(ProtocolVersion.getGameVersion().isOrAbove(ProtocolVersion.v1_16)) {
8074
sneaking = fetch(fieldSneaking);
8175
} else sneaking = player.isSneaking();
76+
77+
if(action == EnumEntityUseAction.INTERACT_AT) {
78+
Object vec = fetch(fieldVec);
79+
if(vec != null) {
80+
this.vec = new Vec3D(vec);
81+
}
82+
}
8283
}
8384

8485
@Override

0 commit comments

Comments
 (0)