mirror of
https://github.com/EssentialsX/Essentials.git
synced 2024-10-18 01:15:10 +02:00
Merge remote branch 'remotes/ess/master' into essrelease
This commit is contained in:
commit
eb71097546
0
Essentials/src/com/earth2me/essentials/DescParseTickFormat.java
Executable file → Normal file
0
Essentials/src/com/earth2me/essentials/DescParseTickFormat.java
Executable file → Normal file
@ -3,6 +3,7 @@ package com.earth2me.essentials;
|
|||||||
import java.net.InetSocketAddress;
|
import java.net.InetSocketAddress;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
import org.bukkit.Achievement;
|
import org.bukkit.Achievement;
|
||||||
@ -725,4 +726,22 @@ public class OfflinePlayer implements Player
|
|||||||
{
|
{
|
||||||
throw new UnsupportedOperationException("Not supported yet.");
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getTicksLived()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setTicksLived(int i)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> serialize()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -755,5 +755,23 @@ public class PlayerWrapper implements Player
|
|||||||
{
|
{
|
||||||
return base.getPlayerListName();
|
return base.getPlayerListName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getTicksLived()
|
||||||
|
{
|
||||||
|
return base.getTicksLived();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setTicksLived(int i)
|
||||||
|
{
|
||||||
|
base.setTicksLived(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<String, Object> serialize()
|
||||||
|
{
|
||||||
|
return base.serialize();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
0
Essentials/src/com/earth2me/essentials/commands/Commandptime.java
Executable file → Normal file
0
Essentials/src/com/earth2me/essentials/commands/Commandptime.java
Executable file → Normal file
0
Essentials/src/com/earth2me/essentials/commands/Commandtime.java
Executable file → Normal file
0
Essentials/src/com/earth2me/essentials/commands/Commandtime.java
Executable file → Normal file
@ -3,7 +3,7 @@ name: Essentials
|
|||||||
main: com.earth2me.essentials.Essentials
|
main: com.earth2me.essentials.Essentials
|
||||||
# Note to developers: This next line cannot change, or the automatic versioning system will break.
|
# Note to developers: This next line cannot change, or the automatic versioning system will break.
|
||||||
version: TeamCity
|
version: TeamCity
|
||||||
website: http://www.earth2me.net:8001/
|
website: http://ci.earth2me.net/
|
||||||
description: Provides an essential, core set of commands for Bukkit.
|
description: Provides an essential, core set of commands for Bukkit.
|
||||||
authors: [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits]
|
authors: [Zenexer, ementalo, Aelux, Brettflan, KimKandor, snowleo, ceulemans, Xeology, KHobbits]
|
||||||
commands:
|
commands:
|
||||||
|
@ -34,6 +34,9 @@ v 1.3:
|
|||||||
(for all worlds named in config.yml)
|
(for all worlds named in config.yml)
|
||||||
- Attempt to stop GM wiping groups/users yml's on a bad shut down.
|
- Attempt to stop GM wiping groups/users yml's on a bad shut down.
|
||||||
- Added event handling to manage new world creation at runtime.
|
- Added event handling to manage new world creation at runtime.
|
||||||
- Added the ability to handle unknown worlds at server start.
|
- Added the ability to handle unknown worlds at server start.
|
||||||
(GM will create the data files for any worlds it finds which are not in the config.yml)
|
(GM will create the data files for any worlds it finds which are not in the config.yml)
|
||||||
- Fix for Bukkit passing a null To location on a player portaling.
|
- Fix for Bukkit passing a null To location on a player Portaling
|
||||||
|
- Fixed manudelsub not correctly selecting the group to remove.
|
||||||
|
- Added two new permission nodes - groupmanager.notify.self & groupmanager.notify.other
|
||||||
|
These allow players/admins to be notified when players are moved between groups.
|
@ -18,5 +18,5 @@ settings:
|
|||||||
- world_nether
|
- world_nether
|
||||||
- world2
|
- world2
|
||||||
- world3
|
- world3
|
||||||
world4:
|
# world4:
|
||||||
- world5
|
# - world5
|
@ -8,6 +8,7 @@ groups:
|
|||||||
- essentials.motd
|
- essentials.motd
|
||||||
- essentials.rules
|
- essentials.rules
|
||||||
- essentials.spawn
|
- essentials.spawn
|
||||||
|
- groupmanager.notify.self
|
||||||
inheritance: []
|
inheritance: []
|
||||||
info:
|
info:
|
||||||
prefix: '&e'
|
prefix: '&e'
|
||||||
@ -119,6 +120,7 @@ groups:
|
|||||||
- groupmanager.manuadd
|
- groupmanager.manuadd
|
||||||
- groupmanager.manudel
|
- groupmanager.manudel
|
||||||
- groupmanager.manwhois
|
- groupmanager.manwhois
|
||||||
|
- groupmanager.notify.other
|
||||||
inheritance:
|
inheritance:
|
||||||
- builder
|
- builder
|
||||||
info:
|
info:
|
||||||
|
@ -28,6 +28,7 @@ import org.anjocaido.groupmanager.events.GMWorldListener;
|
|||||||
import org.anjocaido.groupmanager.utils.GMLoggerHandler;
|
import org.anjocaido.groupmanager.utils.GMLoggerHandler;
|
||||||
import org.anjocaido.groupmanager.utils.PermissionCheckResult;
|
import org.anjocaido.groupmanager.utils.PermissionCheckResult;
|
||||||
import org.anjocaido.groupmanager.utils.Tasks;
|
import org.anjocaido.groupmanager.utils.Tasks;
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
@ -159,7 +160,7 @@ public class GroupManager extends JavaPlugin {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
scheduler = new ScheduledThreadPoolExecutor(1);
|
scheduler = new ScheduledThreadPoolExecutor(1);
|
||||||
int minutes = getConfig().getSaveInterval();
|
int minutes = getGMConfig().getSaveInterval();
|
||||||
scheduler.scheduleAtFixedRate(commiter, minutes, minutes, TimeUnit.MINUTES);
|
scheduler.scheduleAtFixedRate(commiter, minutes, minutes, TimeUnit.MINUTES);
|
||||||
GroupManager.logger.info("Scheduled Data Saving is set for every " + minutes + " minutes!");
|
GroupManager.logger.info("Scheduled Data Saving is set for every " + minutes + " minutes!");
|
||||||
}
|
}
|
||||||
@ -236,7 +237,7 @@ public class GroupManager extends JavaPlugin {
|
|||||||
* @param cmd
|
* @param cmd
|
||||||
* @param args
|
* @param args
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings({"null", "deprecation"})
|
@SuppressWarnings({"deprecation"})
|
||||||
@Override
|
@Override
|
||||||
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
|
public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
|
||||||
boolean playerCanDo = false;
|
boolean playerCanDo = false;
|
||||||
@ -478,6 +479,12 @@ public class GroupManager extends JavaPlugin {
|
|||||||
} else {
|
} else {
|
||||||
auxUser = dataHolder.getUser(args[0]);
|
auxUser = dataHolder.getUser(args[0]);
|
||||||
}
|
}
|
||||||
|
auxGroup = dataHolder.getGroup(args[1]);
|
||||||
|
if (auxGroup == null) {
|
||||||
|
sender.sendMessage(ChatColor.RED + "Group not found!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
//VALIDANDO PERMISSAO
|
//VALIDANDO PERMISSAO
|
||||||
if (!isConsole && !isOpOverride && (senderGroup != null ? permissionHandler.inGroup(auxUser.getName(), senderGroup.getName()) : false)) {
|
if (!isConsole && !isOpOverride && (senderGroup != null ? permissionHandler.inGroup(auxUser.getName(), senderGroup.getName()) : false)) {
|
||||||
sender.sendMessage(ChatColor.RED + "Can't modify player with same permissions than you, or higher.");
|
sender.sendMessage(ChatColor.RED + "Can't modify player with same permissions than you, or higher.");
|
||||||
@ -1745,11 +1752,36 @@ public class GroupManager extends JavaPlugin {
|
|||||||
return false;
|
return false;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send confirmation of a group change.
|
||||||
|
* using permission nodes...
|
||||||
|
*
|
||||||
|
* groupmanager.notify.self
|
||||||
|
* groupmanager.notify.other
|
||||||
|
*
|
||||||
|
* @param name
|
||||||
|
* @param msg
|
||||||
|
*/
|
||||||
|
public static void notify(String name, String msg) {
|
||||||
|
|
||||||
|
Player player = Bukkit.getServer().getPlayerExact(name);
|
||||||
|
|
||||||
|
for(Player test: Bukkit.getServer().getOnlinePlayers()) {
|
||||||
|
if (!test.equals(player)){
|
||||||
|
if (test.hasPermission("groupmanager.notify.other"))
|
||||||
|
test.sendMessage(ChatColor.YELLOW + name +" was " + msg);
|
||||||
|
} else
|
||||||
|
if ((player != null) && ((player.hasPermission("groupmanager.notify.self")) || (player.hasPermission("groupmanager.notify.other"))))
|
||||||
|
player.sendMessage(ChatColor.YELLOW + "You we're " + msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return the config
|
* @return the config
|
||||||
*/
|
*/
|
||||||
public GMConfiguration getConfig() {
|
public GMConfiguration getGMConfig() {
|
||||||
return config;
|
return config;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/DataUnit.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/DataUnit.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/GroupVariables.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/GroupVariables.java
Executable file → Normal file
@ -119,9 +119,12 @@ public class User extends DataUnit implements Cloneable {
|
|||||||
group = getDataSource().getGroup(group.getName());
|
group = getDataSource().getGroup(group.getName());
|
||||||
this.group = group.getName();
|
this.group = group.getName();
|
||||||
flagAsChanged();
|
flagAsChanged();
|
||||||
if (GroupManager.isLoaded())
|
if (GroupManager.isLoaded()) {
|
||||||
if (GroupManager.BukkitPermissions.player_join = false)
|
if (GroupManager.BukkitPermissions.player_join = false)
|
||||||
GroupManager.BukkitPermissions.updateAllPlayers();
|
GroupManager.BukkitPermissions.updateAllPlayers();
|
||||||
|
|
||||||
|
GroupManager.notify(this.getName(), String.format(" moved to the group %s.", group.getName()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addSubGroup(Group subGroup) {
|
public void addSubGroup(Group subGroup) {
|
||||||
|
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/UserVariables.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/UserVariables.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/Variables.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/data/Variables.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/OverloadedWorldHolder.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/dataholder/OverloadedWorldHolder.java
Executable file → Normal file
@ -111,7 +111,7 @@ public class WorldsHolder {
|
|||||||
@SuppressWarnings("rawtypes")
|
@SuppressWarnings("rawtypes")
|
||||||
public void mirrorSetUp() {
|
public void mirrorSetUp() {
|
||||||
mirrors.clear();
|
mirrors.clear();
|
||||||
Map<String, Object> mirrorsMap = plugin.getConfig().getMirrorsMap();
|
Map<String, Object> mirrorsMap = plugin.getGMConfig().getMirrorsMap();
|
||||||
if (mirrorsMap != null) {
|
if (mirrorsMap != null) {
|
||||||
for (String source : mirrorsMap.keySet()) {
|
for (String source : mirrorsMap.keySet()) {
|
||||||
// Make sure all non mirrored worlds have a set of data files.
|
// Make sure all non mirrored worlds have a set of data files.
|
||||||
|
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/GMLoggerHandler.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/GMLoggerHandler.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/GroupManagerPermissions.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/GroupManagerPermissions.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/PermissionCheckResult.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/PermissionCheckResult.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java
Executable file → Normal file
0
EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java
Executable file → Normal file
@ -18,4 +18,6 @@ The default line ending is LF.
|
|||||||
|
|
||||||
To build all jars, select the BuildAll project and build that. You'll find all jars inside the dist/lib folder of the BuildAll project.
|
To build all jars, select the BuildAll project and build that. You'll find all jars inside the dist/lib folder of the BuildAll project.
|
||||||
|
|
||||||
If you create pull requests, always make them for the master branch.
|
If you create pull requests, always make them for the master branch.
|
||||||
|
|
||||||
|
The essentials bug tracker can be found at http://www.assembla.com/spaces/essentials/tickets
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue
Block a user