Код:
/*
* M.O.G. Devs Team
* www.mmorpg-onlinegames.ru
* Teg's {/aiononline, /eveonline}
*/
package admincommands.mog;
import java.util.List;
import com.mog.gameserver.dao.InventoryDAO;
import com.mog.gameserver.model.gameobjects.Item;
import com.mog.gameserver.model.gameobjects.player.Player;
import com.mog.gameserver.model.items.storage.Storage;
import com.mog.gameserver.model.items.storage.StorageType;
import com.mog.gameserver.utils.ChatUtil;
import com.mog.gameserver.utils.PacketSendUtility;
import com.mog.gameserver.utils.chathandlers.AdminCommand;
import com.mog.gameserver.utils.commons.database.dao.DAOManager;
/**
* @author Dision
*/
public class PlayerInfoOffline extends AdminCommand {
public PlayerInfoOffline() {
super("plinfoff");
}
@Override
public void execute(Player admin, String... params) {
if (params == null || params.length < 1) {
PacketSendUtility.sendMessage(admin, "\u0421\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 //playerinfo <playerid> <item> ");
return;
}
int playerObjId = Integer.parseInt(params[0]);
Storage cube = DAOManager.getDAO(InventoryDAO.class).loadStorage(playerObjId, StorageType.CUBE);
Storage storage = DAOManager.getDAO(InventoryDAO.class).loadStorage(playerObjId, StorageType.REGULAR_WAREHOUSE);
Storage account = DAOManager.getDAO(InventoryDAO.class).loadStorage(playerObjId, StorageType.ACCOUNT_WAREHOUSE);
Storage legion = DAOManager.getDAO(InventoryDAO.class).loadStorage(playerObjId, StorageType.LEGION_WAREHOUSE);
Storage mail = DAOManager.getDAO(InventoryDAO.class).loadStorage(playerObjId, StorageType.MAILBOX);
List<Item> equip = DAOManager.getDAO(InventoryDAO.class).loadEquipment(playerObjId);
if (params.length < 2)
return;
if (params[1].equals("item")) {
StringBuilder strbld = new StringBuilder("Инвентарь:\n");
List<Item> invItems = cube.getItemsWithKinah();
if (invItems.isEmpty())
strbld.append("Пусто\n");
else {
for (Item item : invItems) {
strbld.append(" " + item.getItemCount() + "(s) of " + ChatUtil.item(item.getItemTemplate().getTemplateId()) + "\n");
}
}
invItems.clear();
List<Item> storageItems = storage.getItemsWithKinah();
if (storageItems.isEmpty())
strbld.append("Пусто\n");
else {
strbld.append("Склад:\n");
for (Item item : storageItems) {
strbld.append(" " + item.getItemCount() + "(s) of " + ChatUtil.item(item.getItemTemplate().getTemplateId()) + "\n");
}
}
storageItems.clear();
List<Item> accountItems = account.getItemsWithKinah();
if (accountItems.isEmpty())
strbld.append("\u041f\u0443\u0441\u0442\u043e\n");
else {
strbld.append("Склад аккаунта:\n");
for (Item item : accountItems) {
strbld.append(" " + item.getItemCount() + "(s) of " + ChatUtil.item(item.getItemTemplate().getTemplateId()) + "\n");
}
}
accountItems.clear();
List<Item> legionItems = legion.getItemsWithKinah();
if (legionItems.isEmpty())
strbld.append("Пусто\n");
else {
strbld.append("Склад легиона:\n");
for (Item item : legionItems) {
strbld.append(" " + item.getItemCount() + "(s) of " + ChatUtil.item(item.getItemTemplate().getTemplateId()) + "\n");
}
}
legionItems.clear();
List<Item> mailItems = mail.getItemsWithKinah();
if (mailItems.isEmpty())
strbld.append("Пусто\n");
else {
strbld.append("Почта:\n");
for (Item item : mailItems) {
strbld.append(" " + item.getItemCount() + "(s) of " + ChatUtil.item(item.getItemTemplate().getTemplateId()) + "\n");
}
}
mailItems.clear();
List<Item> equipItems = equip;
if (equipItems.isEmpty())
strbld.append("Пусто\n");
else {
strbld.append("Надето:\n");
for (Item item : equipItems) {
strbld.append(" " + item.getItemCount() + "(s) of " + ChatUtil.item(item.getItemTemplate().getTemplateId()) + "\n");
}
}
equipItems.clear();
showAllLines(admin, strbld.toString());
}
}
private void showAllLines(Player admin, String str) {
int index = 0;
String[] strarray = str.split("\n");
while (index < strarray.length - 20) {
StringBuilder strbld = new StringBuilder();
for (int i = 0; i < 20; i++, index++) {
strbld.append(strarray[index]);
if (i < 20 - 1)
strbld.append("\n");
}
PacketSendUtility.sendMessage(admin, strbld.toString());
}
int odd = strarray.length - index;
StringBuilder strbld = new StringBuilder();
for (int i = 0; i < odd; i++, index++)
strbld.append(strarray[index] + "\n");
PacketSendUtility.sendMessage(admin, strbld.toString());
}
@Override
public void onFail(Player player, String message) {
PacketSendUtility.sendMessage(player, "\u0421\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441 //playerinfo <playerid> <item> ");
}
}
