mirror of
https://github.com/CitizensDev/Citizens2.git
synced 2024-10-22 12:29:59 +02:00
Refactor new renderer creation code
This commit is contained in:
parent
194c4baadb
commit
71eed123b2
@ -122,14 +122,7 @@ public class HologramTrait extends Trait {
|
||||
}
|
||||
|
||||
private HologramRenderer createDefaultHologramRenderer() {
|
||||
HologramRenderer renderer;
|
||||
String hologramSetting = Setting.DEFAULT_HOLOGRAM_RENDERER.asString();
|
||||
if (!SUPPORTS_DISPLAY || hologramSetting.equals("armorstand")) {
|
||||
renderer = new ArmorstandRenderer();
|
||||
} else {
|
||||
renderer = hologramSetting.equals("interaction") ? new InteractionVehicleRenderer()
|
||||
: new TextDisplayRenderer();
|
||||
}
|
||||
HologramRenderer renderer = createRenderer(Setting.DEFAULT_HOLOGRAM_RENDERER.asString());
|
||||
if (HologramRendererCreateEvent.handlers.getRegisteredListeners().length > 0) {
|
||||
HologramRendererCreateEvent event = new HologramRendererCreateEvent(npc, renderer, false);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
@ -141,17 +134,16 @@ public class HologramTrait extends Trait {
|
||||
private HologramRenderer createNameRenderer() {
|
||||
HologramRenderer renderer;
|
||||
String setting = Setting.DEFAULT_NAME_HOLOGRAM_RENDERER.asString();
|
||||
if (setting.equals("display")) {
|
||||
renderer = new TextDisplayRenderer();
|
||||
} else if (SpigotUtil.getVersion()[1] >= 20 && (setting.isEmpty() || setting.equals("display_vehicle"))) {
|
||||
renderer = new TextDisplayVehicleRenderer();
|
||||
} else if (SpigotUtil.getVersion()[1] == 19 && (setting.isEmpty() || setting.equals("interaction"))) {
|
||||
renderer = new InteractionVehicleRenderer();
|
||||
} else if (setting.equals("armorstand")) {
|
||||
renderer = new ArmorstandRenderer();
|
||||
if (setting.isEmpty()) {
|
||||
if (SpigotUtil.getVersion()[1] >= 20) {
|
||||
setting = "display_vehicle";
|
||||
} else if (SpigotUtil.getVersion()[1] == 19) {
|
||||
setting = "interaction";
|
||||
} else {
|
||||
renderer = new ArmorstandVehicleRenderer();
|
||||
setting = "armorstand";
|
||||
}
|
||||
}
|
||||
renderer = createRenderer(setting);
|
||||
if (HologramRendererCreateEvent.handlers.getRegisteredListeners().length > 0) {
|
||||
HologramRendererCreateEvent event = new HologramRendererCreateEvent(npc, renderer, true);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
@ -160,6 +152,23 @@ public class HologramTrait extends Trait {
|
||||
return renderer;
|
||||
}
|
||||
|
||||
private HologramRenderer createRenderer(String setting) {
|
||||
if (!SUPPORTS_DISPLAY)
|
||||
return setting.equals("armorstand_vehicle") ? new ArmorstandVehicleRenderer() : new ArmorstandRenderer();
|
||||
switch (setting) {
|
||||
case "display":
|
||||
return new TextDisplayRenderer();
|
||||
case "display_vehicle":
|
||||
return new TextDisplayVehicleRenderer();
|
||||
case "interaction":
|
||||
return new InteractionVehicleRenderer();
|
||||
case "armorstand_vehicle":
|
||||
return new ArmorstandVehicleRenderer();
|
||||
default:
|
||||
return new ArmorstandRenderer();
|
||||
}
|
||||
}
|
||||
|
||||
public Color getDefaultBackgroundColor() {
|
||||
return defaultBackgroundColor;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user