diff --git a/src/main/java/com/ntlab/irisserver/entities/DrawingController.java b/src/main/java/com/ntlab/irisserver/entities/DrawingController.java index cf360c3..0ef55d2 100644 --- a/src/main/java/com/ntlab/irisserver/entities/DrawingController.java +++ b/src/main/java/com/ntlab/irisserver/entities/DrawingController.java @@ -14,6 +14,9 @@ private List members; private IStateListener stateListener; + //ニックネームからメンバーを特定するマップ + private Map membersMap= new HashMap<>(); + public DrawingController(IStateListener stateListener, List members, Game game) { @@ -24,6 +27,12 @@ //16枚の絵をそろえるために必要なステージ数を計算 16/人数 端数切り上げ maxstage = (16 + members.size() - 1)/members.size(); + + for(Member mem :members) { + String nick = mem.getNickname(); + membersMap.put(nick,mem); + } + } //絵がアップロードされたときに、ステージを進めるか確認する @@ -56,8 +65,9 @@ //pathパラメーターを引数にするので、memberではなくてString //nicknameから書いてほしいdnoを返す public int getDno(String nickname) { - List dnolist = assignments.get(nickname); - int dno = dnolist.get(stage); + Member mem = membersMap.get(nickname); + List dnoList = assignments.get(mem); + int dno = dnoList.get(stage); return dno; }