Read-only mirror of plugin-yml fork
Find a file
2018-07-16 13:29:43 -03:00
gradle/wrapper Initial Commit 2017-09-27 21:03:28 +02:00
src/main/kotlin/net/minecrell/pluginyml nukkit support 2018-07-16 13:29:43 -03:00
.gitattributes Initial Commit 2017-09-27 21:03:28 +02:00
.gitignore Initial Commit 2017-09-27 21:03:28 +02:00
.travis.yml Initial Commit 2017-09-27 21:03:28 +02:00
build.gradle.kts nukkit support 2018-07-16 13:29:43 -03:00
gradle.properties Update version back to 0.3.0-SNAPSHOT 2017-10-07 14:53:51 +02:00
gradlew Initial Commit 2017-09-27 21:03:28 +02:00
gradlew.bat Initial Commit 2017-09-27 21:03:28 +02:00
LICENSE Fix GitHub's license detection 2018-03-27 19:09:49 +02:00
README.md Update plugin version in README 2017-10-07 14:58:57 +02:00
settings.gradle Initial Commit 2017-09-27 21:03:28 +02:00

plugin-yml

plugin-yml is a simple Gradle plugin that generates the plugin.yml plugin description file for Bukkit plugins or bungee.yml for Bungee plugins based on the Gradle project. Various properties are set automatically (e.g. project name, version or description) and additional properties can be added using a simple DSL.

Usage

plugin-yml requires at least Gradle 4.2. Using the latest version of Gradle is recommended.

Default values

Property Value
Plugin name Project name
Plugin version Project version
Plugin description Project description
Plugin URL (Bukkit only) url project property
Plugin author author project property

Bukkit

Groovy

plugins {
    id 'net.minecrell.plugin-yml.bukkit' version '0.2.1'
}

bukkit {
    // Default values can be overridden if needed
    // name = 'TestPlugin'
    // version = '1.0'
    // description = 'This is a test plugin'
    // website = 'https://example.com'
    // author = 'Notch'
    
    // Plugin main class (required)
    main = 'com.example.testplugin.TestPlugin'
    
    // Other possible properties from plugin.yml (optional)
    load = 'STARTUP' // or 'POSTWORLD' 
    authors = ['Notch', 'Notch2']
    depend = ['WorldEdit']
    softDepend = ['Essentials']
    loadBefore = ['BrokenPlugin']
    prefix = 'TEST'
    defaultPermission = 'OP' // 'TRUE', 'FALSE', 'OP' or 'NOT_OP'
    
    commands {
        test {
            description = 'This is a test command!'
            aliases = ['t']
            permission = 'testplugin.test'
            usage = 'Just run the command!'
            // permissionMessage = 'You may not test this command!' 
        }
        // ...
    }
    
    permissions {
        'testplugin.*' {
            children = ['testplugin.test']
        }
        'testplugin.test' {
            description = 'Allows you to run the test command'
            setDefault('OP') // 'TRUE', 'FALSE', 'OP' or 'NOT_OP'
        }
    }
}

kotlin-dsl

plugins {
    id("net.minecrell.plugin-yml.bukkit") version "0.2.1"
}

bukkit {
    // Default values can be overridden if needed
    // name = "TestPlugin"
    // version = "1.0"
    // description = "This is a test plugin"
    // website = "https://example.com"
    // author = "Notch"
    
    // Plugin main class (required)
    main = "com.example.testplugin.TestPlugin"
    
    // Other possible properties from plugin.yml (optional)
    load = BukkitPluginDescription.PluginLoadOrder.STARTUP // or POSTWORLD 
    authors = listOf("Notch", "Notch2")
    depend = listOf("WorldEdit")
    softDepend = listOf("Essentials")
    loadBefore = listOf("BrokenPlugin")
    prefix = "TEST"
    defaultPermission = BukkitPluginDescription.Permission.Default.OP // TRUE, FALSE, OP or NOT_OP
    
    commands {
        "test" {
            description = "This is a test command!"
            aliases = listOf("t")
            permission = "testplugin.test"
            usage = "Just run the command!"
            // permissionMessage = "You may not test this command!" 
        }
        // ...
    }
    
    permissions {
        "testplugin.*" {
            children = listOf("testplugin.test")
        }
        "testplugin.test" {
            description = "Allows you to run the test command"
            default = BukkitPluginDescription.Permission.Default.OP // TRUE, FALSE, OP or NOT_OP
        }
    }
}

Bungee

Groovy

plugins {
    id 'net.minecrell.plugin-yml.bungee' version '0.2.1'
}

bungee {
    // Default values can be overridden if needed
    // name = 'TestPlugin'
    // version = '1.0'
    // description = 'This is a test plugin'
    
    // Plugin main class (required)
    main = 'com.example.testplugin.TestPlugin'
    
    // Other possible properties from bungee.yml
    author = 'Notch'
    depends = ['Yamler']
    softDepends = ['ServerListPlus']
}

kotlin-dsl

plugins {
    id("net.minecrell.plugin-yml.bungee") version "0.2.1"
}

bungee {
    // Default values can be overridden if needed
    // name = "TestPlugin"
    // version = "1.0"
    // description = "This is a test plugin"
    
    // Plugin main class (required)
    main = "com.example.testplugin.TestPlugin"
    
    // Other possible properties from bungee.yml
    author = "Notch"
    depends = setOf("Yamler")
    softDepends = setOf("ServerListPlus")
}