RT
 
 
重启服务器后第一次死亡可以触发该事件 该npc重生之后就触发不了了
如何解决
因为需要getDrops所以不太可能用EntityDamage之类的事件
求解
 
 
环境:
catserver 1.12.2
npcmod最新版
已排除npcmod fix的问题
 
 
 
 
 
重启服务器后第一次死亡可以触发该事件 该npc重生之后就触发不了了
如何解决
因为需要getDrops所以不太可能用EntityDamage之类的事件
求解
 
环境:
catserver 1.12.2
npcmod最新版
已排除npcmod fix的问题
 
 
我是用这个方法解决的 但是第一次死亡有几率触发2次死亡事件
var isAlive;
function died(e){
var n = e.npc;
if(isAlive == null){
isAlive = true;
return;
}
var Bukkit = Java.type("org.bukkit.Bukkit");
var list = Java.type("java.util.ArrayList");
var item = Java.type("org.bukkit.inventory.ItemStack");
var Material = Java.type("org.bukkit.Material");
var event = Java.type("org.bukkit.event.entity.EntityDeathEvent");
var en = getBukkitEntity(n);
var array = new list();
array.add(new item(Material.AIR));
array.clear();
Bukkit.getPluginManager().callEvent(new event(en,array));
}
function getBukkitEntity(t) {
var uuid = Java.type("java.util.UUID");
var en = Java.type("org.bukkit.Bukkit").getServer().getEntity(uuid.fromString(t.getUUID()));
return en;
}
var isAlive;
function died(e){
var n = e.npc;
if(isAlive == null){
isAlive = true;
return;
}
var Bukkit = Java.type("org.bukkit.Bukkit");
var list = Java.type("java.util.ArrayList");
var item = Java.type("org.bukkit.inventory.ItemStack");
var Material = Java.type("org.bukkit.Material");
var event = Java.type("org.bukkit.event.entity.EntityDeathEvent");
var en = getBukkitEntity(n);
var array = new list();
array.add(new item(Material.AIR));
array.clear();
Bukkit.getPluginManager().callEvent(new event(en,array));
}
function getBukkitEntity(t) {
var uuid = Java.type("java.util.UUID");
var en = Java.type("org.bukkit.Bukkit").getServer().getEntity(uuid.fromString(t.getUUID()));
return en;
}
这是npc脚本 每个怪都加