Java Einfache GUI für Monopoly

darkblueeye

Banned
Registriert
Jan. 2013
Beiträge
9
Hallo zusammen.

Ich versuche mir hier einmal Hilfe bzw. Anregungen zu holen.

Hintergrund:
Unsere Aufgabe besteht darin ein verteiltes Monopoly umzusetzen (Client -> Server). Unterteil wurde das ganze in die Komponenten Spiel-Engine, Beobachter und KI-Spieler. Die Spielengine enthält alle erforderlichen Spielparameter (Anzahl Strassen etc.), der Beobachter stellt die Spielsituation dar und der KI-SPieler ist wie der Name verrät ein computergesteuerter Aktor.

Nun zu meiner Frage:
Ich entwerfe für die Beobachter-Komponente die grafische Oberfläche. Mein Problem ist, dass ich nur sehr rudimentäre Programmierkenntnisse und wenig Erfahrung mit Eclipse-PlugIns besitze. Genutzt wird Eclipse Juno.
Gibt es für diesen Zwecke nützliche Eclipse-Plugins, mit denen ich das Spielbrett darstellen kann? Wie würdet ihr die Darstellung umsetzen? Da die Anzahl von Straßen/Spielfelder variabel ist kann man kein vorgezeichnetes BRett nehmen, sondern muss das Spielfeld immer neuaufbauen lassen.
Also als Idee ich habe ein Objekt Straße welches ich einmal erzeuge. Variabel in diesem Objekt ist das Label <Straßenname> und die Farbe. Abhängig von der Gesamtzahl der Straßen wird dieses Objekt immer wieder "gezeichnet" bis das Spielfeld komplett ist.
Wie kann ich relativ einfach und idiotensicher ein solches Straßenfeld zeichnen welches ich dann dupliziere? AUs der Vorlesung ist mir nur eine Swing-variante bekannt. Gibts aber aber hierfür nicht brauchbare Editoren, mit denen man so eine GUI "basteln" kann.
Ich bin für jeden Tipp/Idee dankbar :)

Schöne Grüße
 
Mahlzeit,

Eine sehr interessante Aufgabe, aber für jemanden mit "rudimentären Programmierkenntnissen" imho viel zu kompliziert.

Mein Vorschlag für die Darstellung:
Je ein Bild für
Spielbrett
Haus (bzw. "Sterne" für Upgrades)
Spielfiguren

Das Spielbrett wäre die unterste Ebene und darauf würden dann die anderen Elemente abgebildet.

Gruß

EDIT: Sorry, wer lesen kann ist klar im Vorteil. Das Spielbrett soll ja anscheinend dynamisch sein...
 
Schau mal unter den Updates (oder Install New Software unter Hilfe) nach dem Swing builder. Aber ich würde für die Darstellung eher auf die Java 2D Komponenten setzen (Stichwort Canvas).
 
Erstmal Danke für die Antworten.

Ich wollte das nun gerne mit dem Plug-In SWT machen. Okay oder ist SWT "falsch"/ für die Anforderung nicht optimal?
 
Meine Güte, wer hat sich denn diese Aufgabe für Anfänger ausgedacht? Als wenn es keine einfacheren Spiele gäbe, mit denen man alle vorgegebenen Komponenten bauen könnte. Auch mit guten Java-Kenntnissen dauert das schon eine Weile und ist ziemlich umfangreich. Allein die Ereignis- und Gemeinschaftskarten und die damit verbundenen Sonderregeln.

Lasst auf jeden Fall die Finger von GUI-Buildern. Das bringt euch in Teufels Küche. Swing wäre meine Wahl, was aber hauptsächlich daran liegt, dass ich mich damit halbwegs auskenne.

Tipp: Bibliothek plündern oder anderweitig besorgen und absorbieren.
 
Swing Builder sind eher ungeeignet, da musst du dynamische Straßenkarten erzeugen und das geht damit sehr schlecht. Du erstellst eine Straßenkarten-Bean mit Kopfteil (da stehen dann die Häuser drauf) und einem Fußteil mit Straßenname und Infos. Du generierst mit einer Schleife n-Karten, wobei der Name immer aus einen Pool gezogen und dem Straßenkartenobjekt hinzugefügt wurd. Das Anordnen (=Drehen und Positionieren) auf dem Spielfeld ist etwas Tricky... Bissl Mathe der 5. Klasse zur Ermittlung der Ankerpixel.
 
Softwartechnikpraktikum Uni Paderborn?
 
Müsst ihr nicht einen Smartphone Beobachter schreiben? Da gibt sich die ganze Problematik doch garnicht mit Eclipse Plugins weil ihr die Android API nutzt...
Oder macht ihr freiwillig den PC-Beobachter dazu?
 
Hallo nochmal,

jap, wir machen nur den Smartphone-Beobachter.

Ist ggf. jemand hier, der sich gut mit dem Eclipse-PlugIn ADT für android-apps auskennt?

Ich möchte die "Spielfläche" gern wiefolgt aufbauen: http://imageshack.us/photo/my-images/837/aufbauflaeche.png/

Kann in der Palette aber keine brauchbaren "Felder" hierfür finden (soetwas richtung canvas?). Würfelpool etwa besteht aus 36 kleinen Zellen, die jeweils mit Würfelkomobinationen gefüllt werden (GridView?)
Auf der Spielfläche werden de einzelen Straßen "gezeichnet".

Hat zufällig auch jemand Ahnung wie man Icons in der App selber verkleinern kann ohne das Icon an sich runterzurechnen? android.height oder width ändert an der Größe nichts (zB. die buttons der Radiobuttons sin mir persönlich zu groß).
Danke :)
 
*up
Ergänzung ()

Nochmal etwas genauer:

Jede gezeigte "Fläche" möchte ich gerne separat behandeln. Bieten sich da die sogenannten "Fragments" an?
Mir bereitet das Layout über Table_Layout extreme Schwierigkeiten. Wenn ich dann eftwa ein Fragment reinziehe passt wider garnix....
 
Würde ich komplett ohne Layout machen (d.h. null setzen). So ein Spiel ist nunmal keine gewöhnliche Anwendungs-GUI, die nur aus ein paar Standard-Elementen besteht. Man könnte noch drüber streiten, ob man Knöpfe benutzt deren Aussehen man überschreibt, damit man nicht selbst das picking implementieren muss, aber selbst das würde ich mir nicht antun. But that's just me.
 
Zurück
Oben