Skip to content

Commit b5dd572

Browse files
committed
sync 2024/7/12
* 适配BE,修复兼容性 * 合并服务端发布 * 分离 处理器编辑增强
1 parent 8634921 commit b5dd572

30 files changed

+1203
-1299
lines changed

patches/client/0001-BUILD-build.gradle.kts-and-clear.patch

+32-10
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ clear and replce jabel(Support record)
77
way-zer <[email protected]> on 2024/6/9
88
---
99
.gitignore | 2 +-
10-
android/build.gradle | 73 +++--
10+
android/build.gradle | 80 +++--
1111
android/proguard-rules.pro | 5 +
1212
.../com/github/bsideup/jabel/Desugar.java | 13 +
1313
.../javax.annotation.processing.Processor | 6 +
@@ -21,11 +21,11 @@ way-zer <[email protected]> on 2024/6/9
2121
gradlew | 282 +++++++++++-------
2222
gradlew.bat | 35 ++-
2323
ios/build.gradle | 2 +-
24-
server/build.gradle | 42 +--
24+
server/build.gradle | 44 +--
2525
settings.gradle | 10 +-
2626
tools/build.gradle | 44 ++-
2727
tools/src/mindustry/tools/Generators.java | 2 +-
28-
19 files changed, 384 insertions(+), 607 deletions(-)
28+
19 files changed, 389 insertions(+), 611 deletions(-)
2929
create mode 100644 annotations/src/main/java/com/github/bsideup/jabel/Desugar.java
3030
create mode 100644 annotations/src/main/resources/META-INF/services/javax.annotation.processing.Processor
3131
delete mode 100644 core/build.gradle
@@ -52,7 +52,7 @@ index dd3f2a0f065d3f774ea84fbc932e337160e4b307..7d91d3191096c431b739d2d5ecd951a7
5252
/core/assets/locales
5353
/core/assets/cache/
5454
diff --git a/android/build.gradle b/android/build.gradle
55-
index f7f1ce377bb162249e8034db9ab712a75e96bc17..136f657fb1187dd5c4e9ff49352964bb917c6eed 100644
55+
index f7f1ce377bb162249e8034db9ab712a75e96bc17..8b9676e3f124728d59ee80367d14f433853c0c40 100644
5656
--- a/android/build.gradle
5757
+++ b/android/build.gradle
5858
@@ -1,18 +1,19 @@
@@ -107,17 +107,34 @@ index f7f1ce377bb162249e8034db9ab712a75e96bc17..136f657fb1187dd5c4e9ff49352964bb
107107
sourceSets{
108108
main{
109109
manifest.srcFile 'AndroidManifest.xml'
110-
@@ -63,8 +57,8 @@ android{
110+
@@ -50,8 +44,6 @@ android{
111+
}
112+
113+
defaultConfig{
114+
- Properties props = loadVersionProps()
115+
- Integer vcode = props['androidBuildCode']?.toInteger() ?: 1
116+
def versionNameResult = "$versionNumber-$versionType-${getBuildVersion().replace(" ", "-")}"
117+
118+
applicationId "io.anuke.mindustry"
119+
@@ -59,12 +51,15 @@ android{
120+
targetSdkVersion 33
121+
122+
versionName versionNameResult
123+
- versionCode = vcode
124+
+ versionCode = 1
111125

112126
if(project.hasProperty("release")){
127+
+ Properties props = loadVersionProps()
128+
+ Integer vcode = props['androidBuildCode']?.toInteger() ?: 1
129+
+ versionCode = vcode
113130
props['androidBuildCode'] = (vcode + 1).toString()
114131
+ props.store(file('../core/assets/version.properties').newWriter(), null)
115132
}
116133
- props.store(file('../core/assets/version.properties').newWriter(), null)
117134
}
118135

119136
compileOptions{
120-
@@ -72,7 +66,7 @@ android{
137+
@@ -72,7 +67,7 @@ android{
121138
targetCompatibility JavaVersion.VERSION_1_8
122139
}
123140

@@ -126,7 +143,7 @@ index f7f1ce377bb162249e8034db9ab712a75e96bc17..136f657fb1187dd5c4e9ff49352964bb
126143

127144
signingConfigs{
128145
release{
129-
@@ -119,8 +113,8 @@ dependencies{
146+
@@ -119,8 +114,8 @@ dependencies{
130147
implementation arcModule("backends:backend-android")
131148
implementation 'com.jakewharton.android.repackaged:dalvik-dx:9.0.0_r3'
132149

@@ -137,7 +154,7 @@ index f7f1ce377bb162249e8034db9ab712a75e96bc17..136f657fb1187dd5c4e9ff49352964bb
137154

138155
def version;
139156
def highestVersion;
140-
@@ -133,24 +127,25 @@ dependencies{
157+
@@ -133,24 +128,25 @@ dependencies{
141158
if(sdkFile.exists()) compileOnly files(sdkFile.absolutePath)
142159
}
143160

@@ -3096,7 +3113,7 @@ index d0ec38f0a9c9f7d07c240a3d0c8c24bd0f6c1ebf..44d6d24b5b4d43514c8c5bf535bf7077
30963113
launchIPhoneSimulator.dependsOn build
30973114
launchIPadSimulator.dependsOn build
30983115
diff --git a/server/build.gradle b/server/build.gradle
3099-
index 7359fdac3cb101aec25a7be9e8b9813ed1afd547..0ea1b05d6928c1d16ffb5f48a6ac0c1eb8d66bd8 100644
3116+
index 7359fdac3cb101aec25a7be9e8b9813ed1afd547..badc019ded25d495a139efe134085184640eb500 100644
31003117
--- a/server/build.gradle
31013118
+++ b/server/build.gradle
31023119
@@ -3,10 +3,6 @@ sourceSets.main.java.srcDirs = ["src/"]
@@ -3110,14 +3127,19 @@ index 7359fdac3cb101aec25a7be9e8b9813ed1afd547..0ea1b05d6928c1d16ffb5f48a6ac0c1e
31103127
task run(dependsOn: classes, type: JavaExec){
31113128
mainClass = project.mainClassName
31123129
classpath = sourceSets.main.runtimeClasspath
3113-
@@ -31,6 +27,7 @@ task debug(dependsOn: classes, type: JavaExec){
3130+
@@ -31,10 +27,11 @@ task debug(dependsOn: classes, type: JavaExec){
31143131
}
31153132

31163133
task dist(type: Jar, dependsOn: configurations.runtimeClasspath){
31173134
+ dependsOn classes
31183135
from files(sourceSets.main.output.classesDirs)
31193136
from files(sourceSets.main.output.resourcesDir)
31203137
from {configurations.runtimeClasspath.collect{ it.isDirectory() ? it : zipTree(it) }}
3138+
- from files(project.assetsDir)
3139+
+ from files(tasks.getByPath(":core:allAssets"))
3140+
exclude("sprites/**")
3141+
exclude("music/**")
3142+
exclude("sounds/**")
31213143
@@ -51,40 +48,3 @@ task dist(type: Jar, dependsOn: configurations.runtimeClasspath){
31223144
attributes 'Main-Class': project.mainClassName
31233145
}

patches/client/0003-CS-Version.patch

+20-38
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,11 @@ Subject: [PATCH] CS: Version
1111
build.gradle | 4 ++--
1212
core/build.gradle.kts | 2 +-
1313
core/src/mindustry/Vars.java | 2 +-
14-
core/src/mindustry/core/NetClient.java | 4 +++-
15-
core/src/mindustry/core/NetServer.java | 11 ++++++++---
14+
core/src/mindustry/core/NetClient.java | 2 ++
1615
core/src/mindustry/core/Version.java | 16 +++++++++++++++-
16+
core/src/mindustry/net/NetworkIO.java | 2 +-
1717
gradle.properties | 2 ++
18-
11 files changed, 37 insertions(+), 14 deletions(-)
18+
11 files changed, 29 insertions(+), 11 deletions(-)
1919

2020
diff --git a/.gitignore b/.gitignore
2121
index 7d91d3191096c431b739d2d5ecd951a764feead3..ba271e6bd0dd06971fff6fa2314254149cc90087 100644
@@ -42,7 +42,7 @@ index 8cae20eee7a480cef6a14576fc72b096d38271e1..25602c4ab4070b7db9b31803c88281c7
4242
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
4343
<uses-feature android:name="android.hardware.type.pc" android:required="false" />
4444
diff --git a/android/build.gradle b/android/build.gradle
45-
index 136f657fb1187dd5c4e9ff49352964bb917c6eed..6f3e8ee3b7b21265a4638ad3b5f09af790619c76 100644
45+
index 8b9676e3f124728d59ee80367d14f433853c0c40..c39484bf6b00b8031b7ae8862cc172f8946f12cc 100644
4646
--- a/android/build.gradle
4747
+++ b/android/build.gradle
4848
@@ -18,7 +18,7 @@ configurations{ natives }
@@ -54,8 +54,8 @@ index 136f657fb1187dd5c4e9ff49352964bb917c6eed..6f3e8ee3b7b21265a4638ad3b5f09af7
5454
}
5555

5656
android{
57-
@@ -48,7 +48,7 @@ android{
58-
Integer vcode = props['androidBuildCode']?.toInteger() ?: 1
57+
@@ -46,7 +46,7 @@ android{
58+
defaultConfig{
5959
def versionNameResult = "$versionNumber-$versionType-${getBuildVersion().replace(" ", "-")}"
6060

6161
- applicationId "io.anuke.mindustry"
@@ -119,18 +119,9 @@ index bc4c6a494aec88af73f001906598ba91a50ac6a3..d08d04a6f0e8107cec995876b2072c46
119119
public static final Seq<ServerGroup> defaultServers = Seq.with();
120120
/** maximum size of any block, do not change unless you know what you're doing */
121121
diff --git a/core/src/mindustry/core/NetClient.java b/core/src/mindustry/core/NetClient.java
122-
index 8171a89797a0d1cb29fb50364a94b6d3130698ae..76736b9f6bc44d040bdfc2cc717702d1c3eca839 100644
122+
index 8171a89797a0d1cb29fb50364a94b6d3130698ae..6b05845bad6eb3862dea511563e099085d15b479 100644
123123
--- a/core/src/mindustry/core/NetClient.java
124124
+++ b/core/src/mindustry/core/NetClient.java
125-
@@ -92,7 +92,7 @@ public class NetClient implements ApplicationListener{
126-
c.locale = locale;
127-
c.mods = mods.getModStrings();
128-
c.mobile = mobile;
129-
- c.versionType = Version.type;
130-
+ c.versionType = "official";
131-
c.color = player.color.rgba();
132-
c.usid = getUsid(packet.addressTCP);
133-
c.uuid = platform.getUUID();
134125
@@ -135,6 +135,8 @@ public class NetClient implements ApplicationListener{
135126
Log.info("Received world data: @ bytes.", data.stream.available());
136127
NetworkIO.loadWorld(new InflaterInputStream(data.stream));
@@ -140,28 +131,6 @@ index 8171a89797a0d1cb29fb50364a94b6d3130698ae..76736b9f6bc44d040bdfc2cc717702d1
140131
finishConnecting();
141132
});
142133
}
143-
diff --git a/core/src/mindustry/core/NetServer.java b/core/src/mindustry/core/NetServer.java
144-
index b80f828362676bdad9cffa982b2544f845441c74..80149612e037bd9ec6368c1b4c3a5d067fd184f1 100644
145-
--- a/core/src/mindustry/core/NetServer.java
146-
+++ b/core/src/mindustry/core/NetServer.java
147-
@@ -210,9 +210,14 @@ public class NetServer implements ApplicationListener{
148-
return;
149-
}
150-
151-
- if(packet.versionType == null || ((packet.version == -1 || !packet.versionType.equals(Version.type)) && Version.build != -1 && !admins.allowsCustomClients())){
152-
- con.kick(!Version.type.equals(packet.versionType) ? KickReason.typeMismatch : KickReason.customClient);
153-
- return;
154-
+ if(Version.build != -1 && !admins.allowsCustomClients()){
155-
+ if(packet.versionType == null || packet.version == -1){
156-
+ con.kick(KickReason.customClient);
157-
+ return;
158-
+ }else if((!Version.type.equals("MindustryX") || !"official".equals(packet.versionType)) && !Version.type.equals(packet.versionType)){
159-
+ con.kick(KickReason.typeMismatch);
160-
+ return;
161-
+ }
162-
}
163-
164-
boolean preventDuplicates = headless && netServer.admins.isStrict();
165134
diff --git a/core/src/mindustry/core/Version.java b/core/src/mindustry/core/Version.java
166135
index 73bbd59416cc8e1b64bcb5538fdd73886a455451..8698103654e40dd4e85451e1020563ca562ed2d2 100644
167136
--- a/core/src/mindustry/core/Version.java
@@ -209,6 +178,19 @@ index 73bbd59416cc8e1b64bcb5538fdd73886a455451..8698103654e40dd4e85451e1020563ca
209178
+ "\nMindustryX " + mdtXBuild;
210179
}
211180
}
181+
diff --git a/core/src/mindustry/net/NetworkIO.java b/core/src/mindustry/net/NetworkIO.java
182+
index 48599c6b96474117057e7ca2b87b545873a0ea31..4366eeef830845fb13132a0ae3534129b7a859dc 100644
183+
--- a/core/src/mindustry/net/NetworkIO.java
184+
+++ b/core/src/mindustry/net/NetworkIO.java
185+
@@ -107,7 +107,7 @@ public class NetworkIO{
186+
buffer.putInt(Core.settings.getInt("totalPlayers", Groups.player.size()));
187+
buffer.putInt(state.wave);
188+
buffer.putInt(Version.build);
189+
- writeString(buffer, Version.type);
190+
+ writeString(buffer, "MindustryX");
191+
192+
buffer.put((byte)state.rules.mode().ordinal());
193+
buffer.putInt(netServer.admins.getPlayerLimit());
212194
diff --git a/gradle.properties b/gradle.properties
213195
index f43e22ea642fe0dcd62cf970a518de025db65ea4..b1921b8ac0d8d0ca7ac86e4d551a694d1ae38ed9 100644
214196
--- a/gradle.properties

patches/client/0004-API-Hooks.patch

+17-4
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,11 @@ Date: Wed, 3 Apr 2024 21:57:24 +0800
44
Subject: [PATCH] API: Hooks
55

66
---
7-
core/src/mindustry/ClientLauncher.java | 1 +
8-
core/src/mindustry/Vars.java | 1 +
9-
core/src/mindustryX/Hooks.java | 17 +++++++++++++++++
10-
3 files changed, 19 insertions(+)
7+
core/src/mindustry/ClientLauncher.java | 1 +
8+
core/src/mindustry/Vars.java | 1 +
9+
core/src/mindustryX/Hooks.java | 17 +++++++++++++++++
10+
server/src/mindustry/server/ServerLauncher.java | 1 +
11+
4 files changed, 20 insertions(+)
1112
create mode 100644 core/src/mindustryX/Hooks.java
1213

1314
diff --git a/core/src/mindustry/ClientLauncher.java b/core/src/mindustry/ClientLauncher.java
@@ -57,3 +58,15 @@ index 0000000000000000000000000000000000000000..499a9f3403c6769288ad44e7fb4a68ff
5758
+ Log.infoTag("MindustryX", "Hooks.init");
5859
+ }
5960
+}
61+
diff --git a/server/src/mindustry/server/ServerLauncher.java b/server/src/mindustry/server/ServerLauncher.java
62+
index 1aea11b2cc877ef9a35280575e6419d9fab16f01..1799c999b2affdc0de392841212edc1f544e4751 100644
63+
--- a/server/src/mindustry/server/ServerLauncher.java
64+
+++ b/server/src/mindustry/server/ServerLauncher.java
65+
@@ -76,6 +76,7 @@ public class ServerLauncher implements ApplicationListener{
66+
Core.app.addListener(netServer = new NetServer());
67+
Core.app.addListener(new ServerControl(args));
68+
Core.app.addListener(new ApplicationListener(){public void update(){ asyncCore.end(); }});
69+
+ Core.app.addListener(new mindustryX.Hooks());
70+
71+
mods.eachClass(Mod::init);
72+

patches/client/0009-S-Add-icons.properties-bundles-block_colors.png-to-s.patch

+4-4
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,14 @@ Subject: [PATCH] S: Add icons.properties,bundles,block_colors.png to server
1010
2 files changed, 13 insertions(+), 13 deletions(-)
1111

1212
diff --git a/server/build.gradle b/server/build.gradle
13-
index 0ea1b05d6928c1d16ffb5f48a6ac0c1eb8d66bd8..8e6276a74b8b2b26d19da562abd5ca2420e15aa6 100644
13+
index badc019ded25d495a139efe134085184640eb500..f212b7bf9d8a3e46179ba62d8987fcb15efa5568 100644
1414
--- a/server/build.gradle
1515
+++ b/server/build.gradle
1616
@@ -31,18 +31,18 @@ task dist(type: Jar, dependsOn: configurations.runtimeClasspath){
1717
from files(sourceSets.main.output.classesDirs)
1818
from files(sourceSets.main.output.resourcesDir)
1919
from {configurations.runtimeClasspath.collect{ it.isDirectory() ? it : zipTree(it) }}
20-
- from files(project.assetsDir)
20+
- from files(tasks.getByPath(":core:allAssets"))
2121
- exclude("sprites/**")
2222
- exclude("music/**")
2323
- exclude("sounds/**")
@@ -29,7 +29,7 @@ index 0ea1b05d6928c1d16ffb5f48a6ac0c1eb8d66bd8..8e6276a74b8b2b26d19da562abd5ca24
2929
- exclude("icons/icon.icns")
3030
- exclude("icons/icon.ico")
3131
- exclude("icons/icon_64.png")
32-
+ from (files(project.assetsDir)){
32+
+ from (files(tasks.getByPath(":core:allAssets"))){
3333
+ include "baseparts/**"
3434
+ include "bundles/**"
3535
+ include "icons/icons.properties"
@@ -45,7 +45,7 @@ index 0ea1b05d6928c1d16ffb5f48a6ac0c1eb8d66bd8..8e6276a74b8b2b26d19da562abd5ca24
4545
manifest{
4646
attributes 'Main-Class': project.mainClassName
4747
diff --git a/server/src/mindustry/server/ServerLauncher.java b/server/src/mindustry/server/ServerLauncher.java
48-
index 1aea11b2cc877ef9a35280575e6419d9fab16f01..167be582ef387471f31c252a7732881d1d22ac87 100644
48+
index 1799c999b2affdc0de392841212edc1f544e4751..81683e05cc3f38d943ae94f00621da01e09a1f31 100644
4949
--- a/server/src/mindustry/server/ServerLauncher.java
5050
+++ b/server/src/mindustry/server/ServerLauncher.java
5151
@@ -41,7 +41,7 @@ public class ServerLauncher implements ApplicationListener{

patches/client/0011-SC-Fix-6.patch patches/client/0012-SC-Fix-6.patch

+4-20
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,14 @@ Date: Mon, 26 Dec 2022 15:29:10 +0800
44
Subject: [PATCH] SC: Fix #6
55

66
---
7-
.../mindustry/world/blocks/payloads/PayloadConveyor.java | 7 ++++++-
8-
1 file changed, 6 insertions(+), 1 deletion(-)
7+
.../src/mindustry/world/blocks/payloads/PayloadConveyor.java | 5 ++++-
8+
1 file changed, 4 insertions(+), 1 deletion(-)
99

1010
diff --git a/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java b/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java
11-
index e6c368d97eec75f27d68d681fec480defe7e8218..d80217d66403bfd962594deb73642f053f3e403d 100644
11+
index e6c368d97eec75f27d68d681fec480defe7e8218..f9064cdc0773a76860f6d1873901083c4ccd07ce 100644
1212
--- a/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java
1313
+++ b/core/src/mindustry/world/blocks/payloads/PayloadConveyor.java
14-
@@ -11,6 +11,7 @@ import mindustry.entities.*;
15-
import mindustry.gen.*;
16-
import mindustry.graphics.*;
17-
import mindustry.world.*;
18-
+import mindustry.world.blocks.payloads.PayloadRouter.*;
19-
import mindustry.world.meta.*;
20-
21-
import static mindustry.Vars.*;
22-
@@ -154,7 +155,10 @@ public class PayloadConveyor extends Block{
14+
@@ -154,7 +154,10 @@ public class PayloadConveyor extends Block{
2315
if(valid && stepAccepted != curStep && item != null){
2416
if(next != null){
2517
//trigger update forward
@@ -31,11 +23,3 @@ index e6c368d97eec75f27d68d681fec480defe7e8218..d80217d66403bfd962594deb73642f05
3123

3224
//TODO add self to queue of next conveyor, then check if this conveyor was selected next frame - selection happens deterministically
3325
if(next != null && next.acceptPayload(this, item)){
34-
@@ -267,6 +271,7 @@ public class PayloadConveyor extends Block{
35-
36-
@Override
37-
public boolean acceptPayload(Building source, Payload payload){
38-
+ //Note: using progress there seems very bad thing.(for E/S and low TPS)
39-
return this.item == null
40-
&& payload.fits(payloadLimit)
41-
&& (source == this || this.enabled && progress <= 5f);

patches/client/0024-API-Hooks-onHandleSendMessage.patch

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Subject: [PATCH] API(Hooks) onHandleSendMessage
99
2 files changed, 10 insertions(+)
1010

1111
diff --git a/core/src/mindustry/core/NetClient.java b/core/src/mindustry/core/NetClient.java
12-
index 76736b9f6bc44d040bdfc2cc717702d1c3eca839..138ba396e44b98d60031369f1d063f3465b382c8 100644
12+
index 6b05845bad6eb3862dea511563e099085d15b479..c0960a878e6831e746499bdf13444c2e6ab42f9a 100644
1313
--- a/core/src/mindustry/core/NetClient.java
1414
+++ b/core/src/mindustry/core/NetClient.java
1515
@@ -198,6 +198,8 @@ public class NetClient implements ApplicationListener{

patches/client/0026-C-InternalMods-claj.patch

+2-2
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,13 @@ index 1ce00d17c712d417383a3d61f13e6f62e5d91adc..67e4cde70b0dbdc197cf8e9d5f12b5ae
5151

5252
diff --git a/core/src/mindustryX/mods/claj/Claj.java b/core/src/mindustryX/mods/claj/Claj.java
5353
new file mode 100644
54-
index 0000000000000000000000000000000000000000..ef0deaffdc749b0dc501a0a4b5ae79608f3f2230
54+
index 0000000000000000000000000000000000000000..fd2d5ad910433779dc0324a5f86e3d28e9f6832c
5555
--- /dev/null
5656
+++ b/core/src/mindustryX/mods/claj/Claj.java
5757
@@ -0,0 +1,31 @@
5858
+package mindustryX.mods.claj;
5959
+
6060
+import arc.scene.ui.layout.*;
61-
+import arc.struct.*;
6261
+import mindustry.*;
6362
+import mindustry.gen.*;
6463
+import mindustry.mod.*;
@@ -70,6 +69,7 @@ index 0000000000000000000000000000000000000000..ef0deaffdc749b0dc501a0a4b5ae7960
7069
+
7170
+ @Override
7271
+ public void init(){
72+
+ if(Vars.headless) return;
7373
+ ClajIntegration.load();
7474
+ joinViaClaj = new JoinViaClajDialog();
7575
+ manageRooms = new ManageRoomsDialog();

0 commit comments

Comments
 (0)