52 lines
1.6 KiB
Java
52 lines
1.6 KiB
Java
package application;
|
|
|
|
import java.io.IOException;
|
|
|
|
import javafx.application.Platform;
|
|
|
|
public class playGame extends Thread{
|
|
|
|
MainWindowController mainWindowController;
|
|
dbController dbController;
|
|
|
|
public playGame(MainWindowController m, dbController db){
|
|
mainWindowController = m;
|
|
dbController = db;
|
|
}
|
|
|
|
public void run(){
|
|
String selectedGameTitleID = mainWindowController.getSelectedGameTitleID();
|
|
long startTime;
|
|
long endTime;
|
|
int timePlayedNow;
|
|
int timePlayed;
|
|
Process p;
|
|
|
|
Platform.runLater(() -> {
|
|
mainWindowController.main.primaryStage.setIconified(true);
|
|
});
|
|
startTime = System.currentTimeMillis();
|
|
try{
|
|
if(mainWindowController.isFullscreen()){
|
|
p = Runtime.getRuntime().exec(mainWindowController.getCemuPath()+"\\Cemu.exe -f -g \""+mainWindowController.getGameExecutePath()+"\"");
|
|
}else{
|
|
p = Runtime.getRuntime().exec(mainWindowController.getCemuPath()+"\\Cemu.exe -g \""+mainWindowController.getGameExecutePath()+"\"");
|
|
}
|
|
|
|
p.waitFor();
|
|
endTime = System.currentTimeMillis();
|
|
timePlayedNow = (int) Math.floor(((endTime - startTime)/1000/60));
|
|
timePlayed = Integer.parseInt(dbController.getTimePlayed(selectedGameTitleID))+timePlayedNow;
|
|
|
|
dbController.setTimePlayed(Integer.toString(timePlayed), selectedGameTitleID);
|
|
Platform.runLater(() -> {
|
|
mainWindowController.timePlayedBtn.setText(dbController.getTimePlayed(selectedGameTitleID)+ " min");
|
|
mainWindowController.main.primaryStage.setIconified(false);
|
|
});
|
|
}catch (IOException | InterruptedException e){
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
}
|