diff --git a/scripts/commands/getStationName.py b/scripts/commands/getStationName.py new file mode 100644 index 00000000..57ca7fdb --- /dev/null +++ b/scripts/commands/getStationName.py @@ -0,0 +1,16 @@ +import sys +import main.NGECore +import services.AdminService + +def setup(): + return + + +def run(core, actor, target, commandString): + if target: + actor.sendSystemMessage(' \\#FE2EF7 [GM] \\#FFFFFF Command Completed Successfully: Account name for target is ' + core.adminService.getAccountNameFromDB(target.getClient().getAccountId()) + '.', 0) + + + else: + actor.sendSystemMessage(' \\#FE2EF7 [GM] \\#FFFFFF getStationName: Invalid Syntax. Syntax is: /getStationName ', 0) + return \ No newline at end of file diff --git a/src/resources/objects/waypoint/WaypointObject.java b/src/resources/objects/waypoint/WaypointObject.java index 0d1ddc0c..d4d55a30 100644 --- a/src/resources/objects/waypoint/WaypointObject.java +++ b/src/resources/objects/waypoint/WaypointObject.java @@ -154,17 +154,16 @@ public class WaypointObject extends IntangibleObject implements IDelta, Serializ } public synchronized byte[] getBytes() { - IoBuffer buffer = Baseline.createBuffer(38 + StringUtilities.getUnicodeString(getName()).length); - buffer.putInt(getCellNumber()); - buffer.put(Baseline.toBytes(getBaseline(3).get("position"))); - buffer.putLong(getTargetId()); - buffer.putInt(getPlanetCrc()); - buffer.put(StringUtilities.getUnicodeString(getName())); - buffer.putLong(getObjectID()); - buffer.put(getColor()); - buffer.put(Baseline.getBoolean(isActive())); - return buffer.flip().array(); - + IoBuffer buffer = Baseline.createBuffer(38 + StringUtilities.getUnicodeString(getName()).length); + buffer.putInt(getCellNumber()); + buffer.put(Baseline.toBytes(getBaseline(3).get("position"))); + buffer.putLong(getTargetId()); + buffer.putInt(getPlanetCrc()); + buffer.put(StringUtilities.getUnicodeString(getName())); + buffer.putLong(getObjectID()); + buffer.put(getColor()); + buffer.put(Baseline.getBoolean(isActive())); + return buffer.flip().array(); } @Deprecated public int getCellId() { return getCellNumber(); } diff --git a/src/services/AdminService.java b/src/services/AdminService.java index 3763a874..eef276f7 100644 --- a/src/services/AdminService.java +++ b/src/services/AdminService.java @@ -55,6 +55,22 @@ public class AdminService implements INetworkDispatch { return accessLevel; } + public String getAccountNameFromDB(long id) { + String accountName = null; + PreparedStatement preparedStatement; + + try { + preparedStatement = NGECore.getInstance().getDatabase1().preparedStatement("SELECT * FROM accounts WHERE id=" + id + ""); + ResultSet resultSet = preparedStatement.executeQuery(); + if(resultSet.next()) + accountName = resultSet.getString("user"); + } catch (SQLException e) { + e.printStackTrace(); + } + + return accountName; + } + @Override public void insertOpcodes(Map arg0, Map arg1) { diff --git a/src/services/PlayerService.java b/src/services/PlayerService.java index d9dad2b3..80fa99f4 100644 --- a/src/services/PlayerService.java +++ b/src/services/PlayerService.java @@ -526,7 +526,7 @@ public class PlayerService implements INetworkDispatch { }); swgOpcodes.put(Opcodes.CmdSceneReady, (session, data) -> { - + session.setAttribute("CmdSceneReady", true); }); /*swgOpcodes.put(Opcodes.ExpertiseRequestMessage, new INetworkRemoteEvent() { diff --git a/src/services/command/CommandService.java b/src/services/command/CommandService.java index c3c622a8..3ae01441 100644 --- a/src/services/command/CommandService.java +++ b/src/services/command/CommandService.java @@ -688,7 +688,8 @@ public class CommandService implements INetworkDispatch { public void processCommand(CreatureObject actor, SWGObject target, BaseSWGCommand command, int actionCounter, String commandArgs) { - if (command.getGodLevel() > 0 || command.getCommandName().equals("setgodmode")) { + if (command.getGodLevel() > 0 || command.getCommandName().equals("setgodmode") || command.getCommandName().equals("server") || command.getCommandName().equals("teleport") + || command.getCommandName().equals("teleportto") || command.getCommandName().equals("teleporttarget") ) { String accessLevel = core.adminService.getAccessLevelFromDB(actor.getClient().getAccountId()); String filePath = "accesslevels/" + accessLevel + ".txt";