mirror of
https://github.com/essentials/Essentials.git
synced 2025-08-09 08:06:54 +02:00
Adding starter/newbie kit to EssentialsSpawn
Optimization to EssentialsSpawn join event.
This commit is contained in:
@@ -1,12 +1,13 @@
|
||||
package com.earth2me.essentials.spawn;
|
||||
|
||||
import com.earth2me.essentials.*;
|
||||
import static com.earth2me.essentials.I18n._;
|
||||
import com.earth2me.essentials.IEssentials;
|
||||
import com.earth2me.essentials.OfflinePlayer;
|
||||
import com.earth2me.essentials.User;
|
||||
import com.earth2me.essentials.textreader.IText;
|
||||
import com.earth2me.essentials.textreader.KeywordReplacer;
|
||||
import com.earth2me.essentials.textreader.SimpleTextPager;
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.Map;
|
||||
import java.util.logging.Level;
|
||||
import java.util.logging.Logger;
|
||||
import org.bukkit.Bukkit;
|
||||
@@ -67,13 +68,14 @@ public class EssentialsSpawnPlayerListener implements Listener
|
||||
|
||||
public void onPlayerJoin(final PlayerJoinEvent event)
|
||||
{
|
||||
final User user = ess.getUser(event.getPlayer());
|
||||
|
||||
if (user.hasPlayedBefore())
|
||||
if (event.getPlayer().hasPlayedBefore())
|
||||
{
|
||||
LOGGER.log(Level.FINE, "Old player join");
|
||||
return;
|
||||
}
|
||||
|
||||
final User user = ess.getUser(event.getPlayer());
|
||||
|
||||
if (!"none".equalsIgnoreCase(ess.getSettings().getNewbieSpawn()))
|
||||
{
|
||||
ess.scheduleSyncDelayedTask(new NewPlayerTeleport(user), 1L);
|
||||
@@ -86,6 +88,21 @@ public class EssentialsSpawnPlayerListener implements Listener
|
||||
ess.broadcastMessage(user, pager.getString(0));
|
||||
}
|
||||
|
||||
final String kitName = ess.getSettings().getNewPlayerKit();
|
||||
if (!kitName.isEmpty())
|
||||
{
|
||||
try
|
||||
{
|
||||
final Map<String, Object> kit = ess.getSettings().getKit(kitName.toLowerCase(Locale.ENGLISH));
|
||||
final List<String> items = Kit.getItems(user, kit);
|
||||
Kit.expandItems(ess, user, items);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LOGGER.log(Level.WARNING, ex.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
LOGGER.log(Level.FINE, "New player join");
|
||||
}
|
||||
|
||||
@@ -109,7 +126,7 @@ public class EssentialsSpawnPlayerListener implements Listener
|
||||
|
||||
try
|
||||
{
|
||||
Location spawn = spawns.getSpawn(ess.getSettings().getNewbieSpawn());
|
||||
final Location spawn = spawns.getSpawn(ess.getSettings().getNewbieSpawn());
|
||||
if (spawn != null)
|
||||
{
|
||||
user.getTeleport().now(spawn, false, TeleportCause.PLUGIN);
|
||||
|
Reference in New Issue
Block a user