diff --git a/src/main/java/cactusServer/entities/Character.java b/src/main/java/cactusServer/entities/Character.java index d45e75b..c8eb53f 100644 --- a/src/main/java/cactusServer/entities/Character.java +++ b/src/main/java/cactusServer/entities/Character.java @@ -68,8 +68,8 @@ } @JSONHint(ignore = true) - public List getItems() { - return new ArrayList(itemMap.values()); + public HashMap getItems() { + return itemMap; } public void setAccountURI(String accountURI) { @@ -131,7 +131,7 @@ private String findAreaURI(Instance instance) { // �L�����N�^�[�̃|�W�V������p���Ăǂ̃G���A���ɂ��邩�𔻒肵�ē��Y�G���A��URI�ɍX�V���� - for (String areaId : instance.getAreaIdSet()) { + for (String areaId : instance.getAreas().keySet()) { Area area = instance.getArea(areaId); if (area.isSurroundingPosition(position)) { int subStringEndIndex = areaURI.length() - Area.UNIQUE_ID_LENGTH; diff --git a/src/main/java/cactusServer/entities/Instance.java b/src/main/java/cactusServer/entities/Instance.java index d55ed87..e0b197d 100644 --- a/src/main/java/cactusServer/entities/Instance.java +++ b/src/main/java/cactusServer/entities/Instance.java @@ -80,19 +80,19 @@ public Universe getUniverse() { return universe; } - + @JSONHint(ignore = true) - public Set getAreaIdSet() { - return areaMap.keySet(); + public HashMap getAreas() { + return areaMap; } public Area getArea(String areaId) { return areaMap.get(areaId); } - + @JSONHint(ignore = true) - public Set getObjIdSet() { - return objMap.keySet(); + public HashMap getObjects() { + return objMap; } public Object getObject(String objId) { @@ -100,8 +100,8 @@ } @JSONHint(ignore = true) - public List getCharacters() { - return new ArrayList(characterMap.values()); + public HashMap getCharacters() { + return characterMap; } public Character getCharacter(String characterId) { @@ -120,33 +120,39 @@ this.stageID = stageURI; } - public IDAddressedEntity createArea(String name, Plain[] region, HashSet permissions) { + public HashMap createArea(String name, Plain[] region, HashSet permissions) { String id = RandomStringGenerator.generateUniqueString(Area.UNIQUE_ID_LENGTH, RandomStringGenerator.ALPHA_NUMERIC, areaMap.keySet()); Area area = new Area(name, region, permissions); areaMap.put(id, area); - return new IDAddressedEntity(id, area); + HashMap returnMap = new HashMap<>(); + returnMap.put(id, area); + return returnMap; } - public IDAddressedEntity createObject(Position3D position, Velocity3D velocity, AngularVelocity3D angularVelocity, + public HashMap createObject(Position3D position, Velocity3D velocity, AngularVelocity3D angularVelocity, Quaternion3D angle, Attribute attribute, String model) { String id = RandomStringGenerator.generateUniqueString(Object.UNIQUE_ID_LENGTH, RandomStringGenerator.ALPHA_NUMERIC, objMap.keySet()); Object object = new Object(position, velocity, angularVelocity, angle, attribute, model); objMap.put(id, object); universe.place(object.getPlaceable()); - return new IDAddressedEntity(id, object); + HashMap returnMap = new HashMap<>(); + returnMap.put(id, object); + return returnMap; } - public IDAddressedEntity createCharacter(String instanceId, String accountURI, String name, Position3D position, + public HashMap createCharacter(String instanceId, String accountURI, String name, Position3D position, Quaternion3D angle, String modelID) { String id = RandomStringGenerator.generateUniqueString(Character.UNIQUE_ID_LENGTH, RandomStringGenerator.ALPHA_NUMERIC, characterMap.keySet()); Character character = new Character(instanceId, accountURI, name, position, angle, Integer.parseInt(modelID)); characterMap.put(id, character); - return new IDAddressedEntity(id, character); + HashMap returnMap = new HashMap<>(); + returnMap.put(id, character); + return returnMap; } - + public Instance update(Instance.State state) { setState(state); return this; diff --git a/src/main/java/cactusServer/entities/Player.java b/src/main/java/cactusServer/entities/Player.java index a0945b8..3f7e7a3 100644 --- a/src/main/java/cactusServer/entities/Player.java +++ b/src/main/java/cactusServer/entities/Player.java @@ -139,7 +139,7 @@ private String findAreaURI(Instance instance) { // �L�����N�^�[�̃|�W�V������p���Ăǂ̃G���A���ɂ��邩�𔻒肵�ē��Y�G���A��URI�ɍX�V���� - for (String areaId : instance.getAreaIdSet()) { + for (String areaId : instance.getAreas().keySet()) { Area area = instance.getArea(areaId); if (area.isSurroundingPosition(position)) { int subStringEndIndex = areaURI.length() - Area.UNIQUE_ID_LENGTH; // �c/{instanceId}/areas/ �܂� diff --git a/src/main/java/cactusServer/models/Instances.java b/src/main/java/cactusServer/models/Instances.java index 8dc18ce..4a786d4 100644 --- a/src/main/java/cactusServer/models/Instances.java +++ b/src/main/java/cactusServer/models/Instances.java @@ -28,15 +28,12 @@ private Instances() { //�_�~�[�R�[�h -// instanceMap.put("test1", new Instance("test1", State.AVAILABLE, 0)); -// instanceMap.put("test2", new Instance("test2", State.AVAILABLE, 1)); instanceMap.put("test1", new Instance("test1", 0)); instanceMap.put("test2", new Instance("test2", 1)); } /** * Instances�N���X���擾���� (�V���O���g��) - * * @return */ public static Instances getInstance() { @@ -46,73 +43,56 @@ return theInstance; } - public IDAddressedEntity createInstance(String name, int stageID) { + public HashMap createInstance(String name, int stageID) { String id = RandomStringGenerator.generateUniqueString(Instance.UNIQUE_ID_LENGTH, RandomStringGenerator.ALPHA_NUMERIC, instanceMap.keySet()); - //Instance instance = new Instance(name, Instance.State.AVAILABLE, stageID); Instance instance = new Instance(name, stageID); instanceMap.put(id, instance); - return new IDAddressedEntity(id, instance); - } - - /** - * InstanceRest�Ƃ̃G���[�����p (��ŏ���) - */ - public IDAddressedEntity createInstance(String name, Instance.State state, String stageID) { - String id = RandomStringGenerator.generateUniqueString(Instance.UNIQUE_ID_LENGTH, - RandomStringGenerator.ALPHA_NUMERIC, instanceMap.keySet()); - //Instance instance = new Instance(name, state, Integer.parseInt(stageID)); - Instance instance = new Instance(name, Integer.parseInt(stageID)); - instanceMap.put(id, instance); - return new IDAddressedEntity(id, instance); + HashMap returnMap = new HashMap<>(); + returnMap.put(id, instance); + return returnMap; } - public IDAddressedEntity createPlayer(String instanceURI, String characterURI, CameraState cameraState, + public HashMap createPlayer(String instanceURI, String characterURI, CameraState cameraState, EmoteState.EmoteType animationClassToStart) { String id = RandomStringGenerator.generateUniqueString(Player.UNIQUE_ID_LENGTH, RandomStringGenerator.ALPHA_NUMERIC, playerMap.keySet()); Player player = new Player(instanceURI, characterURI, cameraState, animationClassToStart); playerMap.put(id, player); - return new IDAddressedEntity(id, player); - } - - public List getInstances() { - return new ArrayList(instanceMap.values()); + HashMap returnMap = new HashMap<>(); + returnMap.put(id, player); + return returnMap; } - /** - * ID�ɑΉ�����Instance���擾���ĕԂ� - * - * @param instanceId - * �擾������Instance��ID - * @return ID�ɑΉ�����Instance - */ + public HashMap getInstances() { + return instanceMap; + } + public Instance getInstance(String instanceId) { return instanceMap.get(instanceId); } /** * �Splayer��Ԃ� - * @return */ - public List getPlayers() { - return new ArrayList(playerMap.values()); + public HashMap getPlayers() { + return playerMap; } - + /** * ID�ɑΉ�����instance�ɂ���Splayer��Ԃ� * @param instanceId - * @return */ - public List getPlayers(String instanceId) { + public HashMap getPlayers(String instanceId) { if (instanceId == null || instanceId.isEmpty()) { return getPlayers(); } - List responsePlayers = new ArrayList<>(); - for (Player player : playerMap.values()) { + HashMap responsePlayers = new HashMap<>(); + for (String id : playerMap.keySet()) { + Player player = playerMap.get(id); String[] instanceURISplit = player.getInstanceURI().split("/"); // �c/instances/{instanceId} if (instanceId.equals(instanceURISplit[instanceURISplit.length - 1])) { - responsePlayers.add(player); + responsePlayers.put(id, player); } } return responsePlayers; @@ -135,13 +115,6 @@ return player; } - /** - * ID�ɑΉ�����Instance��Map����폜���ĕԂ� - * - * @param instanceId - * Instance�����ʂ����ӂ�ID - * @return Map����폜���ꂽInstance - */ public Instance destroyInstance(String instanceId) { return instanceMap.remove(instanceId); }