Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
root = true

[*]
end_of_line = lf
indent_style = tab
indent_size = 4
charset = utf-8
max_line_length = 120
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: "gradle"
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
23 changes: 23 additions & 0 deletions .github/workflows/auto-dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Dependabot auto-merge
on: pull_request

permissions:
pull-requests: write
contents: write

jobs:
dependabot:
runs-on: ubuntu-latest
if: github.event.pull_request.user.login == 'dependabot[bot]'
steps:
- name: Dependabot metadata
id: metadata
uses: dependabot/[email protected]
with:
github-token: "${{secrets.GITHUB_TOKEN}}"
- name: Enable auto-merge for Dependabot PRs
if: ${{steps.metadata.outputs.update-type == 'version-update:semver-patch'}}
run: gh pr merge --auto --squash "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
44 changes: 44 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
# Automatically build the project and run any configured tests for every push
# and submitted pull request. This can help catch issues that only occur on
# certain platforms or Java versions, and provides a first line of defence
# against bad commits.

name: build
on:
push:
branches:
- master
pull_request:

jobs:
build:
strategy:
matrix:
# Use these Java versions
java: [21]
# and run on both Linux and Windows
os: [ubuntu-latest, windows-2022]
runs-on: ${{ matrix.os }}
steps:
- name: checkout repository
uses: actions/checkout@v4
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v4
with:
gradle-version: "current"
- name: validate gradle wrapper
uses: gradle/wrapper-validation-action@v3
- name: setup jdk ${{ matrix.java }}
uses: actions/setup-java@v4
with:
java-version: ${{ matrix.java }}
distribution: 'microsoft'
check-latest: true
- name: build
run: gradle build
- name: capture build artifacts
if: ${{ runner.os == 'Linux' }}
uses: actions/upload-artifact@v4
with:
name: Artifacts
path: build/libs/
147 changes: 52 additions & 95 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,14 +1,3 @@
# User-specific stuff
.idea/
.target/

*.iml
*.ipr
*.iws

# IntelliJ
out/

# Compiled class file
*.class

Expand All @@ -18,97 +7,65 @@ out/
# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.nar
*.settings
*.ear
*.zip
*.tar.gz
*.rar
*.project
*.classpath
.gitattributes

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

*~

# temporary files which can be created if a process still has a handle open of a deleted file
.fuse_hidden*

# KDE directory preferences
.directory

# Linux trash folder which might appear on any partition or disk
.Trash-*

# .nfs files are created when an open file is removed but is still being accessed
.nfs*

# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

# Windows thumbnail cache files
Thumbs.db
Thumbs.db:encryptable
ehthumbs.db
ehthumbs_vista.db

# Dump file
*.stackdump

# Folder config file
[Dd]esktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msix
*.msm
*.msp

# Windows shortcuts
*.lnk

target/

pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next

release.properties
buildNumber.properties
.mvn/timing.properties
.mvn/wrapper/maven-wrapper.jar
.flattened-pom.xml

# Common working directory
run/
/target/
.gradle/
.settings/
/build/
/bin/

.gradle
build/
!gradle/wrapper/gradle-wrapper.jar
!**/src/main/**/build/
!**/src/test/**/build/

### IntelliJ IDEA ###
.idea/
*.iws
*.iml
*.ipr
out/
!**/src/main/**/out/
!**/src/test/**/out/
.kotlin/

### Eclipse ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
bin/
!**/src/main/**/bin/
!**/src/test/**/bin/

### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/

### VS Code ###
.vscode/

### Mac OS ###
.DS_Store
82 changes: 82 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
import org.apache.tools.ant.filters.ReplaceTokens

plugins {
id 'io.papermc.paperweight.userdev' version '2.0.0-SNAPSHOT'
id 'java'
}

def supportedJava = 21

java {
toolchain.languageVersion.set(JavaLanguageVersion.of(supportedJava))
}

tasks.withType(JavaCompile).configureEach {
options.compilerArgs += ['-source', '' + supportedJava, '-target', '' + supportedJava]
}

compileTestJava.options.encoding = 'UTF-8'
compileJava.options.encoding = 'UTF-8'

repositories {
//mavenLocal()
mavenCentral()

// Spigot
maven {
url 'https://hub.spigotmc.org/nexus/content/repositories/snapshots/'
}

// Bungeecord
maven {
url "https://oss.sonatype.org/content/repositories/snapshots/"
}

// Paper and Adventure API
maven {
url 'https://repo.papermc.io/repository/maven-public/'
}

// Skript
maven {
url 'https://repo.skriptlang.org/releases'
}

maven {
url 'https://repo.md-5.net/content/groups/public/'
}

maven { url = uri("https://repo.codemc.io/repository/maven-releases/") }

maven { url = uri("https://repo.codemc.io/repository/maven-snapshots/") }

}

dependencies {

// Paper/Bukkit
paperweight.paperDevBundle("1.21.5-R0.1-SNAPSHOT")

implementation (group: 'me.libraryaddict.disguises', name: 'libsdisguises', version: '11.0.7')
implementation (group: 'net.dmulloy2', name: 'ProtocolLib', version: '5.4.0')
compileOnly("com.github.retrooper:packetevents-spigot:2.9.4")

// Skript
implementation (group: 'com.github.SkriptLang', name: 'Skript', version: '2.12.1') {
transitive = false
}

// Adventure API serializer to text components for Bukkit.
implementation (group: 'net.kyori', name: 'adventure-text-serializer-bungeecord', version: '4.4.1')
implementation (group: 'net.kyori', name: 'adventure-text-serializer-gson', version: '4.23.0')
implementation (group: 'net.kyori', name: 'adventure-platform-bukkit', version: '4.4.1')

}

processResources {
filter ReplaceTokens, tokens: ["version": project.property("version")]
from ('lang') {
include '**/*'
into 'lang/'
}
}
4 changes: 4 additions & 0 deletions gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
version=1.0

org.gradle.caching = true
org.gradle.parallel = true
Binary file added gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
7 changes: 7 additions & 0 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading