Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Stadtwachstum Release vs Nightly R8788
#8
Ich hab da etwas gefunden in bauer/hausbauer.cc

Funktion get_city_building_from_list
Zitat:        if(thislevel>level) {
            if (selections.empty()) {
                // Nothing of the correct level. Continue with search on a higher level.
                level = thislevel;
            }
            else {
                // We already found something of the correct level; stop.
                break;
            }
        }
Aus meiner Sicht ist das daneben. Weil die Abfrage findet in der FOR Schleife statt. Die Schleife sollte sich eigentlich durch alle Gebäude lesen und ein passendes suchen. Der If bricht die Schleife ab wenn etwas gefunden wurde oder erhöht den gesuchte Level wenn ein höherer gefunden wird. Das kann so nur funktionieren wenn die Gebäudeliste strikt nach Level sortiert ist.

Die Routine ist alt und hat mit dem 3x3 Patch nichts zu tun. Die Frage ist warum das bisher einigermaßen funktioniert hat und jetzt entgleist.

ok die Liste ist sortiert.
trotzdem die Wahrscheinlichkeit ist groß das er nichts passendes findet und dann im Level hoch klettert.
Eine Begrenzung auf maximal 6 Level Sprünge kann ich hier nicht sehen.
Wenn er garnichts findet dann schlägt
Zitat:        if(  desc->is_allowed_climate(cl)  &&  desc->get_distribution_weight()>0  &&  desc->is_available(time)  &&  desc->get_x()*desc->get_y()<=area  &&  desc->get_x()*desc->get_y()>=minarea  ) {
            // size check
            if(  (desc->get_x() <= maxsize.x  ||  desc->get_y() <= maxsize.x)  &&   (desc->get_x() >= minsize.x  ||  desc->get_y() >= minsize.x)  ) {
                desc_at_least = desc;
            }
        }

zu. Das ist dann das letzte Gebäude in der Liste und damit weil sortiert immer das Level höchste.
-------------------
Für was eigentlich die doppelt gemoppelte Abfrage

also zuerst auf x*y prüfen und dann x und y einzeln?
Zitat:                    if(  desc->get_x()*desc->get_y()<=area  &&  (  desc->get_x() <= maxsize.x  ||  desc->get_y() <= maxsize.x  )  ) {
                        // or too small
                        if(  desc->get_x()*desc->get_y()>=area  &&  (  desc->get_x() >= minsize.x  ||  desc->get_y() >= minsize.x  )  ) {
sollte das nicht if(  desc->get_x()*desc->get_y()>=minarea heißen?
-------

sollte das nicht

Zitat:desc->get_y() <= maxsize.x


nicht desc->get_y() <= maxsize.y heißen?
Zitieren


Nachrichten in diesem Thema
Stadtwachstum Release vs Nightly R8788 - von makie - 16-07-2019, Tuesday-12:54:06
RE: Stadtwachstum Release vs Nightly R8788 - von Pumuckl999 - 16-07-2019, Tuesday-15:01:17
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 16-07-2019, Tuesday-15:40:34
RE: Stadtwachstum Release vs Nightly R8788 - von Leartin - 16-07-2019, Tuesday-15:59:31
RE: Stadtwachstum Release vs Nightly R8788 - von prissi - 17-07-2019, Wednesday-05:26:02
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 17-07-2019, Wednesday-08:28:14
RE: Stadtwachstum Release vs Nightly R8788 - von Pumuckl999 - 17-07-2019, Wednesday-20:35:59
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 27-07-2019, Saturday-23:17:29
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 28-07-2019, Sunday-01:35:38
RE: Stadtwachstum Release vs Nightly R8788 - von prissi - 28-07-2019, Sunday-15:43:51
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 28-07-2019, Sunday-21:24:03
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 28-07-2019, Sunday-23:51:28
RE: Stadtwachstum Release vs Nightly R8788 - von prissi - 29-07-2019, Monday-18:21:25
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 29-07-2019, Monday-18:47:34
RE: Stadtwachstum Release vs Nightly R8788 - von prissi - 01-08-2019, Thursday-16:15:17
RE: Stadtwachstum Release vs Nightly R8788 - von prissi - 06-08-2019, Tuesday-17:45:42
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 06-08-2019, Tuesday-17:51:23
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 06-08-2019, Tuesday-19:34:12
RE: Stadtwachstum Release vs Nightly R8788 - von Leartin - 06-08-2019, Tuesday-20:31:54
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 06-08-2019, Tuesday-21:08:11
RE: Stadtwachstum Release vs Nightly R8788 - von Leartin - 12-08-2019, Monday-20:02:33
RE: Stadtwachstum Release vs Nightly R8788 - von prissi - 11-08-2019, Sunday-17:24:59
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 11-08-2019, Sunday-20:46:46
RE: Stadtwachstum Release vs Nightly R8788 - von makie - 13-08-2019, Tuesday-21:46:45
RE: Stadtwachstum Release vs Nightly R8788 - von Leartin - 14-08-2019, Wednesday-07:56:03
RE: Stadtwachstum Release vs Nightly R8788 - von prissi - 17-08-2019, Saturday-05:31:13

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste