package game; import account.Account; import account.AccountManager; import room.Room; import room.RoomManager; import game.Game; public class TestPlayerSearchVisitorjava extends Game { public static void main(String[] args) { AccountManager acmgr = AccountManager.getInstance(); RoomManager roommgr = RoomManager.getInstance(); GameManager gamemgr = GameManager.getInstance(); /* Test時はRoomのMAX_MENBERを6に変更する */ String TEST_SID = "7"; //Player12人作成 for(int i=0; i<12; i++) { acmgr.registration("name"+i, "pass", String.valueOf(i)); } //Player12人作成確認 for(int i=0; i<12; i++) { Account ac = new Account(); ac = acmgr.getAccount(String.valueOf(i)); } //room 2部屋作成 name0~5 と name6〜11 の部屋 roommgr.createRoom("room0-5", "mode0", "pass0", "0"); roommgr.createRoom("room6-11", "mode1", "pass1", "6"); //room0-5に name1〜5 を追加 Account ac0 = new Account(); Room room0 = new Room(); ac0 = acmgr.getAccount("0"); room0 = ac0.getRoom(); for(int i=1; i<=5; i++) { Account ac = new Account(); ac = acmgr.getAccount(String.valueOf(i)); room0.addMember(ac); } //room0-5のチーム分け、game作成 room0.divideTeam(); //room6-11に name7〜11 を追加 Account ac6 = new Account(); ac6 = acmgr.getAccount("6"); Room room6 = ac6.getRoom(); for(int i=7; i<=11; i++) { Account ac = new Account(); ac = acmgr.getAccount(String.valueOf(i)); room6.addMember(ac); } //room6-11のチーム分け、game作成 room6.divideTeam(); Game mygame = gamemgr.getGame(0); /***********************以下チーム分け表示分*************************/ System.out.println("==========room0-5=========="); Game game0 = room0.getGame(); System.out.println(" --------RedTeam-------- "); for(int i=0; i<3; i++) { Account ac = game0.getTeamMember(i,0); System.out.println(" Name:"+ac.getName()+" sId:"+ac.getsId()); } System.out.println(" -------BlueTeam-------- "); for(int i=0; i<3; i++) { Account ac = game0.getTeamMember(i,1); System.out.println(" Name:"+ac.getName()+" sId:"+ac.getsId()); } System.out.println("==========================="); System.out.println(""); //room6-11のチーム表示 System.out.println("==========room6-11========="); Game game6 = room6.getGame(); System.out.println(" --------RedTeam-------- "); for(int i=0; i<3; i++) { Account ac = game6.getTeamMember(i,0); System.out.println(" Name:"+ac.getName()+" sId:"+ac.getsId()); } System.out.println(" -------BlueTeam-------- "); for(int i=0; i<3; i++) { Account ac = game6.getTeamMember(i,1); System.out.println(" Name:"+ac.getName()+" sId:"+ac.getsId()); } System.out.println("==========================="); System.out.println(""); /***********************以上チーム分け表示分*************************/ //visitor PlayerSearchVisitor visitor = new PlayerSearchVisitor(TEST_SID); gamemgr.accept(visitor); Game game = visitor.getGame(); Team team = visitor.getTeam(); Account account = visitor.getPlayerAccount(); String teamColor; if(account.getTeam() == 0){ teamColor = "RedTeam"; } else { teamColor = "BlueTeam"; } System.out.println("search sid " + TEST_SID ); System.out.println("----------Result----------"); System.out.println("Name : " + account.getName()); System.out.println("sId : " + account.getsId()); System.out.println("Room : " + game.getRoomName()); System.out.println("Team : " + teamColor); } }