Portal > Foren > Java > Allgemeine Java-Programmierung > Projekt Mensch Ärger dich nicht/Arrays
Antwort
 
Themen-Optionen
Alt 24.06.2007, 18:27 Nach oben    #1
Neuer Benutzer
 
Registriert seit: 24.06.2007
Beiträge: 3
Standard Projekt Mensch Ärger dich nicht/Arrays

Hi,

ich habe folgendes Problem. Ich muss für die Schule ein Spiel programmieren und ich habe mir das Brettspiel „Mensch Ärgere dich nicht“ ausgesucht. Ich habe bis jetzt das Spielfeld gezeichnet und überlege jetzt wie ich die Figuren über das Feld bewegen lasse. Ich habe 2 Ideen:
  • Von allen Spielfeldern die x-und y-Koordinaten in ein Array einsortieren und die Spielfigur an der gewünschten Stelle zeichnen lassen(Habe ich versucht aber nicht hinbekommen).
  • Die Spielfigur einfach vorwärts bewegen lassen um die gewünschte Pixelanzahl. Problem: Spielfigur muss sich in verschiedene Richtungen bewegen, schmeißen, Ziel etc.
Mir persönlich gefällt die Arrayidee ganz gut da ich dann auch die Start-und Zielfelder in ein Array sortieren kann und so einen leichten Spielablauf ermöglichen kann.
Schaffe es aber nicht wenn jemand weis wie es geht und Zeit hat zu helfen mein Projekt habe ich hier hochgeladen:

http://edelrieder.ed.ohost.de/Java/

Danke schon mal im voraus für die Hilfe.
Gute Ideen hat wie man das Konzept verbessern könnte sind immer gerne gesehen, bin noch ein ziemlicher Anfänger in Java und kenne deswegen nicht alle Möglichkeiten.

Mit freundlichen Grüßen

Edelrieder
Edelrieder2 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.06.2007, 07:00 Nach oben    #2
Martin Eisengardt
 
Registriert seit: 30.03.2006
Ort: Pfinztal
Beiträge: 355
Standard

Zitat:
Zitat von Edelrieder2 Beitrag anzeigen
Von allen Spielfeldern die x-und y-Koordinaten in ein Array einsortieren und die Spielfigur an der gewünschten Stelle zeichnen lassen(Habe ich versucht aber nicht hinbekommen).
Wieso nicht hinbekommen? Woran scheiterts ganz konkret? Der Ansatz ist schonmal nicht schlecht (nicht zuletzt, weil die Feldpositionen nicht gerade typisch sind).

Dieses Forum ist eigenlich nicht dazu gedacht, dass man fertige Lösungen vorgesetzt bekommt und die nur noch übernehmen soll. Tu dir selbst einen Gefallen und versuch es, denn sonst lernst du auch nix, was 1. schade ist und 2. fällst du damit irgendwann eh auf den Mund, wenn du fertige Sacen einfach nur abschreibst ohne eigenes Wissen aufzubauen...

Zitat:
Zitat von Edelrieder2 Beitrag anzeigen
Gute Ideen hat wie man das Konzept verbessern könnte sind immer gerne gesehen, bin noch ein ziemlicher Anfänger in Java und kenne deswegen nicht alle Möglichkeiten.
Hab mir das nicht angeguckt, aber schreib erst einmal woran du scheiterst. Auch ein Anfänger kann sowas hinbekommen, wenn man ihn ein zweimal in die richtige Richtung schubst...
__________________
Open Sourcing the Online Gaming Universe
PHP/SQL/Java/C++/Assembler.
Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html
mepeisen ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.06.2007, 12:26 Nach oben    #3
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.480
Standard

Ich würde anstatt mit Arrays mit Implementierungen von Collections arbeiten.
Da hast du auf jeden Fall mehr Zugriffs- und Anwendungsmöglickeiten.

Je nachdem, was du denn so brauchst.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.06.2007, 12:29 Nach oben    #4
Neuer Benutzer
 
Registriert seit: 24.06.2007
Beiträge: 3
Standard

Ja habe gerade gesehen das mein Programm auf meinem Server nicht auf dem neusten stand war wollte das Array eigentlich so erstellen:

int Felder[][] = new int[41][41];
//1
for(int i=1;i<=4;i++){
feld.setColor(Color.white);
feld.fillOval(270,y,40,40);
feld.setColor(Color.black);
feld.drawOval(270,y,40,40);
y=y-55;
Felder[i][i] = Integer.parseInt(Felder[270][y]);
}

Jetzt wird das parseInt aber als Fehler unterstrichen und ich hab kein plan warum.
Edelrieder2 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.06.2007, 15:41 Nach oben    #5
Johannes Müller
 
Benutzerbild von $traight-$hoota
 
Registriert seit: 15.09.2005
Ort: Königreich Flieden
Beiträge: 519
Standard

Das Primärarray von Felder hat nur 41 Stellen, du versuchst aber auf das 270te Element zuzugreifen.
Ich würde die Felder eindimensional als Collection implementieren und den einzelnen Elementen selber die Koordinaten zuordnen. Auf deinem Weg reservierst du Speicherplatz für 41*41 = 1681 Felder, brauchst aber eigentlich nur ~ 50.
__________________
Weißt Bescheid - Scheiß wie weit
$traight-$hoota ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.06.2007, 15:46 Nach oben    #6
Martin Eisengardt
 
Registriert seit: 30.03.2006
Ort: Pfinztal
Beiträge: 355
Standard

Zitat:
Zitat von Edelrieder2 Beitrag anzeigen
Felder[i][i] = Integer.parseInt(Felder[270][y]);
}
Siehe http://java.sun.com/javase/6/docs/ap...g/Integer.html

Gegenfrage: Was willst du mit Integer.parseInt erreichen???
__________________
Open Sourcing the Online Gaming Universe
PHP/SQL/Java/C++/Assembler.
Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html
mepeisen ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.06.2007, 17:19 Nach oben    #7
Neuer Benutzer
 
Registriert seit: 24.06.2007
Beiträge: 3
Standard

int[] FelderX = new int[41];
int[] FelderY = new int[41];
//1
for(int i=1;i<=4;i++){
feld.setColor(Color.white);
feld.fillOval(270,y,40,40);
feld.setColor(Color.black);
feld.drawOval(270,y,40,40);
y=y-55;
FelderX[i]=270;
FelderY[i]=y;
}

Hab jetzt meinen Fehler bemerkt, hab einfach beim falschen Programmbeispiel geschaut. Hab jetzt aber ein anderes Problem und zwar wie bekomme ich die Arrays in meine Figur class das sie da erkannt wird und ich damit arbeiten kann? Kenne den Befehl dazu nicht.
Edelrieder2 ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 25.06.2007, 18:19 Nach oben    #8
Ben
Benjamin Klaile
 
Benutzerbild von Ben
 
Registriert seit: 02.12.2004
Ort: Remagen
Beiträge: 4.480
Standard

Verwende doch bitte die entsprechenden bbCodes. Danke.
Ben ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.06.2007, 09:35 Nach oben    #9
Martin Eisengardt
 
Registriert seit: 30.03.2006
Ort: Pfinztal
Beiträge: 355
Standard

Zitat:
Zitat von Edelrieder2 Beitrag anzeigen
Hab jetzt aber ein anderes Problem und zwar wie bekomme ich die Arrays in meine Figur class das sie da erkannt wird und ich damit arbeiten kann? Kenne den Befehl dazu nicht.
Im Zweifelsfall, in dem du die Variablen nicht in deiner Funktion definierst, sondern in deiner Klasse

Also nach folgendem Schema:
Code:
class ABC
{
public int meineVariable = -1;
public static int meineKlassenVariable = -1;
}
Sowas nentn man übrigens Scope oder Gültigkeitsbereich von Variablen. Eine Variable in einer Methode ist sinnvollerweise auch nur in dieser gültig, eine Variable in einer Klasse ist in dieser gültig.

Wenn du Zeit hast, lerne noch den Unterschied, was dein "static" bewirkt und was es bewirkt, wenn man es weglässt. Am besten an einem Tutorial zur objektorientierten Entwicklung...
__________________
Open Sourcing the Online Gaming Universe
PHP/SQL/Java/C++/Assembler.
Seit Jahren Mitglied und Entwickler in einem der wohl größten Java-Projekte der Welt: http://weblogs.java.net/blog/hansmul...e_desktop.html
mepeisen ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Developers-guide.net Projekt sucht willige Java Programmierer beny_mcde Projekte unserer Mitglieder 11 10.08.2006 13:03
JForum.de und Developers-Guide.net sind nun ein Projekt Ben Archiv 13 22.01.2006 15:17
[Grundlagen] Entwicklung eines Projektkonzeptes WarrenFaith Tutorials 1 21.11.2005 01:42
Projekt zugreifen Swingman Tools, Server, Betriebssysteme 5 15.02.2005 10:23


Alle Zeitangaben in WEZ +2. Es ist jetzt 07:42 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44