JAVA Projekt Mensch ärgere dich nicht

Ähnliche Dokumente
Spielbeschreibung. Spielvorbereitung. Pachisi, Ludo oder Mensch ärger Dich nicht? Pachisi versus Mensch ärger Dich nicht.

Java Projekt: Tic Tac Toe + GUI

Praktikum aus Programmierung Dr. Michael Hahsler (WS 05/06) Projekt: Würfelpoker

Mensch ärgere dich nicht

Twister. Für das Spiel Twister benötigt ihr folgende Drehscheibe:

Praktikum aus Programmierung Dr. Michael Hahsler WS 2006/2007. Dokumentation des Projektes. Memory. Marco Ruzicka ( )

Das beliebte Würfelspiel für 2 4 Spieler ab 6 Jahren Spielmaterial

Klausur zur Systemanalyse AI3, MTI3 4 SS 2010, Prof. Dr. Hans-Jürgen Steffens. Name: Vorname: Matrikelnummer:

Dokumentation des Projektes Tic Tac Toe

Würfel Fragezeichen Absolventenmütze Schlüssel Blauer Pfeil Rundes Feld mit Monster Rundes Feld mit Monstereiern

Die lustige Spielesammlung für 2-6 Kinder ab 3 Jahren. Mit 6 verschiedenen Farbwürfel- und Geschicklichkeitsspielen!

Stefan Kloß TL Ein spannendes Zocker-Spiel für 2-4 Unerschrockene ab 8 Jahren

Spielmaterial 1 Spielplan 1 Würfelturm 4 Würfel 16 Spielfiguren (4 pro Farbe)

6in1 Deluxe Spiele-Koffer. Spielanleitung

Die 4 ersten Spiele" haben unterschiedlich. der Spiele untereinander ergibt.

Projektbezeichnung: Softwareversion vom Spiel Schiffe Versenken

Programmierung (Java) WS 2005/06. Sudoku Solver. Programmierprojekt aus Praktikum aus Programmierung

Großbrettspiel- Spielesammlung

D O K U M E N T A T I O N

Spielregeln Backgammon

EDITION SOS-KINDERDÖRFER SPIELE AUS ALLER WELT. Yut Nori

Mehrdimensionale Arrays

Schleichen huschen nur nicht kuschen...

Ravensburger Spiele Nr Würfelspiel für 2-6 Spieler ab 6 Jahren

Anwendungspraktikum aus JAVA Programmierung im SS 2006 Leitung: Albert Weichselbraun. Java Projekt. Schiffe Versenken mit GUI

Institut für Programmierung und Reaktive Systeme 5. Dezember Programmieren I. 5. Übungsblatt

Inhalt: Vor dem ersten Spiel. 12 Puzzleteile Gehege mit Tieren 4 Tierpfleger 1 Würfel 1 Stoffbeutel

Durch Wissen Millionär WerDen... Wer hat zuerst die Million erreicht? spielanleitung Zahl der spieler: alter: redaktion / autor: inhalt:

Spielinhalt Schildkröte, schnell! Allgemeine Spielbeschreibung und Spielziel Spielverlauf

TEMPEL HÜPFEN. TEMPELHÜPFEN Bastelbogen für DECKEL HÜPFEN TEMPEL HÜPFEN TEMPEL TEMPEL HÜPFEN TEMPELHÜPFEN

Funktionaler Zusammenhang Beitrag 17 Lineare Funktionen trainieren 1 von 20

Spielesammlung für große Würfel aus Kork

Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht:

HdM-Stuttgart, FB1, MI Probeklausur 1, Informatik 4 Prof. Dr. Edmund Ihler. Fachhochschule Stuttgart Hochschule der Medien.

Spielanleitung für das Backgammon-Spiel mit freundlicher Genehmigung von

Das spannende Würfel- und Gedächtnisspiel mit dem kleinen Tiger und seinen Freunden für 2 bis 6 Spieler ab S Jahren.

Anleitung zum DVD-Brettspiel

MPGI 3 Muster-SLK B. Wintersemester 2011/ Februar 2012

Probeklausur: Programmierung WS04/05

Rechtschreibspiele. Tannenbaumkerzen. die Kälte - kalt

Objektorientierung und UML im Anfangsunterricht

Dokumentation Kanonenspiel

Spielidee. Spielmaterial

Wichtig einen Punkt für jeden Käfer Das Duell Käferspieler Das Loopingfeld sieben Käfer Punktewürfel Kakerlakenspieler vier Chips

DOWNLOAD VORSCHAU. Einfache Würfelspiele Zahlenraum bis zur Vollversion. Motivierend und schnell einsetzbar. Ruth Hölken

Dokumentation Projekt Virtuelles Tagebuch

Programmieren I + II Regeln der Code-Formatierung

SCHLAUER FUßBALL

Mein Bauernhof Lauf schnell zum Markt und kaufe ein: Ein Pferd, ein Schaf, eine Kuh, ein Schwein.

REGLEMENT ÜBER DAS VIRTUELLE VORAUSZIEHUNGSLOS

ein Spielbrett mit 126 sechseckigen Feldern in drei Farben 51 Spielfiguren, davon je 17 in einer Farbe:

S P I E L R E G E L N

Rosenkönig Spielanleitung/Spielregeln. Brettspielnetz.de Team Copyright 2017 Brettspielnetz.de

Tag 3 Repetitorium Informatik (Java)

FH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Referenzen. Referenzen

Die Spielfigur stellt jeder Spieler auf das Hausfeld. Es wird ein Spieler zum Startspieler ernannt, der die drei Würfel erhält.

Nachklausur Bitte in Druckschrift leserlich ausfüllen!

Wuerfel - augenzahl: int + Wuerfel() + wuerfeln() + gibaugenzahl(): int

Zahl der Spieler: Alter: Autor: Illustrationen: Inhalt:

ARBEITSBLATT 1 DIE SUPERSTARS. Name: Größe: Nahrung: Beschreibung: Unterrichtseinheit GS/3 Seite 1/9. schule.oekolandbau.

Ein neues Spiel mit Fate Charakterbogen erstellen Klickt rechts auf die blaue Schaltfläche Neues Spiel starten. Fate mit Roll20 spielen

Java Einführung Klassendefinitionen

6.2 Therapie phonetisch-phonologischer Störungen

Schatz erobern (2-6 Spieler)

PHARAO scheint mir geeignet, das Alte Ägypten spielerisch zu erleben und damit einen ungezwungenen Zugang zu dieser alten Kultur zu gewinnen.

Test zu Grundlagen der Programmierung Leitung: Michael Hahsler. 21. Juni 2004

Problemdefinition. Datum 26.Oktober Projektbezeichnung Softwareversion von Würfelpoker

Ravensburger Spiele Nr Würfelspiel für 2 bis 6 Spieler von 5 bis 10 Jahren. Grafik: Waltraut Schmidt

Institut für Programmierung und Reaktive Systeme 20. November Programmieren I. 4. Übungsblatt

1 Klassen und Objekte

/** Main-Methode erzeugt einen neuen Editor zum Testen */ public static void main(string[] args) { new Editor();

Ravensburger Spiele Nr Autor: Klaus Teuber Grafik: Studio fean Pierre Legrain Ein Würfelspiel für 2-6 Spieler ab 8 Jahren

Alleswisser - Das Spiel

Wahrscheinlichkeitsrechnung

JAVA PROJEKT. Schiffe Versenken mit GUI. Projektheft

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Autorin: Redaktionelle Mitarbeit: Illustration: Design: Inhalte: 2 unterschiedlichen Spielen bärenstarken Reisespiel

Spielerisch fördern mit den Lernspielen von Ravensburger

Spielmaterial. Spielidee. 36 Karten Streckenabschnitt 14 x Vollgas! 14 x Bremsen! 8 x Crash!

Sie müssen den Test bis 20:00 Uhr am Abgabetag dieses Übungszettels absolviert haben.

Chantriffel. Material: - 5 Würfel - Spielplan. Viererpasch Mindestens vier gleiche Zahlen.

Silke Trißl Wissensmanagement in der Bioinformatik. Objektorientierte Programmierung (OOP) Vorstellung wie in der realen Welt: Farbe Hubraum Tank...

Objektorientierte Programmierung Studiengang Medieninformatik

Jeder Spieler nimmt sich eine SCHATZSUCHMEISTER-SPIELFIGUR. Die Spielfiguren werden außerhalb der Eingangstür aufgestellt.

Einstieg in die Informatik mit Java

Pflichtenheft Version 1.0. Mäxchen/Meiern iphone App

Dieses Dokument enthält alle Teilaufgaben zur Java-Pflichtaufgabe für das Sommersemester Aufgabe 1 (Vier Gewinnt 1. Teil)

Vorkurs Informatik WiSe 17/18

Lesen Schlafen süße Träume...

Institut für Informatik und Angewandte Kognitionswissenschaften

Tag 4 Repetitorium Informatik (Java)

FH Wiesbaden Projektaufgabe zum Praktikum Prof. Dr. Dreher FB 06 Informatik Softwaretechnik (Medieninformatik), WS 2002/2003 PROJEKT-AUFGABE

Spielmaterial. Der bissige Spielspaß von Rüdiger Koltze für 3-6 Spieler ab 8 Jahren. meisten Zähne gesammelt hat, gewinnt das Spiel.

Wahrscheinlichkeitsrechnung

1. Das Grundspiel Ziel des Spiels. Inhalt: 1 Spielplan, 34 Gängekarten, 24 Bildkarten, 4 Spielfiguren

Zug fährt. Zug fährt

Transkript:

JAVA Projekt Mensch ärgere dich nicht Rechnerpraktikum aus Programmierung, WS06/07 Unter der Leitung von Dr. Michael Hahsler Autor: Name: Patrick Siebert Matrikelnummer: 0252978

Inhalt: PROBLEMBESCHREIBUNG:... 4 Projektziel:... 4 Problemstellung:... 4 ANALYSE UND MODELLIERUNG:... 4 Use Case 1... 4 Use Case Name:... 4 Akteure:... 4 Vorbedingungen:... 4 Nachbedingungen:... 4 Auslöser:... 5 Ablaufbeschreibung:... 5 Fehlsituationen:... 5 Variationen:... 5 Instanz:... 5 Ergebnisse:... 5 Nicht funktionale Anforderungen:... 5 Autor:... 5 Use Case Diagramm:... 5 Use Case 2... 6 Use Case Name:... 6 Akteure:... 6 Vorbedingungen:... 6 Nachbedingungen:... 6 Auslöser:... 6 Ablaufbeschreibung:... 6 Fehlsituationen:... 6 Variationen:... 6 Instanz:... 6 Ergebnisse:... 6 Nicht funktionale Anforderungen:... 6 Autor:... 6 Use Case Diagramm:... 6 Class Diagramm:... 6 Sequenz-Diagramm:... 8 WEITERES DESIGN:... 9 Class Diagramm überarbeitet:... 9 Sequenz-Diagramm überarbeitet:... 9 IMPLEMENTIERUNG:... 11 Beschreibung der Klassen:... 11 Klasse Figur:... 11 Klasse Mensch:... 11 Klasse Spiel:... 11 Klasse Spielbrett:... 11

Klasse Spieler:... 12 Klasse wuerfel:... 12 INSTALLATION UND WARTUNG:... 12

Problembeschreibung: Projektziel: Ziel des Projekts ist es, das beliebte Gesellschaftsspiel Mensch ärgere dich nicht in einer Software zu realisieren. Problemstellung: Es soll das Gesellschaftsspiel Mensch ärgere dich nicht entwickelt werden. Man kann es gegen einen, zwei oder drei Computer-Gegner spielen. Das Spielbrett besteht aus insgesamt 40 Feldern, von denen vier als Startfelder (0, 10, 20, 30) und vier als Zielfelder (39, 9, 19, 29) dienen (jeder Spieler besitzt also ein Start- und ein Zielfeld). Jeder Spieler erhält vier Spielfiguren. Jede dieser Spielfiguren muss alle 40 Felder ablaufen, damit sie ins Ziel kommt. Mittels eines Würfels wird ermittelt, wie viele Felder die Figur vorrückt. Wenn alle vier Spielfiguren im Ziel sind, ist das Spiel gewonnen. Kommt eine Figur auf ein besetztes Feld, wird die bereits dort stehende Spielfigur zurück an den Start geworfen. Um eine Figur ins Spiel bringen zu können, muss am Anfang gewürfelt werden. Wenn innerhalb der ersten drei Würfe ein Sechser fällt, muss die Figur auf das Startfeld gestellt werden. In diesem Fall kann derselbe Spieler nochmals würfeln und einen Stein bewegen. Gelingt es nicht, dass in den ersten drei Würfen ein Sechser gewürfelt wird, kommt der nächste Spieler an die Reihe. Wird ein Sechser während des Spiels gewürfelt, muss eine neue Figur auf das Startfeld gestellt werden, außer alle Figuren sind schon im Spiel. Eventuell soll es eine Hilfefunktion geben, wo man die Regeln nachsehen kann. (Der Autor hofft dieses Projekt umsetzen zu können, ohne sich zu oft an den Ratschlag des Titels halten zu müssen) Analyse und Modellierung: Use Case 1 Use Case Name: Mensch-ärgere-dich-nicht Spiel Akteure: Spieler, Computergegner Vorbedingungen: Keine Nachbedingungen: ein Spieler hat gewonnen

Auslöser: Spielstart Ablaufbeschreibung: 1. Spiel starten 2. Gegneranzahl wählen 3. Würfeln 4. Spielfigur wählen und auf Startbereich stellen. 5. Würfeln 6. Figur ziehen. 7. Nächster Spieler 8. Wiederholung Punkte 3-7 9. Spielende Fehlsituationen: Variationen: Mehr als 3 Mitspieler gewählt Falsche Figur gewählt Spiel wird zwischendurch abgebrochen Nach dem Spiel wird sofort ein neues Spiel gestartet Spieler sieht in den Regeln nach Instanz: Spieler 1 startet ein neues Spiel. Er sucht sich 2 Gegner aus. Er würfelt die Zahl 6. Er wählt Spielfigur 1 und stellt sie auf den Startbereich. Er würfelt noch mal. Es ist die Zahl 4. Er fährt mit seiner Figur 4 Felder vor. Die beiden Computergegner kommen dran. Diese Punkte wiederholen sich, bis der Spieler alle Figuren im Ziel hat. Ergebnisse: Spieler 1 hat gewonnen. Seine 4 Figuren sind alle im Ziel. Nicht funktionale Anforderungen: Spieler 1 ärgert sich nicht. Autor: Patrick Siebert am 10.11.2006 Use Case Diagramm:

Use Case 2 Use Case Name: Regeln lesen Akteure: Spieler Vorbedingungen: Keine Nachbedingungen: Regeln wurden angezeigt Auslöser: Spieler versteht die Regeln nicht Ablaufbeschreibung: 1. Spiel starten 2. Regeln lesen Fehlsituationen: Regeln werden nicht verstanden Variationen: keine Instanz: Spieler 1 startet das Spiel. Er liest die Regeln. Ergebnisse: Spieler 1 kennt die Regeln. Nicht funktionale Anforderungen: Spieler 1 kennt die Regeln gut. Autor: Patrick Siebert am 22.11.2006 Use Case Diagramm: Class Diagramm:

Sequenz-Diagramm:

Weiteres Design: Aufgrund der Knappheit der zeitlichen Ressourcen musste das Projekt drastisch vereinfacht werden. Es stellte sich heraus, dass die oben beschriebene Darstellung den Rahmen des Semesters sprengen würde. Folgende Vereinfachungen wurden unter anderem vorgenommen: Das Spiel ist nur von 2 menschlichen Spielern spielbar. Das Spielfeld ist ein lineares Feld bestehend aus 40 Feldern, wobei beide Spieler beim gleichen Feld anfangen. Auf eine Hilfedatei oder eine Regelbeschreibung wurde verzichtet. Am Anfang darf nur einmal gewürfelt werden. Kommt kein Sechser, ist der nächste Spieler dran. Das gesamte Spiel wurde sehr vereinfacht, jedoch wurde darauf Wert gelegt, dass es ausbaufähig bleibt. Zum Beispiel wurde eine abstrakte Klasse Spieler verwendet, um eventuell später Computergegner hinzuzufügen. Class Diagramm überarbeitet: Sequenz-Diagramm überarbeitet:

Implementierung: Beschreibung der Klassen: Das Spiel besteht aus folgenden Klassen: 1. Figur 2. Mensch 3. Spiel 4. Spielbrett 5. Spieler 6. wuerfel Klasse Figur: Besteht aus den Variablen figurid (int) und figurspielername(string). Somit wird jede Figur eindeutig einem Spieler gegeben. Außerdem hat sie eine tostring Methode, damit sie richtig angezeigt werden kann. Klasse Mensch: Ist eine Kind-Klasse der Klasse Spieler. Besitzt eine static Variable int, damit das Spiel weiß, wie viele Spieler es gibt. Spezifiziert die Methoden weiter() und fragen() der Superklasse. Besitzt eine readstring() Methode, damit der Name eingelesen werden kann. Klasse Spiel: Besitzt die main-methode. In dieser erzeugt sie das Spielbrett und die Spieler. Dann leitet sie das Spiel, indem sie Anfragen an die Spieler verschickt. Mittels einer do-schleife wird läuft das Spiel. Wenn die Klasse 4 Figuren von einem Spieler im Zielfeld findet, wird die do- Schleife beendet. Klasse Spielbrett: Besitzt drei Arrays: spielbrettarray: Figur[], startboxarray: Figur[][], zielboxarray: Figur[]. Der Konstruktor erstellt auf dem spielbrettarray Platz für 40 Figuren, auf dem startboxarray 2 mal 4 Figuren für die Spieler und im zielboxarray Platz für 8 Figuren. Die Methode anzeigen() zeigt dort, wo keine Figur steht, einen Punkt an. Dort, wo eine Figur steht, ruft sie die tostring-methode dieser Figur auf. Der Methode bewegen() werden der figurspielername(string), die figurid(int) und die gewürfelte zahl(int) übergeben. Sie sucht zunächst die Figur im spielbrettarray. Ist die zahl = = 6, wird die Figur der Variable inderhand übergeben. Dann wird das Spielfeld gesucht. Auch hier wird die gefundene Figur an inderhand übergeben. Von inderhand wird die Figur dann jeweils auf dem spielbrettarray verschoben.

Klasse Spieler: Die Klasse Spieler wurde als abstract definiert, damit eventuell später noch Computergegner hinzugefügt werden könnten. Sie enthält die Variable name(string) und der Konstruktor erstellt einen Würfel. Außerdem enthält sie die abstrakten Methoden weiter() und fragen(). Klasse wuerfel: Enthält die Methode wuerfeln(), die eine Zufallszahl von 1-6 retourniert (int). In stallation und Wartung: Da es sich vorerst nur um einen Prototypen handelt, muss mit Fehlern gerechnet werden. Eventuell wird das Projekt noch zum vollständigen Spiel ausgebaut. Zum Ausführen wird JRE 1.5 oder höher benötigt. Leider musste auf eine GUI verzichtet werden, das Spiel kann jedoch textbasiert gespielt werden.