diff --git a/src/main/java/cactusServer/entities/Area.java b/src/main/java/cactusServer/entities/Area.java index 9ebb12e..f8dc5c3 100644 --- a/src/main/java/cactusServer/entities/Area.java +++ b/src/main/java/cactusServer/entities/Area.java @@ -31,7 +31,7 @@ return region; } - public Plain getRegion(int index) { + public Plain getPlain(int index) { return region[index]; } diff --git a/src/main/java/cactusServer/entities/Instance.java b/src/main/java/cactusServer/entities/Instance.java index a3a2b2c..68b3b5d 100644 --- a/src/main/java/cactusServer/entities/Instance.java +++ b/src/main/java/cactusServer/entities/Instance.java @@ -50,7 +50,7 @@ setName(name); setState(state); setStage(stageURI); - initUniverse(); + //initUniverse(); } private void initUniverse() { diff --git a/src/main/java/cactusServer/entities/Player.java b/src/main/java/cactusServer/entities/Player.java index d13ab22..2841ef7 100644 --- a/src/main/java/cactusServer/entities/Player.java +++ b/src/main/java/cactusServer/entities/Player.java @@ -49,6 +49,7 @@ setPosition(character.getPosition()); setAngle(character.getAngle()); setAreaURI(character.getAreaURI()); + setCharacterURI(characterURI); } public String getInstanceURI() { @@ -151,6 +152,11 @@ private void updateEmoteType(EmoteState.EmoteType animationClassToStart) { this.emoteState.setEmoteType(animationClassToStart); } + + public void changeCharacter(String characterURI) { + writeCharacterData(this.characterURI); + readCharacterData(characterURI); + } public void destroy() { writeCharacterData(characterURI); diff --git a/src/main/java/cactusServer/models/Instances.java b/src/main/java/cactusServer/models/Instances.java index 3607ed9..27697f0 100644 --- a/src/main/java/cactusServer/models/Instances.java +++ b/src/main/java/cactusServer/models/Instances.java @@ -77,9 +77,32 @@ return instanceMap.get(instanceId); } + /** + * �Splayer��Ԃ� + * @return + */ public List getPlayers() { return new ArrayList(playerMap.values()); } + + /** + * ID�ɑΉ�����instance�ɂ���Splayer��Ԃ� + * @param instanceId + * @return + */ + public List getPlayers(String instanceId) { + if (instanceId == null || instanceId.isEmpty()) { + return getPlayers(); + } + List responsePlayers = new ArrayList<>(); + for (Player player : playerMap.values()) { + String[] instanceURISplit = player.getInstanceURI().split("/"); // �c/instances/{instanceId} + if (instanceId.equals(instanceURISplit[instanceURISplit.length - 1])) { + responsePlayers.add(player); + } + } + return responsePlayers; + } public Player getPlayer(String playerId) { return playerMap.get(playerId);