}
final StringBuilder st = new StringBuilder();
if (target instanceof RPEntity) {
final RPEntity inspected = (RPEntity) target;
// display type and name/title of the entity if they are available
final String type = inspected.get("type");
st.append("Inspected ");
if (type != null) {
st.append(type);
} else {
st.append("entity");
}
st.append(" is ");
String name = inspected.getName();
if (name == null) {
name = inspected.getTitle();
}
if (name != null) {
st.append("called \"");
st.append(name);
st.append("\"");
} else {
st.append("unnamed");
}
st.append(" and has the following attributes:");
// st.append(target.toString());
// st.append("\n===========================\n");
st.append("\nID: " + action.get("target") + " in " + inspected.getZone().getName() + " at (" + + inspected.getX() + ", " + + inspected.getY()+")");
st.append("\nATK: " + inspected.getAtk() + "("
+ inspected.getAtkXP() + ")");
st.append("\nDEF: " + inspected.getDef() + "("
+ inspected.getDefXP() + ")");
st.append("\nHP: " + inspected.getHP() + " / "
+ inspected.getBaseHP());
st.append("\nXP: " + inspected.getXP());
st.append("\nLevel: " + inspected.getLevel());
st.append("\nKarma: " + inspected.getKarma());
st.append("\nequips");
for (final RPSlot slot : inspected.slots()) {
// showing these is either irrelevant, private, or spams too much
if (slot.getName().equals("!buddy")
|| slot.getName().equals("!ignore")
|| slot.getName().equals("!visited")
|| slot.getName().equals("!tutorial")