GUI Feature Implementation

This commit is contained in:
ekresse
2021-01-12 09:17:47 +01:00
parent 2d6005418b
commit f66b1079c1
4 changed files with 276 additions and 181 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 263 KiB

After

Width:  |  Height:  |  Size: 253 KiB

View File

@@ -182,239 +182,319 @@
</display> </display>
</class> </class>
<association id="21"> <association id="21">
<end type="SOURCE" refId="4" navigable="false"> <end type="SOURCE" refId="15" navigable="false">
<attribute id="22" name="aktuellerSpieler"/> <attribute id="22" name="spielerverwaltung">
<multiplicity id="23" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="23" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="1" navigable="true"/> <end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="24"> <association id="24">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="25" name="WERT"/>
<multiplicity id="26" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="12" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="27">
<end type="SOURCE" refId="17" navigable="false"> <end type="SOURCE" refId="17" navigable="false">
<attribute id="28" name="kartensatz"/> <attribute id="25" name="kartensatz">
<multiplicity id="29" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="26" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="6" navigable="true"/> <end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="27">
<end type="SOURCE" refId="17" navigable="false">
<attribute id="28" name="letztekartefarbe">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="29" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="30"> <association id="30">
<end type="SOURCE" refId="18" navigable="false"> <end type="SOURCE" refId="18" navigable="false">
<attribute id="31" name="texturenpakete"/> <attribute id="31" name="texturenpakete">
<multiplicity id="32" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="32" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="2" navigable="true"/> <end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="33"> <association id="33">
<end type="SOURCE" refId="13" navigable="false"> <end type="SOURCE" refId="18" navigable="false">
<attribute id="34" name="texturenpakete"/> <attribute id="34" name="view">
<multiplicity id="35" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="35" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="2" navigable="true"/> <end type="TARGET" refId="16" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="36"> <association id="36">
<end type="SOURCE" refId="15" navigable="false"> <end type="SOURCE" refId="20" navigable="false">
<attribute id="37" name="pakete"/> <attribute id="37" name="kartensatz">
<multiplicity id="38" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="38" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="2" navigable="true"/> <end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="39"> <association id="39">
<end type="SOURCE" refId="15" navigable="false">
<attribute id="40" name="spielerverwaltung"/>
<multiplicity id="41" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="42">
<end type="SOURCE" refId="20" navigable="false"> <end type="SOURCE" refId="20" navigable="false">
<attribute id="43" name="kartensatz"/> <attribute id="40" name="audio">
<multiplicity id="44" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</end> </attribute>
<end type="TARGET" refId="6" navigable="true"/> <multiplicity id="41" minimum="0" maximum="1">
<display labels="true" multiplicity="true"/> <position height="0" width="0" x="0" y="0"/>
</association> </multiplicity>
<association id="45">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="46" name="gelegterWert"/>
<multiplicity id="47" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="12" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="48">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="49" name="FARBE"/>
<multiplicity id="50" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="51">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="52" name="computerGegner"/>
<multiplicity id="53" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="17" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="54">
<end type="SOURCE" refId="19" navigable="false">
<attribute id="55" name="kartensatz"/>
<multiplicity id="56" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="57">
<end type="SOURCE" refId="13" navigable="false">
<attribute id="58" name="aktuellesSpiel"/>
<multiplicity id="59" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="20" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="60">
<end type="SOURCE" refId="18" navigable="false">
<attribute id="61" name="speicherung"/>
<multiplicity id="62" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="63">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="64" name="audio"/>
<multiplicity id="65" minimum="0" maximum="1"/>
</end> </end>
<end type="TARGET" refId="7" navigable="true"/> <end type="TARGET" refId="7" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<generalization id="66"> <generalization id="42">
<end type="SOURCE" refId="8"/> <end type="SOURCE" refId="8"/>
<end type="TARGET" refId="10"/> <end type="TARGET" refId="10"/>
</generalization> </generalization>
<association id="67"> <association id="43">
<end type="SOURCE" refId="20" navigable="false"> <end type="SOURCE" refId="20" navigable="false">
<attribute id="68" name="spielzug"/> <attribute id="44" name="gelegterWert">
<multiplicity id="69" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="45" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="19" navigable="true"/> <end type="TARGET" refId="12" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="70"> <association id="46">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="71" name="spieler"/>
<multiplicity id="72" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="73">
<end type="SOURCE" refId="16" navigable="false"> <end type="SOURCE" refId="16" navigable="false">
<attribute id="74" name="aktuellesSpiel"/> <attribute id="47" name="frame">
<multiplicity id="75" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</end> </attribute>
<end type="TARGET" refId="20" navigable="true"/> <multiplicity id="48" minimum="0" maximum="1">
<display labels="true" multiplicity="true"/> <position height="0" width="0" x="0" y="0"/>
</association> </multiplicity>
<association id="76">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="77" name="kartensatz"/>
<multiplicity id="78" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="79">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="80" name="TexturenpaketListe"/>
<multiplicity id="81" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="10" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="82">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="83" name="dashboard"/>
<multiplicity id="84" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="13" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="85">
<end type="SOURCE" refId="16" navigable="false">
<attribute id="86" name="frame"/>
<multiplicity id="87" minimum="0" maximum="1"/>
</end> </end>
<end type="TARGET" refId="14" navigable="true"/> <end type="TARGET" refId="14" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="88"> <association id="49">
<end type="SOURCE" refId="4" navigable="false">
<attribute id="89" name="daten"/>
<multiplicity id="90" minimum="0" maximum="2147483647"/>
</end>
<end type="TARGET" refId="1" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="91">
<end type="SOURCE" refId="13" navigable="false"> <end type="SOURCE" refId="13" navigable="false">
<attribute id="92" name="spielerverwaltung"/> <attribute id="50" name="spielerverwaltung">
<multiplicity id="93" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="51" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="4" navigable="true"/> <end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="94"> <association id="52">
<end type="SOURCE" refId="16" navigable="false">
<attribute id="53" name="aktuellesSpiel">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="54" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="20" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="55">
<end type="SOURCE" refId="17" navigable="false"> <end type="SOURCE" refId="17" navigable="false">
<attribute id="95" name="letztekartefarbe"/> <attribute id="56" name="letztekartewert">
<multiplicity id="96" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="57" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="12" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="58">
<end type="SOURCE" refId="13" navigable="false">
<attribute id="59" name="texturenpakete">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="60" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="61">
<end type="SOURCE" refId="2" navigable="false">
<attribute id="62" name="TexturenpaketListe">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="63" minimum="0" maximum="2147483647">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="10" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="64">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="65" name="WERT">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="66" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="12" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="67">
<end type="SOURCE" refId="19" navigable="false">
<attribute id="68" name="kartensatz">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="69" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="6" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="70">
<end type="SOURCE" refId="18" navigable="false">
<attribute id="71" name="speicherung">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="72" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="4" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="73">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="74" name="amZug">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="75" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="11" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="76">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="77" name="dashboard">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="78" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="13" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="79">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="80" name="computerGegner">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="81" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="17" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="82">
<end type="SOURCE" refId="13" navigable="false">
<attribute id="83" name="aktuellesSpiel">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="84" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="20" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="85">
<end type="SOURCE" refId="6" navigable="false">
<attribute id="86" name="kartensatz">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="87" minimum="0" maximum="2147483647">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="3" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="88">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="89" name="Ablageort">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="90" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="9" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="91">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="92" name="spielzug">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="93" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end>
<end type="TARGET" refId="19" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="94">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="95" name="FARBE">
<position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="96" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="5" navigable="true"/> <end type="TARGET" refId="5" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<association id="97"> <association id="97">
<end type="SOURCE" refId="18" navigable="false"> <end type="SOURCE" refId="15" navigable="false">
<attribute id="98" name="view"/> <attribute id="98" name="pakete">
<multiplicity id="99" minimum="0" maximum="1"/> <position height="0" width="0" x="0" y="0"/>
</attribute>
<multiplicity id="99" minimum="0" maximum="1">
<position height="0" width="0" x="0" y="0"/>
</multiplicity>
</end> </end>
<end type="TARGET" refId="16" navigable="true"/> <end type="TARGET" refId="2" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="100">
<end type="SOURCE" refId="3" navigable="false">
<attribute id="101" name="Ablageort"/>
<multiplicity id="102" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="9" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="103">
<end type="SOURCE" refId="17" navigable="false">
<attribute id="104" name="letztekartewert"/>
<multiplicity id="105" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="12" navigable="true"/>
<display labels="true" multiplicity="true"/>
</association>
<association id="106">
<end type="SOURCE" refId="20" navigable="false">
<attribute id="107" name="amZug"/>
<multiplicity id="108" minimum="0" maximum="1"/>
</end>
<end type="TARGET" refId="11" navigable="true"/>
<display labels="true" multiplicity="true"/> <display labels="true" multiplicity="true"/>
</association> </association>
<classifier-display autosize="true" stereotype="true" package="true" initial-value="true" signature="true" <classifier-display autosize="true" stereotype="true" package="true" initial-value="true" signature="true"

View File

@@ -266,6 +266,7 @@ public class Dashboard_GUI extends JPanel{
@Override @Override
public void mouseClicked(MouseEvent e) { public void mouseClicked(MouseEvent e) {
speicherung.setSpieler(getspielername()); speicherung.setSpieler(getspielername());
level_count.setText(Integer.toString(speicherung.getLevel()));
} }
}); });
panel_1.setBackground(new Color(51, 51, 153)); panel_1.setBackground(new Color(51, 51, 153));

View File

@@ -14,6 +14,9 @@ import de.jaujau.daten.Texturenpakete;
import de.jaujau.spiellogik.Spiel; import de.jaujau.spiellogik.Spiel;
import java.awt.event.MouseAdapter; import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent; import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.BoxLayout; import javax.swing.BoxLayout;
import java.awt.Font; import java.awt.Font;
import java.awt.Toolkit; import java.awt.Toolkit;
@@ -167,7 +170,7 @@ public class GUI extends JFrame{
//Spiel starten -- Label zum starten des Spiels //Spiel starten -- Label zum starten des Spiels
gamelabel.addMouseListener(new MouseAdapter() { gamelabel.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) { public void mouseClicked(MouseEvent e) {
aktuellesSpiel = new Spiel(Dashboard_GUI); aktuellesSpiel = new Spiel(Dashboard_GUI, speicherung);
System.out.println("GUI: Spiel GUI geöffnet"); System.out.println("GUI: Spiel GUI geöffnet");
Dashboard_GUI.showgame(aktuellesSpiel); Dashboard_GUI.showgame(aktuellesSpiel);
} }
@@ -203,5 +206,16 @@ public class GUI extends JFrame{
} }
}); });
addWindowListener(new WindowAdapter()
{
@Override
public void windowClosing(WindowEvent e)
{
System.out.println("Closed");
speicherung.schreibeDatei();
e.getWindow().dispose();
}
});
} }
} }