continuation de la soft persistance

main
juduteyrat 3 years ago
parent f8c99ea655
commit 706f659adc

@ -7,7 +7,9 @@
<entry key="../../../../../../../../etud/alpoint/cours/2A/android/projet/projet-android/code/app/src/main/res/layout/menu_principal.xml" value="0.296195652173913" />
<entry key="../../../../../../../etud/alpoint/cours/2A/android/projet/projet-android/app/src/main/res/layout-port/menu_principal.xml" value="0.29030797101449274" />
<entry key="../../../../../etud/juduteyrat/Documents/android/code/app/src/main/res/layout-port/menu_principal.xml" value="0.19739583333333333" />
<entry key="../../../../../etud/juduteyrat/Documents/android/code/app/src/main/res/layout/jeu_de_la_vie.xml" value="0.19375" />
<entry key="../../../../../etud/juduteyrat/Documents/android/code/app/src/main/res/layout/menu_principal.xml" value="0.33" />
<entry key="../../../../../etud/juduteyrat/Documents/android/code/app/src/main/res/layout/vue_jeu.xml" value="0.22916666666666666" />
<entry key="app/src/main/res/layout-port/menu_principal.xml" value="0.296195652173913" />
<entry key="app/src/main/res/layout-port/text_item.xml" value="0.21197916666666666" />
<entry key="app/src/main/res/layout-port/vue_jeu.xml" value="0.21197916666666666" />

@ -1,23 +1,29 @@
package projet.iut.jeu_de_la_vie.launcher;
import android.content.Context;
import android.graphics.Color;
import android.os.Bundle;
import android.text.Editable;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.constraintlayout.widget.ConstraintLayout;
import androidx.constraintlayout.widget.ConstraintSet;
import java.awt.font.NumericShaper;
import java.util.List;
import projet.iut.jeu_de_la_vie.R;
import projet.iut.jeu_de_la_vie.model.Manager;
import projet.iut.jeu_de_la_vie.model.cellule.Cellule;
import projet.iut.jeu_de_la_vie.model.plateau.Plateau;
public class Launcher extends AppCompatActivity {
@ -35,29 +41,35 @@ public class Launcher extends AppCompatActivity {
super.onCreate(savedInstanceState);
manager = new Manager();
setContentView(R.layout.menu_principal);
manager.lancerJeu();
//très moche à enlever plus tard
start = findViewById(R.id.startButton);
//manager.lancerJeu();
start.setOnClickListener(l -> {
EditText colones = findViewById(R.id.nbColone);
manager.getActualiseurCellule().getArbitre().getPlateau().setColone(Integer.parseInt(colones.getText().toString()));
//manager.getActualiseurCellule().getArbitre().getPlateau().setColone(Integer.parseInt(colones.getText().toString()));
EditText lignes = findViewById(R.id.nbLignes);
manager.getActualiseurCellule().getArbitre().getPlateau().setLigne(Integer.parseInt(lignes.getText().toString()));
//manager.getActualiseurCellule().getArbitre().getPlateau().setLigne(Integer.parseInt(lignes.getText().toString()));
for (List<Cellule> list : manager.getActualiseurCellule().getArbitre().getPlateau().getGrille()) {
for (Cellule cell : list) {
Log.d("instances",cell.isAlive().toString());
}
}
//updateGame();
});
findViewById(R.id.test).setOnClickListener(y -> {
manager.getActualiseurCellule().getArbitre().getPlateau().setColone(2);
manager.getActualiseurCellule().getArbitre().getPlateau().setLigne(2);
manager.getActualiseurCellule().getArbitre().getPlateau().getCell(1, 1).setAlive(true);
});
}
@Override
protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
manager.getActualiseurCellule().getArbitre().getPlateau().setColone(savedInstanceState.getInt("colonnes"));
manager.getActualiseurCellule().getArbitre().getPlateau().setLigne(savedInstanceState.getInt("lignes"));
public void updateGame (){
}
@Override
protected void onStop() {
@ -101,9 +113,13 @@ public class Launcher extends AppCompatActivity {
@Override
protected void onSaveInstanceState(@NonNull Bundle outState) {
super.onSaveInstanceState(outState);
int colonnes = manager.getActualiseurCellule().getArbitre().getPlateau().getColone();
outState.putInt("colonnes",colonnes);
int lignes = manager.getActualiseurCellule().getArbitre().getPlateau().getLigne();
outState.putInt("lignes",lignes);
outState.putSerializable("manager",manager);
}
@Override
protected void onRestoreInstanceState(@NonNull Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
manager = (Manager) savedInstanceState.getSerializable("manager");
}
}

@ -52,4 +52,9 @@ public abstract class Arbitre {
* @see CellState
*/
public abstract CellState verifierChangementCellules(int x, int y, CellulesVivantes reference);
public void setPlateau (Plateau plateau){
this.plateau = plateau;
}
}

@ -66,4 +66,6 @@ public class ArbitreConwayStyle extends Arbitre{
}
return false;
}
}

@ -1,11 +1,13 @@
package projet.iut.jeu_de_la_vie.model.boucleDeJeu.observer;
import java.io.Serializable;
/**
* Permet d'obbserver une boucle de jeu
* @author Yohann Breuil
* @author Allan Point
*/
public interface ObserverBDJ {
public interface ObserverBDJ extends Serializable {
/**
* Réaction en cas de notification
*/

@ -1,10 +1,12 @@
package projet.iut.jeu_de_la_vie.model.plateau;
import java.io.Serializable;
/**
* Abstraction du clonnage de plateau
* @author Yohann Breuil
* @author Allan Point
*/
public interface PrototypePlateau {
public interface PrototypePlateau{
Plateau cloner();
}

@ -0,0 +1,268 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<CheckBox
android:id="@+id/checkBox35"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox31"
app:layout_constraintTop_toBottomOf="@+id/checkBox32" />
<CheckBox
android:id="@+id/checkBox36"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox35"
app:layout_constraintTop_toBottomOf="@+id/checkBox33" />
<CheckBox
android:id="@+id/checkBox37"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox36"
app:layout_constraintTop_toBottomOf="@+id/checkBox34" />
<CheckBox
android:id="@+id/checkBox5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox8"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/checkBox7"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/checkBox4" />
<CheckBox
android:id="@+id/checkBox8"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox3"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/checkBox9"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox7"
app:layout_constraintTop_toBottomOf="@+id/checkBox" />
<CheckBox
android:id="@+id/checkBox10"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox9"
app:layout_constraintTop_toBottomOf="@+id/checkBox2" />
<CheckBox
android:id="@+id/checkBox11"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox10"
app:layout_constraintTop_toBottomOf="@+id/checkBox3" />
<CheckBox
android:id="@+id/checkBox12"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox11"
app:layout_constraintTop_toBottomOf="@+id/checkBox8" />
<CheckBox
android:id="@+id/checkBox13"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox12"
app:layout_constraintTop_toBottomOf="@+id/checkBox5" />
<CheckBox
android:id="@+id/checkBox14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/checkBox7" />
<CheckBox
android:id="@+id/checkBox15"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox14"
app:layout_constraintTop_toBottomOf="@+id/checkBox9" />
<CheckBox
android:id="@+id/checkBox16"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox15"
app:layout_constraintTop_toBottomOf="@+id/checkBox10" />
<CheckBox
android:id="@+id/checkBox17"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox16"
app:layout_constraintTop_toBottomOf="@+id/checkBox11" />
<CheckBox
android:id="@+id/checkBox18"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox17"
app:layout_constraintTop_toBottomOf="@+id/checkBox12" />
<CheckBox
android:id="@+id/checkBox19"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox18"
app:layout_constraintTop_toBottomOf="@+id/checkBox13" />
<CheckBox
android:id="@+id/checkBox20"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/checkBox14" />
<CheckBox
android:id="@+id/checkBox21"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox20"
app:layout_constraintTop_toBottomOf="@+id/checkBox15" />
<CheckBox
android:id="@+id/checkBox22"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox21"
app:layout_constraintTop_toBottomOf="@+id/checkBox16" />
<CheckBox
android:id="@+id/checkBox23"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox22"
app:layout_constraintTop_toBottomOf="@+id/checkBox17" />
<CheckBox
android:id="@+id/checkBox24"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox23"
app:layout_constraintTop_toBottomOf="@+id/checkBox18" />
<CheckBox
android:id="@+id/checkBox25"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox24"
app:layout_constraintTop_toBottomOf="@+id/checkBox19" />
<CheckBox
android:id="@+id/checkBox26"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/checkBox20" />
<CheckBox
android:id="@+id/checkBox27"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/checkBox26" />
<CheckBox
android:id="@+id/checkBox28"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox26"
app:layout_constraintTop_toBottomOf="@+id/checkBox21" />
<CheckBox
android:id="@+id/checkBox29"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox28"
app:layout_constraintTop_toBottomOf="@+id/checkBox22" />
<CheckBox
android:id="@+id/checkBox30"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox27"
app:layout_constraintTop_toBottomOf="@+id/checkBox28" />
<CheckBox
android:id="@+id/checkBox31"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox30"
app:layout_constraintTop_toBottomOf="@+id/checkBox29" />
<CheckBox
android:id="@+id/checkBox32"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox29"
app:layout_constraintTop_toBottomOf="@+id/checkBox23" />
<CheckBox
android:id="@+id/checkBox33"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox32"
app:layout_constraintTop_toBottomOf="@+id/checkBox24" />
<CheckBox
android:id="@+id/checkBox34"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox33"
app:layout_constraintTop_toBottomOf="@+id/checkBox25" />
<CheckBox
android:id="@+id/checkBox4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/checkBox3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox2"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/checkBox2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox"
app:layout_constraintTop_toTopOf="parent" />
<CheckBox
android:id="@+id/checkBox"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toEndOf="@+id/checkBox4"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="quitter"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

@ -121,4 +121,12 @@
app:layout_constraintStart_toStartOf="@+id/nbColoneLabel"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="test"
app:layout_constraintBottom_toTopOf="@+id/startButton"
tools:layout_editor_absoluteX="88dp" />
</androidx.constraintlayout.widget.ConstraintLayout>

@ -1,33 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recyclerView"
android:layout_width="409dp"
android:layout_height="729dp"
app:layout_constraintBottom_toTopOf="@+id/button"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@+id/button" />
</androidx.constraintlayout.widget.ConstraintLayout>
Loading…
Cancel
Save