cleanup of terminal
This commit is contained in:
parent
2994c5240b
commit
5ed8f3dc46
1 changed files with 19 additions and 34 deletions
|
@ -1,6 +1,5 @@
|
||||||
package dark.library.terminal;
|
package dark.library.terminal;
|
||||||
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -14,7 +13,7 @@ import net.minecraft.network.packet.Packet250CustomPayload;
|
||||||
import universalelectricity.core.vector.Vector3;
|
import universalelectricity.core.vector.Vector3;
|
||||||
import universalelectricity.prefab.network.IPacketReceiver;
|
import universalelectricity.prefab.network.IPacketReceiver;
|
||||||
import universalelectricity.prefab.network.PacketManager;
|
import universalelectricity.prefab.network.PacketManager;
|
||||||
import universalelectricity.prefab.tile.TileEntityElectricityRunnable;
|
import calclavia.lib.TileEntityUniversalRunnable;
|
||||||
|
|
||||||
import com.google.common.io.ByteArrayDataInput;
|
import com.google.common.io.ByteArrayDataInput;
|
||||||
|
|
||||||
|
@ -25,41 +24,32 @@ import dark.library.access.UserAccess;
|
||||||
import dark.library.access.interfaces.ISpecialAccess;
|
import dark.library.access.interfaces.ISpecialAccess;
|
||||||
import dark.library.access.interfaces.ITerminal;
|
import dark.library.access.interfaces.ITerminal;
|
||||||
import dark.library.terminal.commands.CommandRegistry;
|
import dark.library.terminal.commands.CommandRegistry;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @author Calclavia, DarkGuardsman
|
* @author Calclavia, DarkGuardsman
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
public abstract class TileEntityTerminal extends TileEntityElectricityRunnable implements ISpecialAccess, IPacketReceiver, ITerminal
|
public abstract class TileEntityTerminal extends TileEntityUniversalRunnable implements ISpecialAccess, IPacketReceiver, ITerminal
|
||||||
{
|
{
|
||||||
public enum PacketType
|
public enum PacketType
|
||||||
{
|
{
|
||||||
GUI_EVENT, GUI_COMMAND, TERMINAL_OUTPUT, DESCRIPTION_DATA;
|
GUI_EVENT, GUI_COMMAND, TERMINAL_OUTPUT, DESCRIPTION_DATA;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** A list of everything typed inside the terminal */
|
||||||
* A list of everything typed inside the terminal.
|
|
||||||
*/
|
|
||||||
private final List<String> terminalOutput = new ArrayList<String>();
|
private final List<String> terminalOutput = new ArrayList<String>();
|
||||||
|
|
||||||
/**
|
/** A list of user access data. */
|
||||||
* A list of user access data.
|
|
||||||
*/
|
|
||||||
private final List<UserAccess> users = new ArrayList<UserAccess>();
|
private final List<UserAccess> users = new ArrayList<UserAccess>();
|
||||||
|
|
||||||
/**
|
/** The amount of players using the console. */
|
||||||
* The amount of players using the console.
|
|
||||||
*/
|
|
||||||
public int playersUsing = 0;
|
public int playersUsing = 0;
|
||||||
|
|
||||||
/**
|
/** The amount of lines the terminal can store. */
|
||||||
* The amount of lines the terminal can store.
|
|
||||||
*/
|
|
||||||
public static final int SCROLL_SIZE = 15;
|
public static final int SCROLL_SIZE = 15;
|
||||||
|
|
||||||
/**
|
/** Used on client side to determine the scroll of the terminal. */
|
||||||
* Used on client side to determine the scroll of the terminal.
|
|
||||||
*/
|
|
||||||
private int scroll = 0;
|
private int scroll = 0;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -85,13 +75,10 @@ public abstract class TileEntityTerminal extends TileEntityElectricityRunnable i
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** Channel to be used for packets */
|
||||||
* Packet Methods
|
|
||||||
*/
|
|
||||||
public abstract String getChannel();
|
public abstract String getChannel();
|
||||||
/**
|
|
||||||
* Sends all NBT data. Server -> Client
|
/** Sends all NBT data. Server -> Client */
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public Packet getDescriptionPacket()
|
public Packet getDescriptionPacket()
|
||||||
{
|
{
|
||||||
|
@ -100,9 +87,7 @@ public abstract class TileEntityTerminal extends TileEntityElectricityRunnable i
|
||||||
return PacketManager.getPacket(this.getChannel(), this, PacketType.DESCRIPTION_DATA.ordinal(), nbt);
|
return PacketManager.getPacket(this.getChannel(), this, PacketType.DESCRIPTION_DATA.ordinal(), nbt);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** Sends all Terminal data Server -> Client */
|
||||||
* Sends all Terminal data Server -> Client
|
|
||||||
*/
|
|
||||||
public void sendTerminalOutputToClients()
|
public void sendTerminalOutputToClients()
|
||||||
{
|
{
|
||||||
List data = new ArrayList();
|
List data = new ArrayList();
|
||||||
|
@ -114,12 +99,7 @@ public abstract class TileEntityTerminal extends TileEntityElectricityRunnable i
|
||||||
PacketManager.sendPacketToClients(packet, worldObj, new Vector3(this), 10);
|
PacketManager.sendPacketToClients(packet, worldObj, new Vector3(this), 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/** Send a terminal command to the server */
|
||||||
* Client -> Server
|
|
||||||
*
|
|
||||||
* @param entityPlayer
|
|
||||||
* @param cmdInput
|
|
||||||
*/
|
|
||||||
public void sendCommandToServer(EntityPlayer entityPlayer, String cmdInput)
|
public void sendCommandToServer(EntityPlayer entityPlayer, String cmdInput)
|
||||||
{
|
{
|
||||||
if (this.worldObj.isRemote)
|
if (this.worldObj.isRemote)
|
||||||
|
@ -225,6 +205,11 @@ public abstract class TileEntityTerminal extends TileEntityElectricityRunnable i
|
||||||
return AccessLevel.NONE;
|
return AccessLevel.NONE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean canUserAccess(String username)
|
||||||
|
{
|
||||||
|
return(this.getUserAccess(username).ordinal() > AccessLevel.BASIC.ordinal());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<UserAccess> getUsers()
|
public List<UserAccess> getUsers()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue