-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2 from tanishisherewithhh/v2.2.2
V2.2.2
- Loading branch information
Showing
24 changed files
with
268 additions
and
42 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
package net.fabricmc.smphack; | ||
|
||
import net.fabricmc.api.ClientModInitializer; | ||
import net.fabricmc.api.EnvType; | ||
import net.fabricmc.api.Environment; | ||
import net.minecraft.entity.Entity; | ||
|
||
import java.util.HashMap; | ||
|
||
@Environment(EnvType.CLIENT) | ||
public class CrystalModifier implements ClientModInitializer { | ||
public static final int delay = 0; | ||
public static final HashMap<Entity, Integer> toKill = new HashMap<>(); | ||
|
||
public CrystalModifier() { | ||
} | ||
|
||
public void onInitializeClient() { | ||
toKill.clear(); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 0 additions & 6 deletions
6
src/main/java/net/fabricmc/smphack/fullbright/fullbright.java
This file was deleted.
Oops, something went wrong.
82 changes: 82 additions & 0 deletions
82
src/main/java/net/fabricmc/smphack/mixin/ClientConnectionMixin.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,82 @@ | ||
package net.fabricmc.smphack.mixin; | ||
|
||
import net.minecraft.util.Hand; | ||
import net.minecraft.entity.effect.StatusEffectInstance; | ||
import net.minecraft.entity.effect.StatusEffects; | ||
import net.minecraft.entity.Entity; | ||
import net.minecraft.entity.decoration.EndCrystalEntity; | ||
import net.minecraft.item.HoeItem; | ||
import net.minecraft.item.ItemStack; | ||
import net.minecraft.item.ToolItem; | ||
import net.minecraft.item.ToolMaterial; | ||
import net.minecraft.item.ToolMaterials; | ||
import net.minecraft.util.hit.HitResult; | ||
import net.minecraft.util.math.Vec3d; | ||
import net.minecraft.network.ClientConnection; | ||
import net.minecraft.network.Packet; | ||
import net.minecraft.network.packet.c2s.play.PlayerInteractEntityC2SPacket; | ||
import net.minecraft.client.MinecraftClient; | ||
import net.minecraft.util.hit.EntityHitResult; | ||
import net.minecraft.entity.Entity.RemovalReason; | ||
import net.minecraft.util.hit.HitResult.Type; | ||
import org.spongepowered.asm.mixin.Mixin; | ||
import org.spongepowered.asm.mixin.injection.At; | ||
import org.spongepowered.asm.mixin.injection.Inject; | ||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; | ||
|
||
//Crystal modifier mixin | ||
@Mixin({ClientConnection.class}) | ||
public class ClientConnectionMixin { | ||
public ClientConnectionMixin() { | ||
} | ||
|
||
@Inject( | ||
method = {"send(Lnet/minecraft/network/Packet;)V"}, | ||
at = {@At("HEAD")} | ||
) | ||
private void onPacketSend(Packet<?> packet, CallbackInfo info) { | ||
final MinecraftClient mc = MinecraftClient.getInstance(); | ||
if (packet instanceof PlayerInteractEntityC2SPacket interactPacket) { | ||
interactPacket.handle(new PlayerInteractEntityC2SPacket.Handler() { | ||
public void interact(Hand hand) { | ||
} | ||
|
||
public void interactAt(Hand hand, Vec3d pos) { | ||
} | ||
|
||
public void attack() { | ||
HitResult hitResult = mc.crosshairTarget; | ||
if (hitResult != null) { | ||
if (hitResult.getType() == Type.ENTITY) { | ||
EntityHitResult entityHitResult = (EntityHitResult)hitResult; | ||
Entity entity = entityHitResult.getEntity(); | ||
if (entity instanceof EndCrystalEntity) { | ||
assert mc.player != null; | ||
StatusEffectInstance weakness = mc.player.getStatusEffect(StatusEffects.WEAKNESS); | ||
StatusEffectInstance strength = mc.player.getStatusEffect(StatusEffects.STRENGTH); | ||
if (weakness != null && (strength == null || strength.getAmplifier() <= weakness.getAmplifier()) && !ClientConnectionMixin.this.isTool(mc.player.getMainHandStack())) { | ||
return; | ||
} | ||
|
||
entity.kill(); | ||
entity.setRemoved(RemovalReason.KILLED); | ||
entity.onRemoved(); | ||
} | ||
} | ||
|
||
} | ||
} | ||
}); | ||
} | ||
|
||
} | ||
|
||
private boolean isTool(ItemStack itemStack) { | ||
if (itemStack.getItem() instanceof ToolItem && !(itemStack.getItem() instanceof HoeItem)) { | ||
ToolMaterial material = ((ToolItem)itemStack.getItem()).getMaterial(); | ||
return material == ToolMaterials.DIAMOND || material == ToolMaterials.NETHERITE; | ||
} else { | ||
return false; | ||
} | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
15 changes: 0 additions & 15 deletions
15
src/main/java/net/fabricmc/smphack/mixin/ExampleMixin.java
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
46 changes: 46 additions & 0 deletions
46
src/main/java/net/fabricmc/smphack/mixin/MinecraftClientMixin.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
package net.fabricmc.smphack.mixin; | ||
|
||
import net.fabricmc.smphack.CrystalModifier; | ||
import net.minecraft.client.MinecraftClient; | ||
import net.minecraft.entity.Entity; | ||
import net.minecraft.entity.Entity.RemovalReason; | ||
import org.spongepowered.asm.mixin.Mixin; | ||
import org.spongepowered.asm.mixin.injection.At; | ||
import org.spongepowered.asm.mixin.injection.Inject; | ||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; | ||
|
||
import java.util.Iterator; | ||
import java.util.Map; | ||
|
||
//Crystal modifier mixin | ||
@Mixin({MinecraftClient.class}) | ||
public class MinecraftClientMixin { | ||
public MinecraftClientMixin() { | ||
} | ||
|
||
@Inject( | ||
method = {"tick"}, | ||
at = {@At("HEAD")} | ||
) | ||
private void onPreTick(CallbackInfo info) { | ||
Iterator<Map.Entry<Entity, Integer>> iterator = CrystalModifier.toKill.entrySet().iterator(); | ||
|
||
while(iterator.hasNext()) { | ||
Map.Entry<Entity, Integer> entry = iterator.next(); | ||
Entity entity = (Entity)entry.getKey(); | ||
int delay = (Integer)entry.getValue() - 1; | ||
delay=0; | ||
if (delay == 0) { | ||
iterator.remove(); | ||
if (!entity.isAlive()) { | ||
entity.kill(); | ||
entity.setRemoved(RemovalReason.KILLED); | ||
entity.onRemoved(); | ||
} | ||
} else { | ||
entry.setValue(delay); | ||
} | ||
} | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
26 changes: 26 additions & 0 deletions
26
src/main/java/net/fabricmc/smphack/mixin/MixinGameRenderer.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
package net.fabricmc.smphack.mixin; | ||
|
||
import net.fabricmc.smphack.GeneralConfig; | ||
import net.minecraft.client.render.GameRenderer; | ||
import net.minecraft.client.util.math.MatrixStack; | ||
import org.spongepowered.asm.mixin.Mixin; | ||
import org.spongepowered.asm.mixin.injection.At; | ||
import org.spongepowered.asm.mixin.injection.Inject; | ||
import org.spongepowered.asm.mixin.injection.ModifyArg; | ||
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; | ||
|
||
//Hurtcam mixin | ||
@Mixin(GameRenderer.class) | ||
public class MixinGameRenderer { | ||
boolean Nohurtcam; | ||
@ModifyArg(at = @At(value = "INVOKE", target = "Lnet/minecraft/util/math/RotationAxis;rotationDegrees(F)Lorg/joml/Quaternionf;"), method = "bobViewWhenHurt", require = 4) | ||
public float changeBobIntensity(float value) { | ||
return (float) (0* value); | ||
} | ||
|
||
@Inject(method = "bobViewWhenHurt", at = @At("HEAD"), cancellable = true) | ||
public void disableHurtCam(MatrixStack matrices, float tickDelta, CallbackInfo ci) { | ||
Nohurtcam=GeneralConfig.getConfig().getNoHurtCam(); | ||
if (!Nohurtcam) ci.cancel(); | ||
} | ||
} |
Oops, something went wrong.