Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit 46954b2

Browse files
authored
Merge pull request #17 from Asleeepp/1.6-test
1.6 PR
2 parents 65af6f0 + 063dbec commit 46954b2

File tree

70 files changed

+2339
-1231
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+2339
-1231
lines changed

build.gradle

Lines changed: 0 additions & 94 deletions
This file was deleted.

build.gradle.kts

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
import org.apache.tools.ant.filters.ReplaceTokens
2+
3+
plugins {
4+
`java-library`
5+
`maven-publish`
6+
alias(libs.plugins.shadow)
7+
alias(libs.plugins.run.paper)
8+
}
9+
10+
repositories {
11+
mavenLocal()
12+
mavenCentral()
13+
maven("https://repo.papermc.io/repository/maven-public/")
14+
maven("https://repo.skriptlang.org/releases")
15+
maven("https://jitpack.io")
16+
}
17+
18+
java {
19+
disableAutoTargetJvm()
20+
toolchain.languageVersion = JavaLanguageVersion.of(21)
21+
}
22+
23+
description = "A skript addon that aims to bring more to linking ItemsAdder and Skript"
24+
group = "me.asleepp"
25+
version = "1.6"
26+
27+
dependencies {
28+
compileOnly(libs.paper.api)
29+
compileOnly(libs.lombok)
30+
compileOnly(libs.itemsadder)
31+
compileOnly(libs.skript)
32+
annotationProcessor(libs.lombok)
33+
}
34+
35+
36+
tasks {
37+
jar {
38+
enabled = false
39+
}
40+
41+
shadowJar {
42+
archiveFileName = "${rootProject.name}-${project.version}.jar"
43+
archiveClassifier = null
44+
45+
manifest {
46+
attributes["Implementation-Version"] = rootProject.version
47+
}
48+
49+
configurations = listOf(project.configurations.shadow.get())
50+
minimize()
51+
}
52+
53+
assemble {
54+
dependsOn(shadowJar)
55+
}
56+
57+
withType<JavaCompile> {
58+
options.encoding = Charsets.UTF_8.name()
59+
options.release = 17
60+
}
61+
62+
withType<Javadoc>() {
63+
options.encoding = Charsets.UTF_8.name()
64+
}
65+
66+
processResources {
67+
filter<ReplaceTokens>("tokens" to mapOf("version" to project.version))
68+
inputs.property("version", project.version)
69+
70+
filesMatching("plugin.yml") {
71+
expand(
72+
"version" to rootProject.version,
73+
)
74+
}
75+
}
76+
77+
defaultTasks("build")
78+
79+
// 1.8.8 - 1.16.5 = Java 8
80+
// 1.17 = Java 16
81+
// 1.18 - 1.20.4 = Java 17
82+
// 1-20.5+ = Java 21
83+
val version = "1.20.4"
84+
val javaVersion = JavaLanguageVersion.of(17)
85+
86+
val jvmArgsExternal = listOf(
87+
"-Dcom.mojang.eula.agree=true"
88+
)
89+
90+
runServer {
91+
minecraftVersion(version)
92+
runDirectory = rootDir.resolve("run/paper/$version")
93+
94+
javaLauncher = project.javaToolchains.launcherFor {
95+
languageVersion = javaVersion
96+
}
97+
98+
downloadPlugins {
99+
url("https://download.luckperms.net/1552/bukkit/loader/LuckPerms-Bukkit-5.4.137.jar")
100+
url("https://github.com/SkriptLang/Skript/releases/download/2.9.1/Skript-2.9.1.jar")
101+
url("https://github.com/dmulloy2/ProtocolLib/releases/download/5.2.0/ProtocolLib.jar")
102+
url("https://github.com/LoneDev6/SpigotUtilities/raw/master/LoneLibs.jar")
103+
}
104+
105+
jvmArgs = jvmArgsExternal
106+
}
107+
}
108+

gradle.properties

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
org.gradle.parallel=true
2+
org.gradle.caching=true
3+
org.gradle.daemon=true

gradle/libs.versions.toml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
[versions]
2+
paper-api = "1.21-R0.1-SNAPSHOT"
3+
lombok = "1.18.34"
4+
shadow = "8.1.8"
5+
run-paper = "2.3.0"
6+
skript = "2.7.1"
7+
itemsadder = "3.6.1"
8+
9+
[libraries]
10+
paper-api = { module = "io.papermc.paper:paper-api", version.ref = "paper-api" }
11+
lombok = { group = "org.projectlombok", name = "lombok", version.ref = "lombok" }
12+
skript = { group = "com.github.SkriptLang", name = "Skript", version.ref = "skript"}
13+
itemsadder = { group = "com.github.LoneDev6", name = "API-ItemsAdder", version.ref = "itemsadder"}
14+
15+
[plugins]
16+
run-paper = { id = "xyz.jpenilla.run-paper", version.ref = "run-paper" }
17+
shadow = { id = "io.github.goooler.shadow", version.ref = "shadow" }

settings.gradle

Lines changed: 0 additions & 1 deletion
This file was deleted.

settings.gradle.kts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
pluginManagement {
2+
repositories {
3+
mavenCentral()
4+
gradlePluginPortal()
5+
}
6+
}
7+
8+
plugins {
9+
id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0"
10+
}
11+
12+
rootProject.name = "skript-itemsadder"

src/main/java/me/asleepp/SkriptItemsAdder/SkriptItemsAdder.java

Lines changed: 47 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,14 @@
22

33
import java.io.IOException;
44

5-
65
import ch.njol.skript.util.Version;
6+
import lombok.Getter;
7+
import me.asleepp.SkriptItemsAdder.aliases.AliasesGenerator;
8+
import me.asleepp.SkriptItemsAdder.listeners.ItemsAdderEventListener;
9+
import me.asleepp.SkriptItemsAdder.util.Metrics;
10+
import me.asleepp.SkriptItemsAdder.util.SkriptItemsAdderCommand;
11+
import me.asleepp.SkriptItemsAdder.util.UpdateChecker;
12+
import me.asleepp.SkriptItemsAdder.util.Util;
713
import org.bukkit.plugin.Plugin;
814
import org.bukkit.plugin.PluginManager;
915
import org.bukkit.plugin.java.JavaPlugin;
@@ -13,57 +19,89 @@
1319

1420
import javax.annotation.Nullable;
1521

16-
@SuppressWarnings("ALL")
1722
public class SkriptItemsAdder extends JavaPlugin {
1823

1924
private static SkriptAddon addon;
20-
2125
private static SkriptItemsAdder instance;
26+
@Getter
27+
private AliasesGenerator aliasesGenerator;
2228

2329
@Nullable
2430
public static SkriptItemsAdder getInstance() {
2531
return instance;
2632
}
33+
2734
@Nullable
2835
public static SkriptAddon getAddonInstance() {
2936
return addon;
3037
}
3138

39+
private final PluginManager manager = this.getServer().getPluginManager();
3240

41+
@Override
3342
public void onEnable() {
3443
// Let's get this show on the road.
35-
final PluginManager manager = this.getServer().getPluginManager();
44+
long start = System.currentTimeMillis();
3645
final Plugin skript = manager.getPlugin("Skript");
3746
if (skript == null || !skript.isEnabled()) {
3847
getLogger().severe("Could not find Skript! Disabling...");
3948
manager.disablePlugin(this);
4049
return;
41-
} else if (Skript.getVersion().compareTo(new Version(2, 7, 0)) < 0) {
42-
getLogger().warning("You are running an unsupported version of Skript. Disabling...");
50+
} else if (Skript.getVersion().isSmallerThan(new Version(2, 7, 0))) {
51+
getLogger().severe("You are running an unsupported version of Skript. Disabling...");
52+
manager.disablePlugin(this);
53+
return;
54+
}
55+
if (!Skript.isAcceptRegistrations()) {
56+
getLogger().severe("The plugin can't load when it's already loaded! Disabling...");
4357
manager.disablePlugin(this);
4458
return;
4559
}
60+
4661
final Plugin itemsadder = manager.getPlugin("ItemsAdder");
4762
if (itemsadder == null || !itemsadder.isEnabled()) {
4863
getLogger().severe("Could not find ItemsAdder! Disabling...");
4964
manager.disablePlugin(this);
5065
return;
5166
}
67+
68+
this.aliasesGenerator = new AliasesGenerator(this);
69+
70+
final SkriptItemsAdder plugin = this;
71+
72+
// Pass the aliasesGenerator to the event listener
73+
ItemsAdderEventListener eventListener = new ItemsAdderEventListener(plugin, aliasesGenerator);
74+
manager.registerEvents(eventListener, plugin);
75+
5276
int pluginId = 20971;
5377
Metrics metrics = new Metrics(this, pluginId);
78+
metrics.addCustomChart(new Metrics.SimplePie("skript_version", () -> Skript.getVersion().toString()));
79+
metrics.addCustomChart(new Metrics.SimplePie("itemsadder_version", () -> Util.getPluginVersion("ItemsAdder")));
5480
instance = this;
5581
addon = Skript.registerAddon(this);
5682
addon.setLanguageFileDirectory("lang");
83+
new SkriptItemsAdderCommand(this);
84+
85+
saveDefaultConfig();
86+
5787
try {
58-
addon.loadClasses("me.asleepp.SkriptItemsAdder");
88+
addon.loadClasses("me.asleepp.SkriptItemsAdder", "elements");
5989
} catch (IOException error) {
6090
error.printStackTrace();
6191
manager.disablePlugin(this);
6292
return;
6393
}
6494

95+
if (getConfig().getBoolean("check-for-updates", true))
96+
new UpdateChecker(this);
6597

98+
long finish = System.currentTimeMillis() - start;
99+
getLogger().info("Successfully loaded skript-itemsadder in " + finish + "ms!");
100+
eventListener.generateAliases();
66101
}
67102

68-
69-
}
103+
@Override
104+
public void onDisable() {
105+
aliasesGenerator.saveAliases();
106+
}
107+
}

0 commit comments

Comments
 (0)