Skip to content

Commit 356fbdb

Browse files
authored
Merge pull request #12 from GTNewHorizons/fix-long-chat-crash
Add a chat message length limit to avoid crashing with too big packets
2 parents 236744c + 1d76f7d commit 356fbdb

File tree

6 files changed

+34
-24
lines changed

6 files changed

+34
-24
lines changed

build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
//version: 1646409286
1+
//version: 1650343995
22
/*
33
DO NOT CHANGE THIS FILE!
44
@@ -568,7 +568,7 @@ publishing {
568568
artifact source: shadowJar, classifier: ""
569569
}
570570
if(!noPublishedSources) {
571-
artifact source: sourcesJar, classifier: "src"
571+
artifact source: sourcesJar, classifier: "sources"
572572
}
573573
artifact source: usesShadowedDependencies.toBoolean() ? shadowDevJar : devJar, classifier: "dev"
574574
if (apiPackage) {

src/main/java/minetweaker/api/player/IPlayer.java

+2
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@ public interface IPlayer {
3535
@ZenMethod
3636
void sendChat(IChatMessage message);
3737

38+
int MAX_CHAT_MESSAGE_LENGTH = 512;
39+
3840
@ZenMethod
3941
void sendChat(String message);
4042

src/main/java/minetweaker/mc1710/player/CommandBlockPlayer.java

+10-6
Original file line numberDiff line numberDiff line change
@@ -37,22 +37,22 @@ public String getName(){
3737
public IData getData(){
3838
return null;
3939
}
40-
40+
4141
@Override
4242
public int getXP() {
4343
return 0;
4444
}
45-
45+
4646
@Override
4747
public void setXP(int xp) {
48-
48+
4949
}
50-
50+
5151
@Override
5252
public void removeXP(int xp) {
53-
53+
5454
}
55-
55+
5656
@Override
5757
public void update(IData data){
5858

@@ -70,6 +70,10 @@ public void sendChat(IChatMessage message){
7070

7171
@Override
7272
public void sendChat(String message){
73+
if (message.length() > MAX_CHAT_MESSAGE_LENGTH)
74+
{
75+
message = message.substring(0, MAX_CHAT_MESSAGE_LENGTH);
76+
}
7377
sender.addChatMessage(new ChatComponentText(message));
7478
}
7579

src/main/java/minetweaker/mc1710/player/MCPlayer.java

+8-4
Original file line numberDiff line numberDiff line change
@@ -51,25 +51,25 @@ public String getName() {
5151
public IData getData() {
5252
return NBTConverter.from(player.getEntityData(), true);
5353
}
54-
54+
5555
@Override
5656
public int getXP() {
5757
return player.experienceLevel;
5858
}
59-
59+
6060
@Override
6161
public void setXP(int xp) {
6262
player.experienceLevel = 0;
6363
player.addExperienceLevel(xp);
6464
}
65-
65+
6666
@Override
6767
public void removeXP(int xp) {
6868
final int newLvl = Math.max(0, player.experienceLevel - xp);
6969
player.experienceLevel = 0;
7070
player.addExperienceLevel(newLvl);
7171
}
72-
72+
7373
@Override
7474
public void update(IData data) {
7575
NBTConverter.updateMap(player.getEntityData(), data);
@@ -87,6 +87,10 @@ public void sendChat(IChatMessage message) {
8787

8888
@Override
8989
public void sendChat(String message) {
90+
if (message.length() > MAX_CHAT_MESSAGE_LENGTH)
91+
{
92+
message = message.substring(0, MAX_CHAT_MESSAGE_LENGTH);
93+
}
9094
player.addChatMessage(new ChatComponentText(message));
9195
}
9296

src/main/java/minetweaker/mc1710/player/RconPlayer.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -38,22 +38,22 @@ public String getName() {
3838
public IData getData() {
3939
return null;
4040
}
41-
41+
4242
@Override
4343
public int getXP() {
4444
return 0;
4545
}
46-
46+
4747
@Override
4848
public void setXP(int xp) {
49-
49+
5050
}
51-
51+
5252
@Override
5353
public void removeXP(int xp) {
54-
54+
5555
}
56-
56+
5757
@Override
5858
public void update(IData data) {
5959

src/main/java/minetweaker/mc1710/server/ServerPlayer.java

+6-6
Original file line numberDiff line numberDiff line change
@@ -48,22 +48,22 @@ public IData getData() {
4848
// TODO: implement
4949
return null;
5050
}
51-
51+
5252
@Override
5353
public int getXP() {
5454
return 0;
5555
}
56-
56+
5757
@Override
5858
public void setXP(int xp) {
59-
59+
6060
}
61-
61+
6262
@Override
6363
public void removeXP(int xp) {
64-
64+
6565
}
66-
66+
6767
@Override
6868
public void update(IData data) {
6969
// TODO: implement

0 commit comments

Comments
 (0)