Skip to content
Snippets Groups Projects
Commit 68f9954e authored by KALLEL Mohamed ali's avatar KALLEL Mohamed ali
Browse files

Final commit, deso Mr. regis

parent 03fca001
Branches main
No related tags found
No related merge requests found
Pipeline #26133 passed
Showing
with 31 additions and 88 deletions
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
No preview for this file type
File deleted
No preview for this file type
File deleted
File deleted
No preview for this file type
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.control.Spinner?>
<?import javafx.scene.layout.GridPane?>
<GridPane xmlns:fx="http://javafx.com/fxml"
fx:controller="controller.SettingsController" alignment="center" hgap="10" vgap="10" padding="20">
<Label text="Settings" style="-fx-font-size: 16;" GridPane.columnIndex="0" GridPane.rowIndex="0" GridPane.columnSpan="2"/>
<!-- Row Count -->
<Label text="Row Count:" GridPane.columnIndex="0" GridPane.rowIndex="1"/>
<Spinner fx:id="rowCountSpinner" value="10" min="1" max="100" GridPane.columnIndex="1" GridPane.rowIndex="1"/>
<!-- Column Count -->
<Label text="Column Count:" GridPane.columnIndex="0" GridPane.rowIndex="2"/>
<Spinner fx:id="columnCountSpinner" value="10" min="1" max="100" GridPane.columnIndex="1" GridPane.rowIndex="2"/>
</GridPane>
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Button?>
<?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.VBox?>
<?import view.FirefighterGrid?>
<?import javafx.scene.control.ToggleButton?>
<?import javafx.scene.control.Separator?>
<?import javafx.scene.control.Label?>
<HBox styleClass="background" stylesheets="@DarkTheme.css"
xmlns="http://javafx.com/javafx" xmlns:fx="http://javafx.com/fxml"
fx:controller="controller.fireFigther.ControllerFireFigtherBord">
<VBox>
<Separator maxHeight="-Infinity" maxWidth="-Infinity"
prefHeight="24.0" prefWidth="200.0"/>
<Label maxHeight="-Infinity" maxWidth="-Infinity" alignment="CENTER" prefHeight="24.0" prefWidth="200.0"
text="Generation number"/>
<Label fx:id="generationNumberLabel" alignment="CENTER" contentDisplay="TEXT_ONLY"
maxHeight="-Infinity" maxWidth="-Infinity" prefHeight="24.0" prefWidth="200.0"/>
<Separator maxHeight="-Infinity" maxWidth="-Infinity"
prefHeight="24.0" prefWidth="200.0"/>
<Button fx:id="restartButton" maxHeight="-Infinity" maxWidth="-Infinity"
mnemonicParsing="false" onAction="#restartButtonAction" prefHeight="24.0" prefWidth="200.0"
text="Restart"/>
<Button fx:id="oneStepButton" maxHeight="-Infinity" maxWidth="-Infinity"
mnemonicParsing="false" onAction="#oneStepButtonAction" prefHeight="24.0" prefWidth="200.0"
text="One step"/>
<ToggleButton fx:id="playToggleButton" maxHeight="-Infinity" maxWidth="-Infinity"
mnemonicParsing="false" onAction="#playToggleButtonAction" prefHeight="24.0"
prefWidth="200.0" styleClass="button" text="Play"/>
<ToggleButton fx:id="pauseToggleButton" maxHeight="-Infinity" maxWidth="-Infinity"
mnemonicParsing="false" onAction="#pauseToggleButtonAction" prefHeight="24.0"
prefWidth="200.0" styleClass="button" text="Pause"/>
</VBox>
<FirefighterGrid fx:id="grid" width="1000.0" height="1000.0"
xmlns="http://javafx.com/javafx"
xmlns:fx="http://javafx.com/fxml">
</FirefighterGrid>
</HBox>
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.image.*?>
<?import javafx.scene.layout.*?>
<AnchorPane fx:id="putElementCount" fx:controller="controller.fireFigther.ControllerPutElementCountController" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="434.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/17.0.2-ea" xmlns:fx="http://javafx.com/fxml/1">
<children>
<Spinner fx:id="fire" editable="true" layoutX="106.0" layoutY="31.0" prefHeight="25.0" prefWidth="363.0" value="10" min="1" max="100" />
<Label layoutX="265.0" layoutY="14.0" text="Fire" />
<Label layoutX="245.0" layoutY="64.0" text="Fire Fighter" />
<Spinner fx:id="firefighter" layoutX="106.0" layoutY="82.0" prefHeight="25.0" prefWidth="363.0" value="10" min="1" max="100"/>
<Spinner fx:id="Cloud" layoutX="102.0" layoutY="134.0" prefHeight="25.0" prefWidth="363.0" value="10" min="1" max="100" />
<Spinner fx:id="MotorisedFireFighter" layoutX="106.0" layoutY="186.0" prefHeight="25.0" prefWidth="363.0" value="10" min="1" max="100" />
<Spinner fx:id="Mountain" layoutX="102.0" layoutY="234.0" prefHeight="25.0" prefWidth="363.0" value="10" min="1" max="100"/>
<Spinner fx:id="Road" layoutX="101.0" layoutY="286.0" prefHeight="25.0" prefWidth="355.0" value="10" min="1" max="100"/>
<Spinner fx:id="Rockerie" layoutX="100.0" layoutY="335.0" prefHeight="25.0" prefWidth="355.0" value="10" min="1" max="100"/>
<Button layoutX="229.0" layoutY="376.0" mnemonicParsing="false" prefHeight="55.0" prefWidth="92.0" text="Button" />
<Label layoutX="259.0" layoutY="116.0" text="Cloud" />
<Label layoutX="215.0" layoutY="169.0" text="Motorised Fire Fighter" />
<Label layoutX="249.0" layoutY="217.0" text="Mountain" />
<Label layoutX="260.0" layoutY="269.0" text="Road" />
<Label layoutX="251.0" layoutY="318.0" text="Rockerie" />
<ImageView fitHeight="62.0" fitWidth="102.0" layoutX="223.0" layoutY="373.0" pickOnBounds="true" preserveRatio="true" />
</children>
</AnchorPane>
......@@ -3,11 +3,10 @@
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/17.0.2-ea" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controller.controllerMenu">
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/17.0.2-ea" xmlns:fx="http://javafx.com/fxml/1" fx:controller="controller.ControllerMenu">
<children>
<Button fx:id="FireFighter" layoutX="36.0" layoutY="119.0" mnemonicParsing="false" onAction="#FireFighter" prefHeight="106.0" prefWidth="259.0" text="firefiter" />
<Button fx:id="FireFighter" layoutX="36.0" layoutY="119.0" mnemonicParsing="false" onAction="#FireFighter" prefHeight="106.0" prefWidth="259.0" text="FireFighter" />
<Button fx:id="Virus" layoutX="321.0" layoutY="119.0" mnemonicParsing="false" onAction="#Virus" prefHeight="106.0" prefWidth="259.0" text="virus" />
<Button fx:id="Settings" layoutX="541.0" layoutY="14.0" mnemonicParsing="false" onAction="#Settings" prefHeight="41.0" prefWidth="45.0" text="setting" />
<Button layoutX="14.0" layoutY="14.0" mnemonicParsing="false" onAction="#exit" prefHeight="35.0" prefWidth="96.0" text="exit" />
<Button layoutX="14.0" layoutY="14.0" mnemonicParsing="false" prefHeight="35.0" prefWidth="96.0" text="exit" onAction="#exit" />
</children>
</AnchorPane>
No preview for this file type
src/Diagramme de classe.png

44.6 KiB

décrit le projet
le projet vise a faire une simulation tout enrespectant les principes SOLID
quand on lance progrme on atterie sur un meun qui nous permet de choisir le mode de jeu
si on choisi fire Fighter on dois selectionner le nombre d element qui sera dans notre grille
si on choisi virus on sera amener a une simuation de virus
sinon on clique sur exit et le programme se ferme
expliqué les différents jeux
fire Fighter
le feu se propage sur tout les case vide et les case rocaille
le pompier etain les 4 case autour de lui
le nuage se balade sur la grille et etain le feu en desous de lui
le pompier motoriser etain les 4 case autour de lui et se deplace de 2 case
la monatin le pompier , le feu et le pompier motoriser ne peuvent pas aller sur cette case
la route le feu ne peut pas de propager sur cette case
virus
le virus transphorme l humain en virus
le humain se balade sur le grille
le medecin le medecin elimine le virus
expliqué comment on a structuré notre code
tout les element sur la grie implement l interface model element compose de 2 metode update qui gere les deplacement et getviewelement
au lieu de faire 2 liste dans le pojet fourni j ai prefere faire une map avec les positions comme cle et une liste de model element
j ai une class tool dans utile avec des methode staique que je reutlise partout qui ont pour but de eviter la duplication de code j ai essayer de respeter le plus le open close principer en faisant ces methodes
parlé des difficultés rencontrées
diffuclter a gere les scenes
diffuculter a faire les pompier motorise
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment