Dont automatically register Actives

This commit is contained in:
Magnus Ulf 2018-12-24 00:45:59 +01:00
parent a85b2b9f2d
commit c2a47926c6

View File

@ -5,10 +5,45 @@ import com.massivecraft.factions.adapter.BoardAdapter;
import com.massivecraft.factions.adapter.BoardMapAdapter;
import com.massivecraft.factions.adapter.RelAdapter;
import com.massivecraft.factions.adapter.TerritoryAccessAdapter;
import com.massivecraft.factions.chat.ChatActive;
import com.massivecraft.factions.chat.modifier.ChatModifierLc;
import com.massivecraft.factions.chat.modifier.ChatModifierLp;
import com.massivecraft.factions.chat.modifier.ChatModifierParse;
import com.massivecraft.factions.chat.modifier.ChatModifierRp;
import com.massivecraft.factions.chat.modifier.ChatModifierUc;
import com.massivecraft.factions.chat.modifier.ChatModifierUcf;
import com.massivecraft.factions.chat.tag.ChatTagName;
import com.massivecraft.factions.chat.tag.ChatTagNameforce;
import com.massivecraft.factions.chat.tag.ChatTagRelcolor;
import com.massivecraft.factions.chat.tag.ChatTagRole;
import com.massivecraft.factions.chat.tag.ChatTagRoleprefix;
import com.massivecraft.factions.chat.tag.ChatTagRoleprefixforce;
import com.massivecraft.factions.chat.tag.ChatTagTitle;
import com.massivecraft.factions.cmd.CmdFactions;
import com.massivecraft.factions.cmd.type.TypeFactionChunkChangeType;
import com.massivecraft.factions.cmd.type.TypeRel;
import com.massivecraft.factions.engine.EngineCanCombatHappen;
import com.massivecraft.factions.engine.EngineChat;
import com.massivecraft.factions.engine.EngineChunkChange;
import com.massivecraft.factions.engine.EngineCleanInactivity;
import com.massivecraft.factions.engine.EngineDenyCommands;
import com.massivecraft.factions.engine.EngineEcon;
import com.massivecraft.factions.engine.EngineExploit;
import com.massivecraft.factions.engine.EngineFlagEndergrief;
import com.massivecraft.factions.engine.EngineFlagExplosion;
import com.massivecraft.factions.engine.EngineFlagFireSpread;
import com.massivecraft.factions.engine.EngineFlagSpawn;
import com.massivecraft.factions.engine.EngineFlagZombiegrief;
import com.massivecraft.factions.engine.EngineLastActivity;
import com.massivecraft.factions.engine.EngineMotd;
import com.massivecraft.factions.engine.EngineMoveChunk;
import com.massivecraft.factions.engine.EnginePermBuild;
import com.massivecraft.factions.engine.EnginePlayerData;
import com.massivecraft.factions.engine.EnginePower;
import com.massivecraft.factions.engine.EngineSeeChunk;
import com.massivecraft.factions.engine.EngineShow;
import com.massivecraft.factions.engine.EngineTeleportHomeOnDeath;
import com.massivecraft.factions.engine.EngineTerritoryShield;
import com.massivecraft.factions.engine.EngineVisualizations;
import com.massivecraft.factions.entity.Board;
import com.massivecraft.factions.entity.BoardColl;
import com.massivecraft.factions.entity.FactionColl;
@ -16,10 +51,23 @@ import com.massivecraft.factions.entity.MConfColl;
import com.massivecraft.factions.entity.MFlagColl;
import com.massivecraft.factions.entity.MPermColl;
import com.massivecraft.factions.entity.MPlayerColl;
import com.massivecraft.factions.entity.migrator.MigratorFaction001Invitations;
import com.massivecraft.factions.entity.migrator.MigratorFaction002Ranks;
import com.massivecraft.factions.entity.migrator.MigratorMConf001EnumerationUtil;
import com.massivecraft.factions.entity.migrator.MigratorMConf002CleanInactivity;
import com.massivecraft.factions.entity.migrator.MigratorMConf003CleanInactivity;
import com.massivecraft.factions.entity.migrator.MigratorMConf004Rank;
import com.massivecraft.factions.entity.migrator.MigratorMPlayer001Ranks;
import com.massivecraft.factions.event.EventFactionsChunkChangeType;
import com.massivecraft.factions.integration.V18.IntegrationV18;
import com.massivecraft.factions.integration.V19.IntegrationV19;
import com.massivecraft.factions.integration.lwc.IntegrationLwc;
import com.massivecraft.factions.integration.worldguard.IntegrationWorldGuard;
import com.massivecraft.factions.mixin.PowerMixin;
import com.massivecraft.factions.task.TaskEconLandReward;
import com.massivecraft.factions.task.TaskFlagPermCreate;
import com.massivecraft.factions.task.TaskPlayerPowerUpdate;
import com.massivecraft.massivecore.MassivePlugin;
import com.massivecraft.massivecore.collections.MassiveList;
import com.massivecraft.massivecore.command.type.RegistryType;
import com.massivecraft.massivecore.store.migrator.MigratorUtil;
import com.massivecraft.massivecore.util.MUtil;
@ -78,10 +126,25 @@ public class Factions extends MassivePlugin
// Activate
this.activateAuto();
this.activate(this.getClassesActive("chat", ChatActive.class));
this.activate(getClassesActiveChat());
}
// These are overriden because the reflection trick was buggy and didn't work on all systems
@Override
public List<Class<?>> getClassesActiveMigrators()
{
return MUtil.list(
MigratorFaction001Invitations.class,
MigratorFaction002Ranks.class,
MigratorMConf001EnumerationUtil.class,
MigratorMConf002CleanInactivity.class,
MigratorMConf003CleanInactivity.class,
MigratorMConf004Rank.class,
MigratorMPlayer001Ranks.class
);
}
@Override
public List<Class<?>> getClassesActiveColls()
{
@ -93,7 +156,7 @@ public class Factions extends MassivePlugin
// The Board could currently be activated in any order but the current placement is an educated guess.
// In the future we might want to find all chunks from the faction or something similar.
// We also have the /f access system where the player can be granted specific access, possibly supporting the idea of such a reverse index.
return new MassiveList<Class<?>>(
return MUtil.list(
MConfColl.class,
MFlagColl.class,
MPermColl.class,
@ -103,17 +166,98 @@ public class Factions extends MassivePlugin
);
}
@Override
public List<Class<?>> getClassesActiveCommands()
{
return MUtil.list(
CmdFactions.class
);
}
@Override
public List<Class<?>> getClassesActiveIntegrations()
{
return MUtil.list(
IntegrationV18.class,
IntegrationV19.class,
IntegrationLwc.class,
IntegrationWorldGuard.class
);
}
@Override
public List<Class<?>> getClassesActiveTasks()
{
return MUtil.list(
TaskEconLandReward.class,
TaskFlagPermCreate.class,
TaskPlayerPowerUpdate.class
);
}
@Override
public List<Class<?>> getClassesActiveEngines()
{
List<Class<?>> ret = super.getClassesActiveEngines();
ret.remove(EngineEcon.class);
ret.add(EngineEcon.class);
return ret;
return MUtil.list(
EngineCanCombatHappen.class,
EngineChat.class,
EngineChunkChange.class,
EngineCleanInactivity.class,
EngineDenyCommands.class,
EngineExploit.class,
EngineFlagEndergrief.class,
EngineFlagExplosion.class,
EngineFlagFireSpread.class,
EngineFlagSpawn.class,
EngineFlagZombiegrief.class,
EngineLastActivity.class,
EngineMotd.class,
EngineMoveChunk.class,
EnginePermBuild.class,
EnginePlayerData.class,
EnginePower.class,
EngineSeeChunk.class,
EngineShow.class,
EngineTeleportHomeOnDeath.class,
EngineTerritoryShield.class,
EngineVisualizations.class,
EngineEcon.class
);
}
@Override
public List<Class<?>> getClassesActiveMixins()
{
return MUtil.list(
PowerMixin.class
);
}
@Override
public List<Class<?>> getClassesActiveTests()
{
return MUtil.list();
}
public List<Class<?>> getClassesActiveChat()
{
return MUtil.list(
ChatModifierLc.class,
ChatModifierLp.class,
ChatModifierParse.class,
ChatModifierRp.class,
ChatModifierUc.class,
ChatModifierUcf.class,
ChatTagName.class,
ChatTagNameforce.class,
ChatTagRelcolor.class,
ChatTagRole.class,
ChatTagRoleprefix.class,
ChatTagRoleprefixforce.class,
ChatTagTitle.class
);
}
@Override
public GsonBuilder getGsonBuilder()
{