Skip to content

Commit efedeff

Browse files
committed
Updated to support Minecraft 1.17.
New ScriptableMC-Tools-TS plugin to generate typescript libraries from a running server. Updated kotlin to target java 11, will update to 16 later. Updated gradle to v7.0.2
1 parent b677509 commit efedeff

File tree

29 files changed

+539
-435
lines changed

29 files changed

+539
-435
lines changed

.github/workflows/build-dev.yml

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -10,37 +10,38 @@ jobs:
1010
build:
1111
runs-on: ubuntu-latest
1212
steps:
13-
- uses: actions/checkout@v1
14-
- name: Set up JDK 1.8
15-
uses: actions/setup-java@v1
13+
- uses: actions/checkout@v2
14+
- name: Set up Adopt OpenJDK 11
15+
uses: actions/setup-java@v2
1616
with:
17-
java-version: 1.8
18-
- name: Set up Node.js 12.14.1
19-
uses: actions/setup-node@v1
17+
distribution: 'adopt'
18+
java-version: '11'
19+
- name: Set up Node.js v14
20+
uses: actions/setup-node@v2
2021
with:
21-
node-version: 12.14.1
22+
node-version: '14'
2223
- name: Fix gradlew permissions
2324
run: chmod +x ./gradlew
2425
- name: Export TypeScript Libraries with Gradle
25-
run: ./gradlew :ScriptableMC-Tools-TS:exportTypeScriptLibraries
26+
run: ./gradlew :ScriptableMC-Tools-TS:Standalone:exportTypeScriptLibraries
2627
- name: Compile TypeScript libraries and create archives
2728
run: |
28-
cd ./ScriptableMC-Tools-TS/lib/
29+
cd ./ScriptableMC-Tools-TS/Standalone/lib/
2930
npm install
3031
npm run compile
3132
cd ./ts/
3233
zip -r ../ScriptableMC-TypeScript-Lib.zip ./*
3334
cd ../js/
3435
zip -r ../ScriptableMC-JavaScript-Lib.zip ./*
3536
cd ../
36-
cp ./ScriptableMC-JavaScript-Lib.zip ../../ScriptableMC-Engine-JS/src/main/resources/libraries.zip
37+
cp ./ScriptableMC-JavaScript-Lib.zip ../../../ScriptableMC-Engine-JS/src/main/resources/libraries.zip
3738
- name: Export lib-smc with gradle
38-
run: ./gradlew :ScriptableMC-Tools-TS:generateLibSMC
39+
run: ./gradlew :ScriptableMC-Tools-TS:Standalone:generateLibSMC
3940
- name: Compile lib-smc, create archive, and publish
4041
env:
4142
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
4243
run: |
43-
cd ./ScriptableMC-Tools-TS/lib-smc/
44+
cd ./ScriptableMC-Tools-TS/Standalone/lib-smc/
4445
npm install
4546
npm run compile
4647
npm publish ./js
@@ -52,10 +53,12 @@ jobs:
5253
mkdir artifacts
5354
cp ./build/ScriptableMC-Engine-JS.jar ./artifacts/
5455
cp ./build/ScriptableMC-Engine-JS-Bundled.jar ./artifacts/
55-
cp ./ScriptableMC-Tools-TS/lib/ScriptableMC-TypeScript-Lib.zip ./artifacts/
56-
cp ./ScriptableMC-Tools-TS/lib/ScriptableMC-JavaScript-Lib.zip ./artifacts/
57-
cp ./ScriptableMC-Tools-TS/lib-smc/Lib-SMC.zip ./artifacts/
58-
- uses: actions/upload-artifact@v1
56+
cp ./build/ScriptableMC-Tools-TS.jar ./artifacts/
57+
cp ./build/ScriptableMC-Tools-TS-Standalone.jar ./artifacts/
58+
cp ./ScriptableMC-Tools-TS/Standalone/lib/ScriptableMC-TypeScript-Lib.zip ./artifacts/
59+
cp ./ScriptableMC-Tools-TS/Standalone/lib/ScriptableMC-JavaScript-Lib.zip ./artifacts/
60+
cp ./ScriptableMC-Tools-TS/Standalone/lib-smc/Lib-SMC.zip ./artifacts/
61+
- uses: actions/upload-artifact@v2
5962
with:
6063
name: ScriptableMC-Engine-DEV
6164
path: artifacts/

.github/workflows/release.yml

Lines changed: 29 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -6,38 +6,39 @@ jobs:
66
build:
77
runs-on: ubuntu-latest
88
steps:
9-
- uses: actions/checkout@v1
10-
- name: Set up JDK 1.8
11-
uses: actions/setup-java@v1
9+
- uses: actions/checkout@v2
10+
- name: Set up JDK 11
11+
uses: actions/setup-java@v2
1212
with:
13-
java-version: 1.8
14-
- name: Set up Node.js 12.14.1
15-
uses: actions/setup-node@v1
13+
distribution: 'adopt'
14+
java-version: '11'
15+
- name: Set up Node.js 14
16+
uses: actions/setup-node@v2
1617
with:
17-
node-version: 12.14.1
18+
node-version: '14'
1819
- name: Fix gradlew permissions
1920
run: chmod +x ./gradlew
2021
- name: Export TypeScript Libraries with Gradle
21-
run: ./gradlew :ScriptableMC-Tools-TS:exportTypeScriptLibraries
22+
run: ./gradlew :ScriptableMC-Tools-TS:Standalone:exportTypeScriptLibraries
2223
- name: Compile TypeScript libraries and create archives
2324
run: |
24-
cd ./ScriptableMC-Tools-TS/lib/
25+
cd ./ScriptableMC-Tools-TS/Standalone/lib/
2526
npm install
2627
npm run compile
2728
cd ./ts/
2829
zip -r ../ScriptableMC-TypeScript-Lib.zip ./*
2930
cd ../js/
3031
zip -r ../ScriptableMC-JavaScript-Lib.zip ./*
3132
cd ../
32-
cp ./ScriptableMC-JavaScript-Lib.zip ../../ScriptableMC-Engine-JS/src/main/resources/libraries.zip
33+
cp ./ScriptableMC-JavaScript-Lib.zip ../../../ScriptableMC-Engine-JS/src/main/resources/libraries.zip
3334
- name: Export lib-smc with gradle
34-
run: ./gradlew :ScriptableMC-Tools-TS:generateLibSMCRelease
35+
run: ./gradlew :ScriptableMC-Tools-TS:Standalone:generateLibSMCRelease
3536
- name: Compile lib-smc, create archive, and publish
3637
env:
3738
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
3839
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
3940
run: |
40-
cd ./ScriptableMC-Tools-TS/lib-smc/
41+
cd ./ScriptableMC-Tools-TS/Standalone/lib-smc/
4142
npm install
4243
npm run compile
4344
npm publish ./js --access public
@@ -49,22 +50,34 @@ jobs:
4950
env:
5051
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5152
with:
52-
args: 'ScriptableMC-Engine-JS/build/libs/ScriptableMC-Engine-JS.jar'
53+
args: 'build/ScriptableMC-Engine-JS.jar'
5354
- name: Upload Bundled JavaScript Engine Plugin Jar
5455
uses: skx/github-action-publish-binaries@master
5556
env:
5657
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
5758
with:
58-
args: 'ScriptableMC-Engine-JS/Bundled/build/libs/ScriptableMC-Engine-JS-Bundled.jar'
59+
args: 'build/ScriptableMC-Engine-JS-Bundled.jar'
60+
- name: Upload TypeScript Tools Plugin Jar
61+
uses: skx/github-action-publish-binaries@master
62+
env:
63+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
64+
with:
65+
args: 'build/ScriptableMC-Tools-TS.jar'
66+
- name: Upload Standalone TypeScript Tools
67+
uses: skx/github-action-publish-binaries@master
68+
env:
69+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
70+
with:
71+
args: 'build/ScriptableMC-Tools-TS-Standalone.jar'
5972
- name: Upload TypeScript Libraries
6073
uses: skx/github-action-publish-binaries@master
6174
env:
6275
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
6376
with:
64-
args: 'ScriptableMC-Tools-TS/lib/ScriptableMC-TypeScript-Lib.zip'
77+
args: 'ScriptableMC-Tools-TS/Standalone/lib/ScriptableMC-TypeScript-Lib.zip'
6578
- name: Upload JavaScript Libraries
6679
uses: skx/github-action-publish-binaries@master
6780
env:
6881
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
6982
with:
70-
args: 'ScriptableMC-Tools-TS/lib/ScriptableMC-JavaScript-Lib.zip'
83+
args: 'ScriptableMC-Tools-TS/Standalone/lib/ScriptableMC-JavaScript-Lib.zip'

.idea/jarRepositories.xml

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/libraries-with-intellij-classes.xml

Lines changed: 65 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 7 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

README.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,14 @@
44
[![SpigotMC Resource](https://img.shields.io/badge/SpigotMC-Resource-yellow?style=for-the-badge)](https://www.spigotmc.org/resources/scriptablemc-engine.74690/)
55
![License](https://img.shields.io/github/license/astorks/ScriptableMC-Engine?style=for-the-badge)
66

7-
Run JavaScript/TypeScript plugins for Minecraft 1.15 using the GraalJS script engine.<br />
8-
Supported Minecraft Versions: Bukkit/Spigot/Paper 1.13, 1.14, 1.15, **1.16**<br />
9-
Untested but should work: 1.8+
7+
**New Version Numbering**<br />
8+
We are switching to a new version numbering to match the minecraft version.<br />
9+
New v1.17.X builds of this plugin will only work with Minecraft 1.17+<br />
10+
For Minecraft v1.12-1.16 you should use v1.3.X of this plugin.<br />
11+
12+
Run JavaScript/TypeScript plugins for Minecraft 1.17 using the GraalJS script engine.<br />
13+
Supported Minecraft Versions: Bukkit/Spigot/Paper **1.17**<br />
14+
Previous Minecraft Versions: [Use v1.3.X version of the plugin](https://github.com/astorks/ScriptableMC-Engine/tree/v1.3.0) <br />
1015

1116
**This plugin is in a preview state, there may be breaking changes, missing features, and possibly a few bugs.**<br >
1217
Feel free to create an issue if you find any missing features, bugs, or just have an idea for a great feature to add.

ScriptableMC-Engine-Core/build.gradle.kts

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,12 @@ plugins {
44
id("org.jetbrains.gradle.plugin.idea-ext")
55
}
66

7+
var graalvmVersion = findProperty("graalvm.version")
8+
var spigotmcVersion = findProperty("spigotmc.version")
9+
710
java {
8-
sourceCompatibility = JavaVersion.VERSION_1_8
9-
targetCompatibility = JavaVersion.VERSION_1_8
11+
sourceCompatibility = JavaVersion.VERSION_11
12+
targetCompatibility = JavaVersion.VERSION_11
1013
}
1114

1215
idea {
@@ -18,28 +21,27 @@ idea {
1821

1922
dependencies {
2023
// GraalVM SDK & GraalJS Engine
21-
compileOnly("org.graalvm.sdk:graal-sdk:20.1.0")
22-
compileOnly("org.graalvm.truffle:truffle-api:20.1.0")
24+
compileOnly("org.graalvm.sdk:graal-sdk:$graalvmVersion")
25+
compileOnly("org.graalvm.truffle:truffle-api:$graalvmVersion")
2326

2427
implementation("com.github.jkcclemens:khttp:-SNAPSHOT")
25-
compileOnly("org.spigotmc:spigot-api:1.16.1-R0.1-SNAPSHOT")
28+
compileOnly("org.spigotmc:spigot-api:$spigotmcVersion")
2629
implementation("co.aikar:acf-paper:0.5.0-SNAPSHOT")
2730
implementation("fr.minuskube.inv:smart-invs:1.2.7")
2831
compileOnly("me.clip:placeholderapi:2.10.4")
29-
implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8")
32+
implementation("org.jetbrains.kotlin:kotlin-stdlib")
3033
implementation("org.jetbrains.kotlin:kotlin-reflect")
3134
implementation("commons-io:commons-io:2.6")
32-
implementation("de.tr7zw:item-nbt-api:2.2.0")
33-
compileOnly("dev.jorel:commandapi-core:3.4")
35+
implementation("de.tr7zw:item-nbt-api:2.7.1")
3436

3537
testImplementation("junit", "junit", "4.12")
3638
}
3739

3840
tasks.compileKotlin {
39-
kotlinOptions.jvmTarget = "1.8"
41+
kotlinOptions.jvmTarget = "11"
4042
kotlinOptions.javaParameters = true
4143
}
4244
tasks.compileTestKotlin {
43-
kotlinOptions.jvmTarget = "1.8"
45+
kotlinOptions.jvmTarget = "11"
4446
kotlinOptions.javaParameters = true
4547
}

ScriptableMC-Engine-Core/src/main/kotlin/com/pixlfox/scriptablemc/ScriptEngineGlobalCommands.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ class ScriptEngineGlobalCommands(private val basePlugin: ScriptEngineMain) : Bas
3030
sender.sendMessage("${ChatColor.GREEN}GraalJS Version: ${scriptEngine?.eval("Graal.versionJS")}")
3131
}
3232
else {
33-
sender.sendMessage("- ${ChatColor.GREEN}GraalJS Engine Version: v20.1.0")
33+
sender.sendMessage("- ${ChatColor.GREEN}GraalJS Engine Version: v20.3.0")
3434
}
3535
sender.sendMessage("-----------------------------------------------------")
3636
}

ScriptableMC-Engine-Core/src/main/kotlin/com/pixlfox/scriptablemc/core/ScriptablePluginContext.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ abstract class ScriptablePluginContext: Listener {
100100
val bukkitCommandMap = Bukkit.getServer().javaClass.getDeclaredField("commandMap")
101101
bukkitCommandMap.isAccessible = true
102102
val commandMap = bukkitCommandMap.get(Bukkit.getServer()) as CommandMap
103-
commandMap.register(this.pluginName.toLowerCase(), command)
103+
commandMap.register(this.pluginName.lowercase(), command)
104104
commands.add(command)
105105
bukkitCommandMap.isAccessible = false
106106
}

0 commit comments

Comments
 (0)