Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

LiquidBounce Forum

  1. Home
  2. Kotlin/Java
  3. I Made A Simple SessionInfo

I Made A Simple SessionInfo

Scheduled Pinned Locked Moved Kotlin/Java
5 Posts 4 Posters 1.6k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • YounKooY Offline
    YounKooY Offline
    YounKoo
    wrote on last edited by
    #1

    Preview:
    ![SYS{6UUK~$5JZPUB6WB4~9.png

    Code

    @ElementInfo(name = "Session")
    class Session(x: Double = 15.0, y: Double = 10.0, scale: Float = 1F,
                      side: Side = Side(Side.Horizontal.LEFT, Side.Vertical.UP)
    ) : Element(x, y, scale, side) {
    
        private val radiusValue = FloatValue("Radius", 4.25f, 0f, 10f)
        private val bgredValue = IntegerValue("Bg-R", 255, 0, 255)
        private val bggreenValue = IntegerValue("Bg-G", 255, 0, 255)
        private val bgblueValue = IntegerValue("Bg-B", 255, 0, 255)
        private val bgalphaValue = IntegerValue("Bg-Alpha", 150, 0, 255)
    
        val lineValue = BoolValue("Line", true)
        private val redValue = IntegerValue("Line-R", 255, 0, 255)
        private val greenValue = IntegerValue("Line-G", 255, 0, 255)
        private val blueValue = IntegerValue("Line-B", 255, 0, 255)
        private val colorRedValue2 = IntegerValue("Line-R2", 0, 0, 255)
        private val colorGreenValue2 = IntegerValue("Line-G2", 111, 0, 255)
        private val colorBlueValue2 = IntegerValue("Line-B2", 255, 0, 255)
    
        val fontValue = FontValue("Font", Fonts.font35)
    
        override fun drawElement(): Border? {
            val fontRenderer = fontValue.get()
    
            val y2 = fontRenderer.FONT_HEIGHT * 5 + 11.0
            val x2 = 140.0
    
            var durationInMillis: Long = System.currentTimeMillis() - LiquidBounce.playTimeStart
            var second = durationInMillis / 1000 % 60
            var minute = durationInMillis / (1000 * 60) % 60
            var hour = durationInMillis / (1000 * 60 * 60) % 24
            var time: String
            time = String.format("%02dh %02dm %02ds", hour, minute, second)
    
            RenderUtils.drawRoundedRect(-2f, -2f, x2.toFloat(), y2.toFloat(), radiusValue.get(), Color(bgredValue.get(), bggreenValue.get(), bgblueValue.get(), bgalphaValue.get()).rgb)
          if(lineValue.get()) {
              RenderUtils.drawGradientSideways(
                  2.44,
                  fontRenderer.FONT_HEIGHT + 2.5 + 0.0,
                  138.0 + -2.44,
                  fontRenderer.FONT_HEIGHT + 2.5 + 1.16,
                  Color(redValue.get(), greenValue.get(), blueValue.get()).rgb,
                  Color(colorRedValue2.get(), colorGreenValue2.get(), colorBlueValue2.get()).rgb
              )
          }
            val autogg = LiquidBounce.moduleManager.getModule(AutoGG::class.java) as AutoGG?
            fontRenderer.drawCenteredString("Session Info", x2.toFloat() / 2f, 3f, Color.WHITE.rgb, true)
            fontRenderer.drawStringWithShadow("Play Time: $time", 2f, fontRenderer.FONT_HEIGHT + 8f, Color.WHITE.rgb)
            fontRenderer.drawStringWithShadow("Players Killed: " + CombatListener.killCounts,2f , fontRenderer.FONT_HEIGHT * 2 + 8f, Color.WHITE.rgb)
            fontRenderer.drawStringWithShadow("Win: " + autogg!!.getWin(), 2f, fontRenderer.FONT_HEIGHT * 3 + 8f, Color.WHITE.rgb)
            fontRenderer.drawStringWithShadow("Total: " + CombatListener.totalPlayed, 2f, fontRenderer.FONT_HEIGHT * 4 + 8f, Color.WHITE.rgb)
            return Border(-2f, -2f, x2.toFloat(), y2.toFloat())
        }
    }
    

    Needed

    object CombatListener : Listenable {
        var syncEntity: EntityLivingBase? = null
        var killCounts = 0
        var totalPlayed = 0
        var win = 0
        var startTime = System.currentTimeMillis()
    
        @EventTarget
        private fun onAttack(event: AttackEvent) { syncEntity = event.targetEntity as EntityLivingBase?
        }
    
        @EventTarget
        private fun onUpdate(event: UpdateEvent) {
            if(syncEntity != null && syncEntity!!.isDead) {
                ++killCounts
                syncEntity = null
            }
        }
    
        @EventTarget(ignoreCondition = true)
        private fun onPacket(event: PacketEvent) {
            val packet = event.packet
            if (event.packet is C00Handshake) startTime = System.currentTimeMillis()
    
            if (packet is S45PacketTitle) {
                val title = packet.message.formattedText
                if(title.contains("Winner")){
                    win++
                }
                if(title.contains("BedWar")){
                    totalPlayed++
                }
                if(title.contains("SkyWar")){
                    totalPlayed++
                }
            }
        }
    
        override fun handleEvents() = true
    
        init {
            LiquidBounce.eventManager.registerListener(this)
        }
    }
    

    AutoGG

    @ModuleInfo(name = "AutoGG", description = "End a game send GG", category = ModuleCategory.MISC,spacedName = "Auto GG")
    public class AutoGG extends Module {
        private TextValue ggMessage = new TextValue("GGMessage", "[QingRanSense] GG try to buy QingRanSense");
        private TextValue winMessage = new TextValue("WinMessage", "Winner");
        private BoolValue play = new BoolValue("AutoPlay",true);
        private BoolValue disable = new BoolValue("AutoDisable",true);
        private ListValue mode = new ListValue("Mode", new String[] {"BedWars_1v1", "BedWars_2v2", "BedWars_3v3","BedWars_4v4", "SkyWars_Solo", "SkyWars_Solo_Insane","SkyWars_Solo_LuckyBlock","SkyWars_Team","SkyWars_Team_Insane","SkyWars_Team_LuckyBlock","SurivialGames_Solo","SurivialGames_Team","MiniWalls"}, "SkyWars_Solo");
        private IntegerValue delay = new IntegerValue("Delay", 3, 0, 5);
        public static boolean winning = false;
        private TimerUtil timer = new TimerUtil();
        private Timer timer1 = new Timer();
        private double time = 0.0;
        public int win = 0;
        int a;
    
        @Override
        public String getTag() {
            return mode.get();
        }
    
        @EventTarget
        public void onPacket(PacketEvent packetEvent) {
            Packet<?> packet = packetEvent.getPacket();
            if(packet instanceof S02PacketChat) {
                if(((S02PacketChat) packet).getChatComponent().getUnformattedText().contains(winMessage.get())) {
                    mc.thePlayer.sendChatMessage(ggMessage.get());
                    winning = true;
                    int delay1 = delay.get();
                    if(disable.get()) {
                        LiquidBounce.moduleManager.getModule(KillAura.class).setState(false);
                        LiquidBounce.moduleManager.getModule(ChestStealer.class).setState(false);
                        LiquidBounce.moduleManager.getModule(InvManager.class).setState(false);
                        LiquidBounce.moduleManager.getModule(ChestAura.class).setState(false);
                        win += 1;
                        LiquidBounce.hud.addNotification(new Notification("Will Send You to Next Game", Notification.Type.SUCCESS, delay1 * 1000 - 500));
                    }
                    if(play.get()) {
                        this.timer1.schedule(new TimerTask() {
                            public void run() {
                                switch (mode.get()) {
                                    case "BedWars_1v1":
                                        mc.thePlayer.sendChatMessage("/play bedwars_eight_one");
                                        break;
                                    case "BedWars_2v2":
                                        mc.thePlayer.sendChatMessage("/play bedwars_eight_two");
                                        break;
                                    case "BedWars_3v3":
                                        mc.thePlayer.sendChatMessage("/play bedwars_four_three");
                                        break;
                                    case "BedWars_4v4":
                                        mc.thePlayer.sendChatMessage("/play bedwars_four_four");
                                        break;
                                    case "SkyWars_Solo":
                                        mc.thePlayer.sendChatMessage("/play solo_normal");
                                        break;
                                    case "SkyWars_Solo_Insane":
                                        mc.thePlayer.sendChatMessage("/play solo_insane");
                                        break;
                                    case "SkyWars_Solo_LuckyBlock":
                                        mc.thePlayer.sendChatMessage("/play solo_insane_lucky");
                                        break;
                                    case "SkyWars_Team":
                                        mc.thePlayer.sendChatMessage("/play teams_normal");
                                        break;
                                    case "SkyWars_Team_Insane":
                                        mc.thePlayer.sendChatMessage("/play teams_insane");
                                        break;
                                    case "SkyWars_Team_LuckyBlock":
                                        mc.thePlayer.sendChatMessage("/play teams_insane_lucky");
                                        break;
                                    case "SurivialGames_Solo":
                                        mc.thePlayer.sendChatMessage("/play blitz_solo_normal");
                                        break;
                                    case "SurivialGames_Team":
                                        mc.thePlayer.sendChatMessage("/play blitz_teams_normal");
                                        break;
                                    case "MiniWalls":
                                        mc.thePlayer.sendChatMessage("/play arcade_mini_walls");
                                        break;
                                }
                                winning = false;
                            }
                        }, (delay.get().longValue() * 10) * 100);
                    }
                }
            }
        }
    
        @Override
        public void onDisable() {
            a = -40;
            winning = false;
        }
    
        public int getWin(){
            return win;
        }
    
    }
    

    And Add this in your LiquidBounce.kt

        var playTimeStart: Long = 0
    
    CookieChineseC 1 Reply Last reply
    0
    • YounKooY YounKoo

      Preview:
      ![SYS{6UUK~$5JZPUB6WB4~9.png

      Code

      @ElementInfo(name = "Session")
      class Session(x: Double = 15.0, y: Double = 10.0, scale: Float = 1F,
                        side: Side = Side(Side.Horizontal.LEFT, Side.Vertical.UP)
      ) : Element(x, y, scale, side) {
      
          private val radiusValue = FloatValue("Radius", 4.25f, 0f, 10f)
          private val bgredValue = IntegerValue("Bg-R", 255, 0, 255)
          private val bggreenValue = IntegerValue("Bg-G", 255, 0, 255)
          private val bgblueValue = IntegerValue("Bg-B", 255, 0, 255)
          private val bgalphaValue = IntegerValue("Bg-Alpha", 150, 0, 255)
      
          val lineValue = BoolValue("Line", true)
          private val redValue = IntegerValue("Line-R", 255, 0, 255)
          private val greenValue = IntegerValue("Line-G", 255, 0, 255)
          private val blueValue = IntegerValue("Line-B", 255, 0, 255)
          private val colorRedValue2 = IntegerValue("Line-R2", 0, 0, 255)
          private val colorGreenValue2 = IntegerValue("Line-G2", 111, 0, 255)
          private val colorBlueValue2 = IntegerValue("Line-B2", 255, 0, 255)
      
          val fontValue = FontValue("Font", Fonts.font35)
      
          override fun drawElement(): Border? {
              val fontRenderer = fontValue.get()
      
              val y2 = fontRenderer.FONT_HEIGHT * 5 + 11.0
              val x2 = 140.0
      
              var durationInMillis: Long = System.currentTimeMillis() - LiquidBounce.playTimeStart
              var second = durationInMillis / 1000 % 60
              var minute = durationInMillis / (1000 * 60) % 60
              var hour = durationInMillis / (1000 * 60 * 60) % 24
              var time: String
              time = String.format("%02dh %02dm %02ds", hour, minute, second)
      
              RenderUtils.drawRoundedRect(-2f, -2f, x2.toFloat(), y2.toFloat(), radiusValue.get(), Color(bgredValue.get(), bggreenValue.get(), bgblueValue.get(), bgalphaValue.get()).rgb)
            if(lineValue.get()) {
                RenderUtils.drawGradientSideways(
                    2.44,
                    fontRenderer.FONT_HEIGHT + 2.5 + 0.0,
                    138.0 + -2.44,
                    fontRenderer.FONT_HEIGHT + 2.5 + 1.16,
                    Color(redValue.get(), greenValue.get(), blueValue.get()).rgb,
                    Color(colorRedValue2.get(), colorGreenValue2.get(), colorBlueValue2.get()).rgb
                )
            }
              val autogg = LiquidBounce.moduleManager.getModule(AutoGG::class.java) as AutoGG?
              fontRenderer.drawCenteredString("Session Info", x2.toFloat() / 2f, 3f, Color.WHITE.rgb, true)
              fontRenderer.drawStringWithShadow("Play Time: $time", 2f, fontRenderer.FONT_HEIGHT + 8f, Color.WHITE.rgb)
              fontRenderer.drawStringWithShadow("Players Killed: " + CombatListener.killCounts,2f , fontRenderer.FONT_HEIGHT * 2 + 8f, Color.WHITE.rgb)
              fontRenderer.drawStringWithShadow("Win: " + autogg!!.getWin(), 2f, fontRenderer.FONT_HEIGHT * 3 + 8f, Color.WHITE.rgb)
              fontRenderer.drawStringWithShadow("Total: " + CombatListener.totalPlayed, 2f, fontRenderer.FONT_HEIGHT * 4 + 8f, Color.WHITE.rgb)
              return Border(-2f, -2f, x2.toFloat(), y2.toFloat())
          }
      }
      

      Needed

      object CombatListener : Listenable {
          var syncEntity: EntityLivingBase? = null
          var killCounts = 0
          var totalPlayed = 0
          var win = 0
          var startTime = System.currentTimeMillis()
      
          @EventTarget
          private fun onAttack(event: AttackEvent) { syncEntity = event.targetEntity as EntityLivingBase?
          }
      
          @EventTarget
          private fun onUpdate(event: UpdateEvent) {
              if(syncEntity != null && syncEntity!!.isDead) {
                  ++killCounts
                  syncEntity = null
              }
          }
      
          @EventTarget(ignoreCondition = true)
          private fun onPacket(event: PacketEvent) {
              val packet = event.packet
              if (event.packet is C00Handshake) startTime = System.currentTimeMillis()
      
              if (packet is S45PacketTitle) {
                  val title = packet.message.formattedText
                  if(title.contains("Winner")){
                      win++
                  }
                  if(title.contains("BedWar")){
                      totalPlayed++
                  }
                  if(title.contains("SkyWar")){
                      totalPlayed++
                  }
              }
          }
      
          override fun handleEvents() = true
      
          init {
              LiquidBounce.eventManager.registerListener(this)
          }
      }
      

      AutoGG

      @ModuleInfo(name = "AutoGG", description = "End a game send GG", category = ModuleCategory.MISC,spacedName = "Auto GG")
      public class AutoGG extends Module {
          private TextValue ggMessage = new TextValue("GGMessage", "[QingRanSense] GG try to buy QingRanSense");
          private TextValue winMessage = new TextValue("WinMessage", "Winner");
          private BoolValue play = new BoolValue("AutoPlay",true);
          private BoolValue disable = new BoolValue("AutoDisable",true);
          private ListValue mode = new ListValue("Mode", new String[] {"BedWars_1v1", "BedWars_2v2", "BedWars_3v3","BedWars_4v4", "SkyWars_Solo", "SkyWars_Solo_Insane","SkyWars_Solo_LuckyBlock","SkyWars_Team","SkyWars_Team_Insane","SkyWars_Team_LuckyBlock","SurivialGames_Solo","SurivialGames_Team","MiniWalls"}, "SkyWars_Solo");
          private IntegerValue delay = new IntegerValue("Delay", 3, 0, 5);
          public static boolean winning = false;
          private TimerUtil timer = new TimerUtil();
          private Timer timer1 = new Timer();
          private double time = 0.0;
          public int win = 0;
          int a;
      
          @Override
          public String getTag() {
              return mode.get();
          }
      
          @EventTarget
          public void onPacket(PacketEvent packetEvent) {
              Packet<?> packet = packetEvent.getPacket();
              if(packet instanceof S02PacketChat) {
                  if(((S02PacketChat) packet).getChatComponent().getUnformattedText().contains(winMessage.get())) {
                      mc.thePlayer.sendChatMessage(ggMessage.get());
                      winning = true;
                      int delay1 = delay.get();
                      if(disable.get()) {
                          LiquidBounce.moduleManager.getModule(KillAura.class).setState(false);
                          LiquidBounce.moduleManager.getModule(ChestStealer.class).setState(false);
                          LiquidBounce.moduleManager.getModule(InvManager.class).setState(false);
                          LiquidBounce.moduleManager.getModule(ChestAura.class).setState(false);
                          win += 1;
                          LiquidBounce.hud.addNotification(new Notification("Will Send You to Next Game", Notification.Type.SUCCESS, delay1 * 1000 - 500));
                      }
                      if(play.get()) {
                          this.timer1.schedule(new TimerTask() {
                              public void run() {
                                  switch (mode.get()) {
                                      case "BedWars_1v1":
                                          mc.thePlayer.sendChatMessage("/play bedwars_eight_one");
                                          break;
                                      case "BedWars_2v2":
                                          mc.thePlayer.sendChatMessage("/play bedwars_eight_two");
                                          break;
                                      case "BedWars_3v3":
                                          mc.thePlayer.sendChatMessage("/play bedwars_four_three");
                                          break;
                                      case "BedWars_4v4":
                                          mc.thePlayer.sendChatMessage("/play bedwars_four_four");
                                          break;
                                      case "SkyWars_Solo":
                                          mc.thePlayer.sendChatMessage("/play solo_normal");
                                          break;
                                      case "SkyWars_Solo_Insane":
                                          mc.thePlayer.sendChatMessage("/play solo_insane");
                                          break;
                                      case "SkyWars_Solo_LuckyBlock":
                                          mc.thePlayer.sendChatMessage("/play solo_insane_lucky");
                                          break;
                                      case "SkyWars_Team":
                                          mc.thePlayer.sendChatMessage("/play teams_normal");
                                          break;
                                      case "SkyWars_Team_Insane":
                                          mc.thePlayer.sendChatMessage("/play teams_insane");
                                          break;
                                      case "SkyWars_Team_LuckyBlock":
                                          mc.thePlayer.sendChatMessage("/play teams_insane_lucky");
                                          break;
                                      case "SurivialGames_Solo":
                                          mc.thePlayer.sendChatMessage("/play blitz_solo_normal");
                                          break;
                                      case "SurivialGames_Team":
                                          mc.thePlayer.sendChatMessage("/play blitz_teams_normal");
                                          break;
                                      case "MiniWalls":
                                          mc.thePlayer.sendChatMessage("/play arcade_mini_walls");
                                          break;
                                  }
                                  winning = false;
                              }
                          }, (delay.get().longValue() * 10) * 100);
                      }
                  }
              }
          }
      
          @Override
          public void onDisable() {
              a = -40;
              winning = false;
          }
      
          public int getWin(){
              return win;
          }
      
      }
      

      And Add this in your LiquidBounce.kt

          var playTimeStart: Long = 0
      
      CookieChineseC Offline
      CookieChineseC Offline
      CookieChinese
      wrote on last edited by
      #2

      @YounKoo AutoGG抄码子抄的不错,下次别抄了

      YounKooY 2 Replies Last reply
      0
      • CookieChineseC CookieChinese

        @YounKoo AutoGG抄码子抄的不错,下次别抄了

        YounKooY Offline
        YounKooY Offline
        YounKoo
        wrote on last edited by
        #3

        @CookieChinese 好的

        1 Reply Last reply
        0
        • CookieChineseC CookieChinese

          @YounKoo AutoGG抄码子抄的不错,下次别抄了

          YounKooY Offline
          YounKooY Offline
          YounKoo
          wrote on last edited by
          #4

          @CookieChinese AutoGG Module来自于SpaceKing

          1 Reply Last reply
          0
          • W Offline
            W Offline
            wdsjxj8451
            wrote on last edited by
            #5

            怎么把码字弄上去

            1 Reply Last reply
            1

            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

            With your input, this post could be even better 💗

            Register Login
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            About
            • Terms of Service
            • Privacy Policy
            • Status
            • Contact Us
            Downloads
            • Releases
            • Source code
            • License
            Docs
            • Tutorials
            • CustomHUD
            • AutoSettings
            • ScriptAPI
            Community
            • Forum
            • Guilded
            • YouTube
            • Twitter
            • D.Tube
            • Login

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups