mirror of
https://github.com/Auxilor/Reforges.git
synced 2025-12-19 23:19:29 +00:00
Compare commits
61 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
24f45a729f | ||
|
|
2bd9f98828 | ||
|
|
2eb1d079b9 | ||
|
|
772d0b798b | ||
|
|
c69804cae4 | ||
|
|
0cd50135a1 | ||
|
|
ae10d11a0d | ||
|
|
a86c02da3e | ||
|
|
be9fbf9d56 | ||
|
|
19856fe31b | ||
|
|
4bcfdb17c3 | ||
|
|
dd42a42c0f | ||
|
|
bc33fb9e52 | ||
|
|
b3713a2fc4 | ||
|
|
7338ea3259 | ||
|
|
c24567bdd9 | ||
|
|
14ac6a7d7c | ||
|
|
d82eabc304 | ||
|
|
53005f6f61 | ||
|
|
445d7b6a11 | ||
|
|
8bcaf8f0b2 | ||
|
|
c74b3c0e59 | ||
|
|
e23ec1f90c | ||
|
|
e449268b3a | ||
|
|
6b31417bab | ||
|
|
58d5b26848 | ||
|
|
b2a9c250c7 | ||
|
|
371eb4e6c0 | ||
|
|
9424cc0475 | ||
|
|
c9230bd61f | ||
|
|
c3c55ad862 | ||
|
|
533c86b7fd | ||
|
|
214f693a16 | ||
|
|
015042c754 | ||
|
|
95ab511716 | ||
|
|
7f02a89b50 | ||
|
|
60002bb33c | ||
|
|
520a783b95 | ||
|
|
24eb69398f | ||
|
|
2251227fd8 | ||
|
|
6488aac611 | ||
|
|
5ef604c464 | ||
|
|
063dc05b4e | ||
|
|
b8bd4375a9 | ||
|
|
51ddca9b85 | ||
|
|
0ecdc49a13 | ||
|
|
61676fe568 | ||
|
|
56e0c05043 | ||
|
|
791161fa3a | ||
|
|
ce332651b2 | ||
|
|
4eedabd5cb | ||
|
|
91daaf053f | ||
|
|
66bbcb9d87 | ||
|
|
504998a78d | ||
|
|
18a5abbc57 | ||
|
|
b3ec0a487b | ||
|
|
e40d4f666f | ||
|
|
37083c9980 | ||
|
|
f7bee746e2 | ||
|
|
7fb5bfc895 | ||
|
|
26765564ea |
4
.github/workflows/publish-release.yml
vendored
4
.github/workflows/publish-release.yml
vendored
@@ -15,11 +15,11 @@ jobs:
|
||||
- name: Checkout latest code
|
||||
uses: actions/checkout@v2
|
||||
|
||||
- name: Set up JDK 17
|
||||
- name: Set up JDK 21
|
||||
uses: actions/setup-java@v2
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: 17
|
||||
java-version: 21
|
||||
|
||||
- name: Change wrapper permissions
|
||||
run: chmod +x ./gradlew
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
import org.jetbrains.kotlin.gradle.dsl.JvmTarget
|
||||
|
||||
plugins {
|
||||
java
|
||||
`java-library`
|
||||
`maven-publish`
|
||||
kotlin("jvm") version "1.9.20"
|
||||
id("com.github.johnrengelman.shadow") version "8.0.0"
|
||||
kotlin("jvm") version "2.1.0"
|
||||
id("com.gradleup.shadow") version "8.3.0"
|
||||
id("com.willfp.libreforge-gradle-plugin") version "1.0.0"
|
||||
}
|
||||
|
||||
@@ -25,7 +27,7 @@ allprojects {
|
||||
apply(plugin = "java")
|
||||
apply(plugin = "kotlin")
|
||||
apply(plugin = "maven-publish")
|
||||
apply(plugin = "com.github.johnrengelman.shadow")
|
||||
apply(plugin = "com.gradleup.shadow")
|
||||
|
||||
repositories {
|
||||
mavenLocal()
|
||||
@@ -37,14 +39,14 @@ allprojects {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
compileOnly("com.willfp:eco:6.56.0")
|
||||
compileOnly("com.willfp:eco:6.73.0")
|
||||
compileOnly("org.jetbrains:annotations:23.0.0")
|
||||
compileOnly("org.jetbrains.kotlin:kotlin-stdlib:1.9.20")
|
||||
compileOnly("org.jetbrains.kotlin:kotlin-stdlib:2.1.0")
|
||||
}
|
||||
|
||||
java {
|
||||
withSourcesJar()
|
||||
toolchain.languageVersion.set(JavaLanguageVersion.of(17))
|
||||
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
|
||||
}
|
||||
|
||||
tasks {
|
||||
@@ -54,8 +56,8 @@ allprojects {
|
||||
}
|
||||
|
||||
compileKotlin {
|
||||
kotlinOptions {
|
||||
jvmTarget = "17"
|
||||
compilerOptions {
|
||||
jvmTarget.set(JvmTarget.JVM_21)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ group = "com.willfp"
|
||||
version = rootProject.version
|
||||
|
||||
dependencies {
|
||||
compileOnly("io.papermc.paper:paper-api:1.19.3-R0.1-SNAPSHOT")
|
||||
compileOnly("io.papermc.paper:paper-api:1.21.4-R0.1-SNAPSHOT")
|
||||
compileOnly("com.willfp:Talismans:6.0.0")
|
||||
compileOnly("com.github.ben-manes.caffeine:caffeine:3.0.2")
|
||||
|
||||
|
||||
@@ -11,8 +11,13 @@ import com.willfp.reforges.commands.CommandReforge
|
||||
import com.willfp.reforges.commands.CommandReforges
|
||||
import com.willfp.reforges.config.TargetYml
|
||||
import com.willfp.reforges.display.ReforgesDisplay
|
||||
import com.willfp.reforges.gui.ReforgeGUI
|
||||
import com.willfp.reforges.libreforge.ConditionHasReforge
|
||||
import com.willfp.reforges.reforges.PriceMultipliers
|
||||
import com.willfp.reforges.reforges.ReforgeFinder
|
||||
import com.willfp.reforges.reforges.ReforgeStoneTag
|
||||
import com.willfp.reforges.reforges.ReforgeTargets
|
||||
import com.willfp.reforges.reforges.ReforgedTag
|
||||
import com.willfp.reforges.reforges.Reforges
|
||||
import com.willfp.reforges.reforges.util.ReforgeArgParser
|
||||
import com.willfp.reforges.util.AntiPlaceListener
|
||||
@@ -38,9 +43,18 @@ class ReforgesPlugin : LibreforgePlugin() {
|
||||
|
||||
Items.registerArgParser(ReforgeArgParser)
|
||||
|
||||
Items.registerTag(ReforgedTag(this))
|
||||
Items.registerTag(ReforgeStoneTag(this))
|
||||
|
||||
registerHolderProvider(ReforgeFinder.toHolderProvider())
|
||||
}
|
||||
|
||||
override fun handleReload() {
|
||||
ReforgeTargets.update(this)
|
||||
PriceMultipliers.update(this)
|
||||
ReforgeGUI.update(this)
|
||||
}
|
||||
|
||||
override fun loadListeners(): List<Listener> {
|
||||
return listOf(
|
||||
DiscoverRecipeListener(this),
|
||||
@@ -55,8 +69,10 @@ class ReforgesPlugin : LibreforgePlugin() {
|
||||
)
|
||||
}
|
||||
|
||||
override fun createDisplayModule(): DisplayModule {
|
||||
return ReforgesDisplay(this)
|
||||
override fun loadDisplayModules(): List<DisplayModule> {
|
||||
return listOf(
|
||||
ReforgesDisplay(this)
|
||||
)
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.willfp.reforges.gui
|
||||
|
||||
import com.willfp.eco.core.EcoPlugin
|
||||
import com.willfp.eco.core.config.emptyConfig
|
||||
import com.willfp.eco.core.config.updating.ConfigUpdater
|
||||
import com.willfp.eco.core.drops.DropQueue
|
||||
import com.willfp.eco.core.gui.captiveSlot
|
||||
import com.willfp.eco.core.gui.menu
|
||||
@@ -24,7 +23,6 @@ import com.willfp.ecomponent.CaptiveItem
|
||||
import com.willfp.ecomponent.menuStateVar
|
||||
import com.willfp.ecomponent.setSlot
|
||||
import com.willfp.libreforge.LibreforgeSpigotPlugin
|
||||
import com.willfp.reforges.reforges.PriceMultipliers
|
||||
import com.willfp.reforges.reforges.PriceMultipliers.reforgePriceMultiplier
|
||||
import com.willfp.reforges.reforges.Reforge
|
||||
import com.willfp.reforges.reforges.ReforgeTarget
|
||||
@@ -192,14 +190,11 @@ object ReforgeGUI {
|
||||
|
||||
private lateinit var defaultPrice: ConfiguredPrice
|
||||
|
||||
@JvmStatic
|
||||
fun open(player: Player) {
|
||||
menu.open(player)
|
||||
}
|
||||
|
||||
@JvmStatic
|
||||
@ConfigUpdater
|
||||
fun update(plugin: EcoPlugin) {
|
||||
internal fun update(plugin: EcoPlugin) {
|
||||
itemToReforge = CaptiveItem()
|
||||
reforgeStone = CaptiveItem()
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.willfp.reforges.reforges
|
||||
|
||||
import com.willfp.eco.core.EcoPlugin
|
||||
import com.willfp.eco.core.config.updating.ConfigUpdater
|
||||
import org.bukkit.entity.Player
|
||||
|
||||
@Suppress("UNUSED")
|
||||
@@ -9,13 +8,6 @@ object PriceMultipliers {
|
||||
private val REGISTRY = mutableListOf<PriceMultiplier>()
|
||||
private val NO_MULTIPLIER = PriceMultiplier("none", 1.0, 0)
|
||||
|
||||
/**
|
||||
* Get the permission multiplier for a given player.
|
||||
*
|
||||
* @param player The player.
|
||||
* @return The multiplier.
|
||||
*/
|
||||
@JvmStatic
|
||||
fun getForPlayer(player: Player): PriceMultiplier {
|
||||
var current = NO_MULTIPLIER
|
||||
|
||||
@@ -38,19 +30,11 @@ object PriceMultipliers {
|
||||
val Player.reforgePriceMultiplier: Double
|
||||
get() = getForPlayer(this).multiplier
|
||||
|
||||
/**
|
||||
* List of all registered multipliers.
|
||||
*
|
||||
* @return The multipliers.
|
||||
*/
|
||||
@JvmStatic
|
||||
fun values(): List<PriceMultiplier> {
|
||||
return REGISTRY.toList()
|
||||
}
|
||||
|
||||
@ConfigUpdater
|
||||
@JvmStatic
|
||||
fun update(plugin: EcoPlugin) {
|
||||
internal fun update(plugin: EcoPlugin) {
|
||||
REGISTRY.clear()
|
||||
|
||||
for (config in plugin.configYml.getSubsections("price-multipliers")) {
|
||||
|
||||
@@ -11,6 +11,6 @@ object ReforgeFinder : ItemHolderFinder<Reforge>() {
|
||||
}
|
||||
|
||||
override fun isValidInSlot(holder: Reforge, slot: SlotType): Boolean {
|
||||
return slot in holder.targets.map { it.slot }.toSet()
|
||||
return holder.targets.map { it.slot }.any { it.isOrContains(slot) }
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
package com.willfp.reforges.reforges
|
||||
|
||||
import com.willfp.eco.core.EcoPlugin
|
||||
import com.willfp.eco.core.items.tag.CustomItemTag
|
||||
import com.willfp.reforges.util.reforgeStone
|
||||
import org.bukkit.inventory.ItemStack
|
||||
|
||||
class ReforgeStoneTag(plugin: EcoPlugin): CustomItemTag(plugin.createNamespacedKey("stone")) {
|
||||
override fun matches(p0: ItemStack): Boolean {
|
||||
return p0.reforgeStone != null
|
||||
}
|
||||
|
||||
override fun getExampleItem(): ItemStack {
|
||||
return Reforges.values().random().stone
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.willfp.reforges.reforges
|
||||
|
||||
import com.google.common.collect.ImmutableSet
|
||||
import com.willfp.eco.core.config.updating.ConfigUpdater
|
||||
import com.willfp.libreforge.slot.impl.SlotTypeAny
|
||||
import com.willfp.reforges.ReforgesPlugin
|
||||
import org.bukkit.inventory.ItemStack
|
||||
@@ -16,24 +15,10 @@ object ReforgeTargets {
|
||||
update(ReforgesPlugin.instance)
|
||||
}
|
||||
|
||||
/**
|
||||
* Get ReforgeTarget matching name.
|
||||
*
|
||||
* @param name The name to search for.
|
||||
* @return The matching ReforgeTarget, or null if not found.
|
||||
*/
|
||||
@JvmStatic
|
||||
fun getByName(name: String): ReforgeTarget? {
|
||||
return registered[name]
|
||||
}
|
||||
|
||||
/**
|
||||
* Get target from item.
|
||||
*
|
||||
* @param item The item.
|
||||
* @return The target.
|
||||
*/
|
||||
@JvmStatic
|
||||
fun getForItem(item: ItemStack?): List<ReforgeTarget> {
|
||||
if (item == null) {
|
||||
return emptyList()
|
||||
@@ -44,14 +29,7 @@ object ReforgeTargets {
|
||||
.filter { it.matches(item) }
|
||||
}
|
||||
|
||||
/**
|
||||
* Update all targets.
|
||||
*
|
||||
* @param plugin Instance of Reforges.
|
||||
*/
|
||||
@ConfigUpdater
|
||||
@JvmStatic
|
||||
fun update(plugin: ReforgesPlugin) {
|
||||
internal fun update(plugin: ReforgesPlugin) {
|
||||
ALL.items.clear()
|
||||
for (id in ArrayList(registered.keys)) {
|
||||
if (id.equals("all", ignoreCase = true)) {
|
||||
@@ -70,12 +48,6 @@ object ReforgeTargets {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Get all targets.
|
||||
*
|
||||
* @return A set of all targets.
|
||||
*/
|
||||
@JvmStatic
|
||||
fun values(): Set<ReforgeTarget> {
|
||||
return ImmutableSet.copyOf(registered.values)
|
||||
}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.willfp.reforges.reforges
|
||||
|
||||
import com.willfp.eco.core.EcoPlugin
|
||||
import com.willfp.eco.core.items.tag.CustomItemTag
|
||||
import com.willfp.reforges.util.reforge
|
||||
import com.willfp.reforges.util.reforgeStone
|
||||
import org.bukkit.inventory.ItemStack
|
||||
|
||||
class ReforgedTag(plugin: EcoPlugin): CustomItemTag(plugin.createNamespacedKey("reforged")) {
|
||||
override fun matches(p0: ItemStack): Boolean {
|
||||
return p0.reforge != null
|
||||
}
|
||||
}
|
||||
@@ -6,3 +6,4 @@ options:
|
||||
resource-id: 1330
|
||||
bstats-id: 12412
|
||||
color: "&3"
|
||||
uses-reflective-reload: false
|
||||
|
||||
@@ -9,36 +9,19 @@
|
||||
pickaxe:
|
||||
slot: hands
|
||||
items:
|
||||
- wooden_pickaxe
|
||||
- stone_pickaxe
|
||||
- iron_pickaxe
|
||||
- golden_pickaxe
|
||||
- diamond_pickaxe
|
||||
- netherite_pickaxe
|
||||
- "#items_pickaxes"
|
||||
|
||||
axe:
|
||||
slot: hands
|
||||
items:
|
||||
- wooden_axe
|
||||
- stone_axe
|
||||
- iron_axe
|
||||
- golden_axe
|
||||
- diamond_axe
|
||||
- netherite_axe
|
||||
- "#items_axes"
|
||||
|
||||
melee:
|
||||
slot: hands
|
||||
items:
|
||||
- wooden_axe
|
||||
- stone_axe
|
||||
- iron_axe
|
||||
- golden_axe
|
||||
- diamond_axe
|
||||
- netherite_axe
|
||||
- wooden_sword
|
||||
- stone_sword
|
||||
- iron_sword
|
||||
- golden_sword
|
||||
- diamond_sword
|
||||
- netherite_sword
|
||||
- "#items_axes"
|
||||
- "#items_swords"
|
||||
|
||||
trident:
|
||||
slot: hands
|
||||
items:
|
||||
@@ -51,31 +34,7 @@ bow:
|
||||
armor:
|
||||
slot: armor
|
||||
items:
|
||||
- turtle_helmet
|
||||
- leather_helmet
|
||||
- chainmail_helmet
|
||||
- iron_helmet
|
||||
- golden_helmet
|
||||
- diamond_helmet
|
||||
- netherite_helmet
|
||||
|
||||
- leather_chestplate
|
||||
- chainmail_chestplate
|
||||
- iron_chestplate
|
||||
- golden_chestplate
|
||||
- diamond_chestplate
|
||||
- netherite_chestplate
|
||||
|
||||
- leather_leggings
|
||||
- chainmail_leggings
|
||||
- iron_leggings
|
||||
- golden_leggings
|
||||
- diamond_leggings
|
||||
- netherite_leggings
|
||||
|
||||
- leather_boots
|
||||
- chainmail_boots
|
||||
- iron_boots
|
||||
- golden_boots
|
||||
- diamond_boots
|
||||
- netherite_boots
|
||||
- "#items_head_armor"
|
||||
- "#items_chest_armor"
|
||||
- "#items_leg_armor"
|
||||
- "#items_foot_armor"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#libreforge-updater
|
||||
#Tue Jan 16 13:28:38 GMT 2024
|
||||
#Mon Oct 06 08:56:44 BST 2025
|
||||
kotlin.code.style=official
|
||||
libreforge-version=4.55.1
|
||||
version=6.54.2
|
||||
libreforge-version=4.79.0
|
||||
version=6.78.0
|
||||
|
||||
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Binary file not shown.
4
gradle/wrapper/gradle-wrapper.properties
vendored
4
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,5 +1,7 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0.2-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
|
||||
networkTimeout=10000
|
||||
validateDistributionUrl=true
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
||||
@@ -1,6 +0,0 @@
|
||||
jdk: openjdk17
|
||||
before_install:
|
||||
- source "$HOME/.sdkman/bin/sdkman-init.sh"
|
||||
- sdk update
|
||||
- sdk install java 17.0.1-tem
|
||||
- sdk use java 17.0.1-tem
|
||||
@@ -2,12 +2,14 @@ pluginManagement {
|
||||
repositories {
|
||||
gradlePluginPortal()
|
||||
mavenLocal()
|
||||
maven("https://repo.jpenilla.xyz/snapshots/")
|
||||
maven("https://repo.auxilor.io/repository/maven-public/")
|
||||
maven("https://repo.papermc.io/repository/maven-public/")
|
||||
}
|
||||
}
|
||||
|
||||
rootProject.name = "Reforges"
|
||||
plugins {
|
||||
id("org.gradle.toolchains.foojay-resolver-convention") version "0.8.0"
|
||||
}
|
||||
|
||||
// Core
|
||||
include(":eco-core")
|
||||
|
||||
Reference in New Issue
Block a user