Исходник Casino bot с логикой под ft base exp 3.1

Начинающий
Статус
Оффлайн
Регистрация
30 Июл 2023
Сообщения
420
Реакции[?]
2
Поинты[?]
1K
Начинающий
Статус
Оффлайн
Регистрация
3 Окт 2022
Сообщения
177
Реакции[?]
1
Поинты[?]
1K
не скрываешь код??? тогда зачем тебе колониал?
ну так чтобы каждый 1 не лез туда, если кому-то реально нужно что-то они просто снимут колониал и все
П.С вот чуть измененный код, хз кому и зачем он нужен, но зато он без var'ов :)


CasinoBOT:
package tech.expensive.functions.impl.player;

import com.google.common.eventbus.Subscribe;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.player.ClientPlayerEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.network.IPacket;
import net.minecraft.network.play.server.SChatPacket;
import tech.expensive.events.EventPacket;
import tech.expensive.events.EventUpdate;
import tech.expensive.functions.api.Category;
import tech.expensive.functions.api.Function;
import tech.expensive.functions.api.FunctionRegister;
import tech.expensive.utils.math.StopWatch;

import java.util.Locale;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

@FunctionRegister(
        name = "CasinoBOT",
        type = Category.Player
)
public class CasinoFT extends Function {
    private final StopWatch timer = new StopWatch();
    private PlayerEntity currentPlayer;
    private int wallet;
    private final Random randomizer = new Random();

    public CasinoFT() {
        // Конструктор без параметров
    }

    @Subscribe
    public void onGameTick(EventUpdate event) {
        if (timer.isReached(20000L)) {
            ClientPlayerEntity player = Minecraft.player;
            String playerName = player.getScoreboardName();
            player.sendChatMessage("!Привет! Я - ваш личный  Казино-Бот. Проверьте свою удачу! /pay " + playerName + " количество. В случае успеха, я удвою вашу сумму. Минимальная сумма для игры - 5000.");
            timer.reset();
        }
    }

    @Subscribe
    public void onIncomingPacket(EventPacket event) {
        IPacket packet = event.getPacket();
        if (packet instanceof SChatPacket chatPacket) {
            String messageContent = chatPacket.getChatComponent().getString().toLowerCase(Locale.ROOT);
            if (messageContent.contains("получено от игрока ")) {
                String[] messageWords = messageContent.split(" ");
                String sender = messageWords[messageWords.length - 1];

                Pattern pattern = Pattern.compile("\\$(\\d{1,3}(,\\d{3})*)");
                Matcher matcher = pattern.matcher(messageContent);
                int sum = 0;

                if (matcher.find()) {
                    String extractedAmount = matcher.group(1).replace(",", "");
                    sum = Integer.parseInt(extractedAmount);
                }

                if (sum < 5000) {
                    Minecraft.player.sendChatMessage("/m " + sender + " Минимальная сумма для участия - 5000 монет.");
                    return;
                }

                boolean isWinner = randomizer.nextDouble() < 0.35; // 35% вероятность выигрыша

                if (isWinner) {
                    Minecraft.player.sendChatMessage("/m " + sender + " Поздравляю, вы выиграли!");
                    int reward = sum * 2;
                    Minecraft.player.sendChatMessage("/pay " + sender + " " + reward);
                    Minecraft.player.sendChatMessage("/pay " + sender + " " + reward);
                } else {
                    Minecraft.player.sendChatMessage("/m " + sender + " К сожалению, вы проиграли.");
                }
            }
        }
    }
}
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
18 Июн 2024
Сообщения
11
Реакции[?]
0
Поинты[?]
0
Ну что сказать мб кому то надо


Casino.java:
package gg.gerda.functions.impl.player;

import java.util.Locale;
import java.util.Random;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import com.google.common.eventbus.Subscribe;
import gg.gerda.functions.settings.impl.SliderSetting;
import net.minecraft.client.Minecraft;
import net.minecraft.client.entity.player.ClientPlayerEntity;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.network.IPacket;
import net.minecraft.network.play.server.SChatPacket;
import net.minecraft.util.text.TextFormatting;
import gg.gerda.events.EventPacket;
import gg.gerda.events.EventUpdate;
import gg.gerda.functions.api.Category;
import gg.gerda.functions.api.Function;
import gg.gerda.functions.api.FunctionRegister;
import gg.gerda.utils.math.StopWatch;

@FunctionRegister(
        name = "Casino",
        type = Category.Player
)
public class Casino extends Function {
    StopWatch timer = new StopWatch();
    PlayerEntity player;
    int balances;
    Random randomGenerator = new Random();


    public Casino() {
      
    }

    @Subscribe
    public void onUpdate(EventUpdate e) {
        if (this.timer.isReached(60000L)) {
            Minecraft var10000 = mc;
            ClientPlayerEntity var2 = Minecraft.player;
            Minecraft var10001 = mc;
            String var3 = Minecraft.player.getScoreboardName();
            var2.sendChatMessage("!Привет! Я - ваш личный казино бот. Попробуйте свою удачу и отправьте мне деньги /pay " + var3 + " сумма. Взамен, я отправлю вам сумму x2 если повезёт. Казино бот работает от суммы 5000");
            this.timer.reset();
        }
    }

    @Subscribe
    public void onPacket(EventPacket e) {
        IPacket var3 = e.getPacket();
        if (var3 instanceof SChatPacket p) {
            String raw = p.getChatComponent().getString().toLowerCase(Locale.ROOT);
            if (raw.contains("получено от игрока ")) {
                String[] parts = raw.split(" ");
                String senderName = parts[parts.length - 1];

                // Используем регулярное выражение для извлечения суммы с запятыми
                Pattern pattern = Pattern.compile("\\$(\\d{1,3}(,\\d{3})*)");
                Matcher matcher = pattern.matcher(raw);
                int amount = 0;
                if (matcher.find()) {
                    String amountStr = matcher.group(1).replace(",", "");
                    amount = Integer.parseInt(amountStr);
                }

                // Проверка на минимальную сумму
                if (amount < 5000) {
                    Minecraft var10000 = mc;
                    ClientPlayerEntity var4 = Minecraft.player;
                    var4.sendChatMessage("/m " + senderName + " Минимальная сумма для игры - 5000 монет.");
                    return;
                }

                boolean win = randomGenerator.nextDouble() < 0.3; // 30% chance to win

                Minecraft var10000 = mc;
                ClientPlayerEntity var4 = Minecraft.player;
                if (win) {
                    var4.sendChatMessage("/m " + senderName + " вы выйграли");
                    int winnings = amount * 2;
                    var4.sendChatMessage("/pay " + senderName + " " + winnings);
                    var4.sendChatMessage("/pay " + senderName + " " + winnings);
                    TextFormatting var5 = TextFormatting.GREEN;
                } else {
                    var4.sendChatMessage("/m " + senderName + " вы проиграли");
                    TextFormatting var5 = TextFormatting.RED;
                }
            }
        }
    }
}
норм вроде
 
Сверху Снизу