diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
deleted file mode 100644
index 38fe66f..0000000
--- a/.idea/deploymentTargetDropDown.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/java/org/ntlab/irisclient/DrawingActivity.java b/app/src/main/java/org/ntlab/irisclient/DrawingActivity.java
index afde09f..6935caf 100644
--- a/app/src/main/java/org/ntlab/irisclient/DrawingActivity.java
+++ b/app/src/main/java/org/ntlab/irisclient/DrawingActivity.java
@@ -47,7 +47,7 @@
@Override
public void onChanged(Integer dno) {
//String keyword = keywords.get(dno);
- textKeyword.setText(dno);
+ textKeyword.setText(""+dno);
}
});
@@ -56,10 +56,11 @@
@Override
public void onChanged(Integer state) {
//stateが変わったらゲーム画面へ遷移
- Intent intent = new Intent(DrawingActivity.this, GameMemberActivity.class);
- startActivity(intent);
+ if(state == 3) {
+ Intent intent = new Intent(DrawingActivity.this, GameMemberActivity.class);
+ startActivity(intent);
+ }
}
-
});
//タイマースタート呼び出し
drawingStateViewModel.start(500);
diff --git a/app/src/main/java/org/ntlab/irisclient/DrawingCardFragment.java b/app/src/main/java/org/ntlab/irisclient/DrawingCardFragment.java
index 6bded86..94d43b6 100644
--- a/app/src/main/java/org/ntlab/irisclient/DrawingCardFragment.java
+++ b/app/src/main/java/org/ntlab/irisclient/DrawingCardFragment.java
@@ -1,18 +1,26 @@
package org.ntlab.irisclient;
+import android.content.Context;
+import android.content.res.Resources;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
+import android.widget.ImageButton;
+import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.core.content.ContextCompat;
+import androidx.core.content.res.ResourcesCompat;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
public class DrawingCardFragment extends Fragment {
+
+
// コンストラクタ
public static DrawingCardFragment newInstance(String str){
// インスタンス生成
@@ -23,19 +31,72 @@
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
- return inflater.inflate(R.layout.fragment_card_drawing, container, false);
+ super.onCreateView(inflater, container, savedInstanceState);
+ Resources resources = getResources();
+
+ View view = inflater.inflate(R.layout.fragment_card_drawing, container, false);
+
+ ImageButton imageButton00 = (ImageButton) view.findViewById(R.id.imageButton00);
+ imageButton00.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton01 = (ImageButton) view.findViewById(R.id.imageButton01);
+ imageButton01.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton02 = (ImageButton) view.findViewById(R.id.imageButton02);
+ imageButton02.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton03 = (ImageButton) view.findViewById(R.id.imageButton03);
+ imageButton03.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton10 = (ImageButton) view.findViewById(R.id.imageButton10);
+ imageButton10.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton11 = (ImageButton) view.findViewById(R.id.imageButton11);
+ imageButton11.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton12 = (ImageButton) view.findViewById(R.id.imageButton12);
+ imageButton12.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton13 = (ImageButton) view.findViewById(R.id.imageButton13);
+ imageButton13.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton20 = (ImageButton) view.findViewById(R.id.imageButton20);
+ imageButton20.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton21 = (ImageButton) view.findViewById(R.id.imageButton21);
+ imageButton21.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton22 = (ImageButton) view.findViewById(R.id.imageButton22);
+ imageButton22.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton23 = (ImageButton) view.findViewById(R.id.imageButton23);
+ imageButton23.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton30 = (ImageButton) view.findViewById(R.id.imageButton30);
+ imageButton30.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton31 = (ImageButton) view.findViewById(R.id.imageButton31);
+ imageButton31.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton32 = (ImageButton) view.findViewById(R.id.imageButton32);
+ imageButton32.setBackground(resources.getDrawable(R.drawable.test02));
+
+ ImageButton imageButton33 = (ImageButton) view.findViewById(R.id.imageButton33);
+ imageButton33.setBackground(resources.getDrawable(R.drawable.test02));
+
+ return view;
}
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
- FragmentManager fragmentManager = getChildFragmentManager();
- FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
- fragmentTransaction.addToBackStack(null);
- fragmentTransaction.replace(R.id.container,
- DrawingCardFragment.newInstance("Fragment"));
- fragmentTransaction.commit();
+// FragmentManager fragmentManager = getChildFragmentManager();
+// FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
+// fragmentTransaction.addToBackStack(null);
+// fragmentTransaction.replace(R.id.container,
+// DrawingCardFragment.newInstance("Fragment"));
+// fragmentTransaction.commit();
}
}
diff --git a/app/src/main/java/org/ntlab/irisclient/GameMemberActivity.java b/app/src/main/java/org/ntlab/irisclient/GameMemberActivity.java
index 3b880c5..ca89165 100644
--- a/app/src/main/java/org/ntlab/irisclient/GameMemberActivity.java
+++ b/app/src/main/java/org/ntlab/irisclient/GameMemberActivity.java
@@ -13,16 +13,17 @@
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_member_game);
- FragmentManager fragmentManager = getSupportFragmentManager();
- FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
+ // Fragmentを作成します
+ DrawingCardFragment fragment = new DrawingCardFragment();
+ // Fragmentの追加や削除といった変更を行う際は、Transactionを利用します
+ FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
+ // 新しく追加を行うのでaddを使用します
+ // 他にも、よく使う操作で、replace removeといったメソッドがあります
+ // メソッドの1つ目の引数は対象のViewGroupのID、2つ目の引数は追加するfragment
+ transaction.add(R.id.container, fragment);
+ // 最後にcommitを使用することで変更を反映します
+ transaction.commit();
- // BackStackを設定
- fragmentTransaction.addToBackStack(null);
-
- // パラメータを設定
- fragmentTransaction.replace(R.id.container,
- DrawingCardFragment.newInstance("Fragment"));
- fragmentTransaction.commit();
}
}
diff --git a/app/src/main/java/org/ntlab/irisclient/MemberListAdapter.java b/app/src/main/java/org/ntlab/irisclient/MemberListAdapter.java
index 371c130..ad6c9c4 100644
--- a/app/src/main/java/org/ntlab/irisclient/MemberListAdapter.java
+++ b/app/src/main/java/org/ntlab/irisclient/MemberListAdapter.java
@@ -46,12 +46,13 @@
convertView.setTag(holder);
- if (position == 0) {
+ convertView.setBackgroundColor(grayColor);
+ /*if (position == 0) {
// 背景色を変える
convertView.setBackgroundColor(Color.rgb(255, 127, 255));
}else{
convertView.setBackgroundColor(Color.rgb(0, 125, 0));
- }
+ }*/
}
else {
holder = (ViewHolder) convertView.getTag();
diff --git a/app/src/main/java/org/ntlab/irisclient/MemberRoomActivity.java b/app/src/main/java/org/ntlab/irisclient/MemberRoomActivity.java
index b9c3a37..574c50c 100644
--- a/app/src/main/java/org/ntlab/irisclient/MemberRoomActivity.java
+++ b/app/src/main/java/org/ntlab/irisclient/MemberRoomActivity.java
@@ -34,7 +34,7 @@
//フィールド
ArrayList viewMembers = new ArrayList<>();
ArrayList oldMembers = new ArrayList<>();
- String r = "roomid";
+ String roomId = "null";
String myName = "null";
@@ -45,12 +45,11 @@
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_member_room);
- String roomId = ((Iris) getApplication()).getRid();
+ roomId = ((Iris) getApplication()).getRid();
String nickname = ((Iris) getApplication()).getNickname();
-
-
- //自分のなまえ
+ //--------------------------------------------------------------------------
+ //自分の名前
Intent intentMain = getIntent();
myName = intentMain.getStringExtra("nickname");
@@ -68,49 +67,26 @@
roomViewModel.setRid(roomId);
- /*memberList = roomViewModel.getMembersLiveData().getValue();
-
- memberList.forEach(m -> members.add(m.getNickname()));*/
-
ListView membersList = (ListView) findViewById(R.id.MembersList);
BaseAdapter adapter = new MemberListAdapter(this.getApplicationContext(), R.layout.member_list_layout, viewMembers);
membersList.setAdapter(adapter);
//LiveData(List)への購読
- /*roomViewModel.getMembersLiveData().observe(this, new Observer>() {
+ roomViewModel.getMembersLiveData().observe(this, new Observer>() {
//private List members;
@Override
public void onChanged(List irisMembers) {
- int i = 0;
- if(irisMembers.size() == oldMembers.size()) {
- do {
- if (irisMembers.get(i).getNickname().equals(oldMembers.get(i))) {
- i++;
- } else {
- viewMembers.clear();
- irisMembers.forEach(m -> viewMembers.add(m.getNickname()));
- System.arraycopy(viewMembers, 0, oldMembers, 0, viewMembers.size());
+ viewMembers.clear();
+ irisMembers.forEach(m -> viewMembers.add(m.getNickname()));
- BaseAdapter adapter = new MemberListAdapter(getApplicationContext(), R.layout.member_list_layout, viewMembers);
- membersList.setAdapter(adapter);
+ BaseAdapter adapter = new MemberListAdapter(getApplicationContext(), R.layout.member_list_layout, viewMembers);
+ membersList.setAdapter(adapter);
- break;
- }
-
- } while (i < oldMembers.size());
- } else {
- viewMembers.clear();
- irisMembers.forEach(m -> viewMembers.add(m.getNickname()));
- System.arraycopy(viewMembers, 0, oldMembers, 0, viewMembers.size());
-
- BaseAdapter adapter = new MemberListAdapter(getApplicationContext(), R.layout.member_list_layout, viewMembers);
- membersList.setAdapter(adapter);
}
- }
- });*/
+ });
roomViewModel.getStateLiveData().observe(this, new Observer() {
@Override
@@ -125,9 +101,61 @@
//--------------------------------------------------------------------------
//各ボタン処理
- buttonProcesses();
+ Button redMasterButton = (Button) findViewById(R.id.beRedMaster);
+ Button redSpyButton = (Button) findViewById(R.id.beRedSpy);
+ Button blueMasterButton = (Button) findViewById(R.id.beBlueMaster);
+ Button blueSpyButton = (Button) findViewById(R.id.beBlueSpy);
+ ImageButton copyButton = (ImageButton) findViewById(R.id.copyButton);
+ //MemberRoom専用ボタン
+ ImageButton homeButton = (ImageButton) findViewById(R.id.homeButton);
+ //チームと役職の変更
+ //赤チーム・スパイマスター
+ redMasterButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"r",true);
+ }
+ });
+
+ //赤チーム・諜報員
+ redSpyButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"r",false);
+ }
+ });
+
+ //青チーム・スパイマスター
+ blueMasterButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"b",true);
+ }
+ });
+
+ //青チーム・諜報員
+ blueSpyButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"b",false);
+ }
+ });
+
+ copyButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Snackbar.make(v, "コピーしました", Snackbar.LENGTH_LONG).show();
+ }
+ });
+
+ homeButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+
+ }
+ });
//---------------------------------------------------------------
//settings情報
@@ -144,80 +172,4 @@
}
- /*
- // 初期化
- private void init() {
- setContentView(R.layout.activity_member_room);
- startObserve();
- }
-
-
- /*private getMemberInformation(){
-
- }*/
-
- /*private void addMemberToMemberList(String m){
- members.add(m);
- }*/
-
- public void buttonProcesses(){
- Button redMasterButton = (Button) findViewById(R.id.beRedMaster);
- Button redSpyButton = (Button) findViewById(R.id.beRedSpy);
- Button blueMasterButton = (Button) findViewById(R.id.beBlueMaster);
- Button blueSpyButton = (Button) findViewById(R.id.beBlueSpy);
- ImageButton copyButton = (ImageButton) findViewById(R.id.copyButton);
- ImageButton homeButton = (ImageButton) findViewById(R.id.homeButton);
-
- redMasterButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- r = "赤マスターボタン検知しました";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
- }
- });
-
- redSpyButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- r = "赤諜報員ボタン検知しました";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
- }
- });
-
- blueMasterButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- r = "青マスターボタン検知しました";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
- }
- });
-
- blueSpyButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- r = "青諜報員ボタン検知しました";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
- }
- });
-
- homeButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- r = "ホームボタン検知しました";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
- }
- });
-
- copyButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- Snackbar.make(v, "コピーしました", Snackbar.LENGTH_LONG).show();
- }
- });
- }
}
\ No newline at end of file
diff --git a/app/src/main/java/org/ntlab/irisclient/OwnerRoomActivity.java b/app/src/main/java/org/ntlab/irisclient/OwnerRoomActivity.java
index 4f24299..e8999df 100644
--- a/app/src/main/java/org/ntlab/irisclient/OwnerRoomActivity.java
+++ b/app/src/main/java/org/ntlab/irisclient/OwnerRoomActivity.java
@@ -12,6 +12,8 @@
import android.widget.ListView;
import android.widget.TextView;
+import com.google.android.material.snackbar.Snackbar;
+
import androidx.appcompat.app.AppCompatActivity;
import androidx.lifecycle.Observer;
import androidx.lifecycle.ViewModelProvider;
@@ -34,123 +36,117 @@
public class OwnerRoomActivity extends AppCompatActivity {
//フィールド
- ArrayList members = new ArrayList<>();
- String r;// = "部屋ID " + "123456";
- String nickname;
+ ArrayList viewMembers = new ArrayList<>();
+ ArrayList oldMembers = new ArrayList<>();
+ String roomId = "null";
String myName = "null";
+ //String nickname;
+ String belongs;
+ Boolean isMaster;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_owner_room);
- ((Iris) getApplication()).getNickname(); //nickname = "aaa";
- ((Iris) getApplication()).getRid(); //r ="276393b5-d835-4e4c-a35b-c00996c73a2b";
-
- //---------------------------------------------------------------------------
- //メンバーリスト
- ListView membersList = (ListView) findViewById(R.id.MembersList);
- BaseAdapter adapter = new MemberListAdapter(this.getApplicationContext(), R.layout.member_list_layout, members);
- membersList.setAdapter(adapter);
+ myName = ((Iris) getApplication()).getNickname();
+ roomId = ((Iris) getApplication()).getRid();
//自分のなまえ
- Intent intentMain = getIntent();
- myName = intentMain.getStringExtra("nickname");
+ //Intent intentMain = getIntent();
+ //myName = intentMain.getStringExtra("nickname");
+ //--------------------------------------------------------------------------
+ //メンバー表示
Member mn = new Member(myName);
mn.setBelongs("g");
mn.setMaster(false);
- members.add(mn.getNickname());
-
-
+ viewMembers.add(mn.getNickname());
//RoomViewModelへのアクセス
RoomViewModel roomViewModel = new ViewModelProvider(this).get(RoomViewModel.class);
+ roomViewModel.setRid(roomId);
+
+ ListView membersList = (ListView) findViewById(R.id.MembersList);
+
+ BaseAdapter adapter = new MemberListAdapter(this.getApplicationContext(), R.layout.member_list_layout, viewMembers);
+ membersList.setAdapter(adapter);
+
//LiveData(List)への購読
roomViewModel.getMembersLiveData().observe(this, new Observer>() {
private List members;
@Override
- public void onChanged(List members) {
+ public void onChanged(List irisMembers) {
+
+ viewMembers.clear();
+ irisMembers.forEach(m -> viewMembers.add(m.getNickname()));
+
+ BaseAdapter adapter = new MemberListAdapter(getApplicationContext(), R.layout.member_list_layout, viewMembers);
+ membersList.setAdapter(adapter);
}
});
- //--------------------------------------------------------------------------
+
//各ボタン処理
ArrayList members = new ArrayList<>();
Button redMasterButton = (Button) findViewById(R.id.beRedMaster);
Button redSpyButton = (Button) findViewById(R.id.beRedSpy);
Button blueMasterButton = (Button) findViewById(R.id.beBlueMaster);
Button blueSpyButton = (Button) findViewById(R.id.beBlueSpy);
- Button randomButton = (Button) findViewById(R.id.random);
- Button startButton = (Button) findViewById(R.id.start);
ImageButton copyButton = (ImageButton) findViewById(R.id.copyButton);
+ //OwnerRoom専用ボタン
+ Button randomButton = (Button) findViewById(R.id.random);
+ Button startButton = (Button) findViewById(R.id.start);
+
+
+ //チームと役職の変更
+ //赤チーム・スパイマスター
redMasterButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- r = "部屋ID " + "red";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
-
- members.clear();
- members.add("マスターのRedさん");
- ListView listView = (ListView)findViewById(R.id.MembersList);
-
- listView.setAdapter(adapter);
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"r",true);
}
});
+ //赤チーム・諜報員
redSpyButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- r = "部屋ID " + "red";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
-
- members.add("スパイのRedさん");
- ListView listView = (ListView)findViewById(R.id.MembersList);
- listView.setAdapter(adapter);
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"r",false);
}
});
+ //青チーム・スパイマスター
blueMasterButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- r = "部屋ID " + "blue";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
-
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"b",true);
}
});
+ //青チーム・諜報員
blueSpyButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- r = "部屋ID " + "red";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
+ roomViewModel.changeBelongsAndMaster(roomId, myName,"b",false);
+ }
+ });
- members.add("スパイのBlueさん");
- ListView listView = (ListView)findViewById(R.id.MembersList);
- listView.setBackgroundColor(Color.parseColor("#3a5fe8"));
- listView.setAdapter(adapter);
+ copyButton.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ Snackbar.make(v, "コピーしました", Snackbar.LENGTH_LONG).show();
}
});
randomButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- r = "部屋ID " + "random";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
-
- members.add("ランダムさん");
- ListView listView = (ListView)findViewById(R.id.MembersList);
- listView.setAdapter(adapter);
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://nitta-lab-www.is.konan-u.ac.jp/iris/")
@@ -164,7 +160,7 @@
startButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- roomViewModel.startDrawing(r, nickname);
+ roomViewModel.startDrawing(roomId, myName);
Intent intent = new Intent(OwnerRoomActivity.this,DrawingActivity.class);
startActivity(intent);
@@ -172,24 +168,6 @@
}
});
- copyButton.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- r = "部屋ID " + "copy";
- TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
-
- members.add("コピーしました");
- ListView listView = (ListView)findViewById(R.id.MembersList);
- listView.setAdapter(adapter);
- }
- });
-
- //--------------------------------------------------------------------------
- //メンバー表示
-
- //members.add("1さん");
-
//---------------------------------------------------------------
//settings情報
String s = "設定\\nお絵描き";
@@ -199,7 +177,7 @@
//---------------------------------------------------------------
//部屋ID情報
TextView RoomIdText = findViewById(R.id.roomID);
- RoomIdText.setText(r);
+ RoomIdText.setText(roomId);
@@ -207,11 +185,4 @@
roomViewModel.start(500);
}
- /*private getMemberInformation(){
-
- }*/
-
- /*private void addMemberToMemberList(String m){
- members.add(m);
- }*/
- }
\ No newline at end of file
+}
\ No newline at end of file
diff --git a/app/src/main/java/org/ntlab/irisclient/entities/TurnJson.java b/app/src/main/java/org/ntlab/irisclient/entities/TurnJson.java
index a36eb5b..10f2116 100644
--- a/app/src/main/java/org/ntlab/irisclient/entities/TurnJson.java
+++ b/app/src/main/java/org/ntlab/irisclient/entities/TurnJson.java
@@ -17,51 +17,4 @@
public TurnJson() {
}
- //---------------------------------------------------------
- //ゲッター
-
- public String getHint() {
- return hint;
- }
-
- public String getTeam() {
- return team;
- }
-
- public int getMax() {
- return max;
- }
-
- public int getTurnstate() {return turnstate;}
-
- public List getOpenListAll() {return openlist;} //リストそのものを返す。
-
- //---------------------------------------------------------
- //セッター
-
- public void setHint(String hint) {
- this.hint = hint;
- }
-
- public void setTeam(String team) {
- this.team = team;
- }
-
- public void setMax(int max) {
- this.max = max;
- }
-
- public void setTurnstate(int turnstate) {this.turnstate = turnstate;}
-
- //---------------------------------------------------------
- //openlist操作
-
- public Integer getOpenListSolo(int num){return openlist.get(num);}
-
- public void addOpenList(Integer cno){openlist.add(cno);}
-
- public void delieteOpenList(int num){openlist.remove(num);}
-
- public int sizeOpenList(){return openlist.size();}
-
}
diff --git a/app/src/main/java/org/ntlab/irisclient/models/Game.java b/app/src/main/java/org/ntlab/irisclient/models/Game.java
index 99c4f35..7a769a1 100644
--- a/app/src/main/java/org/ntlab/irisclient/models/Game.java
+++ b/app/src/main/java/org/ntlab/irisclient/models/Game.java
@@ -13,4 +13,11 @@
private List map = new ArrayList<>();//cno順にdnoを管理
private List color = new ArrayList<>();//cno順にr,g,b,dを管理
+ //セッター
+ public void setDrawingList(Map dlist) {drawingList = dlist;}
+ public void setKeywordList(Map klist) {keywordList = klist;}
+ public void setCellList(Map clist) {cellList = clist;}
+ public void setMap(List map) {this.map = map;}
+ public void setColor(List color) {this.color = color;}
+
}
diff --git a/app/src/main/java/org/ntlab/irisclient/models/Turn.java b/app/src/main/java/org/ntlab/irisclient/models/Turn.java
new file mode 100644
index 0000000..7995657
--- /dev/null
+++ b/app/src/main/java/org/ntlab/irisclient/models/Turn.java
@@ -0,0 +1,61 @@
+package org.ntlab.irisclient.models;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class Turn {
+
+ private String hint;
+ private String team;
+ private int max;
+ private int turnstate; //turn内でスパイマスターと諜報員の操作の切り替えに使用(0:スパイマスター, 1:諜報員)
+ private List openlist = new ArrayList<>();
+
+ //---------------------------------------------------------
+ //ゲッター
+
+ public String getHint() {
+ return hint;
+ }
+
+ public String getTeam() {
+ return team;
+ }
+
+ public int getMax() {
+ return max;
+ }
+
+ public int getTurnstate() {return turnstate;}
+
+ public List getOpenListAll() {return openlist;} //リストそのものを返す。
+
+ //---------------------------------------------------------
+ //セッター
+
+ public void setHint(String hint) {
+ this.hint = hint;
+ }
+
+ public void setTeam(String team) {
+ this.team = team;
+ }
+
+ public void setMax(int max) {
+ this.max = max;
+ }
+
+ public void setTurnstate(int turnstate) {this.turnstate = turnstate;}
+
+ //---------------------------------------------------------
+ //openlist操作
+
+ public Integer getOpenListSolo(int num){return openlist.get(num);}
+
+ public void addOpenList(Integer cno){openlist.add(cno);}
+
+ public void delieteOpenList(int num){openlist.remove(num);}
+
+ public int sizeOpenList(){return openlist.size();}
+
+}
diff --git a/app/src/main/java/org/ntlab/irisclient/resources/GameRest.java b/app/src/main/java/org/ntlab/irisclient/resources/GameRest.java
index 5304a29..dc28457 100644
--- a/app/src/main/java/org/ntlab/irisclient/resources/GameRest.java
+++ b/app/src/main/java/org/ntlab/irisclient/resources/GameRest.java
@@ -84,7 +84,7 @@
//-----------------------------------------------
// マスターのヒントを送信するメソッド + 最大回答数も送信
@PUT("/{rid}/game/turns/{tno}/hint")
- Call putHint(
+ Call putHint(
@Path("rid") String rid,
@Path("tno") int tno,
@Field("hint") String hint,
diff --git a/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java b/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java
index ac7e9df..a28aed9 100644
--- a/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java
+++ b/app/src/main/java/org/ntlab/irisclient/viewmodels/GameViewModel.java
@@ -1,20 +1,9 @@
package org.ntlab.irisclient.viewmodels;
-import org.ntlab.irisclient.entities.RoomJson;
import org.ntlab.irisclient.entities.TurnJson;
-import org.ntlab.irisclient.models.Member;
-import org.ntlab.irisclient.models.Settings;
import org.ntlab.irisclient.resources.GameRest;
-import org.ntlab.irisclient.resources.RoomsRest;
-
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
-import androidx.lifecycle.ViewModel;
-
-import com.squareup.moshi.Json;
-
-import java.util.List;
-
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
@@ -26,10 +15,10 @@
//フィールド
private String rid;
- private Integer tno;
+ private int tno;
private String team;
private String hint;
- private Integer max;
+ private int max;
private Integer openlist;
final private MutableLiveData turnsMutableLiveData;
@@ -38,8 +27,8 @@
final private Retrofit retrofit;
//更新比較用フィールド
- private String turnsPreData;
- private TurnJson turnPreData;
+ private String turnsPreData = null;
+ private TurnJson turnPreData = null;
//------------------------------------------------------------------
//コンストラクタ
@@ -58,18 +47,12 @@
this.rid = rid;
}
- public void putHint(String hint) {
+ public void putHint(String rid, int tno, String hint, int max) {
this.hint = hint;
- }
-
- public void putTeam(String team) {
- this.team = team;
- }
-
- public void putMax(Integer max) {
this.max = max;
}
+
//--------------------------------------------------------------
// getter
public LiveData getTurnsLiveData() {
@@ -78,22 +61,32 @@
public LiveData getTurnLiveData() {
return this.turnMutableLiveData;
}
+// public Integer getTurnNumber(String rid) {
+// return tno;
+// }
- public Integer getTurnNumber(Integer rid) {
- return tno;
+ //-----------------------------------------------------------------------------
+ // updates
+ @Override
+ public void update() {
+ updateTurns(rid);
+ updateTurn(rid);
}
//ターン数の取得(赤か青のターンの判別)
- public void updateTurns() {
+ public void updateTurns(String rid) {
final GameRest gameRest = retrofit.create(GameRest.class);
- Call call = gameRest.getTeam(team);
+ Call call = gameRest.getTeam(rid);
call.enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
if (response.isSuccessful()){
-
- if(response.body().equals(turnsPreData)){
+ if(turnsPreData == null){
+ //初回代入
+ turnsMutableLiveData.setValue(response.body());
+ turnsPreData = response.body();
+ }else if(response.body().equals(turnsPreData)){
//値が一緒なら書き換えない
}else{
//値が異なるときのみライブデータを上書き
@@ -105,21 +98,26 @@
@Override
public void onFailure(Call call, Throwable t) {
+ System.out.println("通信失敗:changeBelongsAndMaster");
+ System.out.println(t);
}
});
}
//hint,openlist,maxの取得
- public void updateTurn() {
+ public void updateTurn(String rid) {
final GameRest gameRest = retrofit.create(GameRest.class);
- Call call = gameRest.getTurns(rid, tno);
+ Call call = gameRest.putHint(rid, tno, hint, max);
call.enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {
if (response.isSuccessful()){
-
- if(response.body().equals(turnPreData)){
+ if(turnsPreData == null){
+ //初回代入
+ turnMutableLiveData.setValue(response.body());
+ turnPreData = response.body();
+ }if(response.body().equals(turnPreData)){
//値が一緒なら書き換えない
}else{
//値が異なるときのみライブデータを上書き
@@ -131,18 +129,13 @@
@Override
public void onFailure(Call call, Throwable t) {
+ System.out.println("通信失敗:changeBelongsAndMaster");
+ System.out.println(t);
}
});
}
- //-----------------------------------------------------------------------------
- // updates
- @Override
- public void update() {
- updateTurns();
- updateTurn();
- }
}
diff --git a/app/src/main/res/drawable/test01.jpg b/app/src/main/res/drawable/test01.jpg
new file mode 100644
index 0000000..ba20055
--- /dev/null
+++ b/app/src/main/res/drawable/test01.jpg
Binary files differ
diff --git a/app/src/main/res/drawable/test02.jpg b/app/src/main/res/drawable/test02.jpg
new file mode 100644
index 0000000..935a0aa
--- /dev/null
+++ b/app/src/main/res/drawable/test02.jpg
Binary files differ
diff --git a/app/src/main/res/layout/fragment_card_drawing.xml b/app/src/main/res/layout/fragment_card_drawing.xml
index 27a2d0a..171d5ea 100644
--- a/app/src/main/res/layout/fragment_card_drawing.xml
+++ b/app/src/main/res/layout/fragment_card_drawing.xml
@@ -14,7 +14,8 @@
android:layout_marginTop="5dp"
app:layout_constraintStart_toEndOf="@+id/imageButton11"
app:layout_constraintTop_toBottomOf="@+id/imageButton02"
- tools:srcCompat="@tools:sample/avatars" />
+ tools:ignore="SpeakableTextPresentCheck"
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01"
+ />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
+ android:background="@drawable/test01" />
\ No newline at end of file