Seite 2 von 2

Verfasst: Montag 12. April 2010, 01:05
von BlackJack
@conray: Module würde man auf diese Weise nicht verwenden. `houses` und `halfprice` sind überflüssig, da redundant. Die Anzahl der Häuser steckt in der Länge der Preisliste für die Gebäude und die Hälfte vom Grundstückspreis kann man bei Bedarf ganz einfach ausrechnen.

Ich würde auch wie Dauerbaustelle vorgeschlagen hat, mal schauen ob bei den Tabellen irgendwelche mathematischen Zusammenhänge bestehen, so dass man die nicht komplett als Daten speichern muss.

Warum sind die Mieten eigentlich als Zeichenketten abgelegt? Damit musst Du doch am Ende *rechnen*.

`house` würde ich eher `category` oder `stars` nennen, denn die letzte Ausbaustufe ist ja kein Haus mehr.

@Dauerbaustelle: Man könnte da Vererbung verwenden, aber es schreit IMHO nicht danach. Die Hotels verhalten sich alle identisch, es sind nur die Daten die sich ändern. Und nur für Daten würde ich mir Subklassen stark überlegen. Eine Hotelklasse deren Exemplare je nach Hotel mit den entsprechenden Daten gefüttert werden, tut's auch.

Verfasst: Montag 12. April 2010, 11:49
von conray
Du scheinst das Spiel ja zu kennen.
Das die letzte Ausbaustufe kein Hotel sonder eig. ein Park ist ist doch egal kommt doch nur auf den Preis an. Am ende sinds eh alles bloß bunte Sternchen aufn Spielfeld :D

Die listen für die Miete haben folgenenden Grund:
wenn man auf ein gegnerisches Hotel kommt und bezahlen soll muss man erst nochmal würfeln die Zahl der augen ergibt dann mit der Anzahl der stehenden Häuser einen Preis.
Außerdem wollte ich gleich auf fertige Variablen zugreifen anstatt späternoch zu rechenn auch wenns einfach wäre :D


Die Preise der Mieten haben die damaligen Spieleentwickler wohl per zufall gesetzt.

Für mich war die Variante der einfachste weg :D ( da Anfänger ^^ )

mfg

Verfasst: Montag 12. April 2010, 15:14
von Dauerbaustelle
conray, BlackJacks Frage war eher dahingehend, warum du *Zeichenketten* verwendest statt Zahlen (Integers).

BlackJack, hm, aber wenn man jetzt von einem Haus mehrere haben will? (Stichwort "Reihenhaus" :-D) Für das wäre dann eine Protoypen-basierte Sprache gut -- `copy` :-)

Verfasst: Montag 12. April 2010, 15:15
von derdon
Reihenhäuser sind bei dem Spiel "Hotel" nicht möglich (soweit ich mich erinnern kann) ;)

Ist aber auch lange her, dass ich es das letzte Mal gespielt habe...

Verfasst: Montag 12. April 2010, 15:22
von BlackJack
@Dauerbaustelle: Wenn man zwei "Royal" haben möchte dann erstellt man eben zwei Exemplare mit den gleichen Grunddaten. Den Namen sollte man allerdings variieren damit man die auch auseinanderhalten kann.

Verfasst: Montag 12. April 2010, 17:45
von conray
Also Reihenhäuser gibt es nicht :D
Ein Hotel hat eine bestimmte Anzahl von Häusern und nicht mehr.
Beim Brettspiel hat man Besitzkarten auf denen Steht wieviel jedes Haus als Kaufpreis kostet und wieviel Miete es kostet wenn man zb 3 Häuser hat und jemand 5 Tag bleibt (auf einen Eingang kommt und dann eine 5 Würfelt.)

Hier die Spielanleitung http://www.hasbro.at/manuals/14313.pdf
auf Seite 5 ist eine solche Karte abgebildet

Ich wusste keinen anderen Weg außer die Preise in eine Liste zu fassen und dann die Listen in einem Tupel zu verewigen :D

Mal nebenbei gibts ein python pendant zur perlfunktion lc ? (lowcase = erzwing Kleinschreibung)

mfg
conray

Verfasst: Montag 12. April 2010, 20:18
von lunar
conray hat geschrieben:Mal nebenbei gibts ein python pendant zur perlfunktion lc ? (lowcase = erzwing Kleinschreibung)
RTFM

Verfasst: Montag 12. April 2010, 23:05
von conray
lunar hat geschrieben:
conray hat geschrieben:Mal nebenbei gibts ein python pendant zur perlfunktion lc ? (lowcase = erzwing Kleinschreibung)
RTFM
Danke das hat mir sehr geholfen :)

back to topic:

Gibt es noch eine andere Möglichkeit den Inhalt einer Variable als Variablennamen zu benutzen?

mfg
conray

Verfasst: Montag 12. April 2010, 23:51
von BlackJack
@conray: Die übliche Möglichkeit wenn man von einer Zeichenkette auf ein Objekt abbilden möchte ist ein Dictionary.

Du hast ja sicher das (Brett)Spiel, oder? Da sind wenn ich das richtig sehe 5 Felder auf dem Brett die nicht das Symbol für Kaufen oder Bauen enthalten. Kannst Du verraten was da drauf steht? Am besten in der Reihenfolge der Zugrichtung wenn man von Start ausgeht. Habe im Netz nämlich kein Bild finden können wo man das erkennen kann, ausser eine japanische Ausgabe, aber damit kann ich nicht viel anfangen. :-)

Verfasst: Dienstag 13. April 2010, 10:01
von conray
die kleineren gelben bilder bedeuten "Eingang kostenlos" die grünen bedeuten "Haus bzw nächste Baustufe Kostenlos" dann gibt es zwischen dem Hotel Taj-Mahal und safari noch ein Pseudofeld wo man nicht drauf kommt aber wenn man drüberkommt darf man Eingänge kaufen. dann noch das andere Pseudofeld zwischen Boomerang und President da bekommt man 2000$ ( equ Monopoly "LOS" )

mfg
conray