From 9392f8bfa18d6ae93e1759b9a3960e00a2927034 Mon Sep 17 00:00:00 2001 From: Waverunner Date: Fri, 12 Dec 2014 18:27:25 -0500 Subject: [PATCH] Added admin tags --- src/resources/objects/player/PlayerObject.java | 13 ++++++++++++- src/services/player/LoginService.java | 6 ++++++ src/services/player/ZoneService.java | 2 ++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/resources/objects/player/PlayerObject.java b/src/resources/objects/player/PlayerObject.java index ed4ce729c..390a4052d 100644 --- a/src/resources/objects/player/PlayerObject.java +++ b/src/resources/objects/player/PlayerObject.java @@ -6,6 +6,7 @@ import network.packets.swg.zone.baselines.Baseline.BaselineType; import resources.network.BaselineBuilder; import resources.objects.creature.CreatureObject; import resources.objects.intangible.IntangibleObject; +import resources.player.AccessLevel; import resources.player.Player; import utilities.MathUtils; @@ -18,6 +19,7 @@ public class PlayerObject extends IntangibleObject { private boolean showBackpack = true; private boolean showHelmet = true; private int bornDate = 0; + private int adminTag = 0; public PlayerObject(long objectId) { super(objectId); @@ -64,6 +66,15 @@ public class PlayerObject extends IntangibleObject { return bornDate; } + public void setTag(AccessLevel access) { + switch(access) { + case PLAYER: break; + case ADMIN: adminTag = 1; break; + case DEV: adminTag = 2; break; + case QA: adminTag = 4; break; + } + } + private int getProfessionIcon() { switch (profession) { case "entertainer_1a": @@ -149,7 +160,7 @@ public class PlayerObject extends IntangibleObject { public void createBaseline6(Player target, BaselineBuilder bb) { super.createBaseline6(target, bb); - bb.addByte(0); // Admin Tag + bb.addByte(adminTag); // Admin Tag (0 = none, 1 = CSR, 2 = Developer, 3 = Warden, 4 = QA) bb.addInt(0); // Current Rank bb.addFloat(0); // Rank Progress bb.addInt(0); // Highest Rebel Rank diff --git a/src/services/player/LoginService.java b/src/services/player/LoginService.java index 925eb1af1..60febea6c 100644 --- a/src/services/player/LoginService.java +++ b/src/services/player/LoginService.java @@ -106,6 +106,12 @@ public class LoginService extends Service { random.nextBytes(sessionToken); player.setSessionToken(sessionToken); player.setPlayerState(PlayerState.LOGGING_IN); + switch(user.getString(5)) { + case "player": player.setAccessLevel(AccessLevel.PLAYER); break; + case "admin": player.setAccessLevel(AccessLevel.ADMIN); break; + case "dev": player.setAccessLevel(AccessLevel.DEV); break; + case "qa": player.setAccessLevel(AccessLevel.QA); break; + } sendLoginSuccessPacket(player); System.out.println("LoginService: " + player.getUsername() + " has logged in."); new LoginEventIntent(player.getNetworkId(), LoginEvent.LOGIN_SUCCESS).broadcast(); diff --git a/src/services/player/ZoneService.java b/src/services/player/ZoneService.java index 4ab898b65..3864fb57e 100644 --- a/src/services/player/ZoneService.java +++ b/src/services/player/ZoneService.java @@ -39,6 +39,7 @@ import resources.control.Service; import resources.objects.creature.CreatureObject; import resources.objects.player.PlayerObject; import resources.objects.tangible.TangibleObject; +import resources.player.AccessLevel; import resources.player.Player; import resources.player.PlayerEvent; import resources.services.Config; @@ -145,6 +146,7 @@ public class ZoneService extends Service { //WeaponObject defaultWeap = (WeaponObject) objManager.createObject("object/weapon/melee/unarmed/shared_unarmed_default_player.iff"); setCreatureObjectValues(creatureObj, create); setPlayerObjectValues(playerObj, create); + playerObj.setTag(player.getAccessLevel()); creatureObj.addChild(playerObj); if (!create.getHair().isEmpty()) { TangibleObject hairObj = (TangibleObject) objManager.createObject(create.getHair());