Seite 58 von 62 ErsteErste ... 848545556575859606162 LetzteLetzte
Ergebnis 856 bis 870 von 926

Thema: PAE - Bonusressourcen

  1. #856
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Kein automatisches Aufladen (und Beschränkung auf 2 Nahrungsressis):

    In PAE_Trade.py:

    PHP-Code:
    # Collect bonus on current plot ('stored' in cultivation unit)
    def doCollectBonus(pUnit):
        
    iTeam pUnit.getTeam()
        
    pPlot pUnit.plot()
        if 
    pPlot == None or pPlot.isNone(): return False
        eBonus 
    pPlot.getBonusType(iTeam# If there is an invisible bonus on pPlot, it will not be removed
        # Remove the bonus first, even in cities
        
    if eBonus != -1:
          
    sScriptDataString CvUtil.getScriptData(pUnit, ["cultivationBonuses"], "")
          
    lBonusList convertStringToIntList(sScriptDataString)
          if 
    eBonus not in lBonusListlBonusList.append(eBonus)
          
    CvUtil.addScriptData(pUnit"cultivationBonuses"convertIntListToString(lBonusList))
          
    pPlot.setBonusType(-1# remove bonus

        # In Cities: charge all bonus from city environment
    #    elif pPlot.isCity():
    #      initCultivationUnit(pUnit, pPlot.getPlotCity())
        
    pUnit.finishMoves() 
    PHP-Code:
    # Initialises ScriptData for new cultivation Units
    def initCultivationUnit(pUnitpCity):
        
    #~ global lCultivatable
        #~ iX = pCity.getX()
        #~ iY = pCity.getY()
        #~ iCityOwnerTeam = pCity.getTeam()
        
    lStored = []
        
    #~ for x in xrange(5): # check plots
            #~ for y in xrange(5):
                #~ pLoopPlot = gc.getMap().plot(iX + x - 2, iY + y - 2)
                #~ if pLoopPlot != None and not pLoopPlot.isNone():
                    #~ if pLoopPlot.getTeam() != iCityOwnerTeam: continue
                    #~ # plot needs to have suitable improvement and city needs to have access to bonus (=> connection via trade route (street))
                    #~ eBonus = pLoopPlot.getBonusType(iCityOwnerTeam)
                    #~ eImprovement = pLoopPlot.getImprovementType()
                    #~ if eImprovement != -1 and eBonus != -1 and eBonus not in lStored and eBonus in lCultivatable:
                      #~ if gc.getImprovementInfo(eImprovement).isImprovementBonusMakesValid(eBonus) and hasBonusIgnoreFreeBonuses(pCity, eBonus):
                        #~ lStored.append(eBonus)

        #~ if gc.getPlayer(pUnit.getOwner()).isHuman():
           #~ if len(lStored) > 0:
             #~ CyInterface().addMessage(pUnit.getOwner(), True, 5, CyTranslator().getText("TXT_KEY_MESSAGE_TRADE_COLLECT_GOODS",("",)), "AS2D_BUILD_GRANARY", 2, None, ColorTypes(13), 0, 0, False, False)
           #~ else:
             #~ CyInterface().addMessage(pUnit.getOwner(), True, 5, CyTranslator().getText("TXT_KEY_MESSAGE_TRADE_COLLECT_NO_GOODS",("",)), "AS2D_ERROR", 2, None, ColorTypes(13), 0, 0, False, False)

        
    sScriptDataString convertIntListToString(lStored)
    ##    sScriptDataString = "" # String which will be stored in pUnit, represents bonuses stored in unit
    ##    for eBonus in lStored:
    ##        sScriptDataString += ","
    ##        sScriptDataString += str(eBonus)
    ##    sScriptDataString = sScriptDataString[1:] # Remove comma at the beginning
        
    CvUtil.addScriptData(pUnit"cultivationBonuses"sScriptDataString# string looks like e.g. "23,45,12,34" 
    Angehängte Dateien Angehängte Dateien

  2. #857
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.347
    Für die AI isses aber wichtig. Deswegen reichts, wenn man in der init einfach if isHuman(): return setzt

    Und statt dem doCollectBonus öffne ich für menschl. Spieler die Funktion darunter doCollectBonus4Cultivation
    Pie's Ancient Europe (PAE)
    Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
    Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  3. #858
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Die KI verbreitet doch eh, was vor Ort im Handelsnetz ist?

  4. #859
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.347
    Wie was wo denn? Hiermit: doCultivation_AI?
    Die gehört auch noch angepasst. Magst du machen?
    Pie's Ancient Europe (PAE)
    Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
    Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  5. #860
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Hab was gebastelt, Test kommt morgen.

  6. #861
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Ungetesteter Code im Anhang. Zumindest startet das Spiel^^
    Angehängte Dateien Angehängte Dateien

  7. #862
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.347
    Bei doCultivation_AI setzt du nirgends ein Bonusgut ?!
    Pie's Ancient Europe (PAE)
    Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
    Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  8. #863
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Kommt sofort.

    €: gut möglich, dass die Entfernung stärker gewichtet eingehen muss, damit nicht im Kreis gelaufen wird. Also das iValue in Zeile 349 bei iDistance == 0 evtl. auf 2 oder mehr setzen. Weiß nicht, wie klein die berechnete Distanz zwischen zwei Städten werden kann mit römischer Straße und so.
    Angehängte Dateien Angehängte Dateien
    Geändert von Flunky (05. Januar 2017 um 23:21 Uhr)

  9. #864
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Und nochmal
    Angehängte Dateien Angehängte Dateien

  10. #865
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.347
    JA, sieht schon besser aus. Na mal sehn, obs geht.
    Pie's Ancient Europe (PAE)
    Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
    Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  11. #866
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Bin ich auch gespannt. Ich kam heut net zum testen^^

    Wie kann ich denn ne Debugausgabe machen?
    Also was muss iPlayer sein, damit ich das sehe, obwohl die KI am Zug ist?

    CyInterface().addMessage(iPlayer, True, 10, "bla", None, 2, None, ColorTypes(10), 0, 0, False, False)

  12. #867
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Das ärgert

    NameError: global name 'pCity' is not defined auf dieser Codezeile:
    if isCityCultivationPossible(pLoopCity, False):

    Weiter unten war der Fehler noch drin. Aber nicht in Zeile 348... Jemand ne Idee?

    €: äh, was muss ich machen, damit die Pythondateien neu geladen werden? Ich dachte, Civ neu starten sollte reichen.
    Kann es sein, dass eine Kopie von PAE_Trade verwendet wird, die in nem Unterordner von Assets/Python rumliegt? Da hab ich einen Ordner Kultivierung angelegt, wo alle veränderten Dateien drin sind.
    Angehängte Dateien Angehängte Dateien
    Geändert von Flunky (06. Januar 2017 um 00:38 Uhr)

  13. #868
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.347
    Zitat Zitat von Flunky Beitrag anzeigen
    Bin ich auch gespannt. Ich kam heut net zum testen^^

    Wie kann ich denn ne Debugausgabe machen?
    Also was muss iPlayer sein, damit ich das sehe, obwohl die KI am Zug ist?

    CyInterface().addMessage(iPlayer, True, 10, "bla", None, 2, None, ColorTypes(10), 0, 0, False, False)
    Mit meinen Testnachrichten:
    TXT_KEY_MESSAGE_TEST besteht aus %s: %d

    CyInterface().addMessage(gc.getGame().getActivePlayer(), True, 10, CyTranslator().getText("TXT_KEY_MESSAGE_TEST",("Dein Text",iPlayer)), None, 2, None, ColorTypes(10), 0, 0, False, False)
    Pie's Ancient Europe (PAE)
    Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
    Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  14. #869
    PAE.Macht.Antike! Avatar von Pie
    Registriert seit
    25.01.08
    Ort
    Noricum
    Beiträge
    16.347
    Zitat Zitat von Flunky Beitrag anzeigen
    Das ärgert

    NameError: global name 'pCity' is not defined auf dieser Codezeile:
    if isCityCultivationPossible(pLoopCity, False):

    Weiter unten war der Fehler noch drin. Aber nicht in Zeile 348... Jemand ne Idee?
    Wie, was, welche Idee?

    €: äh, was muss ich machen, damit die Pythondateien neu geladen werden? Ich dachte, Civ neu starten sollte reichen.
    Kann es sein, dass eine Kopie von PAE_Trade verwendet wird, die in nem Unterordner von Assets/Python rumliegt? Da hab ich einen Ordner Kultivierung angelegt, wo alle veränderten Dateien drin sind.
    In der CivilizationIV.ini Disable Caching? Aber eigentlich sollte es autom. laden.
    Pie's Ancient Europe (PAE)
    Erlebe mit dieser CIV IV Mod(ifikation) hautnah das Zeitalter der Antike bis ins letzte Detail!
    Mit bahnbrechenden Erweiterungen und vielen ein- und erstmaligen Features.


    ... im Übrigen bin ich der Meinung, dass Karthago wieder aufgebaut werden muss!

  15. #870
    Registrierter Benutzer
    Registriert seit
    21.03.12
    Beiträge
    22.447
    Anscheinend wird eine gleichnamige Datei in nem Unterordner bevorzugt

    Also:
    Python/Kultivierung/PAE_Trade.py
    vor
    Python/PAE_Trade.py

Seite 58 von 62 ErsteErste ... 848545556575859606162 LetzteLetzte

Berechtigungen

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