Ergebnis 1 bis 9 von 9

Thema: Python-Frage zum Forschungsbildschirm

  1. #1
    Registrierter Benutzer
    Registriert seit
    23.11.08
    Ort
    NRW
    Beiträge
    115

    Python-Frage zum Forschungsbildschirm

    Hallo zusammen ,

    ich würde gerne - wie auf dem beigefügten Screen veranschaulicht - das Tech-Button im Technologie-Forschungsbildschirm vergrößern. Ich denke das ich da an der CvTechChooser.py herumschrauben muß, weiß leider absolut nicht welche Änderungen nötig sind.



    Vielleicht kann jemand helfen?

  2. #2
    Moderator Avatar von Kathy
    Registriert seit
    11.10.07
    Beiträge
    16.916
    Eine sehr gute Frage - welche Stelle da geändert werden muss weiß ich nicht. Ist das untere Bild von dir gebastelt oder aus einem realen Screenshot? Falls ja, reicht es vielleicht, die cvTechChooser.py (ja, das ist die richtige Datei) aus dem Mod zu nehmen, aus dem du das Bild hast.
    That's why I am here: Mein Mod
    Mehr Technologien, mehr Einheiten, mehr Zivilisationen, mehr Gebäude

    Die aktuelle Story zum Mod:
    Die Vereinigten Staaten von Amerika

    Alte Stories zu alten Versionen:
    Alte Storys

  3. #3
    Registrierter Benutzer
    Registriert seit
    23.11.08
    Ort
    NRW
    Beiträge
    115
    Der Screenshot ist "selbstgebastelt"

    Der untere Ausschnitt stammt aus dem "History Rewritten" Mod.

    Ja, das mit dem Kopieren habe ich auch schon probiert, aber in der Datei sind auch andere Sachen geändert, die ich wiederum nicht in mein Werk transportieren möchte. Ich würde ja gerne die entsprechenden Codes herauskopieren, nur leider weiß ich in dieser Angelegenheit überhaupt nicht welche Codes die Button-Größe definieren.

  4. #4
    Registrierter Benutzer Avatar von Strat
    Registriert seit
    08.01.15
    Ort
    HGW
    Beiträge
    3.889
    Ich würde es mal mit der Funktion placeTechs aus CvTechChooser.py versuchen
    Zitat Zitat von Schlumpf Beitrag anzeigen
    Strat ist doch so ein verkorkster Linker
    Zitat Zitat von Isaac Newton; in einem Brief an Robert Hooke
    Wenn ich weiter geblickt habe, so deshalb, weil ich auf den Schultern von Riesen stehe.
    Storys

    Civ 4: Weg in den Olymp
    Civ 4 PBEM 474 Das Steigen und Fallen der Kurse

  5. #5
    Registrierter Benutzer
    Registriert seit
    23.11.08
    Ort
    NRW
    Beiträge
    115
    Danke für den Tipp, habe in der Richtung schon alles probiert, aber wenn man sich mit der Programmiersprache nicht auskennt, ist das "try & error" Prinzip auf Dauer sehr frustierend.
    Na gut, ich versuch mal paralell bei den civfanatics eine Antwort zu erhalten.

  6. #6
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    Suche in der Datei für den F6-Screen nach "TechInfo.*getButton". „.*“ steht dabei für beliebige Zeichenketten. Dein Editor sollte reguläre Ausdrücke beherrschen. Du hast zwei Treffer. Der erste müsste das gewünschte Bild sein. Der zweit sind die "Und"-Voraussetzungen der Tech, die oben rechts in dem Kästchen dargestellt werden.

  7. #7
    Registrierter Benutzer
    Registriert seit
    23.11.08
    Ort
    NRW
    Beiträge
    115
    Genau in der Zeile war ich auch schon. Die beiden 6en geben dabei an, wo sich das Tech-Icon auf dem Button befindet. Soviel habe ich schon herausgefunden.

    szTechButtonID = "TechButtonID" + str(i)
    screen.addDDSGFCAt( szTechButtonID, szTechRecord, gc.getTechInfo(i).getButton(), iX + 6, iY + 6, TEXTURE_SIZE, TEXTURE_SIZE, WidgetTypes.WIDGET_TECH_TREE, i, -1, False )
    Dazu im Vergleich sieht die Zeile in der HR-Mod (wo die Tech-Icons groß dargestellt werden), so aus:

    # Tech Icon
    iX = 6
    iY = 6
    szTechIconID = "TechButtonID" + str(tech)
    screen.addDDSGFCAt(szTechIconID, szTechBox, TechInfo.getButton(), iX + 6, iY + 6, self.TECH_ICON_SIZE, self.TECH_ICON_SIZE, WidgetTypes.WIDGET_TECH_TREE, tech, -1, False)
    screen.setActivation(szTechIconID, ActivationTypes.ACTIVATE_NORMAL)
    Natürlich habe ich schon versucht, davon Codes in meine Datei zu implementieren, aber es hat nicht funktioniert.

  8. #8
    ε•ω=1 Avatar von Ramkhamhaeng
    Registriert seit
    19.07.10
    Ort
    Aralkum
    Beiträge
    9.896
    Naja, im Prinzip musst du nur die Dimension des Bildes verdoppeln, den Text rechts daneben verschieben und die Icons darunter etwas verschieben.
    Code:
                            screen.setTextAt( szTechID, szTechRecord, szTechString, CvUtil.FONT_LEFT_JUSTIFY, iX + 6 + X_INCREMENT + TEXTURE_SIZE, iY + 6, -0.1, FontTypes.SMALL_FONT, WidgetTypes.WIDGET_TECH_TREE, i, -1 )
                            screen.setActivation( szTechID, ActivationTypes.ACTIVATE_MIMICPARENTFOCUS )
    
                            szTechButtonID = "TechButtonID" + str(i)
                            screen.addDDSGFCAt( szTechButtonID, szTechRecord, gc.getTechInfo(i).getButton(), iX + 6, iY + 8, TEXTURE_SIZE*2, TEXTURE_SIZE*2, WidgetTypes.WIDGET_TECH_TREE, i, -1, False )
    
                            fX = X_START + 2*TEXTURE_SIZE
    Edit: Oh, da fällt mir auf man muss noch eine Zeile ändern, da sonst die Schrift erforschter Techs verrutscht Zeile 908 (ungefähr)
    Code:
                                    screen.setTextAt( szTechID, "TechList", szTechString, CvUtil.FONT_LEFT_JUSTIFY, iX + 6 + X_INCREMENT + TEXTURE_SIZE, iY + 6, -0.1, FontTypes.SMALL_FONT, WidgetTypes.WIDGET_TECH_TREE, i, -1 )
    Wenn die Icons in deiner Mod dann das rechte Boxende überschreinen könntest du dann noch diese Verbreiten. Z.B. in Zeile 10
    Code:
    BOX_INCREMENT_WIDTH = 30+10 # Used to be 33 #Should be a multiple of 3...

    Das ganze sieht beim mir dann so (in der PAE-Mod) aus:
    Bild


    P.S. Wenn du Windows verwendest, werden die Python-Dateien automatisch neu gelanden, wenn du sie änderst! Das kann den Prozess des Testens erheblich beschleunigen. Bei den Dateien für das Interface (Screens-Verzeichnis) muss man aber dann noch im Civ4 ein Spiel laden damit die Änderungen sichtbar werden.

    Also Text ändern > Speichern > Im Spiel steht was von Reloading Python > Str+L > Save laden > Fertig
    Angehängte Grafiken Angehängte Grafiken
    Geändert von Ramkhamhaeng (19. April 2016 um 03:27 Uhr)

  9. #9
    Registrierter Benutzer
    Registriert seit
    23.11.08
    Ort
    NRW
    Beiträge
    115
    Hurra, es hat geklappt!
    Das hätte ich alleine niemals herausgefunden!

    Also, Ramkhamhaeng: vielen herzlichen Dank für deine Hilfe!

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •