minor change

This commit is contained in:
Paul Gross 2020-05-06 13:25:49 +02:00
commit ce713d07e1
5 changed files with 103 additions and 19 deletions

View File

@ -1,21 +1,35 @@
package database;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectOutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class QueryGenerator {
public static String AllFrom(String table) {
return "SELECT * FROM " + getTable(table);
private final static String url = "jdbc:postgresql://localhost:5432/ShadowHunterDatabase";
private final static String user = "shManager";
private final static String password = "shadowhunter1234";
public static String AllFrom(String tableName) {
return "SELECT * FROM " + getTable(tableName);
}
public static String WithId(String table, int d) {
return "SELECT * FROM " + getTable(table) + "WHERE id =" + d;
public static String WithId(String tableName, int d) {
return "SELECT * FROM " + getTable(tableName) + "WHERE id =" + d;
}
public static String WithName(String table, String name) {
return "SELECT * FROM " + getTable(table) + "WHERE nom ='" + name + "'";
public static String WithName(String tableName, String name) {
return "SELECT * FROM " + getTable(tableName) + "WHERE nom ='" + name + "'";
}
public static String getTable(String s) {
return "public." + '"' + s + '"';
public static String getTable(String tableName) {
return "public." + '"' + tableName + '"';
}
public static String getIdWithNameFrom(String table, String name) {
@ -25,4 +39,52 @@ public class QueryGenerator {
public static String getNameWithIdFrom(String table, int d) {
return "SELECT name FROM " + getTable(table) + "WHERE id =" + d;
}
public static String selectObjectWithId(int id, String tableName) {
return "SELECT objet FROM" + getTable(tableName) + " WHERE id =" + id;
}
public static Connection connect() throws SQLException {
return DriverManager.getConnection(url, user, password);
}
public static String queryInsertObject(int id, Object o) throws IOException, SQLException {
String table = null;
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ObjectOutputStream oos;
oos = new ObjectOutputStream(baos);
oos.writeObject(o);
oos.close();
ByteArrayInputStream bais = new ByteArrayInputStream(baos.toByteArray());
byte[] object = bais.readAllBytes();
InputStream objectIS = new ByteArrayInputStream(object);
if(id <= 16) {
table = getTable("CartesLumiere");
} else if(id <= 32) {
table = getTable("CartesTenebre");
} else if(id <= 47) {
table = getTable("CartesVision");
} else if(id <= 57) {
table = getTable("CartesPersonnage");
} else if(id <= 61) {
table = getTable("CartesDos");
}
String query = null;
query = "UPDATE" + table + " SET objet = ";
Connection conn = connect();
PreparedStatement pst = conn.prepareStatement(query);
pst.setBinaryStream(4, objectIS);
pst.executeUpdate();
return query;
}
}

View File

@ -67,5 +67,5 @@ se.soigner=Se soigner
mode.claire=Mode clair
musique=Musique
langue=Langue
parametre=Paramétre
parametre=Paramètre
enregistrer=Enregistrer

View File

@ -16,6 +16,7 @@ import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.Pane;
import javafx.stage.Stage;
public class MenuController implements Initializable{
@ -48,6 +49,22 @@ public class MenuController implements Initializable{
appStage.show();
}
@FXML
public void ouvrirParametres(MouseEvent mouseEvent) throws IOException{
InputStream fileSound1 = getClass().getResourceAsStream("/ihm/ressources/musique/BEEP1.wav");
EffetSonore.playSoundEffect(fileSound1);
System.out.println("Passage à l'écran des paramètres");
final URL fxmlURL = getClass().getResource("/ihm/ressources/parametre.fxml");
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE);
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
Pane pane = fxmlLoader.load();
rootPane.getChildren().setAll(pane);
}
public void afficherRegle(MouseEvent mouseEvent) {

View File

@ -28,7 +28,7 @@ public class PauseController implements Initializable {
private CheckBox cbEffet;
String filepathMusique = "src//ihm//ressources//musique//The_Red_Fox_Tavern.wav";
InputStream fileMusique = getClass().getResourceAsStream("src//ihm//ressources//musique//The_Red_Fox_Tavern.wav");
InputStream fileMusique = getClass().getResourceAsStream("/ihm/ressources/musique/The_Red_Fox_Tavern.wav");
boolean MusiqueLancee = ParametreController.cbMusiqueCoche;
boolean SonLance = ParametreController.cbSonCoche;
@ -53,24 +53,21 @@ public class PauseController implements Initializable {
// Pour la musique
if (fileMusique != null) {
System.out.println("point d'arret 1");
if (cbMusique.isSelected()) {
System.out.println("\tLancement de la musique");
if (Musique.clipTimePosition == 0 && MusiqueLancee == false) { // si la musique n'a jamais été lancé
Musique.playMusique(fileMusique);
MusiqueLancee = true;
System.out.println("point d'arret 2");
} else
Musique.resumeMusique(Musique.clip); // si elle a deja été lancé mais mis en pause, reprend a partir du point d'arret
System.out.println("point d'arret 3");
} else {
Musique.pauseMusique(Musique.clip); // met en pause la musique
System.out.println("\tMise en pause de la musique");
}
}
else {
System.out.println("ON A UN PROBLEME, AUCUN POINT D'ARRET N'EST PASSE");
System.out.println("fichier audio non trouvé");
}
// Pour les effets sonores

View File

@ -9,11 +9,11 @@
<AnchorPane fx:id="rootPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="800.0" prefWidth="1280.0" styleClass="background" stylesheets="@style/plateau.css" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="ihm.controller.MenuController">
<children>
<VBox alignment="CENTER" prefHeight="802.0" prefWidth="1290.0">
<VBox alignment="CENTER" layoutX="-3.0" layoutY="-7.0" prefHeight="802.0" prefWidth="1290.0">
<children>
<ImageView fx:id="titre" fitHeight="190.0" fitWidth="528.0" pickOnBounds="true" preserveRatio="true">
<VBox.margin>
<Insets top="-250.0" />
<Insets top="-200.0" />
</VBox.margin>
</ImageView>
<Button mnemonicParsing="false" onMouseClicked="#commencerPartie" prefHeight="51.0" prefWidth="102.0" styleClass="bouton" text="%jouer">
@ -21,7 +21,15 @@
<Font size="24.0" />
</font>
<VBox.margin>
<Insets top="150.0" />
<Insets top="100.0" />
</VBox.margin>
</Button>
<Button layoutX="602.0" layoutY="480.0" mnemonicParsing="false" onMouseClicked="#ouvrirParametres" prefHeight="59.0" prefWidth="164.0" styleClass="bouton" text="Paramètres">
<font>
<Font size="24.0" />
</font>
<VBox.margin>
<Insets top="50.0" />
</VBox.margin>
</Button>
<Button mnemonicParsing="false" onMouseClicked="#afficherRegle" prefHeight="59.0" prefWidth="106.0" styleClass="bouton" text="%regles">