当該クラスの修正.
1 parent 30afe01 commit 95a8df26ce4922f3b7ce65d00e0fa06471b99350
r-isitani authored on 22 May 2018
Showing 3 changed files
View
46
src/main/java/cactusServer/entities/Character.java
package cactusServer.entities;
 
import java.net.URI;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
import framework.model3D.Position3D;
import net.arnx.jsonic.JSONHint;
public boolean isActive() {
return isActive;
}
 
public HashMap<String, Item> getItemMap() {
return itemMap;
public Item getItem(String itemId) {
return itemMap.get(itemId);
}
public Item getItemMap(String itemId) {
return itemMap.get(itemId);
public List<Item> getItems() {
List<Item> itemList = new ArrayList<>();
for (Item item : itemMap.values()) {
itemList.add(item);
}
return itemList;
}
 
public void setPosition(Position3D position) {
this.position = position;
this.isActive = isActive;
}
 
public Map<String, Item> createItem(String name, int amount) {
String id = new RandomStringGenerator().createUniqueString(UNIQUE_ID_LENGTH, RandomStringGenerator.ALPHA_NUMERIC, itemMap.keySet());
Item item = new Item(name, amount);
itemMap.put(id, item);
return new HashMap<String, Item>() {
{put(id, item);}
};
if (!hasItem(item)) {
String id = new RandomStringGenerator().createUniqueString(UNIQUE_ID_LENGTH, RandomStringGenerator.ALPHA_NUMERIC, itemMap.keySet());
itemMap.put(id, item);
return new HashMap<String, Item>() {
{put(id, item);}
};
}
return null;
}
public boolean hasItem(Item item) {
for (Map.Entry<String, Item> entry : itemMap.entrySet()) {
if (entry.getValue().equals(item)) {
return true;
}
}
return false;
}
public Item changeAmountOfItem(String itemId, int amountOfChange) {
Item item = itemMap.get(itemId).changeAmount(amountOfChange);
if (item.isEmpty()) {
View
26
src/main/java/cactusServer/entities/Instance.java
package cactusServer.entities;
 
import java.net.URI;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
 
import cactusServer.entities.Area.Allowed;
public Set<String> getAreaIdSet() {
return areaMap.keySet();
}
public HashMap<String, Area> getAreaMap() {
return areaMap;
}
public Area getArea(String areaId) {
return areaMap.get(areaId);
}
public Set<String> getObjIdSet() {
return objMap.keySet();
}
public HashMap<String, Object> getObjMap() {
return objMap;
}
public Object getObject(String objId) {
return objMap.get(objId);
}
public Map<String, Character> getActiveCharacterMap() {
Map<String, Character> activeCharacterMap = new HashMap<>();
public List<Character> getActiveCharacters() {
List<Character> activeCharacterList = new ArrayList<>();
for (Map.Entry<String, Character> entry : characterMap.entrySet()) {
Character character = entry.getValue();
if (character.isActive()) {
activeCharacterMap.put(entry.getKey(), character);
activeCharacterList.add(character);
}
}
return activeCharacterMap;
return activeCharacterList;
}
public Map<String, Character> getCharacterMap(String accountUniqueId) {
Map<String, Character> accountCharacterMap = new HashMap<>();
public List<Character> getCharacters(String accountUniqueId) {
List<Character> accountCharacterList = new ArrayList<>();
for (Map.Entry<String, Character> entry : characterMap.entrySet()) {
Character character = entry.getValue();
URI accountURI = character.getAccountURI();
if (accountUniqueId.equals("")) {
// if文の条件にはaccountURIに含まれるaccountIdと引数のidとの照合が入る
accountCharacterMap.put(entry.getKey(), character);
accountCharacterList.add(character);
}
}
return accountCharacterMap;
return accountCharacterList;
}
public Character getCharacter(String characterId) {
return characterMap.get(characterId);
View
14
src/main/java/cactusServer/entities/Item.java
public Item changeAmount(int amountOfChange) {
amount = Math.max(amount + amountOfChange, 0);
return this;
}
@Override
public boolean equals(java.lang.Object obj) {
if (this == obj) {
return true;
}
if (obj instanceof Item) {
Item item = (Item)obj;
if (this.name.equals(item.name)) {
return true; // 同名のアイテムは等価
}
}
return false;
}
}