Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 1 addition & 15 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
<artifactId>dwarfcraft</artifactId>
<name>DwarfCraft</name>
<packaging>jar</packaging>
<version>4.3</version>
<version>4.3-SNAPSHOT</version>

<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
Expand Down Expand Up @@ -90,12 +90,6 @@
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<includes>
<include>default_files/**/*.*</include>
</includes>
</resource>
<resource>
<directory>${project.basedir}/src/main/resources</directory>
<includes>
Expand All @@ -104,12 +98,4 @@
</resource>
</resources>
</build>

<distributionManagement>
<repository>
<id>github</id>
<name>GitHub Packages</name>
<url>https://maven.pkg.github.com/jessy1237/dwarfcraft</url>
</repository>
</distributionManagement>
</project>
133 changes: 69 additions & 64 deletions src/main/java/com/jessy1237/dwarfcraft/DwarfCraft.java
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@

package com.jessy1237.dwarfcraft;

import java.util.Objects;
import java.util.logging.Level;

import org.bukkit.ChatColor;
Expand All @@ -25,24 +24,32 @@
import net.milkbowl.vault.chat.Chat;

import com.jessy1237.dwarfcraft.commands.*;
import com.jessy1237.dwarfcraft.data.DataManager;
import com.jessy1237.dwarfcraft.data.ConfigManager;
import com.jessy1237.dwarfcraft.data.DwarfManager;
import com.jessy1237.dwarfcraft.data.RaceManager;
import com.jessy1237.dwarfcraft.data.SkillManager;
import com.jessy1237.dwarfcraft.legacy.DataManager;
import com.jessy1237.dwarfcraft.listeners.*;
import com.jessy1237.dwarfcraft.models.DwarfTrainerTrait;
import com.jessy1237.dwarfcraft.util.Out;
import com.jessy1237.dwarfcraft.util.PlaceholderHook;
import com.jessy1237.dwarfcraft.util.Util;

public class DwarfCraft extends JavaPlugin
{
private NPCRegistry npc_registry;
private ConfigManager config_manager;
private DataManager data_manager;
private CommandManager command_manager;
private DwarfManager dwarf_manager;
private SkillManager skill_manager;
private EffectRegistry effect_registry;
private RaceManager race_manager;
private Out out;
private Util util;
private Chat chat = null;
public boolean isAuraActive = false;
public static int debugMessagesThreshold = 10;
public int debugMessagesThreshold = 5;

private final DwarfInventoryListener inventoryListener = new DwarfInventoryListener( this );
private final DwarfEntityListener entityListener = new DwarfEntityListener( this );
Expand All @@ -57,12 +64,21 @@ public ConfigManager getConfigManager()
return config_manager;
}

@Deprecated
public DataManager getDataManager()
{
return data_manager;
}

public CommandManager getCommandManager() { return command_manager; }
public CommandManager getCommandManager()
{
return command_manager;
}

public DwarfManager getDwarfManager()
{
return dwarf_manager;
}

public SkillManager getSkillManager()
{
Expand Down Expand Up @@ -132,70 +148,59 @@ public void onEnable()
public void onEnable( boolean reload ) {
PluginManager pm = getServer().getPluginManager();
util = new Util( this ); //Need to initialise Util earlier if going to use it in the enabling method
race_manager = new RaceManager( this );
effect_registry = new EffectRegistry();
skill_manager = new SkillManager( this );

if ( !checkDependencies() ) onDisable();
if ( isEnabled() ) {
config_manager = new ConfigManager( this, getDataFolder().getAbsolutePath() );
dwarf_manager = new DwarfManager( this );
race_manager = new RaceManager( this );
effect_registry = new EffectRegistry();
skill_manager = new SkillManager( this );

race_manager.init(); // Races must be loaded before skills for validation
skill_manager.init();

data_manager = new DataManager( this );
data_manager.dbInitialize();
dwarf_manager.init();

command_manager = new CommandManager( this );
out = new Out( this );

// Creates the citizen trait for the DwarfTrainers
if ( !reload )
{
pm.registerEvents( new DwarfPlayerListener( this ), this );
pm.registerEvents( entityListener, this );
pm.registerEvents( new DwarfBlockListener( this ), this );
pm.registerEvents( new DwarfVehicleListener( this ), this );
pm.registerEvents( inventoryListener, this );
pm.registerEvents( new DwarfListener( this ), this );

TraitInfo trainerTrait = TraitInfo.create(DwarfTrainerTrait.class).withName("DwarfTrainer");
CitizensAPI.getTraitFactory().registerTrait(trainerTrait);
}
else
{
util.reloadTrainers();
this.getConfigManager().clearCommands();
}

config_manager = new ConfigManager( this, getDataFolder().getAbsolutePath() );
Registration.init();
race_manager.init(); // Races must be loaded before skills for validation
skill_manager.init();
getServer().getScheduler().runTaskAsynchronously( this, () -> {
getUtil().removePlayerPrefixes();
for (Player player : getServer().getOnlinePlayers()) {
//getUtil().setPlayerPrefix(player); //TODO
}
});

data_manager = new DataManager( this, config_manager.dbType );
data_manager.dbInitialize();
command_manager.init();

command_manager = new CommandManager( this );
out = new Out( this );

// Creates the citizen trait for the DwarfTrainers
if ( !reload )
{
pm.registerEvents( new DwarfPlayerListener( this ), this );
pm.registerEvents( entityListener, this );
pm.registerEvents( new DwarfBlockListener( this ), this );
pm.registerEvents( new DwarfVehicleListener( this ), this );
pm.registerEvents( inventoryListener, this );
pm.registerEvents( new DwarfListener( this ), this );

TraitInfo trainerTrait = TraitInfo.create(DwarfTrainerTrait.class).withName("DwarfTrainer");
CitizensAPI.getTraitFactory().registerTrait(trainerTrait);
}
else
{
util.reloadTrainers();
this.getConfigManager().clearCommands();
}
getUtil().consoleLog( String.format( "%s %s is enabled!", getDescription().getName(), getDescription().getVersion()), ChatColor.GREEN );

getServer().getScheduler().runTaskAsynchronously( this, () -> {
getUtil().removePlayerPrefixes();
for (Player player : getServer().getOnlinePlayers()) {
getUtil().setPlayerPrefix(player);
}
});

if ( isEnabled() ) {
Objects.requireNonNull(this.getCommand("dwarfcraft")).setExecutor( new DwarfCommandExecutor( this ) );
Objects.requireNonNull(this.getCommand("dwarfcraft")).setTabCompleter( new DwarfCommandExecutor( this ) );
command_manager.registerCommand( new CommandSkillSheet( "skillsheet", this ) );
command_manager.registerCommand( new CommandTutorial( "tutorial", this ) );
command_manager.registerCommand( new CommandInfo( "info", this ) );
command_manager.registerCommand( new CommandSkill( "skill", this ) );
command_manager.registerCommand( new CommandRace( "race", this ) );
command_manager.registerCommand( new CommandHelp( "help", this ) );
command_manager.registerCommand( new CommandDebug( "debug", this ) );
command_manager.registerCommand( new CommandList( "list", this ) );
command_manager.registerCommand( new CommandSetSkill( "set_skill", this ) );
command_manager.registerCommand( new CommandCreate( "create", this ) );
command_manager.registerCommand( new CommandReload( "reload", this ) );
// Log warning if the build is a Snapshot/Development build
if ( this.getDescription().getVersion().contains("-SNAPSHOT") )
getUtil().consoleLog( "*** WARNING: This is a development build. Please keep backups and update frequently. ***", Level.SEVERE );
}

getUtil().consoleLog( String.format( "%s %s is enabled!", getDescription().getName(), getDescription().getVersion()), ChatColor.GREEN );

// Log warning if the build is a Snapshot/Development build
if ( this.getDescription().getVersion().contains("-SNAPSHOT") )
getUtil().consoleLog( "*** WARNING: This is a development build. Please keep backups and update frequently. ***", Level.SEVERE );
}

private boolean checkDependencies() {
Expand All @@ -208,7 +213,7 @@ private boolean checkDependencies() {
}

if ( setupChat() )
getUtil().consoleLog( "Success! Hooked into a Vault chat plugin!", ChatColor.GREEN );
getUtil().consoleLog( "Hooked into a Vault chat plugin!", ChatColor.GREEN );

if ( pm.getPlugin( "Citizens" ) == null || !pm.getPlugin( "Citizens" ).isEnabled() )
{
Expand All @@ -217,13 +222,13 @@ private boolean checkDependencies() {
return false;
}

getUtil().consoleLog( "Success! Hooked into Citizens!", ChatColor.GREEN );
getUtil().consoleLog( "Hooked into Citizens!", ChatColor.GREEN );
npc_registry = CitizensAPI.getNPCRegistry();

if ( pm.getPlugin( "PlaceholderAPI" ) != null )
{
new PlaceholderHook().register();
getUtil().consoleLog( "Success! Hooked into PlaceholderAPI!", ChatColor.GREEN );
getUtil().consoleLog( "Hooked into PlaceholderAPI!", ChatColor.GREEN );
}

return true;
Expand Down
Loading