diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml new file mode 100644 index 00000000..7245011f --- /dev/null +++ b/.github/workflows/publish-release.yml @@ -0,0 +1,38 @@ +name: Publish release + +on: + release: + types: [published] + +jobs: + publish-release: + runs-on: ubuntu-latest + + steps: + - name: Checkout latest code + uses: actions/checkout@v2 + + - name: Set up JDK 16 + uses: actions/setup-java@v2 + with: + distribution: 'adopt' + java-version: 16 + + - name: Setup build cache + uses: actions/cache@v2.1.6 + with: + path: ~/.gradle/caches + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle.kts') }} + restore-keys: | + ${{ runner.os }}-gradle- + - name: Publish artifact + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + # The GITHUB_REF tag comes in the format 'refs/tags/xxx'. + # So if we split on '/' and take the 3rd value, we can get the release name. + run: | + NEW_VERSION=$(echo "${GITHUB_REF}" | cut -d "/" -f3) + echo "New version: ${NEW_VERSION}" + echo "Github username: ${GITHUB_ACTOR}" + ./gradlew -Pversion=${NEW_VERSION} publish \ No newline at end of file diff --git a/README.md b/README.md index 25060ab7..ae78006f 100644 --- a/README.md +++ b/README.md @@ -1 +1,144 @@ -## eco - Library for spigot plugin development. \ No newline at end of file +

+
+ eco logo +
+

+ +

eco - Simplify spigot development.

+ +# Installation for Development + +eco is a standalone plugin, so you will need to install it on any servers that have plugins which depend on it, and specify it as a dependency in your plugin.yml like this: + +```yaml +depend: [RedLib] +``` + +eco is available from any of these places: + +- [GitHub](https://github.com/Auxilor/eco/releases) +- [Spigot](https://www.spigotmc.org/resources/eco.87955/) +- [Polymart](https://polymart.org/resource/eco.773) +- [Build it locally](https://github.com/Auxilor/eco#build-locally). + +## Get from JitPack: + +Gradle: + +```groovy +repositories { + maven { url 'https://jitpack.io' } +} + +``` + +```groovy +dependencies { + compileOnly 'com.willfp:eco:Tag' +} +``` + +Replace `Tag` with a release tag for eco, eg `6.0.0`. + +Maven: + +```xml + + jitpack.io + https://jitpack.io + +``` + +```xml + + com.willfp + eco + Tag + provided + +``` + +Replace `Tag` with a release tag for eco, eg `6.0.0`. + +## Build locally: + +Run the following commands in your terminal of choice. + +If you're on windows, you will need to have git bash installed. +``` +git clone https://github.com/Auxilor/eco +cd eco +./gradlew build +``` + +# Features + +Here's a list of some (not all) of the features of eco: + +- Command system with subcommands +- Reworked config system +- JSON Config Support +- Client-Side item display +- World drop system +- Event manager + - PlayerJumpEvent + - ArmorEquipEvent + - EntityDeathByEntityEvent + - NaturalExpGainEvent +- Plugin extensions (Plugins for plugins) +- GUI System +- Integration system for external plugins + - Anticheat support + - AAC + - Matrix + - NCP + - Spartan + - Vulcan + - Antigrief/Combat support + - CombatLogX (V10 + V11) + - FactionsUUID + - GriefPrevention + - Kingdoms + - Lands + - Towny + - WorldGuard + - mcMMO support + - Custom Items support + - Oraxen + - PlaceholderAPI support +- NMS Proxy / Wrapper system built in +- Custom Items system +- Crafting Recipe handler +- Tuples +- Support uploading to / downloading from hastebin +- Packet System (via ProtocolLib) +- Dependency Injection systems +- Prerequisite system +- API additions (via utility classes) + - Get bow from arrow + - Break a block as a player + - Get a vein of blocks + - Create 2D lists + - Create NamespacedKeys safely + - Random number, distribution, roman numerals + - Set skull texture + - Format all strings + - Hex Support + - Gradient Support + - Placeholder Support + - Get a scoreboard team from any color + - Telekinesis (Drops straight to inventory) system + - Get Trident ItemStack (1.16.5) + - More vector options +- Update checker +- bStats integration +- Reworked systems for: + - NamespacedKey + - MetadataValue + - Runnables / Scheduling + +... and a lot more! + +## License + +*Click here to read [the entire license](https://github.com/Auxilor/EcoEnchants/blob/master/LICENSE.md).* \ No newline at end of file diff --git a/eco-api/build.gradle b/eco-api/build.gradle index 53eb2dc6..e7d1664f 100644 --- a/eco-api/build.gradle +++ b/eco-api/build.gradle @@ -29,4 +29,15 @@ publishing { artifactId 'eco' } } + + repositories { + maven { + name = "GitHubPackages" + url = uri("https://maven.pkg.github.com/Auxilor/eco") + credentials { + username = System.getenv("GITHUB_ACTOR") + password = System.getenv("GITHUB_TOKEN") + } + } + } } \ No newline at end of file