Skip to content
Snippets Groups Projects
Commit b6e79d4d authored by Benedict Ruoff's avatar Benedict Ruoff
Browse files

Fang_den_Hut

parent 7a917484
No related branches found
No related tags found
No related merge requests found
Showing
with 596 additions and 0 deletions
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager">
<output url="file://$PROJECT_DIR$/out" />
</component>
<component name="ProjectType">
<option name="id" value="jpab" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/info2-gruppe-03.iml" filepath="$PROJECT_DIR$/.idea/info2-gruppe-03.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="" vcs="Git" />
</component>
</project>
\ No newline at end of file
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
<html>Simple <b>Java</b> application that includes a class with <code>main()</code> method</html>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding">
<file url="PROJECT" charset="UTF-8" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectKey">
<option name="state" value="project://e2804f05-5315-4fc6-a121-c522a6c26470" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_15" default="true" project-jdk-name="15" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
<component name="ProjectType">
<option name="id" value="jpab" />
</component>
</project>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/Backend_Fang_den_Hut.iml" filepath="$PROJECT_DIR$/Backend_Fang_den_Hut.iml" />
</modules>
</component>
</project>
\ No newline at end of file
<template>
<input-field default="com.company">IJ_BASE_PACKAGE</input-field>
</template>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
</content>
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>
\ No newline at end of file
File added
File added
File added
File added
File added
package com.company;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Iterator;
import java.util.LinkedList;
public class Game {
public void redmoveleft(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//Red moves in outter Ring left
//es wird geprueft ob sich die erste Figur noch in der basis befindet
//Wenn sie das tut läuft sie von dort los
//0 tes feld des rings wird mit 1 erreicht
if (gamechar.color == "red" && gamechar.id == 0) {
String s = outterring.get(53 - wuerfel);
outterring.set(53 - wuerfel, "charred" + s);
gamechar.id = 53 - wuerfel;
}
//Figur befindet sich nicht mehr in der Basis
//Läuft von aktueller position weiter
else {
if (gamechar.color == "red" && gamechar.id != 0) {
String t = outterring.get(gamechar.id);
if (t.contains("rest")) {
outterring.set(gamechar.id, "rest");
} else {
if (t.contains("infrontofredbase")) {
outterring.set(gamechar.id, "infrontofredbase");
} else {
outterring.set(gamechar.id, "" + gamechar.id);
String u = outterring.get(gamechar.id - wuerfel);
outterring.set(gamechar.id - wuerfel, "charred" + u);
gamechar.id = gamechar.id - wuerfel;
}
}
}
//es wird der extremfall abgefangen index out of linked list
if (gamechar.id - wuerfel < 0) {
//hilfsvariable speichert den wert wo die figur stehen soll
//hilfsvariable wird dann benutzt um den hut am gewünschten fel zu platzieren
int hilf = (gamechar.id - wuerfel);
outterring.set(51 + hilf, "charred");
gamechar.id = 51 + hilf;
} else {
outterring.set(gamechar.id - wuerfel, "charred");
gamechar.id = gamechar.id - wuerfel;
}
}
}
public void greenmoveleft(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//green moves in outter Ring left
//es wird geprueft ob sich die erste Figur noch in der basis befindet
//Wenn sie das tut läuft sie von dort los
if (gamechar.color == "green" && gamechar.id == 0) {
String s = outterring.get(15 - wuerfel);
outterring.set(15 - wuerfel, "chargreen" + s);
gamechar.id = 15 - wuerfel;
}
//Figur befindet sich nicht mehr in der Basis
//Läuft von aktueller position weiter
else {
if (gamechar.color == "green" && gamechar.id != 0) {
String t = outterring.get(gamechar.id);
if (t.contains("rest")) {
outterring.set(gamechar.id, "rest");
} else {
if (t.contains("infrontofgreenbase")) {
outterring.set(gamechar.id, "infrontofgreenbase");
} else {
outterring.set(gamechar.id, "" + gamechar.id);
String u = outterring.get(gamechar.id - wuerfel);
outterring.set(gamechar.id - wuerfel, "chargreen" + u);
gamechar.id = gamechar.id - wuerfel;
}
}
}
//es wird der extremfall abgefangen index out of linked list
if (gamechar.id - wuerfel < 0) {
//hilfsvariable speichert den wert wo die figur stehen soll
//hilfsvariable wird dann benutzt um den hut am gewünschten fel zu platzieren
int hilf = (gamechar.id - wuerfel);
outterring.set(51 + hilf, "chargreen");
gamechar.id = 51 + hilf;
} else {
outterring.set(gamechar.id - wuerfel, "chargreen");
gamechar.id = gamechar.id - wuerfel;
}
}
}
public void yellowmoveleft(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//yellow moves in outter Ring left
//es wird geprueft ob sich die erste Figur noch in der basis befindet
//Wenn sie das tut läuft sie von dort los
if (gamechar.color == "yellow" && gamechar.id == 0) {
String s = outterring.get(27 - wuerfel);
outterring.set(27 - wuerfel, "charyellow" + s);
gamechar.id = 27 - wuerfel;
}
//Figur befindet sich nicht mehr in der Basis
//Läuft von aktueller position weiter
else {
if (gamechar.color == "yellow" && gamechar.id != 0) {
//aktuellen stand zwischenspeichern
String t = outterring.get(gamechar.id);
//Ruhebank
if (t.contains("rest")) {
outterring.set(gamechar.id, "rest");
} else {
if (t.contains("infrontofyellowbase")) {
outterring.set(gamechar.id, "infrontofyellowbase");
} else {
outterring.set(gamechar.id, "" + gamechar.id);
String u = outterring.get(gamechar.id - wuerfel);
outterring.set(gamechar.id - wuerfel, "charyellow" + u);
gamechar.id = gamechar.id - wuerfel;
}
}
}
//es wird der extremfall abgefangen index out of linked list
if (gamechar.id - wuerfel < 0) {
//hilfsvariable speichert den wert wo die figur stehen soll
//hilfsvariable wird dann benutzt um den hut am gewünschten fel zu platzieren
int hilf = (gamechar.id - wuerfel);
outterring.set(51 + hilf, "charyellow");
gamechar.id = 51 + hilf;
} else {
outterring.set(gamechar.id - wuerfel, "charyellow");
gamechar.id = gamechar.id - wuerfel;
}
}
}
public void bluemovesleft(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//blue moves in outter Ring left
//es wird geprueft ob sich die erste Figur noch in der basis befindet
//Wenn sie das tut läuft sie von dort los
if (gamechar.color == "blue" && gamechar.id == 0) {
String s = outterring.get(40 - wuerfel);
outterring.set(40 - wuerfel, "charblue" + s);
gamechar.id = 40 - wuerfel;
}
//Figur befindet sich nicht mehr in der Basis
//Läuft von aktueller position weiter
else {
if (gamechar.color == "blue" && gamechar.id != 0) {
String t = outterring.get(gamechar.id);
if (t.contains("rest")) {
outterring.set(gamechar.id, "rest");
} else {
if (t.contains("infrontofbluebase")) {
outterring.set(gamechar.id, "infrontofbluebase");
} else {
outterring.set(gamechar.id, "" + gamechar.id);
String u = outterring.get(gamechar.id - wuerfel);
outterring.set(gamechar.id - wuerfel, "charblue" + u);
gamechar.id = gamechar.id - wuerfel;
}
}
}
//es wird der extremfall abgefangen index out of linked list
if (gamechar.id - wuerfel < 0) {
//hilfsvariable speichert den wert wo die figur stehen soll
//hilfsvariable wird dann benutzt um den hut am gewünschten fel zu platzieren
int hilf = (gamechar.id - wuerfel);
outterring.set(51 + hilf, "charblue");
gamechar.id = 51 + hilf;
} else {
outterring.set(gamechar.id - wuerfel, "charblue");
gamechar.id = gamechar.id - wuerfel;
}
}
}
//nach rechts auf dem außeren ring bewegen
public void redmoveright(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//Red moves in outter Ring right
//Wenn id 0 hut befindet sich in basis kann von seiner basis aus loslaufen
if (gamechar.color == "red" && gamechar.id == 0) {
String s = outterring.get(-1 + wuerfel);
outterring.set(-1 + wuerfel, s + "charred");
gamechar.id = 0 + wuerfel;
} else {
//Wenn id nicht null hut befindet sich bereits auf Spielfeld
if (gamechar.color == "red" && gamechar.id != 0) {
outterring.set(gamechar.id, "" + gamechar.id);
}
//Ueberlauf abfangen
if (gamechar.id + wuerfel > 51) {
int hilf = (gamechar.id + wuerfel) - 51;
outterring.set(hilf - 1, "charred");
gamechar.id = hilf - 1;
} else {
outterring.set(gamechar.id + wuerfel, "charred");
gamechar.id = gamechar.id + wuerfel;
}
}
}
public void greenmoveright(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//Green moves in outter Ring righgt
//Wenn id 0 hut befindet sich in basis kann von seiner basis aus loslaufen
if (gamechar.color == "green" && gamechar.id == 0) {
outterring.set(12 + wuerfel, "charred");
gamechar.id = 12 + wuerfel;
} else {
//Wenn id nicht null hut befindet sich bereits auf Spielfeld
if (gamechar.color == "green" && gamechar.id != 0) {
outterring.set(gamechar.id, "" + gamechar.id);
}
//Ueberlauf abfangen
if (gamechar.id + wuerfel > 51) {
int hilf = (gamechar.id + wuerfel) - 51;
outterring.set(hilf - 1, "chargreen");
gamechar.id = hilf - 1;
} else {
outterring.set(gamechar.id + wuerfel, "chargreen");
gamechar.id = gamechar.id + wuerfel;
}
}
}
public void yellowmoveright(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//Yellow moves in outter Ring righgt
//Wenn id 0 hut befindet sich in basis kann von seiner basis aus loslaufen
if (gamechar.color == "yellow" && gamechar.id == 0) {
outterring.set(25 + wuerfel, "charyellow");
gamechar.id = 25 + wuerfel;
} else {
//Wenn id nicht null hut befindet sich bereits auf Spielfeld
if (gamechar.color == "yellow" && gamechar.id != 0) {
outterring.set(gamechar.id, "" + gamechar.id);
}
//Ueberlauf abfangen
if (gamechar.id + wuerfel > 51) {
int hilf = (gamechar.id + wuerfel) - 51;
outterring.set(hilf - 1, "charyellow");
gamechar.id = hilf - 1;
} else {
outterring.set(gamechar.id + wuerfel, "charyellow");
gamechar.id = gamechar.id + wuerfel;
}
}
}
public void bluemoveright(Gamechar gamechar, int wuerfel, LinkedList<String> outterring) {
//blue moves in outter Ring righgt
//Wenn id 0 hut befindet sich in basis kann von seiner basis aus loslaufen
if (gamechar.color == "blue" && gamechar.id == 0) {
outterring.set(38 + wuerfel, "charblue");
gamechar.id = 38 + wuerfel;
} else {
//Wenn id nicht null hut befindet sich bereits auf Spielfeld
if (gamechar.color == "blue" && gamechar.id != 0) {
outterring.set(gamechar.id, "" + gamechar.id);
}
//Ueberlauf abfangen
if (gamechar.id + wuerfel > 51) {
int hilf = (gamechar.id + wuerfel) - 51;
outterring.set(hilf - 1, "charblue");
gamechar.id = hilf - 1;
} else {
outterring.set(gamechar.id + wuerfel, "charblue");
gamechar.id = gamechar.id + wuerfel;
}
}
}
public void redmovesstraight(Gamechar gamechar, int wuerfel, LinkedList<String> redtoyellow, LinkedList<String> bluetogreen,LinkedList<String>outterring) throws IOException {
//Wenn Spielfigur noch in Basis
if (gamechar.id == 0 && gamechar.color == "red" && wuerfel > 1) {
String s = redtoyellow.get(-2 + wuerfel);
redtoyellow.set(-2 + wuerfel, "charred" + s);
gamechar.id = -2 + wuerfel;
} else {
//Wenn sich char nicht mehr in der Basis befindet
}
if (gamechar.color == "red" && gamechar.id != 0) {
String t = redtoyellow.get(gamechar.id);
if (t.contains("rest")) {
redtoyellow.set(gamechar.id, "rest");
} else {
redtoyellow.set(gamechar.id, "" + gamechar.id);
String u = redtoyellow.get(gamechar.id + wuerfel);
redtoyellow.set(gamechar.id +wuerfel, "charred" + u);
gamechar.id = gamechar.id +wuerfel;
}
//Überlauf bedeutet entweder nach links in den äußerenring oder nach rechts
if (gamechar.id + wuerfel > 12) {
int hilf = gamechar.id+wuerfel-12;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("In welche Richtung wollen Sie gehen?: ");
String str = br.readLine();
if(str=="r"){
gamechar.id =26;
redmoveleft(gamechar,hilf,outterring);
}
else
{
if(str=="l"){
gamechar.id=28;
redmoveleft(gamechar,hilf,outterring);
}
else{
throw new IOException("falsche Eingabe");
}
}
} else {
if (gamechar.id + wuerfel > 6) {
int hilf = gamechar.id+wuerfel-6;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("In welche Richtung wollen Sie gehen?: ");
String str = br.readLine();
//rechts kommt in die liste bluetogreen
if(str=="r"){
gamechar.id =6;
;
}
else
{
//blue to green
if(str=="l"){
gamechar.id=6;
redmoveleft(gamechar,hilf,outterring);
}
else{
//geradeaus weiter
if(str=="s"){
redmovesstraight(gamechar,hilf,redtoyellow,bluetogreen,outterring);
}
else{
//weder l r noch s eingegeben
throw new IOException("falsche Eingabe");
}
}
}
}
//kommt an keine Kreuzung und lauft einfach geradeaus weiter
outterring.set(gamechar.id + wuerfel, "charred");
gamechar.id = gamechar.id + wuerfel;
}
}
}
}
package com.company;
public class Gamechar {
int id;
String color;
public Gamechar(int id,String color){
this.id=id;
this.color=color;
}
public String getColor() {
return color;
}
public int getId() {
return id;
}
@Override
public String toString() {
return "Gamechar{" +
"id=" + id +
", color='" + color + '\'' +
'}';
}
}
package com.company;
import java.io.IOException;
import java.util.LinkedList;
public class Main {
public static void main(String[] args) throws IOException {
//outter Ring test
Spielfeld spiel=new Spielfeld();
LinkedList outterring;
LinkedList redtoyellow;
LinkedList bluetogreen;
outterring=spiel.outterRing();
System.out.println("outterring before initialize\n"+outterring);
outterring=spiel.initializeOutterring(outterring);
System.out.println("outterring after initialize\n"+outterring);
System.out.println("\n");
//connect redtoyellow
redtoyellow=spiel.connectredtoyellow();
System.out.println("redtoyellow before initialize\n"+redtoyellow);
bluetogreen=spiel.connectbluetogreen();
System.out.println("bluetogreen before initialize:\n"+bluetogreen);
System.out.println("\n");
redtoyellow=spiel.initializeredtoyellow(redtoyellow);
System.out.println("redtoyellow after initialize\n"+redtoyellow);
bluetogreen=spiel.initializebluetogreen(bluetogreen);
System.out.println("greentoblue after initialize\n"+bluetogreen);
System.out.println("\n");
//Farbe rot
Gamechar charonered=new Gamechar(0,"red");
Gamechar chartwored=new Gamechar(0,"red");
Gamechar charthreered=new Gamechar(0,"red");
Gamechar charfourred=new Gamechar(0,"red");
//TEAM RED
Team teamred=new Team(charonered,chartwored,charthreered,charfourred,0,"red");
System.out.println(teamred);
int wuerfel=teamred.wuerfeln();
System.out.println("Team rot hat eine "+wuerfel+"gewuerfelt");
System.out.println("\n");
//test auf dem aeußeren Ring bewegen
Game game=new Game();
game.redmovesstraight(teamred.char1,wuerfel,redtoyellow,bluetogreen,outterring);
System.out.println("retdoyellow after red moves "+redtoyellow);
System.out.println("\n");
wuerfel= teamred.wuerfeln();
System.out.println("Team rot hat eine "+wuerfel+"gewuerfelt");
System.out.println("\n");
game.redmovesstraight(teamred.char1,wuerfel,redtoyellow,bluetogreen,outterring);;
System.out.println("\n");
System.out.println("redtoyellow after red moves "+redtoyellow);
//Farbe blue
Gamechar charoneblue=new Gamechar(0,"blue");
Gamechar chartwoblue=new Gamechar(0,"blue");
Gamechar charthreeblue=new Gamechar(0,"blue");
Gamechar charfourblue=new Gamechar(0,"blue");
//TEam blue
Team teamblue=new Team(charoneblue,chartwoblue,charthreeblue,charfourblue,0,"blue");
wuerfel= teamblue.wuerfeln();
System.out.println("Team Blue hat eine "+wuerfel+"gewuerfelt");
System.out.println("\n");
game.bluemoveright(teamblue.char1,wuerfel,outterring);
System.out.println("\n");
System.out.println("outterring after blue moves "+outterring);
//Farbe green
Gamechar charonegreen=new Gamechar(0,"green");
Gamechar chartwogreen=new Gamechar(0,"green");
Gamechar charthreegreen=new Gamechar(0,"green");
Gamechar charfourgreen=new Gamechar(0,"green");
//TEam green
Team teamgreen= new Team(charonegreen,chartwogreen,charthreegreen,charfourgreen,0,"green");
wuerfel= teamgreen.wuerfeln();
System.out.println("Team Green hat eine "+wuerfel+"gewuerfelt");
//Farbe gelb
Gamechar charoneyellow=new Gamechar(0,"yellow");
Gamechar chartwoyellow=new Gamechar(0,"yellow");
Gamechar charthreeyellow=new Gamechar(0,"yellow");
Gamechar charfouryellow=new Gamechar(0,"yellow");
//Team Yellow
Team teamyellow= new Team(charoneyellow,chartwoyellow,charthreeyellow,charfouryellow,0,"yellow");
wuerfel= teamyellow.wuerfeln();
System.out.println("Team Yellow hat eine "+wuerfel+"gewuerfelt");
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment