mirror of
https://github.com/sekwah41/Advanced-Portals.git
synced 2025-02-16 12:21:20 +01:00
feat: add a warning for no name being included
This commit is contained in:
parent
cc9fa203cb
commit
106a0ae8b4
@ -8,6 +8,7 @@ import com.sekwah.advancedportals.core.serializeddata.DataTag;
|
||||
import com.sekwah.advancedportals.core.permissions.PortalPermissions;
|
||||
import com.sekwah.advancedportals.core.portal.AdvancedPortal;
|
||||
import com.sekwah.advancedportals.core.services.PortalServices;
|
||||
import com.sekwah.advancedportals.core.util.InfoLogger;
|
||||
import com.sekwah.advancedportals.core.util.Lang;
|
||||
import com.sekwah.advancedportals.core.util.TagReader;
|
||||
|
||||
@ -20,6 +21,9 @@ public class CreatePortalSubCommand implements SubCommand {
|
||||
@Inject
|
||||
PortalServices portalServices;
|
||||
|
||||
@Inject
|
||||
InfoLogger infoLogger;
|
||||
|
||||
@Override
|
||||
public void onCommand(CommandSenderContainer sender, String[] args) {
|
||||
if(args.length > 1) {
|
||||
@ -30,7 +34,10 @@ public class CreatePortalSubCommand implements SubCommand {
|
||||
}
|
||||
ArrayList<DataTag> portalTags = TagReader.getTagsFromArgs(args);
|
||||
|
||||
AdvancedPortal portal = portalServices.createPortal(args[1], player, portalTags);
|
||||
// Find the tag with the "name" NAME
|
||||
DataTag nameTag = portalTags.stream().findFirst().filter(tag -> tag.NAME.equals("name")).orElse(null);
|
||||
|
||||
AdvancedPortal portal = portalServices.createPortal(nameTag == null ? null : nameTag.VALUES[0], player, portalTags);
|
||||
if(portal != null) {
|
||||
sender.sendMessage(Lang.translate("messageprefix.positive") + Lang.translate("command.create.complete"));
|
||||
sender.sendMessage(Lang.translate("command.create.tags"));
|
||||
@ -49,7 +56,7 @@ public class CreatePortalSubCommand implements SubCommand {
|
||||
sender.sendMessage(Lang.translate("messageprefix.negative") + Lang.translate("command.create.error"));
|
||||
}
|
||||
else {
|
||||
sender.sendMessage(Lang.translate("messageprefix.positive") + Lang.translate("command.error.noname"));
|
||||
sender.sendMessage(Lang.translate("messageprefix.negative") + Lang.translate("command.error.notags"));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3,6 +3,7 @@ package com.sekwah.advancedportals.core.registry;
|
||||
import com.google.inject.Inject;
|
||||
import com.sekwah.advancedportals.core.AdvancedPortalsCore;
|
||||
import com.sekwah.advancedportals.core.effect.WarpEffect;
|
||||
import com.sekwah.advancedportals.core.util.InfoLogger;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@ -20,6 +21,9 @@ public class WarpEffectRegistry {
|
||||
@Inject
|
||||
private AdvancedPortalsCore portalsCore;
|
||||
|
||||
@Inject
|
||||
private InfoLogger infoLogger;
|
||||
|
||||
/**
|
||||
* Register a new warp effect.
|
||||
*
|
||||
@ -61,7 +65,7 @@ public class WarpEffectRegistry {
|
||||
list = this.visualEffects;
|
||||
break;
|
||||
default:
|
||||
this.portalsCore.getInfoLogger().logWarning(type.toString()
|
||||
this.infoLogger.logWarning(type.toString()
|
||||
+ " effect type not recognised");
|
||||
return null;
|
||||
}
|
||||
@ -69,7 +73,7 @@ public class WarpEffectRegistry {
|
||||
return list.get(name);
|
||||
}
|
||||
else{
|
||||
this.portalsCore.getInfoLogger().logWarning("No effect of type:"
|
||||
this.infoLogger.logWarning("No effect of type:"
|
||||
+ type.toString() + " was registered with the name: " + name);
|
||||
return null;
|
||||
}
|
||||
|
@ -1,10 +1,13 @@
|
||||
package com.sekwah.advancedportals.core.services;
|
||||
|
||||
import com.google.common.collect.ImmutableList;
|
||||
import com.google.inject.Inject;
|
||||
import com.sekwah.advancedportals.core.connector.containers.PlayerContainer;
|
||||
import com.sekwah.advancedportals.core.serializeddata.DataTag;
|
||||
import com.sekwah.advancedportals.core.serializeddata.PlayerLocation;
|
||||
import com.sekwah.advancedportals.core.portal.AdvancedPortal;
|
||||
import com.sekwah.advancedportals.core.util.InfoLogger;
|
||||
import com.sekwah.advancedportals.core.util.Lang;
|
||||
|
||||
import javax.inject.Singleton;
|
||||
import java.util.ArrayList;
|
||||
@ -13,6 +16,10 @@ import java.util.Map;
|
||||
|
||||
@Singleton
|
||||
public class PortalServices {
|
||||
|
||||
@Inject
|
||||
InfoLogger infoLogger;
|
||||
|
||||
public void loadPortals() {
|
||||
|
||||
}
|
||||
@ -34,6 +41,11 @@ public class PortalServices {
|
||||
}
|
||||
|
||||
public AdvancedPortal createPortal(String name, PlayerContainer player, ArrayList<DataTag> portalTags) {
|
||||
if(name == null){
|
||||
infoLogger.logWarning("Attempted to make a portal with no name");
|
||||
player.sendMessage(Lang.translate("messageprefix.negative") + Lang.translate("command.error.noname"));
|
||||
return null;
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
@ -102,6 +102,7 @@ portal.error.selection.differentworlds=Both the selected points need to be in th
|
||||
desti.info.noargs=&cNo tags were given
|
||||
|
||||
command.error.noname= No name has been given.
|
||||
command.error.notags= No tags have been given. You need to include at least &ename:(name)&c.
|
||||
|
||||
desti.error.takenname=The name given for the portal is already taken.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user