diff --git a/src/main/java/com/ntlab/irisserver/datas/keywords.txt b/src/main/java/com/ntlab/irisserver/datas/keywords.txt new file mode 100644 index 0000000..21cea2f --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/keywords.txt @@ -0,0 +1,179 @@ +あんぱん +いくら +ウインナー +うどん +うなぎ +うに +梅干し +あさり +イカ +いちご +枝豆 +海老 +おでん +柿 +牡蠣 +カステラ +かに +かぼちゃ +カレー +からあげ +キャラメル +キムチ +きゅうり +クロワッサン +栗 +ケーキ +ケチャップ +米 +コロッケ +餃子 +さくらんぼ +さつまいも +サラダ +サンドイッチ +ざるそば +じゃがいも +牛丼 +シュウマイ +生姜 +すいか +すき焼き +寿司 +ステーキ +スパゲティ +ソフトクリーム +たけのこ +たこ +たこ焼き +たまご +大根 +ちくわ +チーズ +ツナ +豆腐 +とうもろこし +トマト +どら焼き +ドーナッツ +ナス +納豆 +にんにく +ねぎ +のり +白菜 +はちみつ +ハンバーガー +バナナ +パイナップル +ピザ +ピーマン +フライドポテト +フランクフルト +ぶどう +ブロッコリー +ポテトサラダ +ポップコーン +ほうれん草 +ホタテ +マシュマロ +みかん +味噌汁 +メロン +明太子 +もやし +焼きそば +焼肉 +ヨーグルト +ラーメン +りんご +レモン +わかめ +わさび +プリン +パフェ +アイスクリーム +カステラ +ナポリタン +犬 +牛 +馬 +カバ +さる +ゾウ +猫 +豚 +ヤギ +リス +イルカ +ウサギ +狐 +キリン +ゴリラ +ネズミ +パンダ +羊 +狼 +ライオン +トナカイ +ラクダ +ペンギン +ワニ +スライム +ひまわり +バラ +タンポポ +ハエトリグサ +サボテン +車 +救急車 +パトカー +ヘリコプター +飛行機 +バス +ヨット +めがね +リモコン +ドライヤー +スマートフォン +ホイッスル +鏡 +エアコン +扇風機 +掃除機 +キーボード +マウス +イヤホン +ボールペン +風船 +地球 +傘 +弁当 +ティッシュ +目薬 +リップクリーム +コンタクト +綿棒 +ガムテープ +体温計 +消毒液 +ペットボトル +歯ブラシ +筆箱 +そろばん +トランペット +リコーダー +ギター +マイク +タオル +時計 +服 +マスク +ゲーム機 +財宝 +本 +ぬいぐるみ +椅子 +机 +テレビ +パソコン \ No newline at end of file diff --git a/src/main/java/com/ntlab/irisserver/datas/test01.jpg b/src/main/java/com/ntlab/irisserver/datas/test01.jpg new file mode 100644 index 0000000..ba20055 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test01.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test02.jpg b/src/main/java/com/ntlab/irisserver/datas/test02.jpg new file mode 100644 index 0000000..c695fec --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test02.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test03.jpg b/src/main/java/com/ntlab/irisserver/datas/test03.jpg new file mode 100644 index 0000000..8fb3b32 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test03.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test04.jpg b/src/main/java/com/ntlab/irisserver/datas/test04.jpg new file mode 100644 index 0000000..8fb3b32 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test04.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test05.jpg b/src/main/java/com/ntlab/irisserver/datas/test05.jpg new file mode 100644 index 0000000..4dcb3e7 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test05.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test06.jpg b/src/main/java/com/ntlab/irisserver/datas/test06.jpg new file mode 100644 index 0000000..df620dd --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test06.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test07.jpg b/src/main/java/com/ntlab/irisserver/datas/test07.jpg new file mode 100644 index 0000000..fcce73a --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test07.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test08.jpg b/src/main/java/com/ntlab/irisserver/datas/test08.jpg new file mode 100644 index 0000000..d2522fe --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test08.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test09.jpg b/src/main/java/com/ntlab/irisserver/datas/test09.jpg new file mode 100644 index 0000000..ec4708a --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test09.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test10.jpg b/src/main/java/com/ntlab/irisserver/datas/test10.jpg new file mode 100644 index 0000000..1d67f38 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test10.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test11.jpg b/src/main/java/com/ntlab/irisserver/datas/test11.jpg new file mode 100644 index 0000000..bfa19f0 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test11.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test12.jpg b/src/main/java/com/ntlab/irisserver/datas/test12.jpg new file mode 100644 index 0000000..935a0aa --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test12.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test13.jpg b/src/main/java/com/ntlab/irisserver/datas/test13.jpg new file mode 100644 index 0000000..6173c75 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test13.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test14.jpg b/src/main/java/com/ntlab/irisserver/datas/test14.jpg new file mode 100644 index 0000000..a0b9270 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test14.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test15.jpg b/src/main/java/com/ntlab/irisserver/datas/test15.jpg new file mode 100644 index 0000000..24f41f8 --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test15.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/datas/test16.jpg b/src/main/java/com/ntlab/irisserver/datas/test16.jpg new file mode 100644 index 0000000..4e2f3da --- /dev/null +++ b/src/main/java/com/ntlab/irisserver/datas/test16.jpg Binary files differ diff --git a/src/main/java/com/ntlab/irisserver/entities/RoomJson.java b/src/main/java/com/ntlab/irisserver/entities/RoomJson.java index f971038..ffa850d 100644 --- a/src/main/java/com/ntlab/irisserver/entities/RoomJson.java +++ b/src/main/java/com/ntlab/irisserver/entities/RoomJson.java @@ -17,15 +17,15 @@ @JsonProperty("ownerName") private String ownerName; - @JsonProperty("members") - List members = new ArrayList<>(); +// @JsonProperty("members") +// List members = new ArrayList<>(); //コンストラクター public RoomJson(Room r){ this.rid = r.rid; this.ownerName = r.ownerName; this.state = r.getState(); - this.members = r.getMembers(); +// this.members = r.getMembers(); } //getter @@ -35,5 +35,13 @@ public String getOwnerName() {return this.ownerName;} - public List getMembers() {return this.members;} +// public List getMembers() {return this.members;} + + //setter + public void setRid(String rid) {this.rid = rid;} + + public void setState(Integer state) {this.state = state;} + + public void setOwnerName(String ownerName) {this.ownerName = ownerName;} + } diff --git a/src/main/java/com/ntlab/irisserver/entities/Turn.java b/src/main/java/com/ntlab/irisserver/entities/Turn.java index aad634e..b6bae7b 100644 --- a/src/main/java/com/ntlab/irisserver/entities/Turn.java +++ b/src/main/java/com/ntlab/irisserver/entities/Turn.java @@ -17,7 +17,7 @@ @JsonProperty("max") private int max; - private List> questions = new ArrayList<>(); //> + private List questions[] = new ArrayList[16]; //> private List openlist = new ArrayList<>(); @@ -45,17 +45,17 @@ public List getOpenListAll() {return openlist;} //リストそのものを返す。 - public List> getQuestionsList() {return questions;} + public List[] getQuestionsList() {return questions;} //--------------------------------------------------------- //questions操作 - public List getQuestions(int cno){return questions.get(cno);} + public List getQuestions(int cno){return questions[cno];} - public void addQuestions(int cno, Member m){questions.get(cno).add(m);} + public void addQuestions(int cno, Member m){questions[cno].add(m);} public void delieteQuestions(int cno, Member m){ - List list = questions.get(cno); + List list = questions[cno]; for(Iterator it = list.iterator(); it.hasNext();){ Member member = (Member) it.next(); if(member.getNickname() == m.getNickname()){ @@ -66,7 +66,7 @@ } - public int sizeQuestions(){return questions.size();} + public int sizeQuestions(int cno){return questions[cno].size();} //openlist操作 diff --git a/src/main/java/com/ntlab/irisserver/models/RoomManager.java b/src/main/java/com/ntlab/irisserver/models/RoomManager.java index ad1c190..b574e87 100644 --- a/src/main/java/com/ntlab/irisserver/models/RoomManager.java +++ b/src/main/java/com/ntlab/irisserver/models/RoomManager.java @@ -44,20 +44,16 @@ //--------------------------------テスト用-------------------------------------- public void createTestRoom() { - //テストルーム作成 - Room tr = new Room("roomtest", "test"); - rooms.put("roomtest", tr); - tr.addMember("test"); //お絵描きテスト用 - Room dr = new Room("drawtest", "draw"); + Room dr = new Room("drawtest", "owner"); rooms.put("drawtest", dr); - dr.addMember("draw"); + dr.addMember("owner"); //ゲームテスト用 - Room gr = new Room("gametest", "game"); + Room gr = new Room("gametest", "owner"); rooms.put("gametest", gr); - gr.addMember("game"); + gr.addMember("owner"); } diff --git a/src/main/java/com/ntlab/irisserver/resources/MembersRest.java b/src/main/java/com/ntlab/irisserver/resources/MembersRest.java index e56127e..3d88054 100644 --- a/src/main/java/com/ntlab/irisserver/resources/MembersRest.java +++ b/src/main/java/com/ntlab/irisserver/resources/MembersRest.java @@ -1,5 +1,6 @@ package com.ntlab.irisserver.resources; +import com.ntlab.irisserver.entities.RoomJson; import com.ntlab.irisserver.models.RoomManager; import com.ntlab.irisserver.entities.Room; import com.ntlab.irisserver.entities.Member; @@ -80,10 +81,11 @@ @POST @Path("/{rid}/members") @Produces(MediaType.APPLICATION_JSON) - public Room postMembers(@PathParam("rid") String rid, @FormParam("nickname") String nickname) { + public RoomJson postMembers(@PathParam("rid") String rid, @FormParam("nickname") String nickname) { RoomManager rm = RoomManager.getInstance(); Room room = rm.getRoom(rid); List gm = room.getMembers(); + RoomJson rj = new RoomJson(room); //引数で取ってきたnicknameがListに存在しているか確認 if(room.getMember(nickname)==null && gm.size() < 10 ){ @@ -93,7 +95,7 @@ throw new WebApplicationException(response.build()); } - return room; + return rj; } diff --git a/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java b/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java index 0822ee8..51f7f5f 100644 --- a/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java +++ b/src/main/java/com/ntlab/irisserver/resources/RoomsRest.java @@ -1,4 +1,5 @@ package com.ntlab.irisserver.resources; +import com.ntlab.irisserver.entities.Member; import com.ntlab.irisserver.entities.RoomJson; import org.springframework.stereotype.Component; import com.ntlab.irisserver.entities.Room; @@ -30,10 +31,9 @@ @GET//部屋の情報を表示 @Path("/{rid}") @Produces(MediaType.APPLICATION_JSON) - public RoomJson getRoomMember(@PathParam("rid") String rid){ + public List getRoomMember(@PathParam("rid") String rid){ RoomManager rm = RoomManager.getInstance(); Room room = rm.getRoom(rid); - RoomJson rj = new RoomJson(room); if(room == null){ //部屋がなければエラー @@ -42,7 +42,7 @@ throw new WebApplicationException(response.build()); } - return rj; + return room.getMembers(); } @DELETE//部屋の削除 diff --git a/src/main/java/com/ntlab/irisserver/resources/TestRest.java b/src/main/java/com/ntlab/irisserver/resources/TestRest.java index ff245ac..f00d8d5 100644 --- a/src/main/java/com/ntlab/irisserver/resources/TestRest.java +++ b/src/main/java/com/ntlab/irisserver/resources/TestRest.java @@ -1,5 +1,6 @@ package com.ntlab.irisserver.resources; +import com.ntlab.irisserver.entities.Drawing; import com.ntlab.irisserver.entities.Game; import com.ntlab.irisserver.entities.Member; import com.ntlab.irisserver.entities.Room; @@ -27,68 +28,27 @@ this.applicationContext = applicationContext; } - public void shafflem(Room room){ - List mem = room.getMembers(); - Collections.shuffle(mem); - for(int i=0; i < 8; i++){ - if(i >= mem.size())break; - Member info = mem.get(i); - if(i==0){ - info.setMaster(true); - room.changeTeamAndMaster(info.getNickname(), "r", true); - }else if(i==1){ - info.setMaster(true); - room.changeTeamAndMaster(info.getNickname(), "b", true); - }else{ - info.setMaster(false); - } - if(i % 2 == 0){ - info.setBelongs("r"); - }else{ - info.setBelongs("b"); - } - } - } - @PUT @Path("/test") - public void putTestRoom(){ + public void putTestRoom() throws IOException { KeywordManager km = KeywordManager.getInstance(); RoomManager rm = RoomManager.getInstance(); rm.createTestRoom(); - Room tr = rm.getRoom("roomtest"); Room dr = rm.getRoom("drawtest"); Room gr = rm.getRoom("gametest"); //メンバー設定() - int length = 0; - char[] rch; - rch = new char[3]; - String rname; - while(length < 8){ - for(int i = 0; i<4; i++){ - Random random = new Random(); - rch[i] = (char)(random.nextInt(26) + 'a'); - } - rname = new String(rch); - tr.addMember(rname); - dr.addMember(rname); - gr.addMember(rname); - List members = dr.getMembers(); - length = members.size(); - } - - //チームシャッフル - - shafflem(tr); - shafflem(dr); - shafflem(gr); + dr.addMember("member"); + gr.addMember("member1"); + gr.addMember("member2"); + gr.addMember("member3"); //両部屋:gameインスタンス作成,stateの初期化 String path = null; dr.setState(2); - dr.setState(3); + gr.setState(2); + try { path = applicationContext.getResource("file:").getFile().getAbsolutePath()+"/apache-tomcat-9.0.10/webapps/irisdata/keywords.txt"; } catch (IOException e) { @@ -99,6 +59,69 @@ Game game = new Game(gr, keywords); //gametest部屋:絵の格納 + for(int i = 0; i < 16; i++){ + Drawing draw = new Drawing(); + switch (i) { + case 0: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test01.jpg"; + break; + case 1: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test02.jpg"; + break; + case 2: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test03.jpg"; + break; + case 3: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test04.jpg"; + break; + case 4: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test05.jpg"; + break; + case 5: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test06.jpg"; + break; + case 6: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test07.jpg"; + break; + case 7: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test08.jpg"; + break; + case 8: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test09.jpg"; + break; + case 9: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test10.jpg"; + break; + case 10: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test11.jpg"; + break; + case 11: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test12.jpg"; + break; + case 12: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test13.jpg"; + break; + case 13: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test14.jpg"; + break; + case 14: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test15.jpg"; + break; + case 15: + path = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps/irisdata/image/test16.jpg"; + break; + default: + break; + } + draw.setDrawing(path); + if(i<8){ + game.putDrawing(i*2, draw); + }else{ + game.putDrawing(i*2-15, draw); + } + + } + } diff --git a/src/main/java/com/ntlab/irisserver/resources/TurnsRest.java b/src/main/java/com/ntlab/irisserver/resources/TurnsRest.java index 088e7ad..1a5d546 100644 --- a/src/main/java/com/ntlab/irisserver/resources/TurnsRest.java +++ b/src/main/java/com/ntlab/irisserver/resources/TurnsRest.java @@ -101,25 +101,25 @@ //------------------------------------------------------------------------ // rooms/{rid}/game/turns/{tno}/questions: -// @GET //カードごとの疑っている人のリストを取得...は動かなくて糞 -// @Path("/{rid}/game/turns/{tno}/questions") -// @Produces(MediaType.APPLICATION_JSON) -// public List getqmember(@PathParam("rid") String rid, @PathParam("tno") int tno, @FormParam("cno") int cno){ -// -// RoomManager rm = RoomManager.getInstance(); -// Room room = rm.getRoom(rid); -// Game game = room.getGame(); -// Turn t = game.getTurn(tno); -// -// if (t == null) { -// //部屋がなければエラー -// var response = Response.status(Response.Status.NO_CONTENT); -// response.status(404).entity("部屋が存在しません"); -// throw new WebApplicationException(response.build()); -// } -// -// return t.getQuestions(cno); -// } + @GET //カードごとの疑っている人のリストを取得...は動かなくて糞 + @Path("/{rid}/game/turns/{tno}//questions") + @Produces(MediaType.APPLICATION_JSON) + public List[] getqmember(@PathParam("rid") String rid, @PathParam("tno") int tno){ + + RoomManager rm = RoomManager.getInstance(); + Room room = rm.getRoom(rid); + Game game = room.getGame(); + Turn t = game.getTurn(tno); + + if (t == null) { + //部屋がなければエラー + var response = Response.status(Response.Status.NO_CONTENT); + response.status(404).entity("部屋が存在しません"); + throw new WebApplicationException(response.build()); + } + + return t.getQuestionsList(); + } @POST //怪しいの切り替え @Path("/{rid}/game/turns/{tno}/questions") @@ -174,6 +174,7 @@ Turn t = game.getTurn(tno); Cell card = game.getCell(cno); + t.addOpenList(card); card.setIsOpen(true); }