Compare commits
No commits in common. "master" and "v1.0.1-alpha" have entirely different histories.
master
...
v1.0.1-alp
@ -28,66 +28,43 @@ jobs:
|
||||
id: get_version
|
||||
run: echo "VERSION=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Find JAR file
|
||||
id: find_jar
|
||||
run: |
|
||||
JAR_FILE=$(find build/libs -name "*.jar" ! -name "*-sources.jar" ! -name "*-javadoc.jar" | head -1)
|
||||
echo "JAR_PATH=$JAR_FILE" >> $GITHUB_OUTPUT
|
||||
echo "JAR_NAME=$(basename $JAR_FILE)" >> $GITHUB_OUTPUT
|
||||
- name: Create Release
|
||||
uses: actions/forgejo-release@v2
|
||||
with:
|
||||
direction: upload
|
||||
url: ${{ github.server_url }}
|
||||
token: ${{ secrets.RELEASE_TOKEN }}
|
||||
release-dir: build/libs
|
||||
release-notes: |
|
||||
## Release ${{ steps.get_version.outputs.VERSION }}
|
||||
|
||||
- name: Create Draft Release
|
||||
run: |
|
||||
VERSION="${{ steps.get_version.outputs.VERSION }}"
|
||||
|
||||
RELEASE_BODY="## Release ${VERSION}
|
||||
### What's New
|
||||
- Feature 1
|
||||
- Feature 2
|
||||
|
||||
### What's New
|
||||
- Feature 1
|
||||
- Feature 2
|
||||
### Bug Fixes
|
||||
- Fix 1
|
||||
- Fix 2
|
||||
|
||||
### Bug Fixes
|
||||
- Fix 1
|
||||
- Fix 2
|
||||
### Changes
|
||||
- Change 1
|
||||
- Change 2
|
||||
|
||||
### Changes
|
||||
- Change 1
|
||||
- Change 2
|
||||
### Breaking Changes
|
||||
- None
|
||||
|
||||
### Breaking Changes
|
||||
- None
|
||||
### Installation
|
||||
1. Download the JAR file from the assets below
|
||||
2. Place it in your server's `plugins` folder
|
||||
3. Restart the server
|
||||
|
||||
### Installation
|
||||
1. Download the JAR file from the assets below
|
||||
2. Place it in your server's \`plugins\` folder
|
||||
3. Restart the server
|
||||
### Requirements
|
||||
- Minecraft Server with PaperMC: 1.21.11
|
||||
- Java: 21+
|
||||
|
||||
### Requirements
|
||||
- Minecraft Server with PaperMC: 1.21.11
|
||||
- Java: 21+"
|
||||
|
||||
# Create draft release
|
||||
RESPONSE=$(curl -s -X POST \
|
||||
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
|
||||
-H "Content-Type: application/json" \
|
||||
"${{ github.server_url }}/api/v1/repos/${{ github.repository }}/releases" \
|
||||
-d "{
|
||||
\"tag_name\": \"${VERSION}\",
|
||||
\"name\": \"Release ${VERSION}\",
|
||||
\"body\": $(echo "$RELEASE_BODY" | jq -Rs .),
|
||||
\"draft\": true,
|
||||
\"prerelease\": false
|
||||
}")
|
||||
|
||||
RELEASE_ID=$(echo "$RESPONSE" | jq -r '.id')
|
||||
echo "Created release with ID: $RELEASE_ID"
|
||||
echo "RELEASE_ID=$RELEASE_ID" >> $GITHUB_ENV
|
||||
|
||||
- name: Upload JAR to Release
|
||||
run: |
|
||||
curl -s -X POST \
|
||||
-H "Authorization: token ${{ secrets.GITEA_TOKEN }}" \
|
||||
-H "Content-Type: application/java-archive" \
|
||||
"${{ github.server_url }}/api/v1/repos/${{ github.repository }}/releases/${{ env.RELEASE_ID }}/assets?name=${{ steps.find_jar.outputs.JAR_NAME }}" \
|
||||
--data-binary @"${{ steps.find_jar.outputs.JAR_PATH }}"
|
||||
|
||||
echo "Uploaded ${{ steps.find_jar.outputs.JAR_NAME }} to release"
|
||||
---
|
||||
**Full Changelog**: Compare with previous version
|
||||
tag: ${{ steps.get_version.outputs.VERSION }}
|
||||
title: Release ${{ steps.get_version.outputs.VERSION }}
|
||||
prerelease: false
|
||||
draft: true
|
||||
|
||||
@ -5,7 +5,7 @@ plugins {
|
||||
}
|
||||
|
||||
group = "com.rpserver"
|
||||
version = "1.0.3-alpha"
|
||||
version = "1.0.0-alpha"
|
||||
|
||||
java {
|
||||
toolchain.languageVersion.set(JavaLanguageVersion.of(21))
|
||||
|
||||
@ -7,7 +7,6 @@ import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerCommandPreprocessEvent;
|
||||
import org.bukkit.event.player.PlayerInteractEvent;
|
||||
import org.bukkit.event.player.PlayerJoinEvent;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
import org.bukkit.event.player.PlayerDropItemEvent;
|
||||
import org.bukkit.event.inventory.InventoryOpenEvent;
|
||||
@ -33,23 +32,16 @@ public class CuffListener implements Listener {
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerJoin(PlayerJoinEvent event) {
|
||||
Player player = event.getPlayer();
|
||||
|
||||
// Восстанавливаем эффект наручников при входе
|
||||
plugin.getCuffManager().applyEffectOnJoin(player);
|
||||
|
||||
if (plugin.getCuffManager().isCuffed(player)) {
|
||||
plugin.getMessageManager().send(player, "cuff-target");
|
||||
}
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
public void onPlayerQuit(PlayerQuitEvent event) {
|
||||
Player player = event.getPlayer();
|
||||
|
||||
// Разрываем связь конвоирования (но наручники остаются)
|
||||
// Снимаем наручники при выходе
|
||||
if (plugin.getCuffManager().isCuffed(player)) {
|
||||
plugin.getCuffManager().uncuff(player);
|
||||
}
|
||||
|
||||
// Разрываем связь конвоирования
|
||||
plugin.getLeadManager().unlead(player);
|
||||
plugin.getLeadManager().unleadByLeader(player);
|
||||
}
|
||||
|
||||
@ -1,31 +1,22 @@
|
||||
package com.rpserver.jailplugin.managers;
|
||||
|
||||
import com.rpserver.jailplugin.JailPlugin;
|
||||
import org.bukkit.configuration.file.FileConfiguration;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.potion.PotionEffect;
|
||||
import org.bukkit.potion.PotionEffectType;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class CuffManager {
|
||||
|
||||
private final JailPlugin plugin;
|
||||
private final Set<UUID> cuffedPlayers;
|
||||
private File dataFile;
|
||||
private FileConfiguration dataConfig;
|
||||
|
||||
public CuffManager(JailPlugin plugin) {
|
||||
this.plugin = plugin;
|
||||
this.cuffedPlayers = new HashSet<>();
|
||||
loadData();
|
||||
}
|
||||
|
||||
public boolean isCuffed(Player player) {
|
||||
@ -39,13 +30,11 @@ public class CuffManager {
|
||||
public void cuff(Player player) {
|
||||
cuffedPlayers.add(player.getUniqueId());
|
||||
applySlowEffect(player);
|
||||
saveData();
|
||||
}
|
||||
|
||||
public void uncuff(Player player) {
|
||||
cuffedPlayers.remove(player.getUniqueId());
|
||||
removeSlowEffect(player);
|
||||
saveData();
|
||||
|
||||
plugin.getLeadManager().unlead(player);
|
||||
}
|
||||
@ -89,51 +78,4 @@ public class CuffManager {
|
||||
public Set<UUID> getCuffedPlayers() {
|
||||
return new HashSet<>(cuffedPlayers);
|
||||
}
|
||||
|
||||
public void applyEffectOnJoin(Player player) {
|
||||
if (isCuffed(player)) {
|
||||
applySlowEffect(player);
|
||||
}
|
||||
}
|
||||
|
||||
private void loadData() {
|
||||
dataFile = new File(plugin.getDataFolder(), "cuffed.yml");
|
||||
|
||||
if (!dataFile.exists()) {
|
||||
try {
|
||||
plugin.getDataFolder().mkdirs();
|
||||
dataFile.createNewFile();
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
dataConfig = YamlConfiguration.loadConfiguration(dataFile);
|
||||
|
||||
if (dataConfig.contains("cuffed-players")) {
|
||||
List<String> uuidStrings = dataConfig.getStringList("cuffed-players");
|
||||
for (String uuidString : uuidStrings) {
|
||||
try {
|
||||
UUID uuid = UUID.fromString(uuidString);
|
||||
cuffedPlayers.add(uuid);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void saveData() {
|
||||
List<String> uuidStrings = cuffedPlayers.stream()
|
||||
.map(UUID::toString)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
dataConfig.set("cuffed-players", uuidStrings);
|
||||
|
||||
try {
|
||||
dataConfig.save(dataFile);
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user