From d4cb185c34790bc2f63920122bf7e812ef8cceec Mon Sep 17 00:00:00 2001
From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com>
Date: Fri, 31 Jan 2020 20:35:57 +0000
Subject: [PATCH] Removed pointless user and master access levels.
---
.../dist/game/config/AccessLevels.xml | 3 +-
.../dist/game/config/main/Access.ini | 30 ----
.../java/org/l2jmobius/Config.java | 12 --
.../gameserver/datatables/xml/AdminData.java | 42 +----
.../l2jmobius/gameserver/model/Inventory.java | 1 -
.../gameserver/model/PlayerInventory.java | 2 +-
.../model/actor/instance/PlayerInstance.java | 155 ++++--------------
.../network/clientpackets/EnterWorld.java | 10 --
.../gameserver/network/serverpackets/Die.java | 22 +--
9 files changed, 43 insertions(+), 234 deletions(-)
diff --git a/L2J_Mobius_C6_Interlude/dist/game/config/AccessLevels.xml b/L2J_Mobius_C6_Interlude/dist/game/config/AccessLevels.xml
index de35bfa959..7dcc265ebb 100644
--- a/L2J_Mobius_C6_Interlude/dist/game/config/AccessLevels.xml
+++ b/L2J_Mobius_C6_Interlude/dist/game/config/AccessLevels.xml
@@ -1,10 +1,11 @@
-
+
+
\ No newline at end of file
diff --git a/L2J_Mobius_C6_Interlude/dist/game/config/main/Access.ini b/L2J_Mobius_C6_Interlude/dist/game/config/main/Access.ini
index e4d93df4e9..e986a6e126 100644
--- a/L2J_Mobius_C6_Interlude/dist/game/config/main/Access.ini
+++ b/L2J_Mobius_C6_Interlude/dist/game/config/main/Access.ini
@@ -3,43 +3,13 @@
# ---------------------------------------------------------------------------
-# ---------------------------------------------------------------------------
-# Admin Rights
-# ---------------------------------------------------------------------------
# If next switch set to true every created character will have Admin access.
EverybodyHasAdminRights = False
-# This option will set the default AccessLevel for MasterAccess
-# Pls be carefully with that. Chars with this AccessLevel have
-# right to execute every AdminCommand ingame.
-# Default = 100 - Max. 255
-MasterAccessLevel = 100
-
-# This option will set the default AccessLevel for UserAccess
-# Chars with this AccessLevel have user rights
-# Default = 0 - Max. 255
-UserAccessLevel = 0
-
-
-# ---------------------------------------------------------------------------
-# GM Rights
-# ---------------------------------------------------------------------------
# The way //admin panel looks can be "modern" or "classic"
# (default is modern while classic provides more compatibility)
GMAdminMenuStyle = modern
-#Turn on MasterNameColor config.
-MasterNameColorEnabled = True
-
-# This option will set the Default NameColor for MasterAccess
-MasterNameColor = 00CCFF
-
-# Turn on MasterTitleColor config.
-MasterTitleColorEnabled = True
-
-# This option will set the Default TitleColor for MasterAccess
-MasterTitleColor = 00CCFF
-
# Enable GMs to have the glowing aura of a Hero character.
GMHeroAura = False
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/Config.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/Config.java
index 918be0e674..614ef4f129 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/Config.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/Config.java
@@ -112,12 +112,6 @@ public class Config
public static ServerMode SERVER_MODE = ServerMode.NONE;
public static boolean EVERYBODY_HAS_ADMIN_RIGHTS;
- public static int MASTERACCESS_LEVEL;
- public static int USERACCESS_LEVEL;
- public static boolean MASTERACCESS_NAME_COLOR_ENABLED;
- public static boolean MASTERACCESS_TITLE_COLOR_ENABLED;
- public static int MASTERACCESS_NAME_COLOR;
- public static int MASTERACCESS_TITLE_COLOR;
public static boolean SHOW_GM_LOGIN;
public static boolean GM_STARTUP_INVISIBLE;
public static boolean GM_SPECIAL_EFFECT;
@@ -1172,12 +1166,6 @@ public class Config
is.close();
EVERYBODY_HAS_ADMIN_RIGHTS = Boolean.parseBoolean(accessSettings.getProperty("EverybodyHasAdminRights", "false"));
- MASTERACCESS_LEVEL = Integer.parseInt(accessSettings.getProperty("MasterAccessLevel", "1"));
- MASTERACCESS_NAME_COLOR_ENABLED = Boolean.parseBoolean(accessSettings.getProperty("MasterNameColorEnabled", "false"));
- MASTERACCESS_TITLE_COLOR_ENABLED = Boolean.parseBoolean(accessSettings.getProperty("MasterTitleColorEnabled", "false"));
- MASTERACCESS_NAME_COLOR = Integer.decode("0x" + accessSettings.getProperty("MasterNameColor", "00FF00"));
- MASTERACCESS_TITLE_COLOR = Integer.decode("0x" + accessSettings.getProperty("MasterTitleColor", "00FF00"));
- USERACCESS_LEVEL = Integer.parseInt(accessSettings.getProperty("UserAccessLevel", "0"));
GM_STARTUP_AUTO_LIST = Boolean.parseBoolean(accessSettings.getProperty("GMStartupAutoList", "true"));
GM_ADMIN_MENU_STYLE = accessSettings.getProperty("GMAdminMenuStyle", "modern");
GM_HERO_AURA = Boolean.parseBoolean(accessSettings.getProperty("GMHeroAura", "false"));
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/datatables/xml/AdminData.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/datatables/xml/AdminData.java
index f16be23b69..64171ef3b5 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/datatables/xml/AdminData.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/datatables/xml/AdminData.java
@@ -28,7 +28,6 @@ import java.util.logging.Logger;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
-import org.l2jmobius.Config;
import org.l2jmobius.commons.util.IXmlReader;
import org.l2jmobius.gameserver.model.AccessLevel;
import org.l2jmobius.gameserver.model.StatSet;
@@ -45,8 +44,6 @@ public class AdminData implements IXmlReader
{
private static final Logger LOGGER = Logger.getLogger(AdminData.class.getName());
- public AccessLevel _masterAccessLevel;
- public AccessLevel _userAccessLevel;
private final Map _accessLevels = new HashMap<>();
private final Map _adminCommandAccessRights = new HashMap<>();
private final Map _gmList = new ConcurrentHashMap<>();
@@ -60,12 +57,8 @@ public class AdminData implements IXmlReader
public void load()
{
_accessLevels.clear();
- _masterAccessLevel = new AccessLevel(Config.MASTERACCESS_LEVEL, "Master Access", Config.MASTERACCESS_NAME_COLOR, Config.MASTERACCESS_TITLE_COLOR, true, true, true, true, true, true, true, true, true, true, true);
- _userAccessLevel = new AccessLevel(Config.USERACCESS_LEVEL, "User", Integer.decode("0xFFFFFF"), Integer.decode("0xFFFFFF"), false, false, false, true, false, true, true, true, true, true, false);
parseDatapackFile("config/AccessLevels.xml");
LOGGER.info(getClass().getSimpleName() + ": Loaded " + _accessLevels.size() + " access levels.");
- LOGGER.info(getClass().getSimpleName() + ": Master access level is " + Config.MASTERACCESS_LEVEL + ".");
- LOGGER.info(getClass().getSimpleName() + ": User access level is " + Config.USERACCESS_LEVEL + ".");
_adminCommandAccessRights.clear();
parseDatapackFile("config/AdminCommands.xml");
@@ -106,17 +99,7 @@ public class AdminData implements IXmlReader
accessLevel = set.getInt("level");
name = set.getString("name");
- if (accessLevel == Config.USERACCESS_LEVEL)
- {
- LOGGER.info(getClass().getSimpleName() + ": Access level with name " + name + " is using reserved user access level " + Config.USERACCESS_LEVEL + ". Ignoring it...");
- continue;
- }
- else if (accessLevel == Config.MASTERACCESS_LEVEL)
- {
- LOGGER.info(getClass().getSimpleName() + ": Access level with name " + name + " is using reserved master access level " + Config.MASTERACCESS_LEVEL + ". Ignoring it...");
- continue;
- }
- else if (accessLevel < 0)
+ if (accessLevel < 0)
{
LOGGER.info(getClass().getSimpleName() + ": Access level with name " + name + " is using banned access level state(below 0). Ignoring it...");
continue;
@@ -196,7 +179,6 @@ public class AdminData implements IXmlReader
public AccessLevel getAccessLevel(int accessLevelNum)
{
AccessLevel accessLevel = null;
-
synchronized (_accessLevels)
{
accessLevel = _accessLevels.get(accessLevelNum);
@@ -212,7 +194,6 @@ public class AdminData implements IXmlReader
{
return;
}
-
_accessLevels.put(accessLevel, new AccessLevel(accessLevel, "Banned", Integer.decode("0x000000"), Integer.decode("0x000000"), false, false, false, false, false, false, false, false, false, false, false));
}
}
@@ -239,11 +220,6 @@ public class AdminData implements IXmlReader
return false;
}
- if (accessLevel.getLevel() == Config.MASTERACCESS_LEVEL)
- {
- return true;
- }
-
String command = adminCommand;
if (adminCommand.indexOf(' ') != -1)
{
@@ -261,20 +237,13 @@ public class AdminData implements IXmlReader
LOGGER.warning("Admin Access Rights: No rights defined for admin command " + command + ".");
return false;
}
- else if (acar >= accessLevel.getLevel())
- {
- return true;
- }
- else
- {
- return false;
- }
+
+ return accessLevel.getLevel() >= acar;
}
public List getAllGms(boolean includeHidden)
{
final List tmpGmList = new ArrayList<>();
-
for (Entry n : _gmList.entrySet())
{
if (includeHidden || !n.getValue())
@@ -288,7 +257,6 @@ public class AdminData implements IXmlReader
public List getAllGmNames(boolean includeHidden)
{
final List tmpGmList = new ArrayList<>();
-
for (Entry n : _gmList.entrySet())
{
if (!n.getValue())
@@ -387,10 +355,6 @@ public class AdminData implements IXmlReader
}
}
- /**
- * Gets the single instance of AdminTable.
- * @return AccessLevels: the one and only instance of this class
- */
public static AdminData getInstance()
{
return SingletonHolder.INSTANCE;
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/Inventory.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/Inventory.java
index 9a459f3709..69358a49c7 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/Inventory.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/Inventory.java
@@ -1587,7 +1587,6 @@ public abstract class Inventory extends ItemContainer
final int objectId = inv.getInt(1);
item = ItemInstance.restoreFromDb(objectId);
-
if (item == null)
{
continue;
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/PlayerInventory.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/PlayerInventory.java
index efc2a286ad..0749b109c8 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/PlayerInventory.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/PlayerInventory.java
@@ -689,7 +689,7 @@ public class PlayerInventory extends Inventory
}
catch (Exception e)
{
- LOGGER.warning("could not restore inventory: " + e);
+ LOGGER.warning("Could not restore inventory: " + e);
}
return paperdoll;
}
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java
index aca32c5bf3..3529fd33f5 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/model/actor/instance/PlayerInstance.java
@@ -8202,9 +8202,8 @@ public class PlayerInstance extends Playable
}
/**
- * Return true if the PlayerInstance is a GM.
- *
- * @return true, if is gM
+ * Return true if the PlayerInstance is a GM.
+ * @return true, if is GM
*/
public boolean isGM()
{
@@ -8212,37 +8211,7 @@ public class PlayerInstance extends Playable
}
/**
- * Return true if the PlayerInstance is a Administrator.
- *
- * @return true, if is administrator
- */
- public boolean isAdministrator()
- {
- return getAccessLevel().getLevel() == Config.MASTERACCESS_LEVEL;
- }
-
- /**
- * Return true if the PlayerInstance is a User.
- *
- * @return true, if is user
- */
- public boolean isUser()
- {
- return getAccessLevel().getLevel() == Config.USERACCESS_LEVEL;
- }
-
- /**
- * Checks if is normal gm.
- * @return true, if is normal gm
- */
- public boolean isNormalGm()
- {
- return !isAdministrator() && !isUser();
- }
-
- /**
- * Manage the Leave Party task of the PlayerInstance.
- *
+ * Manage the Leave Party task of the PlayerInstance.
*/
public void leaveParty()
{
@@ -8254,8 +8223,7 @@ public class PlayerInstance extends Playable
}
/**
- * Return the _party object of the PlayerInstance.
- *
+ * Return the _party object of the PlayerInstance.
* @return the party
*/
@Override
@@ -8322,49 +8290,37 @@ public class PlayerInstance extends Playable
*/
public void setAccessLevel(int level)
{
- if (level == Config.MASTERACCESS_LEVEL)
+ if (level > 0)
{
LOGGER.warning("Access level " + level + " set for character " + getName() + "! Just a warning ;)");
- _accessLevel = AdminData.getInstance()._masterAccessLevel;
}
- else if (level == Config.USERACCESS_LEVEL)
+
+ final AccessLevel accessLevel = AdminData.getInstance().getAccessLevel(level);
+ if (accessLevel == null)
{
- _accessLevel = AdminData.getInstance()._userAccessLevel;
- }
- else
- {
- if (level > 0)
+ if (level < 0)
{
- LOGGER.warning("Access level " + level + " set for character " + getName() + "! Just a warning ;)");
- }
- final AccessLevel accessLevel = AdminData.getInstance().getAccessLevel(level);
-
- if (accessLevel == null)
- {
- if (level < 0)
- {
- AdminData.getInstance().addBanAccessLevel(level);
- _accessLevel = AdminData.getInstance().getAccessLevel(level);
- }
- else
- {
- LOGGER.warning("Tried to set unregistered access level " + level + " to character " + getName() + ". Setting access level without privileges!");
- _accessLevel = AdminData.getInstance()._userAccessLevel;
- }
+ AdminData.getInstance().addBanAccessLevel(level);
+ _accessLevel = AdminData.getInstance().getAccessLevel(level);
}
else
{
- _accessLevel = accessLevel;
+ LOGGER.warning("Tried to set unregistered access level " + level + " to character " + getName() + ". Setting access level without privileges!");
+ _accessLevel = AdminData.getInstance().getAccessLevel(0);
}
}
-
- if (_accessLevel != AdminData.getInstance()._userAccessLevel)
+ else
{
- if (getAccessLevel().useNameColor())
+ _accessLevel = accessLevel;
+ }
+
+ if (_accessLevel.isGm())
+ {
+ if (_accessLevel.useNameColor())
{
getAppearance().setNameColor(_accessLevel.getNameColor());
}
- if (getAccessLevel().useTitleColor())
+ if (_accessLevel.useTitleColor())
{
getAppearance().setTitleColor(_accessLevel.getTitleColor());
}
@@ -8390,11 +8346,11 @@ public class PlayerInstance extends Playable
{
if (Config.EVERYBODY_HAS_ADMIN_RIGHTS)
{
- return AdminData.getInstance()._masterAccessLevel;
+ return AdminData.getInstance().getAccessLevel(100);
}
else if (_accessLevel == null)
{
- setAccessLevel(Config.USERACCESS_LEVEL);
+ setAccessLevel(0);
}
return _accessLevel;
}
@@ -8575,8 +8531,7 @@ public class PlayerInstance extends Playable
}
/**
- * Create a new player in the characters table of the database.
- *
+ * Create a new player in the characters table of the database.
* @return true, if successful
*/
private boolean createDb()
@@ -8763,7 +8718,6 @@ public class PlayerInstance extends Playable
player.setDeleteTimer(rset.getLong("deletetime"));
player.setTitle(rset.getString("title"));
- player.setAccessLevel(rset.getInt("accesslevel"));
player.setFistsWeaponItem(player.findFistsWeaponItem(activeClassId));
player.setUptime(System.currentTimeMillis());
@@ -8832,6 +8786,8 @@ public class PlayerInstance extends Playable
// leave them as default
}
+ player.setAccessLevel(rset.getInt("accesslevel"));
+
CursedWeaponsManager.getInstance().checkPlayer(player);
player.setAllianceWithVarkaKetra(rset.getInt("varka_ketra_ally"));
@@ -11930,6 +11886,7 @@ public class PlayerInstance extends Playable
getAppearance().setNameColor(Config.L2JMOD_WEDDING_NAME_COLOR_NORMAL);
}
}
+
/** Updates title and name color of a donator **/
if (Config.DONATOR_NAME_COLOR_ENABLED && isDonator())
{
@@ -11938,65 +11895,13 @@ public class PlayerInstance extends Playable
}
}
- /**
- * Update gm name title color.
- */
- public void updateGmNameTitleColor()
- {
- // if this is a GM but has disabled his gM status, so we clear name / title
- if (isGM() && !hasGmStatusActive())
- {
- getAppearance().setNameColor(0xFFFFFF);
- getAppearance().setTitleColor(0xFFFF77);
- }
- // this is a GM but has GM status enabled, so we must set proper values
- else if (isGM() && hasGmStatusActive())
- {
- // Nick Updates
- if (getAccessLevel().useNameColor())
- {
- // this is a normal GM
- if (isNormalGm())
- {
- getAppearance().setNameColor(getAccessLevel().getNameColor());
- }
- else if (isAdministrator())
- {
- getAppearance().setNameColor(Config.MASTERACCESS_NAME_COLOR);
- }
- }
- else
- {
- getAppearance().setNameColor(0xFFFFFF);
- }
-
- // Title Updates
- if (getAccessLevel().useTitleColor())
- {
- // this is a normal GM
- if (isNormalGm())
- {
- getAppearance().setTitleColor(getAccessLevel().getTitleColor());
- }
- else if (isAdministrator())
- {
- getAppearance().setTitleColor(Config.MASTERACCESS_TITLE_COLOR);
- }
- }
- else
- {
- getAppearance().setTitleColor(0xFFFF77);
- }
- }
- }
-
/**
* Sets the olympiad side.
- * @param i the new olympiad side
+ * @param value the new olympiad side
*/
- public void setOlympiadSide(int i)
+ public void setOlympiadSide(int value)
{
- _olympiadSide = i;
+ _olympiadSide = value;
}
/**
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/EnterWorld.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/EnterWorld.java
index 899c127ab5..ae5f680847 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/EnterWorld.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/clientpackets/EnterWorld.java
@@ -615,16 +615,6 @@ public class EnterWorld extends GameClientPacket
{
Announcements.getInstance().announceToAll("GM " + player.getName() + " has logged on.");
}
-
- if (Config.MASTERACCESS_NAME_COLOR_ENABLED)
- {
- player.getAppearance().setNameColor(Config.MASTERACCESS_NAME_COLOR);
- }
-
- if (Config.MASTERACCESS_TITLE_COLOR_ENABLED)
- {
- player.getAppearance().setTitleColor(Config.MASTERACCESS_TITLE_COLOR);
- }
}
}
diff --git a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/serverpackets/Die.java b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/serverpackets/Die.java
index 5751b2152a..1e02c03182 100644
--- a/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/serverpackets/Die.java
+++ b/L2J_Mobius_C6_Interlude/java/org/l2jmobius/gameserver/network/serverpackets/Die.java
@@ -16,44 +16,36 @@
*/
package org.l2jmobius.gameserver.network.serverpackets;
-import org.l2jmobius.gameserver.datatables.xml.AdminData;
import org.l2jmobius.gameserver.instancemanager.CastleManager;
import org.l2jmobius.gameserver.instancemanager.FortManager;
-import org.l2jmobius.gameserver.model.AccessLevel;
import org.l2jmobius.gameserver.model.SiegeClan;
import org.l2jmobius.gameserver.model.actor.Attackable;
import org.l2jmobius.gameserver.model.actor.Creature;
import org.l2jmobius.gameserver.model.actor.instance.PlayerInstance;
+import org.l2jmobius.gameserver.model.clan.Clan;
import org.l2jmobius.gameserver.model.entity.event.CTF;
import org.l2jmobius.gameserver.model.entity.event.DM;
import org.l2jmobius.gameserver.model.entity.event.TvT;
import org.l2jmobius.gameserver.model.entity.siege.Castle;
import org.l2jmobius.gameserver.model.entity.siege.Fort;
-/**
- * sample 0b 952a1048 objectId 00000000 00000000 00000000 00000000 00000000 00000000 format dddddd rev 377 format ddddddd rev 417
- * @version $Revision: 1.3.3 $ $Date: 2009/04/29 00:46:18 $
- */
public class Die extends GameServerPacket
{
private final int _objectId;
private final boolean _fake;
private boolean _sweepable;
private boolean _canTeleport;
- private AccessLevel _access = AdminData.getInstance()._userAccessLevel;
- private org.l2jmobius.gameserver.model.clan.Clan _clan;
+ private boolean _allowFixedRes;
+ private Clan _clan;
Creature _creature;
- /**
- * @param creature
- */
public Die(Creature creature)
{
_creature = creature;
if (creature instanceof PlayerInstance)
{
- final PlayerInstance player = (PlayerInstance) creature;
- _access = player.getAccessLevel();
+ final PlayerInstance player = creature.getActingPlayer();
+ _allowFixedRes = player.getAccessLevel().allowFixedRes();
_clan = player.getClan();
_canTeleport = ((!TvT.isStarted() || !player._inEventTvT) && (!DM.hasStarted() || !player._inEventDM) && (!CTF.isStarted() || !player._inEventCTF) && !player.isInFunEvent() && !player.isPendingRevive());
}
@@ -74,8 +66,8 @@ public class Die extends GameServerPacket
}
writeC(0x06);
-
writeD(_objectId);
+
// NOTE:
// 6d 00 00 00 00 - to nearest village
// 6d 01 00 00 00 - to hide away
@@ -124,6 +116,6 @@ public class Die extends GameServerPacket
}
writeD(_sweepable ? 0x01 : 0x00); // sweepable (blue glow)
- writeD(_access.allowFixedRes() ? 0x01 : 0x00); // 6d 04 00 00 00 - to FIXED
+ writeD(_allowFixedRes ? 0x01 : 0x00); // 6d 04 00 00 00 - to FIXED
}
}