Entwickler-Ecke

WPF / Silverlight - Mensch ärgere dich nicht (WPF)


Stephan74656 - Mo 27.08.18 12:12
Titel: Mensch ärgere dich nicht (WPF)
Hallo,

Ich bin neu hier und programmierte als Hobby in C#. Ich wollte ein Mensch ärgere dich nicht machen, aber ich habe keine Ahnung, wie ich in der Logik rangehen soll, um das Spielfeld zu generieren und die richtigen Figuren zu setzen. Danke für eure Hilfe.


Th69 - Mo 27.08.18 13:02

Hallo und :welcome:

ich persönlich würde ein Point-Array benutzen und dort dann die Koordinaten der begehbaren, äußeren Felder eintragen. Zusätzlich dann noch ein Array für die Indizes der Startfelder sowie weitere Arrays für die Zielfelder (oder noch besser, du integrierst diese an des Ende des Spielfeld-Arrays). Und für jede Spielfigur (wiederum als Teil eines Arrays für jede Farbe und Nummer) hast du dann einen Index-Wert, der die Position im Array angibt (und z.B. -1 als noch im "Häuschen").

Dann benötigst du eine Spielklasse, welche dann bei einen Zug den Index passend setzt (also im Normalfall +1, nur bei den Zielfeldern müßtest du noch passende Logik implementieren).

Und in der UI zeichnest du dann an den Array-Positionen die einzelnen Spielfelder und Männchen. Bei WPF würde ich ein Canvas (je nachdem wie frei du zeichnen möchtest) oder gar eines der Grid-Controls dafür benutzen.

Unter Standard Mensch-ärger-dich-nicht-Projekt [https://entwickler-forum.de/showthread.php/71312-Mensch-%C3%A4rger-dich-nicht-Projekt] gibt es noch andere Ansätze.

Wieviel Erfahrung hast du denn mit (Spiele-)Programmierung? Sagen dir MVC, MVP, MVVM etwas?


Stephan74656 - Mo 27.08.18 13:16

Hallo
Ich habe mit MVC5 (ASP.Net) schonmal ne Website gemacht. Was die anderen Begriffe angeht, die habe ich schonmal gehört.

Mit Spieleprogrammierung habe ich insoweit Erfahrung, dass ich schonmal Tic-Tac-Toe programmiert habe. (Bnutze ich sogar immer noch).

Moderiert von user profile iconChristian S.: Beiträge zusammengefasst

Kann man eigentlich dafür auch ein image benutzen?


Th69 - Mo 27.08.18 13:43

Aber gerade mit WPF solltest du Model View ViewModel (MVVM) [https://de.wikipedia.org/wiki/Model_View_ViewModel] benutzen (sonst wirst du langfristig keine Freude und Erfolg haben). Schau dir wenigstens mal ein Tutorial wie MVVM Tutorial – Part 1 (Grundlagen) [http://www.cocktailsandcode.de/2012/04/mvvm-tutorial-part-1-grundlagen/] ff. an (und erstelle am besten ein eigenes Testprojekt, um damit "herumzuspielen").

Und klar kannst du auch ein Image (sowohl für das Spielfeld als auch die Männchen) benutzen. Um diese aber zu platzieren benötigst du passende Container-Controls (wie eben Canvas oder ein Grid).