add bossbar flag options
This commit is contained in:
@@ -3,6 +3,7 @@ package pers.xanadu.enderdragon.listener;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.attribute.Attribute;
|
||||
import org.bukkit.boss.BarColor;
|
||||
import org.bukkit.boss.BarFlag;
|
||||
import org.bukkit.boss.BarStyle;
|
||||
import org.bukkit.boss.BossBar;
|
||||
import org.bukkit.entity.*;
|
||||
@@ -70,18 +71,22 @@ public class DragonSpawnListener implements Listener {
|
||||
String color = myDragon.glow_color.toUpperCase();
|
||||
if(color.equals("NONE")) dragon.setGlowing(false);
|
||||
else setGlowingColor(dragon,getGlowColor(color));
|
||||
String bossBar_color = myDragon.bossbar_color.toUpperCase();
|
||||
String bossBar_style = myDragon.bossbar_style.toUpperCase();
|
||||
|
||||
if(Version.mcMainVersion >= 14){
|
||||
BossBar bossBar = dragon.getBossBar();
|
||||
if(bossBar != null){
|
||||
bossBar.setColor(BarColor.valueOf(bossBar_color));
|
||||
bossBar.setStyle(BarStyle.valueOf(bossBar_style));
|
||||
bossBar.setColor(BarColor.valueOf(myDragon.bossbar_color));
|
||||
bossBar.setStyle(BarStyle.valueOf(myDragon.bossbar_style));
|
||||
if(myDragon.bossbar_create_frog) bossBar.addFlag(BarFlag.CREATE_FOG);
|
||||
else bossBar.removeFlag(BarFlag.CREATE_FOG);
|
||||
if(myDragon.bossbar_darken_sky) bossBar.addFlag(BarFlag.DARKEN_SKY);
|
||||
else bossBar.removeFlag(BarFlag.DARKEN_SKY);
|
||||
if(myDragon.bossbar_play_boss_music) bossBar.addFlag(BarFlag.PLAY_BOSS_MUSIC);
|
||||
else bossBar.removeFlag(BarFlag.PLAY_BOSS_MUSIC);
|
||||
}
|
||||
}
|
||||
else if(Version.mcMainVersion >= 12){
|
||||
getInstance().getBossBarManager().setBossBar(dragon.getWorld(),myDragon.display_name,bossBar_color,bossBar_style);
|
||||
getInstance().getBossBarManager().setBossBar(dragon.getWorld(),myDragon);
|
||||
}
|
||||
if(Config.advanced_setting_save_bossbar){
|
||||
getInstance().getBossBarManager().saveBossBarData(Collections.singletonList(dragon.getWorld()));
|
||||
|
||||
@@ -220,8 +220,11 @@ public class DragonManager {
|
||||
myDragon.death_broadcast_msg = f.getStringList("death_broadcast_msg");
|
||||
myDragon.msg_to_killer = f.getStringList("msg_to_killer");
|
||||
myDragon.glow_color = f.getString("glow_color","random");
|
||||
myDragon.bossbar_color = f.getString("bossbar.color","WHITE");
|
||||
myDragon.bossbar_style = f.getString("bossbar.style","SOLID");
|
||||
myDragon.bossbar_color = f.getString("bossbar.color","WHITE").toUpperCase();
|
||||
myDragon.bossbar_style = f.getString("bossbar.style","SOLID").toUpperCase();
|
||||
myDragon.bossbar_create_frog = f.getBoolean("bossbar.create_frog",true);
|
||||
myDragon.bossbar_darken_sky = f.getBoolean("bossbar.darken_sky",true);
|
||||
myDragon.bossbar_play_boss_music = f.getBoolean("bossbar.play_boss_music",true);
|
||||
myDragon.effect_cloud_original_radius = f.getDouble("effect_cloud.original_radius",3);
|
||||
myDragon.effect_cloud_expand_speed = f.getDouble("effect_cloud.expand_speed",0.1333333);
|
||||
myDragon.effect_cloud_duration = f.getInt("effect_cloud.duration",60);
|
||||
|
||||
@@ -47,6 +47,9 @@ public class MyDragon implements Comparable<MyDragon>{
|
||||
public String glow_color;
|
||||
public String bossbar_color;
|
||||
public String bossbar_style;
|
||||
public boolean bossbar_create_frog;
|
||||
public boolean bossbar_darken_sky;
|
||||
public boolean bossbar_play_boss_music;
|
||||
public double effect_cloud_original_radius;
|
||||
public double effect_cloud_expand_speed;
|
||||
public int effect_cloud_duration;
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
package pers.xanadu.enderdragon.nms.BossBar;
|
||||
|
||||
import org.bukkit.World;
|
||||
import pers.xanadu.enderdragon.metadata.MyDragon;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface I_BossBarManager {
|
||||
void saveBossBarData(List<World> worlds);
|
||||
void loadBossBarData(List<World> worlds);
|
||||
void setBossBar(World world,String title,String color,String style);
|
||||
void setBossBar(World world, final MyDragon myDragon);
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.craftbukkit.v1_12_R1.util.CraftChatMessage;
|
||||
import pers.xanadu.enderdragon.config.Lang;
|
||||
import pers.xanadu.enderdragon.manager.DragonManager;
|
||||
import pers.xanadu.enderdragon.metadata.MyDragon;
|
||||
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
||||
|
||||
import java.io.File;
|
||||
@@ -71,15 +72,15 @@ public class BossBarManager implements I_BossBarManager {
|
||||
}
|
||||
});
|
||||
}
|
||||
public void setBossBar(World world,String title,String color,String style){
|
||||
public void setBossBar(World world, final MyDragon myDragon){
|
||||
BossBattleServer bbs = new BossBattleServer(
|
||||
CraftChatMessage.fromString(title, true)[0],
|
||||
convertColor(color),
|
||||
convertStyle(style)
|
||||
CraftChatMessage.fromString(myDragon.display_name, true)[0],
|
||||
convertColor(myDragon.bossbar_color),
|
||||
convertStyle(myDragon.bossbar_style)
|
||||
);
|
||||
bbs.setCreateFog(true);
|
||||
bbs.setDarkenSky(true);
|
||||
bbs.setPlayMusic(true);
|
||||
bbs.setCreateFog(myDragon.bossbar_create_frog);
|
||||
bbs.setDarkenSky(myDragon.bossbar_darken_sky);
|
||||
bbs.setPlayMusic(myDragon.bossbar_play_boss_music);
|
||||
try{
|
||||
Object edb = DragonManager.getEnderDragonBattle(world);
|
||||
assert edb != null;
|
||||
|
||||
@@ -8,6 +8,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.craftbukkit.v1_13_R1.util.CraftChatMessage;
|
||||
import pers.xanadu.enderdragon.config.Lang;
|
||||
import pers.xanadu.enderdragon.manager.DragonManager;
|
||||
import pers.xanadu.enderdragon.metadata.MyDragon;
|
||||
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
||||
|
||||
import java.io.File;
|
||||
@@ -71,15 +72,15 @@ public class BossBarManager implements I_BossBarManager {
|
||||
}
|
||||
});
|
||||
}
|
||||
public void setBossBar(World world,String title,String color,String style){
|
||||
public void setBossBar(World world, final MyDragon myDragon){
|
||||
BossBattleServer bbs = new BossBattleServer(
|
||||
CraftChatMessage.fromString(title, true)[0],
|
||||
convertColor(color),
|
||||
convertStyle(style)
|
||||
CraftChatMessage.fromString(myDragon.display_name, true)[0],
|
||||
convertColor(myDragon.bossbar_color),
|
||||
convertStyle(myDragon.bossbar_style)
|
||||
);
|
||||
bbs.setCreateFog(true);
|
||||
bbs.setDarkenSky(true);
|
||||
bbs.setPlayMusic(true);
|
||||
bbs.setCreateFog(myDragon.bossbar_create_frog);
|
||||
bbs.setDarkenSky(myDragon.bossbar_darken_sky);
|
||||
bbs.setPlayMusic(myDragon.bossbar_play_boss_music);
|
||||
try{
|
||||
Object edb = DragonManager.getEnderDragonBattle(world);
|
||||
assert edb != null;
|
||||
|
||||
@@ -8,6 +8,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.craftbukkit.v1_13_R2.util.CraftChatMessage;
|
||||
import pers.xanadu.enderdragon.config.Lang;
|
||||
import pers.xanadu.enderdragon.manager.DragonManager;
|
||||
import pers.xanadu.enderdragon.metadata.MyDragon;
|
||||
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
||||
|
||||
import java.io.File;
|
||||
@@ -71,15 +72,15 @@ public class BossBarManager implements I_BossBarManager {
|
||||
}
|
||||
});
|
||||
}
|
||||
public void setBossBar(World world,String title,String color,String style){
|
||||
public void setBossBar(World world, final MyDragon myDragon){
|
||||
BossBattleServer bbs = new BossBattleServer(
|
||||
CraftChatMessage.fromString(title, true)[0],
|
||||
convertColor(color),
|
||||
convertStyle(style)
|
||||
CraftChatMessage.fromString(myDragon.display_name, true)[0],
|
||||
convertColor(myDragon.bossbar_color),
|
||||
convertStyle(myDragon.bossbar_style)
|
||||
);
|
||||
bbs.setCreateFog(true);
|
||||
bbs.setDarkenSky(true);
|
||||
bbs.setPlayMusic(true);
|
||||
bbs.setCreateFog(myDragon.bossbar_create_frog);
|
||||
bbs.setDarkenSky(myDragon.bossbar_darken_sky);
|
||||
bbs.setPlayMusic(myDragon.bossbar_play_boss_music);
|
||||
try{
|
||||
Object edb = DragonManager.getEnderDragonBattle(world);
|
||||
assert edb != null;
|
||||
|
||||
@@ -8,6 +8,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.craftbukkit.v1_14_R1.util.CraftChatMessage;
|
||||
import pers.xanadu.enderdragon.config.Lang;
|
||||
import pers.xanadu.enderdragon.manager.DragonManager;
|
||||
import pers.xanadu.enderdragon.metadata.MyDragon;
|
||||
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
||||
|
||||
import java.io.File;
|
||||
@@ -71,6 +72,6 @@ public class BossBarManager implements I_BossBarManager {
|
||||
}
|
||||
});
|
||||
}
|
||||
public void setBossBar(World world,String title,String color,String style){
|
||||
public void setBossBar(World world, final MyDragon myDragon){
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,7 @@ import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import org.bukkit.craftbukkit.v1_15_R1.util.CraftChatMessage;
|
||||
import pers.xanadu.enderdragon.config.Lang;
|
||||
import pers.xanadu.enderdragon.manager.DragonManager;
|
||||
import pers.xanadu.enderdragon.metadata.MyDragon;
|
||||
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
||||
|
||||
import java.io.File;
|
||||
@@ -71,7 +72,7 @@ public class BossBarManager implements I_BossBarManager {
|
||||
}
|
||||
});
|
||||
}
|
||||
public void setBossBar(World world,String title,String color,String style){
|
||||
public void setBossBar(World world, final MyDragon myDragon){
|
||||
}
|
||||
|
||||
}
|
||||
+2
-1
@@ -8,6 +8,7 @@ import org.bukkit.boss.DragonBattle;
|
||||
import org.bukkit.configuration.InvalidConfigurationException;
|
||||
import org.bukkit.configuration.file.YamlConfiguration;
|
||||
import pers.xanadu.enderdragon.config.Lang;
|
||||
import pers.xanadu.enderdragon.metadata.MyDragon;
|
||||
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
||||
|
||||
import java.io.File;
|
||||
@@ -57,6 +58,6 @@ public class BossBarManager implements I_BossBarManager {
|
||||
bossBar.setStyle(BarStyle.valueOf(yml.getString(path+"style")));
|
||||
});
|
||||
}
|
||||
public void setBossBar(World world,String title,String color,String style){
|
||||
public void setBossBar(World world, final MyDragon myDragon){
|
||||
}
|
||||
}
|
||||
@@ -9,7 +9,7 @@ import pers.xanadu.enderdragon.nms.WorldData.I_WorldDataManager;
|
||||
import static org.bukkit.Bukkit.getServer;
|
||||
|
||||
public class Version {
|
||||
public static final String setting_dragon = "2.4.0";
|
||||
public static final String setting_dragon = "2.5.0";
|
||||
public static final String lang = "2.2.0";
|
||||
public static final String config = "2.3.0";
|
||||
public static final String data = "2.2.0";
|
||||
|
||||
Reference in New Issue
Block a user