aboutsummaryrefslogtreecommitdiffstats
path: root/bukkit/build.gradle
blob: ef5c614ecf99d693c044f5019496ce85b4fa85f6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
plugins {
    id 'java'
    id 'com.github.johnrengelman.shadow'
}

processResources {
    duplicatesStrategy = duplicatesStrategy.INCLUDE
    from(sourceSets.main.resources.srcDirs) {
        include 'plugin.yml'
        expand('version': project.version)
    }
}

repositories {
    // Paper
    maven { url = 'https://papermc.io/repo/repository/maven-public/' }
    // ASkyBlock, BentoBox, bStats, Citizens
    maven { url = 'https://repo.codemc.org/repository/maven-public/' }
    // AuthLib
    maven { url = 'https://libraries.minecraft.net/' }
    // CoreProtect
    maven { url = 'https://maven.playpro.com/' }
    // EssentialsX
    maven { url = 'https://repo.essentialsx.net/releases/' }
    // MMOItems, MythicLib
    maven { url = 'https://nexus.phoenixdvpt.fr/repository/maven-public/' }
    // MythicMobs 4, FabledSkyblock
    maven { url = 'https://repo.songoda.com/repository/public/' }
    // MythicMobs 5
    maven { url = 'https://mvn.lumine.io/repository/maven-public/' }
    // NuVotifier
    maven { url = 'https://repo.leonardobishop.com/releases/' }
    // PlaceholderAPI
    maven { url = 'https://repo.extendedclip.com/content/repositories/dev/' }
    // SCore, ShopGUIPlus, Slimefun4
    maven { url = 'https://jitpack.io/' }
    // SuperiorSkyblock2
    maven { url = 'https://repo.bg-software.com/repository/api/' }
    // uSkyBlock
    maven { url = 'https://www.uskyblock.ovh/maven/uskyblock/' }
    // VotingPlugin
    maven { url = 'https://nexus.bencodez.com/repository/maven-public/' }

    // JetBrains Annotations
    mavenCentral()
}

dependencies {
    compileOnly project(':common')
    // Paper
    compileOnly('io.papermc.paper:paper-api:1.19.3-R0.1-SNAPSHOT') {
        exclude(group: 'it.unimi.dsi', module: 'fastutil') // exclude fastutil just to don't use it (for 1.8 support)
    }
    // ASkyBlock
    compileOnly('com.wasteofplastic:askyblock:3.0.9.4') { transitive = false }
    // AuthLib
    compileOnly('com.mojang:authlib:1.5.21') { transitive = false }
    // BentoBox
    compileOnly('world.bentobox:bentobox:1.22.0-SNAPSHOT') { transitive = false }
    // Citizens
    compileOnly('net.citizensnpcs:citizensapi:2.0.30-SNAPSHOT') { transitive = false }
    // CoreProtect
    compileOnly 'net.coreprotect:coreprotect:21.2'
    // EssentialsX
    compileOnly('net.essentialsx:EssentialsX:2.19.7') { transitive = false }
    // FabledSkyblock
    compileOnly 'com.songoda:skyblock:2.3.30'
    // IridiumSkyblock TODO fix whenever repo is up
    //compileOnly 'com.github.Iridium-Development:IridiumSkyblock:master-SNAPSHOT'
    // JetBrains Annotations
    compileOnly 'org.jetbrains:annotations:23.0.0'
    // MMOItems
    compileOnly 'net.Indyuce:MMOItems-API:6.8.3-SNAPSHOT'
    // MythicLib
    compileOnly 'io.lumine:MythicLib-dist:1.3.4-SNAPSHOT'
    // MythicMobs 4
    compileOnly 'io.lumine.xikage:MythicMobs:4.12.0'
    // MythicMobs 5
    compileOnly 'io.lumine:Mythic-Dist:5.2.0'
    // NuVotifier
    compileOnly 'com.vexsoftware:NuVotifier:2.7.3'
    // PlaceholderAPI
    compileOnly 'me.clip:placeholderapi:2.11.3-DEV-160'
    // SCore
    compileOnly 'com.github.Ssomar-Developement:SCore:3.4.7'
    // ShopGUIPlus
    compileOnly('com.github.brcdev-minecraft:shopgui-api:3.0.0') { transitive = false }
    // Slimefun4
    compileOnly 'com.github.Slimefun:Slimefun4:RC-32'
    // SuperiorSkyblock2
    compileOnly 'com.bgsoftware:SuperiorSkyblockAPI:2022.9'
    // uSkyBlock
    compileOnly('com.github.rlf:uSkyBlock-API:2.8.3') { transitive = false }
    // VotingPlugin
    compileOnly('com.bencodez:votingplugin:6.9.5') { transitive = false }

    // IridiumSkyblock
    compileOnly fileTree(dir: 'libs', includes: ['*.jar'])

    // bStats
    implementation 'org.bstats:bstats-bukkit-lite:1.8'
    // HikariCP
    implementation 'com.zaxxer:HikariCP:4.0.3'
    // slf4j
    implementation 'org.slf4j:slf4j-nop:1.7.36'
    // hppc
    implementation 'com.carrotsearch:hppc:0.9.1'
}

tasks.build {
    dependsOn(tasks.shadowJar)
}

shadowJar {
    relocate 'org.bstats', 'com.leonardobishop.quests.libs.bstats'
    relocate 'com.zaxxer.hikari', 'com.leonardobishop.quests.libs.hikaricp'
    relocate 'org.slf4j', 'com.leonardobishop.quests.libs.slf4j'
    relocate 'com.carrotsearch.hppc', 'com.leonardobishop.quests.libs.hppc'

    minimize {
        exclude(dependency('org.bstats:.*:.*'))
        exclude(dependency('com.zaxxer:.*:.*'))
        exclude(dependency('org.slf4j:.*:.*'))
    }

    archiveClassifier.set('')
}