• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

CyclopsMC / IntegratedDynamics / 16552051255

27 Jul 2025 01:58PM UTC coverage: 53.206% (+8.0%) from 45.161%
16552051255

push

github

rubensworks
Resolve minor TODOs

2888 of 8740 branches covered (33.04%)

Branch coverage included in aggregate %.

17341 of 29280 relevant lines covered (59.22%)

3.08 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

16.67
/src/main/java/org/cyclops/integrateddynamics/network/packet/SpeakTextPacket.java
1
package org.cyclops.integrateddynamics.network.packet;
2

3
import com.mojang.text2speech.Narrator;
4
import net.minecraft.network.RegistryFriendlyByteBuf;
5
import net.minecraft.network.codec.StreamCodec;
6
import net.minecraft.resources.ResourceLocation;
7
import net.minecraft.server.level.ServerPlayer;
8
import net.minecraft.world.entity.player.Player;
9
import net.minecraft.world.level.Level;
10
import org.cyclops.cyclopscore.network.CodecField;
11
import org.cyclops.cyclopscore.network.PacketCodec;
12
import org.cyclops.integrateddynamics.GeneralConfig;
13
import org.cyclops.integrateddynamics.Reference;
14

15
import java.util.Date;
16

17
/**
18
 * Packet for speaking text.
19
 *
20
 * @author rubensworks
21
 */
22
public class SpeakTextPacket extends PacketCodec {
23

24
    public static final Type<SpeakTextPacket> ID = new Type<>(ResourceLocation.fromNamespaceAndPath(Reference.MOD_ID, "speak_text"));
7✔
25
    public static final StreamCodec<RegistryFriendlyByteBuf, SpeakTextPacket> CODEC = getCodec(SpeakTextPacket::new);
3✔
26

27
    public static long lastSay = 0;
3✔
28

29
    @CodecField
30
    private String text;
31
    @CodecField
32
    private float volume;
33

34
    public SpeakTextPacket() {
35
        super(ID);
×
36
    }
×
37

38
    public SpeakTextPacket(String text, float volume) {
39
        super(ID);
×
40
        this.text = text;
×
41
        this.volume = volume;
×
42
    }
×
43

44
    @Override
45
    public boolean isAsync() {
46
        return false;
×
47
    }
48

49
    @Override
50
    public void actionClient(Level world, Player player) {
51
        if (new Date().getTime() >= lastSay + GeneralConfig.speachMaxFrequency) {
×
52
            Narrator.getNarrator().clear();
×
53
            Narrator.getNarrator().say(this.text, true, this.volume);
×
54
            lastSay = new Date().getTime();
×
55
        }
56
    }
×
57

58
    @Override
59
    public void actionServer(Level world, ServerPlayer player) {
60

61
    }
×
62

63
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc