实现了基本功能

This commit is contained in:
zhangyuheng 2024-06-05 22:51:54 +08:00
parent e7900d72cd
commit 9271860511
6 changed files with 18 additions and 10 deletions

View File

@ -6,7 +6,7 @@
<groupId>cn.lunadeer</groupId>
<artifactId>Dominion</artifactId>
<version>1.30.15-beta</version>
<version>1.30.15-bukkit-beta</version>
<packaging>jar</packaging>
<name>Dominion</name>
@ -82,7 +82,7 @@
<dependency>
<groupId>cn.lunadeer</groupId>
<artifactId>MinecraftPluginUtils</artifactId>
<version>1.3.0-SNAPSHOT</version>
<version>1.3.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.github.BlueMap-Minecraft</groupId>

View File

@ -4,6 +4,7 @@ import cn.lunadeer.dominion.dtos.DominionDTO;
import cn.lunadeer.dominion.dtos.Flag;
import cn.lunadeer.dominion.dtos.PlayerDTO;
import cn.lunadeer.dominion.dtos.PlayerPrivilegeDTO;
import cn.lunadeer.minecraftpluginutils.Notification;
import cn.lunadeer.minecraftpluginutils.ParticleRender;
import cn.lunadeer.minecraftpluginutils.Scheduler;
import cn.lunadeer.minecraftpluginutils.XLogger;
@ -143,7 +144,7 @@ public class Cache {
// Notification.info(player, "您已离开子领地:%s", last_dominion.getName());
String msg = last_dominion.getLeaveMessage();
msg = msg.replace("${DOM_NAME}", last_dominion.getName());
player.sendActionBar(Component.text(msg));
Notification.actionBar(player, msg);
}
if (current_dom_id != -1) {
// if (current_dominion.getParentDomId() == -1)
@ -152,7 +153,7 @@ public class Cache {
// Notification.info(player, "您正在进入子领地:%s", current_dominion.getName());
String msg = current_dominion.getJoinMessage();
msg = msg.replace("${DOM_NAME}", current_dominion.getName());
player.sendActionBar(Component.text(msg));
Notification.actionBar(player, msg);
}
lightOrNot(player, current_dominion); // 发光检查

View File

@ -63,7 +63,7 @@ public final class Dominion extends JavaPlugin {
Bukkit.getPluginManager().registerEvents(new CuiManager(this), this);
XLogger.info("领地插件已启动");
XLogger.info("版本:" + this.getPluginMeta().getVersion());
XLogger.info("版本:" + this.getDescription().getVersion());
// http://patorjk.com/software/taag/#p=display&f=Big&t=Dominion
XLogger.info(" _____ _ _");
XLogger.info(" | __ \\ (_) (_)");

View File

@ -28,7 +28,7 @@ public enum Flag {
CREEPER_EXPLODE("creeper_explode", "实体爆炸", "包含:苦力怕/凋零头颅/水晶爆炸", false, true, true),
COMPARER("comparer", "比较器交互", "是否可以与比较器交互", false, false, true),
DOOR("door", "门交互", "是否可以使用各种材质的门", false, false, true),
DYE("dye", "染色", "是否可以使用染料染色", false, false, true),
DYE("dye", "染色", "是否可以使用染料(对羊、狗项圈、猫项圈)染色", false, false, true),
EGG("egg", "扔鸡蛋", "是否可以扔鸡蛋", false, false, true),
ENCHANT("enchant", "使用附魔台", "是否可以使用附魔台", false, false, true),
ENDER_MAN("ender_man", "末影人行为", "包含:末影人是否可以生成、瞬移", false, true, true),

View File

@ -16,6 +16,7 @@ import org.bukkit.event.block.BlockIgniteEvent;
import org.bukkit.event.entity.CreatureSpawnEvent;
import org.bukkit.event.entity.EntityDeathEvent;
import org.bukkit.event.entity.EntityExplodeEvent;
import org.bukkit.event.entity.EntityTeleportEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import java.util.Objects;
@ -133,8 +134,11 @@ public class EnvironmentEvents implements Listener {
}
@EventHandler(priority = EventPriority.HIGHEST) // ender_man escape
public void onEnderManEscape(EndermanEscapeEvent event) {
public void onEnderManEscape(EntityTeleportEvent event) {
Entity entity = event.getEntity();
if (entity.getType() != EntityType.ENDERMAN) {
return;
}
DominionDTO dom = Cache.instance.getDominion(entity.getLocation());
checkFlag(dom, Flag.ENDER_MAN, event);
}

View File

@ -338,12 +338,15 @@ public class PlayerEvents implements Listener {
}
@EventHandler(priority = EventPriority.HIGHEST) // dye
public void dyeEvent(EntityDyeEvent event) {
public void dyeEvent(PlayerInteractEntityEvent event) {
Player player = event.getPlayer();
if (player == null) {
Entity entity = event.getRightClicked();
if (!(entity instanceof Sheep)
&& !(entity instanceof Wolf)
&& !(entity instanceof Cat)) {
return;
}
DominionDTO dom = Cache.instance.getDominion(event.getEntity().getLocation());
DominionDTO dom = Cache.instance.getDominion(entity.getLocation());
checkFlag(dom, Flag.DYE, player, event);
}