22
33import com .dumptruckman .minecraft .util .Logging ;
44import org .jvnet .hk2 .annotations .Contract ;
5+ import org .mvplugins .multiverse .core .world .LoadedMultiverseWorld ;
56import org .mvplugins .multiverse .core .world .WorldManager ;
67import org .mvplugins .multiverse .external .jetbrains .annotations .NotNull ;
78import org .mvplugins .multiverse .inventories .MultiverseInventories ;
2021import java .util .LinkedHashMap ;
2122import java .util .List ;
2223import java .util .Map ;
24+ import java .util .stream .Collectors ;
2325
2426/**
2527 * Abstract implementation of GroupManager with no persistence of groups.
@@ -86,8 +88,9 @@ public List<WorldGroup> getGroupsForWorld(String worldName) {
8688 * {@inheritDoc}
8789 */
8890 @ Override
89- public boolean hasGroup (String worldName ) {
90- return !getGroupsForWorld (worldName ).isEmpty ();
91+ public boolean hasConfiguredGroup (String worldName ) {
92+ return groupNamesMap .values ().stream ()
93+ .anyMatch (worldGroup -> worldGroup .getWorlds ().contains (worldName ));
9194 }
9295
9396 /**
@@ -104,9 +107,6 @@ public void updateGroup(final WorldGroup worldGroup) {
104107 getGroupNames ().put (worldGroup .getName ().toLowerCase (), worldGroup );
105108 }
106109
107- protected void persistGroup (final WorldGroup worldGroup ) {
108- }
109-
110110 /**
111111 * {@inheritDoc}
112112 */
@@ -134,24 +134,24 @@ public void createDefaultGroup() {
134134 if (getGroup (DEFAULT_GROUP_NAME ) != null ) {
135135 return ;
136136 }
137- World defaultWorld = Bukkit .getWorlds ().get (0 );
137+ World defaultWorld = worldManager .getDefaultWorld ()
138+ .flatMap (LoadedMultiverseWorld ::getBukkitWorld )
139+ .fold (() -> Bukkit .getWorlds ().get (0 ), world -> world );
138140 World defaultNether = Bukkit .getWorld (defaultWorld .getName () + "_nether" );
139141 World defaultEnd = Bukkit .getWorld (defaultWorld .getName () + "_the_end" );
140142 WorldGroup worldGroup = new WorldGroup (this , profileContainerStoreProvider , DEFAULT_GROUP_NAME );
141143 worldGroup .getShares ().mergeShares (Sharables .allOf ());
142144 worldGroup .addWorld (defaultWorld );
143- StringBuilder worlds = new StringBuilder ().append (defaultWorld .getName ());
144145 if (defaultNether != null ) {
145146 worldGroup .addWorld (defaultNether );
146- worlds .append (", " ).append (defaultNether .getName ());
147147 }
148148 if (defaultEnd != null ) {
149149 worldGroup .addWorld (defaultEnd );
150- worlds .append (", " ).append (defaultEnd .getName ());
151150 }
152151 updateGroup (worldGroup );
153152 inventoriesConfig .save ();
154- Logging .info ("Created a default group for you containing all of your default worlds: " + worlds .toString ());
153+ Logging .info ("Created a default group for you containing all of your default worlds: "
154+ + String .join (", " , worldGroup .getWorlds ()));
155155 }
156156
157157 /**
0 commit comments