From ecf13d3155421f96de70e385738330270e8f6a96 Mon Sep 17 00:00:00 2001
From: etianl <115842502+etianl@users.noreply.github.com>
Date: Thu, 22 Feb 2024 04:28:47 -0800
Subject: [PATCH] fix airstrike

---
 .../trouserstreak/modules/AirstrikePlus.java  | 35 +++++++++++++++----
 1 file changed, 28 insertions(+), 7 deletions(-)

diff --git a/src/main/java/pwn/noobs/trouserstreak/modules/AirstrikePlus.java b/src/main/java/pwn/noobs/trouserstreak/modules/AirstrikePlus.java
index 8365cfeb5..9f3ef88b0 100644
--- a/src/main/java/pwn/noobs/trouserstreak/modules/AirstrikePlus.java
+++ b/src/main/java/pwn/noobs/trouserstreak/modules/AirstrikePlus.java
@@ -50,6 +50,11 @@ public class AirstrikePlus extends Module {
             .defaultValue("wither")
             .visible(() -> mixer.get())
             .build());
+    private final Setting<Boolean> randomPrefix = sgGeneral.add(new BoolSetting.Builder()
+            .name("Random Prefix for Name")
+            .description("Makes Boss Stacker module not work.")
+            .defaultValue(false)
+            .build());
     private final Setting<String> nom = sgGeneral.add(new StringSetting.Builder()
             .name("Custom Name")
             .description("Name the Entity")
@@ -369,7 +374,7 @@ public class AirstrikePlus extends Module {
             .name("falling_block entity block")
             .description("What is created when specifying falling_block as the entity.")
             .defaultValue(Blocks.BEDROCK)
-            .visible(() -> airstrikeEveryone.get())
+            .visible(() -> airstrikeEveryone.get() && EblockstateSpecify.get())
             .build());
 
     public AirstrikePlus() {
@@ -383,9 +388,19 @@ public AirstrikePlus() {
     private String namecolour = nomcolor.get();
     private NbtList speedlist = new NbtList();
     private String entityName = entity.get().trim().replace(" ", "_");
+    private String customName = nom.get();
 
-
-
+    private String[] prefixes = {
+            "§k111 §r| ",
+            "§k222 §r| ",
+            "§k333 §r| ",
+            "§k444 §r| ",
+            "§k555 §r| ",
+            "§k666 §r| ",
+            "§k777 §r| ",
+            "§k888 §r| ",
+            "§k999 §r| "
+    };
     private Vec3d pickRandomPos() {
         double x = r.nextDouble(radius.get() * 2) - radius.get() + origin.x;
         double y = mc.player.getY()+height.get();
@@ -410,12 +425,19 @@ public void onTick(TickEvent.Pre event) {
 
     @EventHandler
     public void onTick(TickEvent.Post event) {
+        if (randomPrefix.get()) {
+            String randomPrefix = prefixes[new Random().nextInt(prefixes.length)];
+            customName = randomPrefix + nom.get();
+            // Use modifiedName for further processing or assignment
+        } else {
+            customName = nom.get();
+        }
         if (mixer.get()) {
             mix++;
             if (mix == 1)entityName = entity.get().trim().replace(" ", "_");
             if (mix == 2) entityName = entity2.get().trim().replace(" ", "_");
             if (mix > 2)mix = 0;
-        }
+        } else entityName = entity.get().trim().replace(" ", "_");
         for (int griefs = 0; griefs < grief.get(); griefs++) {
             if (airstrikeEveryone.get()) executeCommandsToCreateEntities();
             else {
@@ -439,7 +461,7 @@ public void onTick(TickEvent.Post event) {
                 if (mc.player.getAbilities().creativeMode) {
                     if (i >= delay.get()) {
                         NbtCompound display = new NbtCompound();
-                        display.putString("Name", "{\"text\":\"" + nom.get() + "\",\"color\":\"" + namecolour + "\"}");
+                        display.putString("Name", "{\"text\":\"" + customName + "\",\"color\":\"" + namecolour + "\"}");
                         tag.put("display", display);
                         NbtCompound entityTag = new NbtCompound();
                         speedlist.add(NbtDouble.of(0));
@@ -472,7 +494,7 @@ public void onTick(TickEvent.Post event) {
                         entityTag.putInt("Fuse", fuse.get());
                         entityTag.putInt("Size", size.get());
                         if (customname.get()) entityTag.putBoolean("CustomNameVisible", customname.get());
-                        entityTag.putString("CustomName", "{\"text\":\"" + nom.get() + "\",\"color\":\"" + namecolour + "\"}");
+                        entityTag.putString("CustomName", "{\"text\":\"" + customName + "\",\"color\":\"" + namecolour + "\"}");
                         tag.put("EntityTag", entityTag);
                         bomb.setNbt(tag);
                         mc.interactionManager.clickCreativeStack(bomb, 36 + mc.player.getInventory().selectedSlot);
@@ -498,7 +520,6 @@ private void executeCommandsToCreateEntities() {
         speedlist.add(NbtDouble.of(0));
         speedlist.add(NbtDouble.of(-speed.get()));
         speedlist.add(NbtDouble.of(0));
-        String customName = nom.get();
         String nameColor = namecolour;
         int healthPoints = Ehealth.get();
         int absorptionPoints = Eabsorption.get();