Ja, ich glaub es war ein schreibfehler!Das ist im Normalfall ein typischer Fall von Einrückung versaut.
Hör' auf Magic
Anfängerfehler! Aber jetzt weiss ich's ja...ne 1 bei CannotMove setzen.
Ja, ich glaub es war ein schreibfehler!Das ist im Normalfall ein typischer Fall von Einrückung versaut.
Hör' auf Magic
Anfängerfehler! Aber jetzt weiss ich's ja...ne 1 bei CannotMove setzen.
ok, jetzt funktionierts! Danke euch!
Werde das im Sinne von Eisenbahnflaks und so im Mod Modern War einbauen!
Aber jetzt kommt die Erklärung:
PHP-Code:
def unitCannotMoveInto(self,argsList):
ePlayer = argsList[0]
iUnitId = argsList[1]
iPlotX = argsList[2]
iPlotY = argsList[3] // Das waren wieder mal die geheimnisvollen argslist ;)
## Locomotive Route Restriction
pUnit = gc.getPlayer(ePlayer).getUnit(iUnitId) //get Unit Archer (UnId=Archer(nächste zeile))
iTrainType = gc.getInfoTypeForString ( "UNIT_ARCHER" ) //Es geht um den Bogenschützen
if pUnit.getUnitType() == iTrainType: //(Falls die Einheit = Bogneschütze (obere Zeile))
pPlot = CyMap().plot(iPlotX, iPlotY) //(plot?)
iRoute = gc.getInfoTypeForString ( "ROUTE_RAILROAD" ) //(Route Railroad)
if pPlot.getRouteType() != iRoute: //(Falls die oben gennante Route)
return True //(return True, sie kann sich fortbewegen!)
## End Edit
return False //ansonsten return false, keine fortbewegung!
Nein, genau umgekehr!! Return true heißt sie kann sich nicht fortbewegen, weil es die Funktion "cannotMoveInto" ist.
Und plot ist das Geländefeld. Also praktisch stellt die MAP-Klasse das Objekt vom Geländefled mit den X-Koordinaten (iPlotX) und den Y-Koordinaten(iPlotY) zur Verfügung. Dazu dient ".plot(x,y)"
Mit Anstand, Tugen und Manieren,-kannst du dich nie blamieren!!
Wäre, wenn und aber ... CIV ist kein Spiel der Konjunktive!
ja, sorry, natürlich... True=kann nicht!... weil cannotmove
Funktioniert das Python da oben jetzt, mit den Schienen? Ich bräuchte sowas für mein Eisenbahngeschütz, habe aber 0 Ahnung von Python und bei etwas, was ich von den Fanatics heruntergeladen habe, funktionieren bei mir die Screens nicht. Wenn man deinen Text also so übernehmen kann, würde ich das gerne ausprobieren...
jo, bereits in der BASE enthalten.
Pucc's Lets Plays BASE 6.0: #1 #2 #3 #4 #5
Download von BASE 6.4 [D]: HIER (klick mich!) (Stand: 08.07.2022)
Und wo muss ich das jetzt einbauen (ich nehme mal an CvUtil.py, nur wo in dieser Datei?)
Irgendwo ist sind die Zeilen
Dort einfach den Text ab "## Locomotive Route Restriction" reinkopieren!def unitCannotMoveInto(self,argsList):
ePlayer = argsList[0]
iUnitId = argsList[1]
iPlotX = argsList[2]
iPlotY = argsList[3]
ich glaub ich hab's falsch abgeschrieben
Weil ich mit dem Laptop ins Internet gehe und mit dem PC Cive..
Nun geht es jedenfalls! Ich kopier dir nochmals meinen Text rein, mit dem es geht! (Zum Glück gibt's ja Memory Sticks!)
Werd ich allerdings erst morgen machen, bin jetzt etwas Müde...
Das ist dann ein Problem mit der Einrückung.
Bei Python sind die Einrückungen wichtig für die Programmstruktur, und falls die nicht stimmen, was passieren kann, wenn man den Code reinkopiert, dann schmieren mehrere Python-Skripte ab, u.a. auch die CvMainInterface.
Simpelste Lösung:
Hol dir Python, und bearbeite die Dateien mit dem mitgelieferten Programm, dass sollte ein paar Fehler verhindern.
Auch solltest du in der .ini-Datei die Python-Fehler aktivieren (einfach nach python suchen).
Zum Download bereit: Civ4-Mod "Mars, jetzt!"
"Frei sein heißt wählen können, wessen Sklave man sein will." (Jeanne Moreau, 1928 - )
"Immer wenn man die Meinung der Mehrheit teilt, ist es Zeit, sich zu besinnen." (Mark Twain, 1835 - 1910)
Welche .ini-Datei meinst du? Die von meinem Mod? Da stehen keine Pythonfehler drin.
Ich habe einmal den Pythoncode meiner CVGameUtils-Datei als txt-Datei eingefügt, vielleicht findet jemand da den Fehler? Außerdem werde ich noch einmal den Text von Civ kopieren, er schreibt ja, dass er es aktualisieren wollte...
Geändert von Kathy (09. Juni 2011 um 20:56 Uhr)
Immer mit Tab einrücken...
Habe ich gemacht, aber am Ende lässt sich die Civilopädie immer noch nicht öffnen, und die anderen Oberflächen werden auch nicht angezeigt. Ist es wichtig, wie die Leerzeichen in der Klammer stehen? Mich wundert, dass da vor und hinter den Anführungszeichen welche sind.
Mit Python komme ich nicht weiter, wenn ich das Skript mit Python öffne, erscheint kurz ein leeres CMD-Fenster, das sich automatisch wieder schließt.
Geändert von Kathy (09. Juni 2011 um 20:56 Uhr)
Ne, die BtS-.ini mein ich.
Sollte nicht wichtig sein, mMn.
Du musst Python-Idle separat starten und dann deine Datei öffnen, wenn du die Datei direkt mit Python öffnest, wird das Skript nämlich direkt ausgeführt (...naja, hat ohne Civ halt keine Auswirkungen...).
Kannst sonst nix sagen, hab' kein Civ hier , aber wenn du die Python-Fehler nun aktivierst, sollte das helfen .
Zum Download bereit: Civ4-Mod "Mars, jetzt!"
"Frei sein heißt wählen können, wessen Sklave man sein will." (Jeanne Moreau, 1928 - )
"Immer wenn man die Meinung der Mehrheit teilt, ist es Zeit, sich zu besinnen." (Mark Twain, 1835 - 1910)