Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 0 additions & 7 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,3 @@ jobs:
run: |
VERSION=$(./gradlew -q properties | awk -F': ' '/^version:/ {print $2; exit}')
echo "VERSION=$VERSION" >> "$GITHUB_ENV"

- name: Upload CyberLevels artifact
uses: actions/upload-artifact@v4
with:
name: CyberLevels-artifacts-${{ env.VERSION }}
if-no-files-found: error
path: build/libs/CyberLevels-${{ env.VERSION }}.jar
55 changes: 33 additions & 22 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,37 +29,39 @@ jobs:
ref: ${{ github.event.workflow_run.head_sha }}
fetch-depth: 0

- name: Download build artifact
env:
GH_TOKEN: ${{ github.token }}
RUN_ID: ${{ github.event.workflow_run.id }}
- name: Set up Java
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: "21"

- name: Set up Gradle
uses: gradle/actions/setup-gradle@v4

- name: Build release jar
shell: bash
run: |
set -euo pipefail
PROJECT_NAME="CyberLevels"
chmod +x ./gradlew
./gradlew --no-daemon clean build shadowJar

gh run download "$RUN_ID" \
--repo "$GITHUB_REPOSITORY" \
--dir downloaded-artifacts

JAR=$(find downloaded-artifacts -type f \
-name 'CyberLevels-*.jar' \
! -name '*-sources.jar' \
! -name '*-javadoc.jar' \
-print -quit)
VERSION=$(./gradlew --no-daemon -q properties --property version | awk -F': ' '$1 == "version" { print $2; exit }')
JAR_SOURCE=$(find . -type f -path "*/build/libs/${PROJECT_NAME}-${VERSION}.jar" -print -quit)

if [ -z "$JAR" ]; then
echo "Could not find final CyberLevels jar in downloaded artifacts."
find downloaded-artifacts -type f
if [ -z "$JAR_SOURCE" ]; then
echo "Could not find final ${PROJECT_NAME} jar in build outputs."
find . -path "*/build/libs/*.jar" -type f -print
exit 1
fi

VERSION=$(basename "$JAR" | sed -E 's/^CyberLevels-(.+)\.jar$/\1/')
mkdir -p release-assets
cp "$JAR" "release-assets/CyberLevels-$VERSION.jar"
RELEASE_JAR="release-assets/${PROJECT_NAME}-${VERSION}.jar"
cp "$JAR_SOURCE" "$RELEASE_JAR"

echo "RELEASE_JAR=$RELEASE_JAR" >> "$GITHUB_ENV"
echo "VERSION=$VERSION" >> "$GITHUB_ENV"
echo "TAG=$VERSION" >> "$GITHUB_ENV"
echo "RELEASE_JAR=release-assets/CyberLevels-$VERSION.jar" >> "$GITHUB_ENV"

- name: Build release notes
env:
GH_TOKEN: ${{ github.token }}
Expand Down Expand Up @@ -156,8 +158,17 @@ jobs:
local login

while IFS= read -r line; do
if [[ "$line" =~ ^Co-authored-by:[[:space:]]*.*[<]([^>]+)[>][[:space:]]*$ ]]; then
email="${BASH_REMATCH[1]}"
case "$line" in
Co-authored-by:*"<"*">"*)
email="${line##*<}"
email="${email%%>*}"
;;
*)
email=""
;;
esac

if [ -n "$email" ]; then
login=""

if [[ "$email" =~ ^[0-9]+\+([^@]+)@users\.noreply\.github\.com$ ]]; then
Expand Down
2 changes: 1 addition & 1 deletion build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ plugins {
}

group = "com.bitaspire"
version = "1.2.6"
version = "1.2.7"

repositories {
mavenLocal()
Expand Down
2 changes: 1 addition & 1 deletion gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.0-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.6.0-bin.zip
networkTimeout=10000
retries=0
retryBackOffMs=500
Expand Down
4 changes: 2 additions & 2 deletions gradlew

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions gradlew.bat

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 1 addition & 7 deletions src/main/java/com/bitaspire/cyberlevels/cache/EarnExp.java
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@
import org.bukkit.event.player.*;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.PotionMeta;
import org.bukkit.metadata.FixedMetadataValue;
import org.bukkit.potion.PotionType;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
Expand Down Expand Up @@ -155,9 +154,6 @@ void onPlayerDeath(PlayerDeathEvent event) {
private void onPlacing(BlockPlaceEvent event) {
if (event.isCancelled()) return;

if (main.cache().antiAbuse().onlyNaturalBlocks())
event.getBlock().setMetadata("CLV_PLACED", new FixedMetadataValue(main, true));

sendExp(event.getPlayer(), s,
BlockExpKeys.blockKey(event.getBlock(), main.serverVersion()));
}
Expand Down Expand Up @@ -331,9 +327,7 @@ private void onEnchant(EnchantItemEvent event) {
events.get("fishing").setListener(s -> new Listener() {
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
private void onFishing(PlayerFishEvent event) {
final PlayerFishEvent.State state = event.getState();
if (state != PlayerFishEvent.State.CAUGHT_FISH
&& state != PlayerFishEvent.State.CAUGHT_ENTITY)
if (event.getState() != PlayerFishEvent.State.CAUGHT_FISH)
return;

Entity caught = event.getCaught();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@
import org.bukkit.block.Block;
import org.bukkit.block.BlockFace;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.HandlerList;
import org.bukkit.event.Listener;
import org.bukkit.event.block.BlockPistonExtendEvent;
import org.bukkit.event.block.BlockPistonRetractEvent;
import org.bukkit.event.block.BlockPlaceEvent;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.metadata.FixedMetadataValue;
Expand Down Expand Up @@ -53,6 +55,12 @@ private void onLeave(PlayerQuitEvent event) {
};

new ExpListener() {
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
private void onPlace(BlockPlaceEvent event) {
if (main.cache().antiAbuse().onlyNaturalBlocks())
event.getBlockPlaced().setMetadata("CLV_PLACED", new FixedMetadataValue(main, true));
}

@EventHandler
private void onPistonExtend(BlockPistonExtendEvent event) {
if (!event.isCancelled()) fixPlacedAbuse(event.getBlocks(), event.getDirection());
Expand Down
Loading