Compare commits
46 Commits
c6bf25bb6f
...
master
Author | SHA1 | Date | |
---|---|---|---|
d707be3e4c | |||
88b0ba5d05 | |||
4f2eeb5040 | |||
a60eb17230 | |||
0f2352e003 | |||
e21b4c0f2d | |||
d835ec3460 | |||
635aef047a | |||
f2f88c404d | |||
8f5a4e6a74 | |||
fcb650ffef | |||
79db8a088a | |||
b37993d9a2 | |||
1f0fedeaac | |||
43ba9226e2 | |||
3610c3fb7a | |||
98bcfec0fd | |||
af010b5bd8 | |||
b5daf848c4 | |||
46bf46f92c | |||
5894de5567 | |||
680a80d210 | |||
1cd92601e1 | |||
241bd0f85b | |||
e818be6c17 | |||
8efcc29244 | |||
49e63e3d3b | |||
e2457886c8 | |||
a348fb03a5 | |||
380d469010 | |||
775085a1ab | |||
e494439b1c | |||
c55f6866b8 | |||
0b45380f15 | |||
ac3b2908f3 | |||
a9f80b6f6e | |||
057d3c3b50 | |||
ac4ab16654 | |||
1f544960ac | |||
7f359cb01f | |||
4f9de09893 | |||
e2e726adfb | |||
db77cf584c | |||
03dcf9e8a3 | |||
770e6916b5 | |||
bdd1c68ab9 |
2
Happy_Bird/.idea/Happy_Bird.iml
generated
@@ -1,2 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4" />
|
5
Happy_Bird/.idea/compiler.xml
generated
@@ -3,4 +3,9 @@
|
||||
<component name="CompilerConfiguration">
|
||||
<bytecodeTargetLevel target="15" />
|
||||
</component>
|
||||
<component name="JavacSettings">
|
||||
<option name="ADDITIONAL_OPTIONS_OVERRIDE">
|
||||
<module name="Happy_Bird.main" options="--add-exports java.base/jdk.internal.module=com.example.happy_bird" />
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
5
Happy_Bird/.idea/jarRepositories.xml
generated
@@ -16,5 +16,10 @@
|
||||
<option name="name" value="MavenRepo" />
|
||||
<option name="url" value="https://repo.maven.apache.org/maven2/" />
|
||||
</remote-repository>
|
||||
<remote-repository>
|
||||
<option name="id" value="BintrayJCenter" />
|
||||
<option name="name" value="BintrayJCenter" />
|
||||
<option name="url" value="https://jcenter.bintray.com/" />
|
||||
</remote-repository>
|
||||
</component>
|
||||
</project>
|
10
Happy_Bird/.idea/runConfigurations.xml
generated
@@ -1,10 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="RunConfigurationProducerService">
|
||||
<option name="ignoredProducers">
|
||||
<set>
|
||||
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
|
||||
</set>
|
||||
</option>
|
||||
</component>
|
||||
</project>
|
@@ -9,6 +9,7 @@ version '1.0-SNAPSHOT'
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
jcenter()
|
||||
}
|
||||
|
||||
ext {
|
||||
@@ -36,6 +37,7 @@ dependencies {
|
||||
|
||||
testImplementation("org.junit.jupiter:junit-jupiter-api:${junitVersion}")
|
||||
testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:${junitVersion}")
|
||||
implementation 'org.mariadb.jdbc:mariadb-java-client:2.1.2'
|
||||
}
|
||||
|
||||
test {
|
||||
|
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 114 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 54 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 65 KiB |
@@ -1,21 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.image.ImageObserver;
|
||||
|
||||
public class Bird extends SpielObjekt {
|
||||
|
||||
public Bird(int xWert, int yWert) {
|
||||
super(xWert, yWert);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(Graphics2D g, ImageObserver obs) {
|
||||
|
||||
}
|
||||
}
|
@@ -0,0 +1,239 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.Label;
|
||||
import javafx.scene.control.Slider;
|
||||
import javafx.scene.control.TextField;
|
||||
import javafx.scene.image.Image;
|
||||
import javafx.scene.layout.*;
|
||||
import javafx.scene.text.TextAlignment;
|
||||
|
||||
public class FormatingClass {
|
||||
/***
|
||||
* leerer Konstruktor
|
||||
*/
|
||||
public FormatingClass() { }
|
||||
|
||||
/*** Alteköster
|
||||
* Formatiert alle Buttons und fügt sie der Pane hinzu
|
||||
* @param buttons ButtonArray mit allen Arrays
|
||||
* @param pane Pane, auf der die Buttons angezeigt werden
|
||||
*/
|
||||
public void buttonsFormating(Button[] buttons, Pane pane) {
|
||||
for (Button button : buttons) {
|
||||
button.setPrefSize(200, 50);
|
||||
|
||||
button.setStyle("-fx-background-color: #e86000; " +
|
||||
"-fx-text-fill: #FFFFFF; " +
|
||||
"-fx-font-size: 20px; " +
|
||||
"-fx-border-width: 5px;" +
|
||||
"-fx-border-color: #FFFFFF;" +
|
||||
"-fx-font-weight: bold;" +
|
||||
"-fx-border-radius: 15px;" +
|
||||
"-fx-background-radius: 20px;");
|
||||
|
||||
pane.getChildren().add(button);
|
||||
}
|
||||
}
|
||||
|
||||
/*** Alteköster
|
||||
* Formatiert alle kleinen Labels (keine Überschrift) und fügt sie der Pane hinzu
|
||||
* @param labels LabelArray mit allen Labels
|
||||
* @param pane Pane, auf der die Labels angezeigt werden
|
||||
*/
|
||||
public void labelsFormating(Label[] labels, Pane pane) {
|
||||
for (Label label : labels) {
|
||||
label.setPrefSize(250, 50);
|
||||
|
||||
label.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-text-fill: #000000; " +
|
||||
"-fx-font-size: 20px; " +
|
||||
"-fx-border-width: 5px;" +
|
||||
"-fx-border-color: #543847;" +
|
||||
"-fx-font-weight: bold;" +
|
||||
"-fx-alignment: center;" +
|
||||
"-fx-background-radius: 20px;" +
|
||||
"-fx-border-radius: 15px;");
|
||||
|
||||
pane.getChildren().add(label);
|
||||
|
||||
label.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/*** Alteköster
|
||||
* Formatiert alle Überschriften-Labels und fügt sie der Pane hinzu
|
||||
* @param labels LabelArray mit Überschriften-Labels
|
||||
* @param pane Pane, auf der die Labels angezeigt werden
|
||||
*/
|
||||
public void headlineFormating(Label[] labels, Pane pane) {
|
||||
for (Label label : labels) {
|
||||
label.setPrefSize(300, 75);
|
||||
label.setTextAlignment(TextAlignment.CENTER);
|
||||
|
||||
label.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-text-fill: #000000; " +
|
||||
"-fx-font-size: 35px; " +
|
||||
"-fx-border-width: 5px;" +
|
||||
"-fx-border-color: #543847;" +
|
||||
"-fx-font-weight: bold;" +
|
||||
"-fx-alignment: center;" +
|
||||
"-fx-background-radius: 20px;" +
|
||||
"-fx-border-radius: 15px;");
|
||||
|
||||
pane.getChildren().add(label);
|
||||
}
|
||||
}
|
||||
|
||||
/*** Alteköster
|
||||
* Formatiert alle Textfelder und fügt sie der Pane hinzu
|
||||
* @param textfields TextFieldArray mit allen Textfeldern
|
||||
* @param pane Pane, auf der die Textfelder angezeigt werden
|
||||
*/
|
||||
public void textfieldsFormating(TextField[] textfields, Pane pane) {
|
||||
for (TextField field : textfields) {
|
||||
field.setPrefSize(250, 50);
|
||||
field.setStyle("-fx-font-size: 20px;" +
|
||||
"-fx-font-weight: bold;");
|
||||
|
||||
pane.getChildren().add(field);
|
||||
|
||||
field.setVisible(false);
|
||||
}
|
||||
}
|
||||
|
||||
/*** Alteköster
|
||||
* Formatiert den soundSlider und fügt ihn der Pane hinzu
|
||||
* @param slider SoundSlider
|
||||
* @param pane Pane, auf der der Slider angezeigt wird
|
||||
*/
|
||||
public void soundSliderFormating(Slider slider, Pane pane) {
|
||||
slider.setPrefSize(200, 5);
|
||||
slider.setLayoutX(300);
|
||||
slider.setLayoutY(295);
|
||||
|
||||
pane.getChildren().add(slider);
|
||||
|
||||
slider.setVisible(false);
|
||||
}
|
||||
|
||||
/*** Alteköster
|
||||
* Formatiert den PauseScreen
|
||||
*/
|
||||
public void pauseScreenFormating(Pane pause, Label pauseMenuLabel, Label soundLabelPause) {
|
||||
/*pause-Pane formatieren*/
|
||||
pause.setPrefSize(400, 400);
|
||||
pause.setLayoutX(200);
|
||||
pause.setLayoutY(150);
|
||||
pause.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-border-width: 5px;" +
|
||||
"-fx-border-color: #543847;" +
|
||||
"-fx-border-radius: 15px;" +
|
||||
"-fx-background-radius: 20px;");
|
||||
|
||||
/*pauseMenuLabel formatieren*/
|
||||
pauseMenuLabel.setPrefSize(300,50);
|
||||
pauseMenuLabel.setLayoutX(50);
|
||||
pauseMenuLabel.setLayoutY(10);
|
||||
pauseMenuLabel.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-text-fill: #000000; " +
|
||||
"-fx-font-size: 35px; " +
|
||||
"-fx-font-weight: bold;" +
|
||||
"-fx-alignment: center;");
|
||||
|
||||
/*soundLabelPause formatieren*/
|
||||
soundLabelPause.setPrefSize(100, 50);
|
||||
soundLabelPause.setLayoutX(150);
|
||||
soundLabelPause.setLayoutY(100);
|
||||
soundLabelPause.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-text-fill: #000000; " +
|
||||
"-fx-font-size: 20px; " +
|
||||
"-fx-font-weight: bold;" +
|
||||
"-fx-alignment: center;");
|
||||
}
|
||||
|
||||
/*** Pape
|
||||
* formatiert den End-Screen
|
||||
*/
|
||||
public void endScreenFormating(Pane endScreen, Label endScreenHeadline, Label currentScoreEndscreenLabel) {
|
||||
/*Endscreen-Pane formatieren*/
|
||||
endScreen.setPrefSize(400, 500);
|
||||
endScreen.setLayoutX(200);
|
||||
endScreen.setLayoutY(100);
|
||||
endScreen.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-border-width: 5px;" +
|
||||
"-fx-border-color: #543847;" +
|
||||
"-fx-border-radius: 15px;" +
|
||||
"-fx-background-radius: 20px;");
|
||||
|
||||
endScreenHeadline.setPrefSize(300,50);
|
||||
endScreenHeadline.setLayoutX(50);
|
||||
endScreenHeadline.setLayoutY(10);
|
||||
endScreenHeadline.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-text-fill: #000000; " +
|
||||
"-fx-font-size: 35px; " +
|
||||
"-fx-font-weight: bold;" +
|
||||
"-fx-alignment: center;");
|
||||
|
||||
currentScoreEndscreenLabel.setPrefSize(300,50);
|
||||
currentScoreEndscreenLabel.setLayoutX(50);
|
||||
currentScoreEndscreenLabel.setLayoutY(100);
|
||||
currentScoreEndscreenLabel.setStyle("-fx-background-color: #DED894; " +
|
||||
"-fx-text-fill: #000000; " +
|
||||
"-fx-font-size: 35px; " +
|
||||
"-fx-font-weight: bold;" +
|
||||
"-fx-alignment: center;");
|
||||
}
|
||||
|
||||
/*** Alteköster
|
||||
* Erstellt ein neues BackgroundImage aus einer Source für ein .png
|
||||
* @param img Source eines .png
|
||||
* @return backgroundImage
|
||||
*/
|
||||
public BackgroundImage backgroundFormating(String img) {
|
||||
/*Bild für Hintergrund erstellen:*/
|
||||
Image image = new Image(img);
|
||||
|
||||
/*Hintergrund erstellen:*/
|
||||
BackgroundImage backgroundImage = new BackgroundImage(
|
||||
image,
|
||||
BackgroundRepeat.NO_REPEAT,
|
||||
BackgroundRepeat.NO_REPEAT,
|
||||
BackgroundPosition.DEFAULT,
|
||||
BackgroundSize.DEFAULT
|
||||
);
|
||||
|
||||
return backgroundImage;
|
||||
}
|
||||
|
||||
/*** Alteköster
|
||||
* Formatiert die Buttons, mit denen man das Hintergrundbild ändern kann
|
||||
* @param backgroundButtons Array der Buttons
|
||||
* @param pane Pane, auf der die Buttons angezeigt werden sollen
|
||||
*/
|
||||
public void backgroundButtonsFormating(Button[] backgroundButtons, Pane pane) {
|
||||
int xPosition = 150;
|
||||
|
||||
for(int i=0; i<backgroundButtons.length; i++) {
|
||||
backgroundButtons[i].setPrefSize(200, 175);
|
||||
backgroundButtons[i].setLayoutY(400);
|
||||
backgroundButtons[i].setLayoutX(xPosition);
|
||||
xPosition += 300;
|
||||
|
||||
/*Source als String*/
|
||||
String img = "file:src/main/resources/com/example/happy_bird/pics/Background"+i+"button.png";
|
||||
|
||||
/*Hintergrund zu Pane hinzufügen:*/
|
||||
Background background = new Background(backgroundFormating(img));
|
||||
|
||||
backgroundButtons[i].setBackground(background);
|
||||
|
||||
backgroundButtons[i].setStyle("-fx-border-width: 7px;" +
|
||||
"-fx-border-insets: -7;" +
|
||||
"-fx-border-color: #FFFFFF;" +
|
||||
"-fx-border-radius: 15px;");
|
||||
|
||||
pane.getChildren().add(backgroundButtons[i]);
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,26 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import javafx.application.Application;
|
||||
import javafx.event.ActionEvent;
|
||||
import javafx.event.EventHandler;
|
||||
import javafx.fxml.FXMLLoader;
|
||||
import javafx.geometry.Insets;
|
||||
import javafx.geometry.Pos;
|
||||
import javafx.scene.Scene;
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.Label;
|
||||
import javafx.scene.control.TextField;
|
||||
import javafx.scene.control.Slider;
|
||||
import javafx.scene.image.*;
|
||||
import javafx.scene.image.Image;
|
||||
import javafx.scene.layout.*;
|
||||
import javafx.scene.text.TextAlignment;
|
||||
import javafx.stage.Stage;
|
||||
import java.awt.*;
|
||||
import java.io.IOException;
|
||||
|
||||
public class GameScreen extends HappyBirdMain
|
||||
{
|
||||
|
||||
|
||||
}
|
@@ -1,9 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.Label;
|
||||
import javafx.scene.control.TextField;
|
||||
|
||||
public class HappyBird extends HappyBirdMain {
|
||||
|
||||
}
|
@@ -1,23 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import javafx.application.Application;
|
||||
import javafx.fxml.FXMLLoader;
|
||||
import javafx.scene.Scene;
|
||||
import javafx.stage.Stage;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public class HelloApplication extends Application {
|
||||
@Override
|
||||
public void start(Stage stage) throws IOException {
|
||||
FXMLLoader fxmlLoader = new FXMLLoader(HelloApplication.class.getResource("hello-view.fxml"));
|
||||
Scene scene = new Scene(fxmlLoader.load(), 320, 240);
|
||||
stage.setTitle("Hello!");
|
||||
stage.setScene(scene);
|
||||
stage.show();
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
launch();
|
||||
}
|
||||
}
|
@@ -1,14 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.Label;
|
||||
|
||||
public class HelloController {
|
||||
@FXML
|
||||
private Label welcomeText;
|
||||
|
||||
@FXML
|
||||
protected void onHelloButtonClick() {
|
||||
welcomeText.setText("Welcome to JavaFX Application!");
|
||||
}
|
||||
}
|
@@ -1,6 +1,6 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import java.beans.Statement;
|
||||
/** Pape */
|
||||
import java.sql.*;
|
||||
public class MariaDB
|
||||
{
|
||||
@@ -13,10 +13,36 @@ public class MariaDB
|
||||
|
||||
public MariaDB()
|
||||
{
|
||||
|
||||
username="root";
|
||||
pw="HappyBird1";
|
||||
url="jdbc:mariadb://localhost:3306/happybird";
|
||||
driver="org.mariadb.jdbc.Driver";
|
||||
try {
|
||||
con = DriverManager.getConnection("jdbc:mariadb://localhost:3306/DB?user=root&password=HappyBird1");
|
||||
} catch (SQLException e) {
|
||||
Class.forName(driver);
|
||||
con=DriverManager.getConnection(url, username, pw);
|
||||
st=con.createStatement();
|
||||
System.out.println("Connection is successful");
|
||||
} catch (Exception e) {
|
||||
System.out.println("Fehler in der Verbindung");
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
try
|
||||
{
|
||||
con = DriverManager.getConnection("jdbc:mariadb://localhost:3306/happybird?user=root&password=HappyBird1");
|
||||
st= (Statement) con.createStatement();
|
||||
driver="org.mariadb.jdbc.Driver";
|
||||
System.out.println("Connection is successful");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
System.out.println("Fehler in der Verbindung");
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
*/
|
||||
}
|
||||
}
|
||||
|
@@ -1,104 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import java.awt.*;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.awt.image.ImageObserver;
|
||||
|
||||
public class Pipe extends SpielObjekt {
|
||||
|
||||
private java.awt.Image lowerPipe;
|
||||
// private java.awt.Image lowerPipe = new java.awt.Image("file:src/main/resources/com/example/happy_bird/pics/PipeUnten.png", 86, 300, false, false);
|
||||
private int xWert = 0, yWert = 0;
|
||||
|
||||
public Pipe(int xWert, int yWert) {
|
||||
super(xWert, yWert);
|
||||
lowerPipe = Toolkit.getDefaultToolkit().getImage(this.getClass().getResource("com/example/happy_bird/"));
|
||||
//scale lowerPipe(initialWidth, initialHeight)
|
||||
}
|
||||
|
||||
public void scaleTopPipe(int width, int height) {
|
||||
lowerPipe = lowerPipe.getScaledInstance(width, height, Image.SCALE_SMOOTH);
|
||||
}
|
||||
|
||||
public Image getPipe() {
|
||||
return getPipe();
|
||||
}
|
||||
|
||||
/**
|
||||
* Method um die Breite des BottomPipe-Objekts zu erhalten
|
||||
* @return int
|
||||
*/
|
||||
public int getWidth(int width) {
|
||||
return lowerPipe.getWidth(null);
|
||||
}
|
||||
/**
|
||||
* Methode um die Höhe des BottomPipe-Objekts zu erhalten
|
||||
* @return int
|
||||
*/
|
||||
public int getHeight(int height) {
|
||||
return lowerPipe.getHeight(null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Festlegen der x-Position des BottomPipe-Objekts
|
||||
* @param x
|
||||
*/
|
||||
public void setX(int x) {
|
||||
xWert = x;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Abrufen der x-Position des BottomPipe-Objekts
|
||||
* @return int
|
||||
*/
|
||||
public int getX() {
|
||||
return xWert;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Festlegen der y-Position des BottomPipe-Objekts
|
||||
* @param y
|
||||
*/
|
||||
public void setY(int y) {
|
||||
yWert = y;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Abrufen der y-Position des BottomPipe-Objekts
|
||||
* @return int
|
||||
*/
|
||||
public int getY() {
|
||||
return yWert;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Erfassen eines Rechtecks, das das Bild des BottomPipe umreißt
|
||||
* @return Rechteck, das die Position des BottomPipe auf dem Bildschirm umreißt
|
||||
*/
|
||||
public Rectangle getRectangle() {
|
||||
return (new Rectangle(xWert, yWert, lowerPipe.getWidth(null), lowerPipe.getHeight(null)));
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Erfassen eines BufferedImage, das das Bildobjekt der TopPipe darstellt
|
||||
* @return TopPipe's BufferedImage-Objekt
|
||||
*/
|
||||
public BufferedImage getBI() {
|
||||
BufferedImage bi = new BufferedImage(lowerPipe.getWidth(null), lowerPipe.getHeight(null), BufferedImage.TYPE_INT_ARGB);
|
||||
Graphics g = bi.getGraphics();
|
||||
g.drawImage(lowerPipe, 0, 0, null);
|
||||
g.dispose();
|
||||
return bi;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public void tick() {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(Graphics2D g, ImageObserver obs) {
|
||||
|
||||
}
|
||||
}
|
@@ -1,103 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
import java.awt.Graphics;
|
||||
import java.awt.Rectangle;
|
||||
import java.awt.Toolkit;
|
||||
import java.awt.Image;
|
||||
import java.awt.image.BufferedImage;
|
||||
|
||||
public class PipeTop {
|
||||
//global variables
|
||||
private Image topPipe;
|
||||
private int xLoc = 0, yLoc = 0;
|
||||
|
||||
public PipeTop(int initialWidth, int initialHeight) {
|
||||
topPipe = Toolkit.getDefaultToolkit().getImage(this.getClass().getResource("resources/tube_top.png"));
|
||||
scaleTopPipe(initialWidth, initialHeight);
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Skalieren des topPipe-Sprites in die gewünschten Dimensionen
|
||||
* @param width Die gewünschte Breite der topPipe
|
||||
* @param height Die gewünschte Höhe der topPipe
|
||||
*/
|
||||
public void scaleTopPipe(int width, int height) {
|
||||
topPipe = topPipe.getScaledInstance(width, height, Image.SCALE_SMOOTH);
|
||||
}
|
||||
|
||||
/**
|
||||
* Getter-Methode für das TopPipe-Objekt.
|
||||
* @return-Image
|
||||
*/
|
||||
public Image getPipe() {
|
||||
return topPipe;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Abrufen der Breite des TopPipe-Objekts
|
||||
* @return int
|
||||
*/
|
||||
public int getWidth() {
|
||||
return topPipe.getWidth(null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode, um die Höhe des TopPipe-Objekts zu erhalten
|
||||
* @return int
|
||||
*/
|
||||
public int getHeight() {
|
||||
return topPipe.getHeight(null);
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Festlegen der x-Position des TopPipe-Objekts
|
||||
* @param x
|
||||
*/
|
||||
public void setX(int x) {
|
||||
xLoc = x;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Abrufen der x-Position des TopPipe-Objekts
|
||||
* @return int
|
||||
*/
|
||||
public int getX() {
|
||||
return xLoc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Festlegen der y-Position des TopPipe-Objekts
|
||||
* @param y
|
||||
*/
|
||||
public void setY(int y) {
|
||||
yLoc = y;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Abrufen der y-Position des TopPipe-Objekts
|
||||
* @return int
|
||||
*/
|
||||
public int getY() {
|
||||
return yLoc;
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Erfassen eines Rechtecks, das das Bild der TopPipe umreißt
|
||||
* @return Rechteck, das die Position der TopPipe auf dem Bildschirm umreißt
|
||||
*/
|
||||
public Rectangle getRectangle() {
|
||||
return (new Rectangle(xLoc, yLoc, topPipe.getWidth(null), topPipe.getHeight(null)));
|
||||
}
|
||||
|
||||
/**
|
||||
* Methode zum Erfassen eines BufferedImage, das das Bildobjekt der TopPipe darstellt
|
||||
* @return BufferedImage-Objekt von TopPipe
|
||||
*/
|
||||
public BufferedImage getBI() {
|
||||
BufferedImage bi = new BufferedImage(topPipe.getWidth(null), topPipe.getHeight(null), BufferedImage.TYPE_INT_ARGB);
|
||||
Graphics g = bi.getGraphics();
|
||||
g.drawImage(topPipe, 0, 0, null);
|
||||
g.dispose();
|
||||
return bi;
|
||||
}
|
||||
}
|
@@ -1,80 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Image;
|
||||
import java.awt.image.ImageObserver;
|
||||
|
||||
public abstract class SpielObjekt {
|
||||
private int xWert;
|
||||
private int yWert;
|
||||
private int fxWert;
|
||||
private int fyWert;
|
||||
private int breite;
|
||||
private int hoehe;
|
||||
private Image bild;
|
||||
|
||||
public SpielObjekt(int xWert, int yWert) {
|
||||
this.xWert = xWert;
|
||||
this.yWert = yWert;
|
||||
}
|
||||
|
||||
public int getyWert() {
|
||||
return yWert;
|
||||
}
|
||||
|
||||
public void setyWert(int yWert) {
|
||||
this.yWert = yWert;
|
||||
}
|
||||
|
||||
public int getxWert() {
|
||||
return xWert;
|
||||
}
|
||||
|
||||
public void setxWert(int xWert) {
|
||||
this.xWert = xWert;
|
||||
}
|
||||
|
||||
public int getFxWert() {
|
||||
return fxWert;
|
||||
}
|
||||
|
||||
public void setFxWert(int fxWert) {
|
||||
this.fxWert = fxWert;
|
||||
}
|
||||
|
||||
public int getFyWert() {
|
||||
return fyWert;
|
||||
}
|
||||
|
||||
public void setFyWert(int fyWert) {
|
||||
this.fyWert = fyWert;
|
||||
}
|
||||
|
||||
public int getBreite() {
|
||||
return breite;
|
||||
}
|
||||
|
||||
public void setBreite(int breite) {
|
||||
this.breite = breite;
|
||||
}
|
||||
|
||||
public int getHoehe() {
|
||||
return hoehe;
|
||||
}
|
||||
|
||||
public void setHoehe(int hoehe) {
|
||||
this.hoehe = hoehe;
|
||||
}
|
||||
|
||||
public Image getBild() {
|
||||
return bild;
|
||||
}
|
||||
|
||||
public void setBild(Image bild) {
|
||||
this.bild = bild;
|
||||
}
|
||||
|
||||
|
||||
public abstract void tick();
|
||||
|
||||
public abstract void render(Graphics2D g, ImageObserver obs);
|
||||
}
|
@@ -1,10 +0,0 @@
|
||||
package com.example.happy_bird;
|
||||
|
||||
public class TopClass {
|
||||
|
||||
private static final int PIPE_GAP = 0;
|
||||
private static final int PIPE_WIDTH = 0;
|
||||
|
||||
|
||||
|
||||
}
|
@@ -1,16 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<?import javafx.geometry.Insets?>
|
||||
<?import javafx.scene.control.Label?>
|
||||
<?import javafx.scene.layout.VBox?>
|
||||
|
||||
<?import javafx.scene.control.Button?>
|
||||
<VBox alignment="CENTER" spacing="20.0" xmlns:fx="http://javafx.com/fxml"
|
||||
fx:controller="com.example.happy_bird.HelloController">
|
||||
<padding>
|
||||
<Insets bottom="20.0" left="20.0" right="20.0" top="20.0"/>
|
||||
</padding>
|
||||
|
||||
<Label fx:id="welcomeText"/>
|
||||
<Button text="Hello!" onAction="#onHelloButtonClick"/>
|
||||
</VBox>
|
Before Width: | Height: | Size: 114 KiB After Width: | Height: | Size: 114 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 54 KiB |
After Width: | Height: | Size: 5.5 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 4.6 KiB |
Before Width: | Height: | Size: 6.5 KiB After Width: | Height: | Size: 65 KiB |
Before Width: | Height: | Size: 126 KiB |
14
SQL-Queries.txt
Normal file
@@ -0,0 +1,14 @@
|
||||
SQL-Abfragen:
|
||||
|
||||
Highscores:
|
||||
SELECT * FROM happybirddb ORDER BY punkte DESC LIMIT 5;
|
||||
Dann Ausgabe auf dem Bildschirm
|
||||
|
||||
Einfügen in die DB:
|
||||
INSERT INTO HappyBirdDB (name, kuerzel, punkte) VALUES ('playername', 'playerkuerzel', points);
|
||||
//playername, playerkuerzel, points sind Variablen
|
||||
|
||||
|
||||
Maximale Punkte des Spielers:
|
||||
SELECT MAX(punkte) FROM happybirddb WHERE kuerzel = 'playerkuerzel';
|
||||
|