Seite 6 von 271 ErsteErste ... 23456789101656106 ... LetzteLetzte
Ergebnis 76 bis 90 von 4063

Thema: Der Pythonthread

  1. #76
    Magie ist entscheidend Avatar von magic66
    Registriert seit
    15.02.07
    Ort
    Das Dorf
    Beiträge
    1.394
    Naja, davon muss man natürlich ausgehen. Es muss natürlich eine CyPlayer()-Klasse und keine PyPlayer()-Klasse sein.
    Mit Anstand, Tugen und Manieren,-kannst du dich nie blamieren!!
    Wäre, wenn und aber ... CIV ist kein Spiel der Konjunktive!

  2. #77
    Waddehaddedudeda Avatar von Cybah
    Registriert seit
    01.09.06
    Beiträge
    30.450
    Wie mach ich das, dass eine Stadt +1 Unzufriedenheit erhält solange sie Prozess X "errichtet" (z.B. bei Wohlstand) ?

    edit: kann man happy überhaupt ohne SDK erhöhen?
    Geändert von Cybah (21. März 2009 um 16:45 Uhr)
    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)

  3. #78
    paranoider Irrer Avatar von The_J
    Registriert seit
    07.08.07
    Ort
    verrat ich nicht
    Beiträge
    13.297
    Die + kann man schon erhöhen, mit pCity.changeExtraHappiness(X), allerdings kann man wohl nicht wirklich bei nem Prozess einhaken, da die Prozesse nicht als Gebäude gelten.
    Du kannst höchstens bei jedem Rundenwechsel durch alle Städte gehen, und checken, was die bauen, und dann die Werte ändern, aber das heißt dann auch, dass sie nicht geändert werden, falls du den Bauauftrag änderst.
    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)


  4. #79
    Waddehaddedudeda Avatar von Cybah
    Registriert seit
    01.09.06
    Beiträge
    30.450
    Sowas hab ich befürchtet. Man bräuchte sowas wie "ist gerade dabei Prozess X zu bauen".
    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)

  5. #80
    Registrierter Benutzer
    Registriert seit
    30.11.08
    Beiträge
    1.563
    Was ist denn mit:
    pCity.getProductionProcess()

  6. #81
    paranoider Irrer Avatar von The_J
    Registriert seit
    07.08.07
    Ort
    verrat ich nicht
    Beiträge
    13.297
    Ja, abchecken sollte nicht das problem, allerdings die Zeitnähe.
    Man kann ja nirgendswo zeitnah einhaken, sondern nur beim Rundenwechsel .
    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)


  7. #82
    Registrierter Benutzer
    Registriert seit
    30.11.08
    Beiträge
    1.563
    Zeitnah kann man über handleInput machen. Da brauchst du nur mit der Maus in die Nähe des Produktions-Buttons gehen, und kannst das abfragen. Also wie ein tool tip, nur daß dann anstelle des tool tips eine Funktion ausgeführt wird. Wäre vielleicht eine Möglichkeit.

  8. #83
    Waddehaddedudeda Avatar von Cybah
    Registriert seit
    01.09.06
    Beiträge
    30.450
    ich wollte ja erst +25% gold, -25% forschung machen. aber wie wird das dargestellt? folgendermaßen:

    +X gold (i.O.)
    +0,-X kolben prozesse sind nicht eingeplant was negatives zu bewirken
    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)

  9. #84
    paranoider Irrer Avatar von The_J
    Registriert seit
    07.08.07
    Ort
    verrat ich nicht
    Beiträge
    13.297
    Zitat Zitat von koma13 Beitrag anzeigen
    Zeitnah kann man über handleInput machen. Da brauchst du nur mit der Maus in die Nähe des Produktions-Buttons gehen, und kannst das abfragen. Also wie ein tool tip, nur daß dann anstelle des tool tips eine Funktion ausgeführt wird. Wäre vielleicht eine Möglichkeit.
    kannst du mal ein Beispiel hier reinkopieren?
    interessant.

    Zitat Zitat von Cybah Beitrag anzeigen
    ich wollte ja erst +25% gold, -25% forschung machen. aber wie wird das dargestellt? folgendermaßen:

    +X gold (i.O.)
    +0,-X kolben prozesse sind nicht eingeplant was negatives zu bewirken
    ja, über sowas bin ich auch schon gestolpert. Muss halt so gehen.
    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)


  10. #85
    Registrierter Benutzer
    Registriert seit
    30.11.08
    Beiträge
    1.563
    Der Code sollte pCity.changeExtraHappiness(X) ausführen, wenn man mit der Maus auf den Produktions-Button geht:

    Code:
    # Will handle the input for this screen...
    def handleInput (self, inputClass):
         if (inputClass.getNotifyCode() == NotifyCode.NOTIFY_CLICKED):
              if (inputClass.getButtonType() == WidgetTypes.WIDGET_WidgetTypes.WIDGET_CONSTRUCT):
                   pCity.changeExtraHappiness(X)		
         
         return 0
    getNotifyCode() fängt die Bewegung der Maus auf.

    getButtonType() liest aus, um welchen widget Typ es sich bei dem Objekt, wo der Mauszeiger sich zur Zeit befindet, handelt. WIDGET_CONSTRUCT ist der Produktions-Button.

    An inputClass kann man in Civ4 folgende Sachen ranhängen:

    Achtung Spoiler:

    getNotifyCode()
    getFunctionName()

    getButtonType()
    getData()
    getData1()
    getData2()
    getFlags()
    getID()
    getMouseX()
    getMouseY()
    getOption()
    getPythonFile()
    isAltKeyDown()
    isCtrlKeyDown()
    isShiftKeyDown()

    NotifyCode Types:

    NotifyCode.NOTIFY_CHARACTER
    NotifyCode.NOTIFY_CLICKED
    NotifyCode.NOTIFY_CURSOR_MOVE_OFF
    NotifyCode.NOTIFY_CURSOR_MOVE_ON
    NotifyCode.NOTIFY_DBL_CLICKED
    NotifyCode.NOTIFY_FLYOUT_ITEM_SELECTED
    NotifyCode.NOTIFY_FOCUS
    NotifyCode.NOTIFY_LINKEXECUTE
    NotifyCode.NOTIFY_LISTBOX_ITEM_SELECTED
    NotifyCode.NOTIFY_MOUSEMOVE
    NotifyCode.NOTIFY_MOUSEWHEELDOWN
    NotifyCode.NOTIFY_MOUSEWHEELUP
    NotifyCode.NOTIFY_MOVIE_DONE
    NotifyCode.NOTIFY_NEW_HORIZONTAL_STOP
    NotifyCode.NOTIFY_NEW_VERTICAL_STOP
    NotifyCode.NOTIFY_SCROLL_DOWN
    NotifyCode.NOTIFY_SCROLL_UP
    NotifyCode.NOTIFY_SLIDER_NEWSTOP
    NotifyCode.NOTIFY_TABLE_HEADER_SELECTED
    NotifyCode.NOTIFY_UNFOCUS



    NotifyCode.NOTIFY_LISTBOX_ITEM_SELECTED könnte vielleicht auch funktionieren, also:

    Code:
    # Will handle the input for this screen...
    def handleInput (self, inputClass):
         if (inputClass.getNotifyCode() == NotifyCode.NOTIFY_LISTBOX_ITEM_SELECTED):
              if (inputClass.getButtonType() == WidgetTypes.WIDGET_WidgetTypes.WIDGET_CONSTRUCT):
                   pCity.changeExtraHappiness(X)		
         
         return 0
    Auf civfanatics gibts dazu auch ein Tutorial: http://forums.civfanatics.com/showthread.php?t=272827.
    Geändert von koma13 (23. März 2009 um 01:28 Uhr)

  11. #86
    Waddehaddedudeda Avatar von Cybah
    Registriert seit
    01.09.06
    Beiträge
    30.450
    weiß jetzt nicht, was mir das bringen soll. die KI kann ja nicht mal eben mit der maus über eine stadt fahren, wo ein prozess läuft. wäre auch zu sehr erzwungen. ich will eigentlich nur einen kleinen negativen effekt während man prozess X benutzt.
    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)

  12. #87
    Registrierter Benutzer
    Registriert seit
    30.11.08
    Beiträge
    1.563
    Der Beitrag war auch eher an The_J gerichtet.

    Aber du hast schon recht, für die AI ist das nichts.

  13. #88
    paranoider Irrer Avatar von The_J
    Registriert seit
    07.08.07
    Ort
    verrat ich nicht
    Beiträge
    13.297
    wie, ich kann diese Klassendefinition einfach in irgendeine .py reinpacken?
    Das System dürfte dohc eigentlich gar nicht drauf zugreifen, oder?
    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)


  14. #89
    Registrierter Benutzer
    Registriert seit
    30.11.08
    Beiträge
    1.563
    Du musst die ScreenInput.py importieren. Ist aber bei den meisten Python screens schon gemacht.

  15. #90
    paranoider Irrer Avatar von The_J
    Registriert seit
    07.08.07
    Ort
    verrat ich nicht
    Beiträge
    13.297
    Ah, interessant . Muss ich mal ausprobieren, wenn ich mal wieder Zeit hab (also nächst Jahr, oder so ).
    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)


Seite 6 von 271 ErsteErste ... 23456789101656106 ... LetzteLetzte

Berechtigungen

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