package com.weem.epicinventor;
import com.weem.epicinventor.actor.*;
import com.weem.epicinventor.actor.monster.*;
import com.weem.epicinventor.hud.*;
import com.weem.epicinventor.indicator.*;
import com.weem.epicinventor.inventory.*;
import com.weem.epicinventor.item.*;
import com.weem.epicinventor.network.*;
import com.weem.epicinventor.pixelize.*;
import com.weem.epicinventor.placeable.*;
import com.weem.epicinventor.projectile.*;
import com.weem.epicinventor.resource.*;
import com.weem.epicinventor.utility.*;
import com.weem.epicinventor.weapon.*;
import com.weem.epicinventor.world.block.*;
import java.awt.*;
import java.awt.image.*;
public class Registry {
private GameController gameController;
private ImageLoader imageLoader;
private ItemManager itemManager;
private HUDManager hudManager;
private BlockManager blockManager;
private PlaceableManager placeableManager;
private PlayerManager playerManager;
private ProjectileManager projectileManager;
private ResourceManager resourceManager;
private MonsterManager monsterManager;
private IndicatorManager indicatorManager;
private PixelizeManager pixelizeManager;
private Inventory inventory;
//private NetworkThread networkThread;
private NetworkThread2 networkThread;
private int invSlotFrom = -1;
private ItemContainer invItemContainerFrom;
private PlayerContainer invPlayerContainerFrom;
private Farm invFarmFrom;
private boolean isQuickBarLocked;
private String invHUDFrom = "";
private String statusText = "";
private int splitCount;
public long currentTime = 0;
private boolean bossFight;
private int attackBonus = 0;
private int hpBonus = 0;
private boolean showPortrait;
private int portraitHP = 0;
private int portraitHPCurrent = 0;
private int portraitAttack = 0;
private String portraitImage = "";
private String weaponType = "";
private int weaponLevel = 1;
private String armorType = "";
private int armorLevel = 1;
public boolean isSaving = false;
public Registry() {
}
public ItemManager getItemManager() {
return itemManager;
}
public ImageLoader getImageLoader() {
return imageLoader;
}
public PlayerManager getPlayerManager() {
return playerManager;
}
public BlockManager getBlockManager() {
return blockManager;
}
public ResourceManager getResourceManager() {
return resourceManager;
}
public PlaceableManager getPlaceableManager() {
return placeableManager;
}
public ProjectileManager getProjectileManager() {
return projectileManager;
}
public MonsterManager getMonsterManager() {
return monsterManager;
}
public HUDManager getHUDManager() {
return hudManager;
}
public IndicatorManager getIndicatorManager() {
return indicatorManager;
}
public PixelizeManager getPixelizeManager() {
return pixelizeManager;
}
public NetworkThread2 getNetworkThread() {
return networkThread;
}
public int getAttackBonus() {
return attackBonus;
}
public int getHPBonus() {
return hpBonus;
}
public boolean getBossFight() {
return bossFight;
}
public Player getClosestPlayer(Point p, int maxDistance) {
Player player = playerManager.getClosestPlayer(p, maxDistance);
return player;
}
public int getClosestPlayerX(Point p, int maxDistance) {
Player player = playerManager.getClosestPlayer(p, maxDistance);
if (player != null) {
return player.getMapX();
}
return -1;
}
public int getClosestPlayerY(Point p, int maxDistance) {
Player player = playerManager.getClosestPlayer(p, maxDistance);
if (player != null) {
return player.getMapY();
}
return 0;
}
public String getContainerInventorySlotImage(ItemContainer ic, int slot) {
if (ic != null) {
return ic.getInventory().getImageFromSlot(slot);
}
return "";
}
public String getContainerInventorySlotDescription(ItemContainer ic, int slot) {
if (ic != null) {
return ic.getInventory().getDescriptionFromSlot(slot);
}
return "";
}
public int getXPNeededForLevel(int l) {
return playerManager.getXPNeededForLevel(l);
}
public int getContainerInventorySlotQty(ItemContainer ic, int slot) {
if (ic != null) {
return ic.getInventory().getQtyFromSlot(slot);
}
return 0;
}
public String getPlayerContainerInventorySlotImage(PlayerContainer pc, int slot) {
if (pc != null) {
return pc.getInventory().getImageFromSlot(slot);
}
return "";
}
public String getPlayerContainerInventorySlotDescription(PlayerContainer pc, int slot) {
if (pc != null) {
return pc.getInventory().getDescriptionFromSlot(slot);
}
return "";
}
public int getPlayerContainerInventorySlotQty(PlayerContainer pc, int slot) {
if (pc != null) {
return pc.getInventory().getQtyFromSlot(slot);
}
return 0;
}
public String getFarmInventorySlotImage(Farm farm, int slot) {
if (farm != null) {
return farm.getInventory().getImageFromSlot(slot);
}
return "";
}
public String getFarmInventorySlotDescription(Farm farm, int slot) {
if (farm != null) {
return farm.getInventory().getDescriptionFromSlot(slot);
}
return "";
}
public int getFarmInventorySlotQty(Farm farm, int slot) {
if (farm != null) {
return farm.getInventory().getQtyFromSlot(slot);
}
return 0;
}
public Inventory getRobotInventory() {
return gameController.getRobotInventory();
}
public int getRobotInventorySize() {
return gameController.getRobotInventorySize();
}
public int getInvSlotFrom() {
return invSlotFrom;
}
public ItemContainer getInvItemContainerFrom() {
return invItemContainerFrom;
}
public PlayerContainer getInvPlayerContainerFrom() {
return invPlayerContainerFrom;
}
public Farm getInvFarmFrom() {
return invFarmFrom;
}
public String getInvHUDFrom() {
return invHUDFrom;
}
public int getSplitCount() {
return splitCount;
}
public String getItemNameBySlot(int slot) {
String itemName = "";
itemName = inventory.getNameFromSlot(slot);
return itemName;
}
public ItemType getItemType(String it) {
return itemManager.getItemType(it);
}
public Point getMousePosition() {
Point mousePosition = new Point(gameController.getCurrentMousePosition());
return mousePosition;
}
public int getMaxContainerDistance() {
return gameController.getMaxContainerDistance();
}
public Point getMouseMapPosition() {
Point mousePosition = new Point(gameController.getCurrentMousePosition().x + gameController.getMapOffsetX(), gameController.getPHeight() - gameController.getCurrentMousePosition().y + gameController.getMapOffsetY());
return mousePosition;
}
public String getPlaverHeadSlotImage(Player p) {
if (p.getArmorTypeHead() != null) {
return "Items/" + p.getArmorTypeHead().getName();
}
return null;
}
public String getPlaverChestSlotImage(Player p) {
if (p.getArmorTypeChest() != null) {
return "Items/" + p.getArmorTypeChest().getName();
}
return null;
}
public String getPlaverLegsSlotImage(Player p) {
if (p.getArmorTypeLegs() != null) {
return "Items/" + p.getArmorTypeLegs().getName();
}
return null;
}
public String getPlaverFeetSlotImage(Player p) {
if (p.getArmorTypeFeet() != null) {
return "Items/" + p.getArmorTypeFeet().getName();
}
return null;
}
public String getPlaverHeadSlotName(Player p) {
if (p.getArmorTypeHead() != null) {
return p.getArmorTypeHead().getName();
}
return null;
}
public String getPlaverChestSlotName(Player p) {
if (p.getArmorTypeChest() != null) {
return p.getArmorTypeChest().getName();
}
return null;
}
public String getPlaverLegsSlotName(Player p) {
if (p.getArmorTypeLegs() != null) {
return p.getArmorTypeLegs().getName();
}
return null;
}
public String getPlaverFeetSlotName(Player p) {
if (p.getArmorTypeFeet() != null) {
return p.getArmorTypeFeet().getName();
}
return null;
}
public int getPlaverHeadSlotLevel(Player p) {
if (p.getArmorTypeHead() != null) {
return p.getArmorTypeHeadLevel();
}
return 1;
}
public int getPlaverChestSlotLevel(Player p) {
if (p.getArmorTypeChest() != null) {
return p.getArmorTypeChestLevel();
}
return 1;
}
public int getPlaverLegsSlotLevel(Player p) {
if (p.getArmorTypeLegs() != null) {
return p.getArmorTypeLegsLevel();
}
return 1;
}
public int getPlaverFeetSlotLevel(Player p) {
if (p.getArmorTypeFeet() != null) {
return p.getArmorTypeFeetLevel();
}
return 1;
}
public int getPlaverArmorPoints(Player p) {
return p.getArmorPoints();
}
public int getPlaverTotalHitPoints(Player p) {
return p.getTotalHitPoints();
}
public int getPlaverHitPoints(Player p) {
return p.getHitPoints();
}
public int getPlayerInventorySize(Player p) {
return p.getInventorySize();
}
public String getPlaverInventorySlotImage(int slot) {
return inventory.getImageFromSlot(slot);
}
public String getPlaverInventorySlotType(int slot) {
return inventory.getTypeFromSlot(slot);
}
public String getPlaverInventorySlotName(int slot) {
return inventory.getNameFromSlot(slot);
}
public int getPlaverInventorySlotLevel(int slot) {
return inventory.getLevelFromSlot(slot);
}
public String getPlaverInventorySlotDescription(int slot) {
boolean showLevel = false;
String type = inventory.getTypeFromSlot(slot);
if (type != null) {
if (type.equals("Weapon") || type.equals("Armor")) {
showLevel = true;
}
}
if (showLevel) {
return "(Level " + inventory.getLevelFromSlot(slot) + ") " + inventory.getDescriptionFromSlot(slot);
} else {
return inventory.getDescriptionFromSlot(slot);
}
}
public int getPlaverInventorySlotQty(int slot) {
return inventory.getQtyFromSlot(slot);
}
public int getScreenWidth() {
return gameController.getPWidth();
}
public int getPlayerSelectedItem(Player p) {
return p.getSelectedItem();
}
public int getPlayerSelectedItemSlotIndex(Player p) {
if (p != null) {
return p.getSelectedItem() + getPlayerInventorySize(p) - 10;
}
return 0;
}
public int getPlayerPlacingSlot(Player p) {
if (p != null) {
return p.getPlacingSlot();
}
return 0;
}
public String getPlayerSelectedItemType(Player p) {
if (p != null) {
Inventory i = p.getInventory();
return i.getTypeFromSlot(getPlayerSelectedItemSlotIndex(p));
}
return "";
}
public String getPlayerSelectedItemName(Player p) {
if (p != null) {
Inventory i = p.getInventory();
return i.getNameFromSlot(getPlayerSelectedItemSlotIndex(p));
}
return "";
}
public int getPlayerSelectedItemLevel(Player p) {
if (p != null) {
Inventory i = p.getInventory();
return i.getLevelFromSlot(getPlayerSelectedItemSlotIndex(p));
}
return 1;
}
public String getPlayerSelectedItemWeaponType(Player p) {
String itemName = getPlayerSelectedItemName(p);
WeaponType newWeaponType = Weapon.getWeaponType(itemName);
return newWeaponType.getType();
}
public String getStatusText() {
return statusText;
}
public boolean getIsQuickBarLocked() {
return isQuickBarLocked;
}
public boolean getRobotActivated(Player p) {
return p.isRobotActivated();
}
public int getRobotBatteryPercentage(Player p) {
return p.getRobotBatteryPercentage();
}
public String getRobotMode(Player p) {
if (p != null) {
return p.getRobotMode();
}
return "";
}
public boolean getRobotFollowing(Player p) {
if (p != null) {
return p.getRobotFollowing();
}
return false;
}
public GameController getGameController() {
return gameController;
}
public void ghettoOutline(Graphics g, Color c, String text, int x, int y) {
g.setColor(c);
g.drawString(text, x + 1, y);
g.drawString(text, x + 1, y + 1);
g.drawString(text, x - 1, y);
g.drawString(text, x - 1, y - 1);
}
public boolean getShowPortrait() {
return showPortrait;
}
public int getPortraitHP() {
return portraitHP;
}
public int getPortraitHPCurrent() {
return portraitHPCurrent;
}
public int getPortraitAttack() {
return portraitAttack;
}
public String getPortraitImage() {
return portraitImage;
}
public String getWeaponType() {
return weaponType;
}
public int getWeaponLevel() {
return weaponLevel;
}
public String getArmorType() {
return armorType;
}
public int getArmorLevel() {
return armorLevel;
}
public void setGameController(GameController gc) {
gameController = gc;
}
public void setImageLoader(ImageLoader il) {
imageLoader = il;
}
public void setItemManager(ItemManager im) {
itemManager = im;
}
public void setMonsterManager(MonsterManager mm) {
monsterManager = mm;
}
public void setPlaceableManager(PlaceableManager pm) {
placeableManager = pm;
}
public void setPlayerManager(PlayerManager pm) {
playerManager = pm;
}
public void setBlockManager(BlockManager bm) {
blockManager = bm;
}
public void setResourceManager(ResourceManager rm) {
resourceManager = rm;
}
public void setProjectileManager(ProjectileManager pm) {
projectileManager = pm;
}
public void setHUDManager(HUDManager hm) {
hudManager = hm;
}
public void setIndicatorManager(IndicatorManager im) {
indicatorManager = im;
}
public void setPixelizeManager(PixelizeManager pm) {
pixelizeManager = pm;
}
public void setNetworkThread(NetworkThread2 nt) {
networkThread = nt;
}
public void setInventory(Inventory inv) {
inventory = inv;
}
public void setAttackBonus(int b) {
attackBonus = b;
}
public void setHPBonus(int b) {
hpBonus = b;
}
public void setBossFight(boolean b) {
bossFight = b;
}
public void setInvSlotFrom(String hud, int i) {
invHUDFrom = hud;
invItemContainerFrom = null;
invSlotFrom = i;
}
public void setInvSlotFrom(String hud, ItemContainer ic, int i) {
invHUDFrom = hud;
invItemContainerFrom = ic;
invSlotFrom = i;
}
public void setInvSlotFrom(String hud, PlayerContainer pc, int i) {
invHUDFrom = hud;
invPlayerContainerFrom = pc;
invSlotFrom = i;
}
public void setInvSlotFrom(String hud, Farm farm, int i) {
invHUDFrom = hud;
invFarmFrom = farm;
invSlotFrom = i;
}
public void setIsQuickBarLocked(Boolean locked) {
isQuickBarLocked = locked;
}
public void setSplitCount(int c) {
splitCount = c;
}
public void setShowPortrait(boolean p) {
showPortrait = p;
}
public void setPortraitHP(int p) {
portraitHP = p;
}
public void setPortraitHPCurrent(int p) {
portraitHPCurrent = p;
}
public void setPortraitAttack(int p) {
portraitAttack = p;
}
public void setPortraitImage(String p) {
portraitImage = p;
}
public void setWeaponType(String p) {
weaponType = p;
}
public void setWeaponLevel(int l) {
weaponLevel = l;
}
public void setArmorType(String p) {
armorType = p;
}
public void setArmorLevel(int l) {
armorLevel = l;
}
public void setStatusText(String s) {
statusText = s;
}
public void showMessage(String type, String message) {
gameController.showMessage(type, message);
}
}