Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
133 commits
Select commit Hold shift + click to select a range
cf194e6
initial update for 1.21.4 and gradle
ShaneBeee Feb 13, 2025
59943e2
new workflow
ShaneBeee Feb 13, 2025
7c1f6ac
Item re-write
ShaneBeee Feb 13, 2025
1fa7130
Item - add null check and error message
ShaneBeee Feb 13, 2025
5724305
build.gradle.kts - update
ShaneBeee Feb 13, 2025
68e3f5d
Items - some cleanup and fix for the command
ShaneBeee Feb 13, 2025
0473b3f
NoPos.java - remove, can be done with a gamerule
ShaneBeee Feb 13, 2025
bee2616
Item - use vanilla textures for some items
ShaneBeee Feb 13, 2025
2f2330d
Item - fix naming issue for potion based items
ShaneBeee Feb 13, 2025
c68e38b
WaterBowl - fix potion info showing
ShaneBeee Feb 13, 2025
30a863b
BeekeeperPiece - use vanilla model
ShaneBeee Feb 13, 2025
274939e
items.yml - forgot beekeeper colors
ShaneBeee Feb 13, 2025
57d0846
ReinforcedPiece - fix up model
ShaneBeee Feb 13, 2025
4829212
Initial resource pack work
ShaneBeee Feb 13, 2025
4f77af4
Armor - fix slot group
ShaneBeee Feb 13, 2025
ab909a2
Utils - some cleanup
ShaneBeee Feb 14, 2025
5234632
Compass - use vanilla texture
ShaneBeee Feb 14, 2025
f232d07
CompassWaypoint - reformat how compass works
ShaneBeee Feb 14, 2025
742bd93
PlayerData - only return waypoint if set
ShaneBeee Feb 14, 2025
abba71b
WaterBowl - cleanup
ShaneBeee Feb 14, 2025
98afacc
TropicalFish - revamp
ShaneBeee Feb 14, 2025
c09b320
Make some items non-repairable
ShaneBeee Feb 14, 2025
b3b4ff4
Utils - fix up requires axe/shovel
ShaneBeee Feb 14, 2025
8d3dd2e
BlockBreak - cleanup
ShaneBeee Feb 14, 2025
d671599
Campfire - cleanup
ShaneBeee Feb 14, 2025
e4aa636
ChestPigmen - update some bigs
ShaneBeee Feb 14, 2025
d969d25
CompassWaypoint - fix error when moving worlds and no waypoint set
ShaneBeee Feb 14, 2025
4100276
ChickenSpawn - some cleanup
ShaneBeee Feb 14, 2025
5cda154
more item updates and more models
ShaneBeee Feb 14, 2025
a679bea
WeatherTask - small cleanup
ShaneBeee Feb 14, 2025
997953b
Thirst cleanup
ShaneBeee Feb 14, 2025
32e2af4
HealthBoard updates
ShaneBeee Feb 14, 2025
bd4deac
HealthBoard - fix an error
ShaneBeee Feb 15, 2025
b117cfa
ResourcePackListener - some updates
ShaneBeee Feb 15, 2025
b906504
Utils - update namespaced key
ShaneBeee Feb 15, 2025
711be17
Items - add better grabber
ShaneBeee Feb 15, 2025
f49ec3f
Command Rework
ShaneBeee Feb 15, 2025
cc6b25e
Stats cleanup
ShaneBeee Feb 15, 2025
5022761
More message cleanup
ShaneBeee Feb 15, 2025
efb1a99
Overhaul block tags
ShaneBeee Feb 16, 2025
d21e474
Survival.java - rename to SurvivalPlugin
ShaneBeee Feb 16, 2025
dae724b
legacy color code cleanup
ShaneBeee Feb 16, 2025
a710dc1
more lang cleanup
ShaneBeee Feb 16, 2025
ceeab7b
lang - forgot to re-enable the loading
ShaneBeee Feb 16, 2025
a2e5c83
Firestriker revamp
ShaneBeee Feb 16, 2025
49f99eb
more cleanup
ShaneBeee Feb 16, 2025
64b775b
Recipes update
ShaneBeee Feb 16, 2025
713d387
WaterBowlListener - add campfire water bowl extinguish
ShaneBeee Feb 16, 2025
c92bbe4
Medic Kit updates
ShaneBeee Feb 16, 2025
e5936cc
SuspiciousMeat - fix override
ShaneBeee Feb 17, 2025
07c56ca
more water changes
ShaneBeee Feb 17, 2025
ddc0f86
ItemConfig - move, and add match config
ShaneBeee Feb 17, 2025
377fed2
Nutrition - update
ShaneBeee Feb 17, 2025
8b021b7
Campfire - remove unused listener
ShaneBeee Feb 17, 2025
d23e1ab
LivingSlime - small cleanup
ShaneBeee Feb 17, 2025
15bf543
MerchantManager - cleanup
ShaneBeee Feb 17, 2025
4dfa80f
Energy updates
ShaneBeee Feb 17, 2025
9b314b9
more thirst updates
ShaneBeee Feb 17, 2025
3da2884
DebugCommand - move nutrion debug into this, create item debug
ShaneBeee Feb 17, 2025
6733699
InventoryUpdate.java - not used
ShaneBeee Feb 17, 2025
25a5bff
PiglinBarter - cleanup
ShaneBeee Feb 17, 2025
0554911
ChickenSpawn - cleanup
ShaneBeee Feb 17, 2025
d2706e7
more config cleanup
ShaneBeee Feb 17, 2025
7ad7532
small chair update
ShaneBeee Feb 17, 2025
9e34388
More config cleanup
ShaneBeee Feb 17, 2025
c00c16f
resource pack fixes
ShaneBeee Feb 18, 2025
44b83a0
gradle.yml - add resource pack
ShaneBeee Feb 18, 2025
76435e9
gradle.yml - apparently no name = "artifact"
ShaneBeee Feb 18, 2025
4abb0a7
gradle.yml - rename first build
ShaneBeee Feb 18, 2025
84f6fce
build.gradle.kts - some cleanup
ShaneBeee Feb 18, 2025
5dabe8b
update bstats - use shade instead of class
ShaneBeee Feb 18, 2025
94a6eb0
repackage
ShaneBeee Feb 18, 2025
2b34c74
Javadoc update
ShaneBeee Feb 18, 2025
15a7f60
Validate.java - remove
ShaneBeee Feb 18, 2025
781fac2
paper-plugin.yml
ShaneBeee Feb 18, 2025
01e58d0
build.gradle.kts - fix bstats shading
ShaneBeee Feb 18, 2025
76ffa68
Placeholders - small rework
ShaneBeee Feb 18, 2025
b7a8cc5
Permissions - small changes, add debug
ShaneBeee Feb 18, 2025
bf1858e
BurnoutTorches.java - remove
ShaneBeee Feb 18, 2025
11a5e43
more config updates
ShaneBeee Feb 18, 2025
02b4453
Thirst tweaks
ShaneBeee Feb 18, 2025
734e862
loot replacements
ShaneBeee Feb 18, 2025
a7e37a2
Recurvedbow - some cleanup
ShaneBeee Feb 18, 2025
d681499
ThirstTask - fix accidental return skipping damage
ShaneBeee Feb 18, 2025
9a74b12
more item updates
ShaneBeee Feb 18, 2025
6c6b1a3
block breaking updates
ShaneBeee Feb 18, 2025
5afeb91
Delayed messages
ShaneBeee Feb 18, 2025
fbaa408
More cleanup
ShaneBeee Feb 18, 2025
f0ee943
Config - fix some double values
ShaneBeee Feb 19, 2025
2b89d66
Add a few permission bypasses
ShaneBeee Feb 19, 2025
ddaff18
PlayerDataCommand - add get
ShaneBeee Feb 19, 2025
a1a4e86
StatCommand - add color
ShaneBeee Feb 19, 2025
63dcbc4
More thirst changes
ShaneBeee Feb 19, 2025
6190590
config.yml - fix line
ShaneBeee Feb 19, 2025
a7a50d4
switch nutrient task to listener
ShaneBeee Feb 19, 2025
0c68e4f
AvoidPlayerGoal - add option to have some mobs avoid players
ShaneBeee Feb 19, 2025
8df11ad
AvoidPlayerGoal - only work on survival/adventure players
ShaneBeee Feb 19, 2025
75b2dc5
AvoidPlayerGoal - wrong key
ShaneBeee Feb 19, 2025
3f0591f
AngryWolfGoal - add new goal
ShaneBeee Feb 19, 2025
e1c9bc0
Config - remove limited crafting option
ShaneBeee Feb 19, 2025
234d378
split up packages
ShaneBeee Feb 19, 2025
ba6f00c
more cleanup
ShaneBeee Feb 19, 2025
fb12da2
update block tags
ShaneBeee Feb 20, 2025
a0f4183
Datapack initial work
ShaneBeee Feb 20, 2025
d0d7dc0
Move obsidian stuff to enchantment
ShaneBeee Feb 20, 2025
30e00e3
Move quartz pickaxe stuff to enchantment
ShaneBeee Feb 20, 2025
6be7c79
quartz_mining.json - forgot to change color code
ShaneBeee Feb 20, 2025
6cd9ba5
BlazeSword - move more over to enchantment
ShaneBeee Feb 21, 2025
6b2245a
quartz_mining.json - forgot to change max level
ShaneBeee Feb 21, 2025
4e5600d
DrinkableItemListener - wrong method
ShaneBeee Feb 21, 2025
c2a0c32
ThirstTask - only drain thirst if its daytime
ShaneBeee Feb 21, 2025
f65858b
Recipes - add missing waters for cooking recipes
ShaneBeee Feb 21, 2025
44166e9
Recipes - add potion mixes
ShaneBeee Feb 21, 2025
e9f9d6c
Items - flint sickle should take cobblestone
ShaneBeee Feb 21, 2025
94ec599
RecipeDiscovery - setup netherite
ShaneBeee Feb 21, 2025
0fa9774
AvoidPlayerGoal - slow down mob when health is lower
ShaneBeee Feb 21, 2025
0b62aee
PlayerData - small changes with where things are called
ShaneBeee Feb 21, 2025
c255943
PlayerData - immunity minutes for newbies
ShaneBeee Feb 21, 2025
dac1312
change how bypass perms are used
ShaneBeee Feb 21, 2025
ea59f93
Config - wrong value for hammer
ShaneBeee Feb 21, 2025
48a43d1
BlockPlaceListener - fix backward condition
ShaneBeee Feb 21, 2025
4b9a637
Hammer upgrades
ShaneBeee Feb 22, 2025
8d25984
BlockBreakListener - change up damaging sickles
ShaneBeee Feb 22, 2025
bc1175f
ItemUtils - add method to get max damage of an item
ShaneBeee Feb 22, 2025
ee6d3f5
Finally re-implement repairing
ShaneBeee Feb 22, 2025
a7a5b66
Goals - small performance fix
ShaneBeee Feb 25, 2025
9826276
Massive cleanup with giant sword
ShaneBeee Feb 27, 2025
cc7c917
repackage registry stuff
ShaneBeee Feb 27, 2025
d78466e
fix held item models
ShaneBeee Feb 27, 2025
1ea5876
fix a few max stack size for tools
ShaneBeee Feb 28, 2025
082dcf9
Enchantments - add building reach Enchantment
ShaneBeee Feb 28, 2025
8e6762c
Revamp generators and place tag files in a registry package
ShaneBeee Feb 28, 2025
e35a10e
Update readme with building instructions and add build for datapack
ShaneBeee Feb 28, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
max_line_length = 120
tab_width = 4
trim_trailing_whitespace = true
ij_continuation_indent_size = 4
[*.yml]
indent_size = 2
61 changes: 61 additions & 0 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle

name: Java CI with Gradle

on:
push:
branches:
- master
- 'dev/**'
- 'update/**'
pull_request:

permissions:
contents: read

jobs:
build_plugin:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 21
uses: actions/setup-java@v4.2.1
with:
java-version: '21'
distribution: 'temurin'
- name: Build with Gradle
uses: gradle/actions/setup-gradle@v3
with:
arguments: build
- name: Upload a Build Artifact
uses: actions/upload-artifact@master
with:
# Artifact name
name: SurvivalPlus-Plugin
# A file, directory or wildcard pattern that describes what to upload
path: build/libs/SurvivalPlus-*.jar
build_resource_pack:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 21
uses: actions/setup-java@v4.2.1
with:
java-version: '21'
distribution: 'temurin'
- name: Build with Gradle
uses: gradle/actions/setup-gradle@v3
with:
arguments: resourcepack
- name: Upload a Build Artifact
uses: actions/upload-artifact@master
with:
# Artifact name
name: SurvivalPlus-ResourcePack
# A file, directory or wildcard pattern that describes what to upload
path: build/libs/SurvivalPlusResourcePack-*.zip
31 changes: 0 additions & 31 deletions .github/workflows/maven.yml

This file was deleted.

66 changes: 37 additions & 29 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,34 +1,42 @@
# Compiled class file
*.class
.gradle/
build/
!gradle/wrapper/gradle-wrapper.jar
!**/src/main/**/build/
!**/src/test/**/build/

# Log file
*.log

# BlueJ files
*.ctxt

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

# Package Files #
*.jar
*.war
*.ear
*.tar.gz
*.rar

# IntelliJ Files #
### IntelliJ IDEA ###
.idea/modules.xml
.idea/jarRepositories.xml
.idea/compiler.xml
.idea/libraries/
*.iws
*.iml
*.ipr
out/
!**/src/main/**/out/
!**/src/test/**/out/

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

# Custom #
### Eclipse ###
.apt_generated
.classpath
.settings
.factorypath
.project
bin
JavaDocs/
out/
.idea/
/target/
.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
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
# SurvivalPlus
![GitHub issues](https://img.shields.io/github/issues/ShaneBeeStudios/SurvivalPlus.svg)
[![Discord](https://img.shields.io/discord/425192525091831808.svg)](https://discordapp.com/invite/km3UF8Q)
![Java CI with Maven](https://github.com/ShaneBeeStudios/SurvivalPlus/workflows/Java%20CI%20with%20Maven/badge.svg)

![https://docs.google.com/uc?id=0B8D0KMKK7musWTBQaWozV0dxN2c](https://docs.google.com/uc?id=0B8D0KMKK7musWTBQaWozV0dxN2c)
![Java CI with Maven](https://github.com/ShaneBeeStudios/SurvivalPlus/workflows/Java%20CI%20with%20Gradle/badge.svg)


## Welcome to SurvivalPlus
SurvivalPlus is a Minecraft mod that adds new contents and experience to Minecraft Survival gameplay

All info can be found on the [**WIKI**](https://github.com/ShaneBeeStudios/SurvivalPlus/wiki)

Plugin downloads can be found on [**SpigotMC**](https://www.spigotmc.org/resources/survival-plus.67351/)
Plugin downloads can be found on (TBD)

### BUILDING:
- To build the plugin run `./gradlew build` (This includes the datapack internally)
- To build the datapack run `./gradlew datapack`
- To build the resource pack run `./gradlew resourcepack`
104 changes: 104 additions & 0 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
plugins {
id("java")
id("io.github.goooler.shadow") version "8.1.7"
}

// Where this builds on the server
val serverLocation = "Skript/1-21-4"
// Version of SurvivalPlus
val projectVersion = "1.0.0"
// Minecraft version to build against
val minecraftVersion = "1.21.4"

java.sourceCompatibility = JavaVersion.VERSION_21

repositories {
mavenCentral()
mavenLocal()

// Paper
maven("https://repo.papermc.io/repository/maven-public/")

// Command Api Snapshots
maven("https://s01.oss.sonatype.org/content/repositories")

// JitPack repo
maven("https://jitpack.io")

// Papi
maven("https://repo.extendedclip.com/content/repositories/placeholderapi/")
}

dependencies {
// Paper
compileOnly("io.papermc.paper:paper-api:${minecraftVersion}-R0.1-SNAPSHOT")

// FastBoard
implementation("fr.mrmicky:fastboard:2.1.3")

// Command Api
implementation("dev.jorel:commandapi-bukkit-shade-mojang-mapped:9.7.0")

// Papi
compileOnly("me.clip:placeholderapi:2.11.6")

// bStats
implementation("org.bstats:bstats-bukkit:3.0.2")

}

tasks {
register("server", Copy::class) {
dependsOn("shadowJar")
from("build/libs") {
include("SurvivalPlus-*.jar")
destinationDir = file("/Users/ShaneBee/Desktop/Server/${serverLocation}/plugins/")
}

}
register("resourcepack", Zip::class) {
archiveFileName = "SurvivalPlusResourcePack-${projectVersion}.zip"
from("src/main/resources/resource-pack") {
exclude("**/.DS_Store")
destinationDirectory = file("build/libs/")
}
}
register("datapack", Zip::class) {
archiveFileName = "SurvivalPlusDataPack-${projectVersion}.zip"
from("src/main/resources/datapack") {
exclude("**/.DS_Store")
destinationDirectory = file("build/libs/")
}
}
processResources {
expand("version" to projectVersion)
exclude("resource-pack/*")
}
compileJava {
options.release = 21
options.compilerArgs.add("-Xlint:unchecked")
options.compilerArgs.add("-Xlint:deprecation")
}
javadoc {
options.encoding = Charsets.UTF_8.name()
exclude("com/shanebeestudios/survival/plugin/SurvivalBootstrap.java")
exclude("com/shanebeestudios/survival/plugin/commands")
exclude("com/shanebeestudios/survival/plugin/listeners")
exclude("com/shanebeestudios/survival/plugin/tasks")
(options as CoreJavadocOptions).addBooleanOption("Xdoclint:none", true)
(options as StandardJavadocDocletOptions).links(
"https://jd.papermc.io/paper/${minecraftVersion}/",
"https://jd.advntr.dev/api/4.18.0/"
)
}
shadowJar {
relocate("fr.mrmicky.fastboard", "com.shanebeestudios.survival.api.fastboard")
relocate("dev.jorel.commandapi", "com.shanebeestudios.survival.api.commandapi")
relocate("org.bstats", "com.shanebeestudios.survival.api.metrics")
archiveFileName = "SurvivalPlus-${projectVersion}.jar"
}
jar {
dependsOn(shadowJar)
archiveFileName.set("SurvivalPlus.jar")
}
}
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.12-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
Loading