Skip to content

Commit fc803e1

Browse files
committed
uwu fixed
Signed-off-by: Emily Engel <Justsweetluna@gmail.com>
1 parent c33af93 commit fc803e1

File tree

5 files changed

+48
-61
lines changed

5 files changed

+48
-61
lines changed

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ Doesnt work on Vanilla Version, due to the event not implemented. Use with Labym
99
## Help needed
1010

1111
```
12-
- Unmute Players in the OnKey Event. *Its buggy and has weird edge cases*
1312
- Hide Voicechat Icon
1413
```
1514

src/main/java/meow/emily/patootie/Emily.java

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -28,17 +28,17 @@ public class Emily extends LabyModAddon {
2828
private static Emily instance;
2929
private VoiceChat voiceChat;
3030

31-
3231
private boolean renderPlayers;
3332
private boolean modOn;
34-
// UUID VoiceCHat 1.12
33+
3534
private final UUID vcUuid12 = UUID.fromString("24c0644d-ad56-4609-876d-6e9da3cc9794");
35+
private final UUID vcUuid8 = UUID.fromString("43152d5b-ca80-4b29-8f48-39fd63e48dee");
36+
3637
private boolean muted = false;
3738
private boolean playerUnmute = false;
3839

3940
private boolean configMessage = true;
40-
// UUID VoiceChat 1.8
41-
private final UUID vcUuid8 = UUID.fromString("43152d5b-ca80-4b29-8f48-39fd63e48dee");
41+
private LabyModAddon addon;
4242
public Map<UUID, Integer> playersToRender = new HashMap<>();
4343

4444
private List<String> playersToRenderString = new ArrayList<>();
@@ -72,7 +72,7 @@ public void onTick(TickEvent.ClientTickEvent event) {
7272
if (addon == null || addon.about == null || addon.about.name == null) {
7373
continue;
7474
}
75-
LabyModAddon voicechat = AddonLoader.getAddonByUUID(UUID.fromString(String.valueOf(vcUuid8)));
75+
LabyModAddon voicechat = AddonLoader.getAddonByUUID(UUID.fromString(String.valueOf()));
7676
if (voicechat instanceof VoiceChat && addon.about.name.equals("VoiceChat")) {
7777
voiceChat = (VoiceChat) addon;
7878
System.out.println(PREFIX + "VoiceChat found!");
@@ -93,14 +93,13 @@ private UserActionEntry createBlacklistEntry() {
9393
new UserActionEntry.ActionExecutor() {
9494
@Override
9595
public void execute(User user, EntityPlayer entityPlayer, NetworkPlayerInfo networkPlayerInfo) {
96-
// getConfig().addProperty("playersToRenderString", networkPlayerInfo.getGameProfile().getName());
97-
//labyMod().displayMessageInChat("Name: " + getConfig().get("playersToRenderString"));
9896
try {
99-
RemovePlayer(networkPlayerInfo.getGameProfile().getName());
10097
UUID uuid = networkPlayerInfo.getGameProfile().getId();
98+
LabyMod.getInstance().displayMessageInChat(networkPlayerInfo.getGameProfile().getId().toString());
99+
VoiceChat voiceChat = (VoiceChat) AddonLoader.getAddonByUUID(vcUuid8);
101100
if (isVoiceexist()) {
102-
VoiceChat voiceChat = (VoiceChat) AddonLoader.getAddonByUUID(UUID.fromString(String.valueOf(vcUuid12)));
103101
Map<UUID, Integer> volume = voiceChat.getPlayerVolumes();
102+
voiceChat.getPlayerVolumes().put(uuid, 0);
104103
volume.put(uuid, 0);
105104
voiceChat.savePlayersVolumes();
106105
}
@@ -134,8 +133,8 @@ public void execute(User user, EntityPlayer entityPlayer, NetworkPlayerInfo netw
134133
try {
135134
RemovePlayer(networkPlayerInfo.getGameProfile().getName());
136135
UUID uuid = networkPlayerInfo.getGameProfile().getId();
136+
VoiceChat voiceChat = (VoiceChat) AddonLoader.getAddonByUUID(vcUuid12);
137137
if (isVoiceexist()) {
138-
VoiceChat voiceChat = (VoiceChat) AddonLoader.getAddonByUUID(UUID.fromString(String.valueOf(vcUuid12)));
139138
Map<UUID, Integer> volume = voiceChat.getPlayerVolumes();
140139
volume.put(uuid, 100);
141140
if (volume.containsKey(uuid)) {
@@ -351,4 +350,5 @@ public boolean isModOn() {
351350
public void setModOn(boolean modOn) {
352351
this.modOn = modOn;
353352
}
353+
354354
}

src/main/java/meow/emily/patootie/events/CommandHandler.java

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,22 +13,10 @@ public boolean onSend(String s) {
1313
if (s.startsWith("/ph add")) {
1414
EntityPlayer player = Minecraft.getMinecraft().player;
1515
String[] args = new String[0];
16-
if (args.length > 0) {
17-
if (args[0].equalsIgnoreCase("add")) {
18-
instance.getPlayersToRenderString().add(args[1]);
19-
return true;
20-
}
21-
}
2216
}
2317
if (s.startsWith("/ph remove")) {
2418
EntityPlayer player = Minecraft.getMinecraft().player;
2519
String[] args = new String[0];
26-
if (args.length > 0) {
27-
if (args[0].equalsIgnoreCase("remove")) {
28-
instance.getPlayersToRenderString().removeIf(user -> user.equals(s));
29-
return true;
30-
}
31-
}
3220
}
3321
return false;
3422
}

src/main/java/meow/emily/patootie/events/PlayerEventHandler.java

Lines changed: 30 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -48,55 +48,42 @@ public void onPrePlayerRender(RenderPlayerEvent.Pre e) {
4848
if (instance.isRenderPlayers() && instance.isModOn()) {
4949
if (instance.isRenderPlayers() && !enPlayer.equals(Minecraft.getMinecraft().player)) {
5050
List<String> localPlayersToRender = instance.getPlayersToRenderString();
51-
if (!Utils.isNPC(enPlayer)) {
51+
if (Utils.isNPC(enPlayer)) {
5252
e.setCanceled(false);
5353
for (String s : localPlayersToRender) {
5454
if (s.equals(enPlayer.getGameProfile().getName())) {
5555
e.setCanceled(true);
56-
if (instance.isVoiceexist()) {
57-
if (instance.isMuted()) {
58-
mute(enPlayer);
59-
}
60-
}
6156
}
6257
}
6358
}
6459
}
65-
} /* else {
66-
if (instance.isPlayerUnmute() && instance.isVoiceexist() && !enPlayer.equals(Minecraft.getMinecraft().thePlayer && !instance.isModOn())) {
67-
if (!instance.isRenderPlayers() && !Utils.isNPC(enPlayer)) {
68-
Map<UUID, Integer> volume = instance.getPlayersToRender();
69-
// for each uuid in the map
70-
for (UUID uuid : volume.keySet()) {
71-
// if the uuid is the same as the player
72-
if (uuid.equals(enPlayer.getUniqueID())) {
73-
// get the volume
74-
unmute(enPlayer);
75-
}
76-
}
77-
instance.setPlayerUnmute(!instance.isPlayerUnmute());
78-
}
79-
}
80-
} */
60+
}
8161
}
8262

83-
// Call unmute when mod is also disabled on player.
84-
// currently only works when player is invis, otherwise wont unmute.
8563
public void mute(EntityPlayer player) {
8664
Emily instance = Emily.getInstance();
8765
VoiceChat voiceChat = (VoiceChat) AddonLoader.getAddonByUUID(this.vcUuid12);
88-
voiceChat.getPlayerVolumes().put(player.getUniqueID(), 0);
89-
voiceChat.savePlayersVolumes();
66+
if (!player.equals(Minecraft.getMinecraft().player)) {
67+
voiceChat.getPlayerVolumes().put(player.getUniqueID(), 0);
68+
voiceChat.savePlayersVolumes();
69+
}
70+
}
71+
72+
public void RemovePlayer(String s) {
73+
// remove from the list
74+
Emily instance = Emily.getInstance();
75+
instance.getPlayersToRenderString().remove(s);
76+
instance.savePlayersToRenderString();
77+
// playersToRenderString.removeIf(player -> player.equals(s));
78+
instance.saveConfig();
9079
}
9180

9281
public void unmute(EntityPlayer player) {
9382
Emily instance = Emily.getInstance();
9483
VoiceChat voiceChat = (VoiceChat) AddonLoader.getAddonByUUID(this.vcUuid12);
95-
UUID uuid = player.getGameProfile().getId();
84+
UUID uuid = player.getUniqueID();
9685
Map<UUID, Integer> volume = voiceChat.getPlayerVolumes();
97-
if (volume.containsKey(uuid)) {
98-
volume.put(uuid, voiceChat.getVolume(uuid));
99-
} else {
86+
if (!player.equals(Minecraft.getMinecraft().player)) {
10087
volume.put(uuid, 100);
10188
}
10289
voiceChat.savePlayersVolumes();
@@ -114,10 +101,13 @@ public void onKeyInput(InputEvent.KeyInputEvent e) {
114101
instance.setRenderPlayers(false);
115102
instance.setMuted(false);
116103
instance.saveConfig();
117-
if (instance.isVoiceexist()) {
118-
if (enPlayer != null) {
119-
unmute(enPlayer);
120-
}
104+
if (instance.isVoiceexist() && instance.isPlayerUnmute()) {
105+
Minecraft.getMinecraft().world.playerEntities.stream()
106+
.filter(entityPlayer ->
107+
Emily.getInstance().getPlayersToRenderString()
108+
.contains(entityPlayer.getName())).
109+
forEach(this::unmute);
110+
//RemovePlayer(enPlayer.getGameProfile().getName());
121111
}
122112
if (instance.isConfigMessage()) {
123113
labymod.displayMessageInChat(ChatFormatting.GRAY + ">>" + "[" + ChatFormatting.AQUA + "PH" + ChatFormatting.WHITE + "]" + ChatFormatting.BOLD + ChatFormatting.GREEN + " on");
@@ -128,7 +118,11 @@ public void onKeyInput(InputEvent.KeyInputEvent e) {
128118
instance.saveConfig();
129119
if (instance.isVoiceexist()) {
130120
if (enPlayer != null) {
131-
mute(enPlayer);
121+
Minecraft.getMinecraft().world.playerEntities.stream()
122+
.filter(entityPlayer ->
123+
Emily.getInstance().getPlayersToRenderString()
124+
.contains(entityPlayer.getName())).
125+
forEach(this::mute);
132126
}
133127
}
134128
if (instance.isConfigMessage()) {
@@ -141,4 +135,4 @@ public void onKeyInput(InputEvent.KeyInputEvent e) {
141135
}
142136
}
143137
}
144-
}
138+
}

src/main/java/meow/emily/patootie/util/Utils.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
import net.minecraft.entity.Entity;
55
import net.minecraft.entity.EntityLivingBase;
66

7+
import java.util.UUID;
8+
79
public class Utils {
810
/**
911
* Checks if the given entity is an NPC
@@ -13,11 +15,15 @@ public class Utils {
1315
*/
1416
public static boolean isNPC(Entity entity) {
1517
if (!(entity instanceof EntityOtherPlayerMP)) {
16-
return false;
18+
return true;
1719
}
1820

1921
EntityLivingBase entityLivingBase = (EntityLivingBase) entity;
2022

21-
return entity.getUniqueID().version() == 2 && entityLivingBase.getHealth() == 20.0F && !entityLivingBase.isPlayerSleeping();
23+
return entity.getUniqueID().version() != 2 || entityLivingBase.getHealth() != 20.0F || entityLivingBase.isPlayerSleeping();
24+
}
25+
26+
public static UUID toUUID(String s) {
27+
return UUID.fromString(s);
2228
}
2329
}

0 commit comments

Comments
 (0)