diff --git a/src/main/java/cactusServer/entities/Character.java b/src/main/java/cactusServer/entities/Character.java index d4328f7..9b19fbf 100644 --- a/src/main/java/cactusServer/entities/Character.java +++ b/src/main/java/cactusServer/entities/Character.java @@ -48,7 +48,7 @@ return areaID; } - public boolean isAactive() { + public boolean isActive() { return isActive; } @@ -85,8 +85,12 @@ }; } - public Item addItem(String itemId, int num) { - return itemMap.get(itemId).addAmount(num); + public Item changeAmountOfItem(String itemId, int amountOfChange) { + Item item = itemMap.get(itemId).changeAmount(amountOfChange); + if (item.isEmpty()) { + destroyItem(itemId); + } + return item; } public Item destroyItem(String itemId) { diff --git a/src/main/java/cactusServer/entities/Instance.java b/src/main/java/cactusServer/entities/Instance.java index 611dbd8..f7fcd90 100644 --- a/src/main/java/cactusServer/entities/Instance.java +++ b/src/main/java/cactusServer/entities/Instance.java @@ -29,7 +29,6 @@ @JSONHint(ignore = true) private HashMap objMap = new HashMap<>(); @JSONHint(ignore = true) private HashMap characterMap = new HashMap<>(); @JSONHint(ignore = true) private static final int UNIQUE_ID_LENGTH = 12; - private static final String ALPHANUMERIC = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; /** * (�����͌����_�ł̉��̂���) @@ -72,12 +71,28 @@ return objMap.get(objId); } - public Set getCharacterIdSet() { - return characterMap.keySet(); + public Map getActiveCharacterMap() { + Map activeCharacterMap = new HashMap<>(); + for (Map.Entry entry : characterMap.entrySet()) { + Character character = entry.getValue(); + if (character.isActive()) { + activeCharacterMap.put(entry.getKey(), character); + } + } + return activeCharacterMap; } - public HashMap getCharacterMap() { - return characterMap; + public Map getCharacterMap(String accountUniqueId) { + Map map = new HashMap<>(); + for (Map.Entry entry : characterMap.entrySet()) { + Character character = entry.getValue(); + URI accountURI = character.getAccountURI(); + if (true) { + // if���̏����ɂ�accountURI���炽�ǂ��account������id�Ƃ̏ƍ������� + map.put(entry.getKey(), character); + } + } + return map; } public Character getCharacter(String characterId) { diff --git a/src/main/java/cactusServer/entities/Item.java b/src/main/java/cactusServer/entities/Item.java index ae63d46..5b1b9a3 100644 --- a/src/main/java/cactusServer/entities/Item.java +++ b/src/main/java/cactusServer/entities/Item.java @@ -21,8 +21,8 @@ return (amount == 0); } - public Item addAmount(int num) { - amount = Math.max(amount + num, 0); + public Item changeAmount(int amountOfChange) { + amount = Math.max(amount + amountOfChange, 0); return this; } } diff --git a/src/main/java/cactusServer/models/Instances.java b/src/main/java/cactusServer/models/Instances.java index f829b43..caccf82 100644 --- a/src/main/java/cactusServer/models/Instances.java +++ b/src/main/java/cactusServer/models/Instances.java @@ -22,7 +22,6 @@ private static Instances theInstance = null; private HashMap instanceMap = new HashMap<>(); // instance��ID�Ǝ��̂��Ǘ� private static final int UNIQUE_ID_LENGTH = 12; - private static final String ALPHANUMERIC = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; private Instances() { @@ -57,7 +56,7 @@ } /** - * �G���[�����p (�ォ�����) + * InstancesRest�̃G���[�����p (�ォ�����) * @param id * @param name * @return