cemu_UI/src/application/playGame.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();
}
}
}