- Выберите загрузчик игры
 - Vanilla
 - OptiFine
 
			
				ssselfcode:
			
		
		
		@FunctionAnnotation(name = "HitDebug", type = Type.Player)
public class HitDebug extends Function {
    private TimerUtil lastAttack = new TimerUtil();
    private int lastEntityId;
    private boolean confirm;
    @Override
    public void onEvent(Event event) {
        if (event instanceof EventPacket pac) {
            if (pac.getPacket() instanceof CUseEntityPacket up && up.getAction() == CUseEntityPacket.Action.ATTACK) {
                Entity entity = up.getEntityFromWorld(mc.world);
                lastEntityId = entity.getEntityId();
                lastAttack.reset();
                confirm = false;
            }
            if (pac.getPacket() instanceof SEntityStatusPacket ep && ep.getOpCode() == 2 && ep.entityId == lastEntityId) {
                confirm = true;
            }
            if (pac.getPacket() instanceof SChatPacket cp) {
                String chatmsg = cp.getChatComponent().getString();
                //TODO: кто захочет добавить сапорт в рг я лиш дал базовый метод
            }
        }
        if (event instanceof EventUpdate) {
            if (!confirm && lastAttack.hasTimeElapsed(120)) {
                //TODO дописать поддержку пинга игрока
                ClientUtil.sendMesage("No damage");
                confirm = true;
            }
        }
    }
}
	
			
				Последнее редактирование: