fin affichage victoire/defaite
This commit is contained in:
parent
df84ff5644
commit
e2b69773c7
@ -144,14 +144,15 @@ public class GameActivity extends Activity implements SaisieActivity {
|
||||
for (int i=0;i<4;i++){
|
||||
this.saisie.addSelection(this.combiGagnante[i]);
|
||||
}
|
||||
EndView lastview=new EndView(this, this.grille, this.combiGagnante);
|
||||
EndView lastview=new EndView(this, this.grille, this.combiGagnante, this.rootView);
|
||||
this.view=lastview;
|
||||
this.rootView.removeAllViews();
|
||||
this.view.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
|
||||
this.view.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||
this.view.setBackgroundColor(this.getResources().getColor(R.color.grey));
|
||||
this.rootView.addView(this.view);
|
||||
|
||||
TextView textView = new TextView(this);
|
||||
textView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||
textView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||
textView.setGravity(Gravity.CENTER);
|
||||
if (gagne){
|
||||
textView.setText("Victoire de l'attaquant en "+this.grille.getSizeSubs()+" coups");
|
||||
@ -159,7 +160,7 @@ public class GameActivity extends Activity implements SaisieActivity {
|
||||
textView.setText("Victoire du défenseur");
|
||||
}
|
||||
this.rootView.addView(textView);
|
||||
System.out.println(textView.getText());
|
||||
System.out.println(textView.getX() + " : " + textView.getY());
|
||||
this.rootView.invalidate();
|
||||
}
|
||||
|
||||
|
@ -9,6 +9,7 @@ import android.graphics.Canvas;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Paint;
|
||||
import android.view.View;
|
||||
import android.widget.LinearLayout;
|
||||
|
||||
import com.example.mastermind.GameActivity;
|
||||
import com.example.mastermind.R;
|
||||
@ -25,17 +26,18 @@ public class EndView extends View {
|
||||
private Grille grille;
|
||||
private Paint circle;
|
||||
private int nbcoups;
|
||||
public EndView(Context context, Grille grille, Integer[] combiWin) {
|
||||
private LinearLayout rootView;
|
||||
public EndView(Context context, Grille grille, Integer[] combiWin, LinearLayout rootView) {
|
||||
super(context);
|
||||
this.combiWin=combiWin;
|
||||
this.grille=grille;
|
||||
this.circle = new Paint();
|
||||
this.rootView = rootView;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDraw(Canvas canvas){
|
||||
super.onDraw(canvas);
|
||||
this.setBackgroundColor(this.getResources().getColor(R.color.grey));
|
||||
//affichage des anciennes soumissions
|
||||
//copie des soumissions
|
||||
LinkedList<Integer> grille = new LinkedList<Integer>();
|
||||
@ -43,7 +45,7 @@ public class EndView extends View {
|
||||
for (int y = 0; y < 10; y++) {
|
||||
for (int x = 0; x < 4; x++) {
|
||||
this.circle.setColor(grille.pop());
|
||||
canvas.drawCircle((x * this.getWidth() / 8 + (this.getWidth() * 21 / 68)), (y * this.getHeight() / 14 + this.getHeight() / 21), this.getWidth() / 17, this.circle);
|
||||
canvas.drawCircle((x * this.getWidth() / 8 + (this.getWidth() * 21 / 68)), (y * this.rootView.getHeight() / 14 + this.rootView.getHeight() / 21), this.getWidth() / 17, this.circle);
|
||||
}
|
||||
}
|
||||
LinkedList<Integer> notation = new LinkedList<Integer>();
|
||||
@ -51,18 +53,52 @@ public class EndView extends View {
|
||||
for(int y=0; y<10; y++) {
|
||||
for(int x=0; x<2; x++) { // colonne gauche
|
||||
this.circle.setColor(notation.pop());
|
||||
canvas.drawCircle((x*this.getWidth()/11+(this.getWidth()/11)),(y*this.getHeight()/14+getHeight()/21), this.getWidth()/26, this.circle);
|
||||
canvas.drawCircle((x*this.getWidth()/11+(this.getWidth()/11)),(y*this.rootView.getHeight()/14+this.rootView.getHeight()/21), this.getWidth()/26, this.circle);
|
||||
}
|
||||
for(int x=0; x<2; x++) { // colonne droite
|
||||
this.circle.setColor(notation.pop());
|
||||
canvas.drawCircle((x*this.getWidth()/11+(this.getWidth()*4/5)),(y*this.getHeight()/14+getHeight()/21), this.getWidth()/26, this.circle);
|
||||
canvas.drawCircle((x*this.getWidth()/11+(this.getWidth()*4/5)),(y*this.rootView.getHeight()/14+this.rootView.getHeight()/21), this.getWidth()/26, this.circle);
|
||||
}
|
||||
}
|
||||
// affichage de la zone de saisie
|
||||
//copie de la zone de saisie
|
||||
for (int i=0;i<4;i++){
|
||||
this.circle.setColor(this.combiWin[i]);
|
||||
canvas.drawCircle((i*this.getWidth()/5+this.getWidth()/5),this.getHeight()-this.getHeight()*2/9, this.getWidth()/14, this.circle);
|
||||
canvas.drawCircle((i*this.getWidth()/5+this.getWidth()/5),this.rootView.getHeight()*7/9, this.getWidth()/14, this.circle);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
|
||||
|
||||
int desiredWidth = this.getWidth();
|
||||
int desiredHeight = this.rootView.getHeight()*7/9+this.getWidth()/5+this.rootView.getWidth()/7;
|
||||
|
||||
int widthMode = MeasureSpec.getMode(widthMeasureSpec);
|
||||
int widthSize = MeasureSpec.getSize(widthMeasureSpec);
|
||||
int heightMode = MeasureSpec.getMode(heightMeasureSpec);
|
||||
int heightSize = MeasureSpec.getSize(heightMeasureSpec);
|
||||
|
||||
int width;
|
||||
int height;
|
||||
|
||||
if (widthMode == MeasureSpec.EXACTLY) {
|
||||
width = widthSize;
|
||||
} else if (widthMode == MeasureSpec.AT_MOST) {
|
||||
width = Math.min(desiredWidth, widthSize);
|
||||
} else {
|
||||
width = desiredWidth;
|
||||
}
|
||||
|
||||
if (heightMode == MeasureSpec.EXACTLY) {
|
||||
height = heightSize;
|
||||
} else if (heightMode == MeasureSpec.AT_MOST) {
|
||||
height = Math.min(desiredHeight, heightSize);
|
||||
} else {
|
||||
height = desiredHeight;
|
||||
}
|
||||
setMeasuredDimension(width, height);
|
||||
System.out.println("Voulu : "+width+" par "+height);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -43,22 +43,21 @@ public class Bot {
|
||||
for(int i=0; i<4;i++) {
|
||||
if (copyCombi[i]==soumission[i]) {
|
||||
note.add(this.pionsNotation[1]);
|
||||
System.out.println(copyCombi[i]+" good "+i);
|
||||
copyCombi[i]=null;
|
||||
soumission[i]=null;
|
||||
System.out.println(copyCombi[i]+" good "+i);
|
||||
}
|
||||
}
|
||||
|
||||
//blancs
|
||||
for(int i=0; i<4;i++) {
|
||||
if(copyCombi[i]!=null){
|
||||
if(soumission[i]!=null){
|
||||
for (int y=0;y<4;y++){
|
||||
if (soumission[y]==copyCombi[i]) {
|
||||
if (soumission[i]==copyCombi[y]) {
|
||||
note.add(this.pionsNotation[0]);
|
||||
System.out.println(copyCombi[i] + " almost "+i+" "+y);
|
||||
copyCombi[i] = null;
|
||||
System.out.println(copyCombi[i] + " almost "+i+" "+y);
|
||||
copyCombi[y] = null;
|
||||
soumission[i] = null;
|
||||
System.out.println(i+" "+y);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user