+ Antworten
Ergebnis 1 bis 6 von 6
  1. #1
    Sägewerker Avatar von Flodder
    Registriert seit
    12.07.2006
    Ort
    Wilstedt (Niedersachsen)
    Beiträge
    177

    Frage Motivationsabfrage aber wie?

    Über einen SimpleJob möchte ich neben bestimmter Recourcenmengen auch das Erreichen einer Motivation der Spieler KI 1 von 120% abfragen Erst wenn alles true ist, soll etwas passieren. Das mit den Recourcen scheint mir klar, finde aber keinen Hinweis über die Motivationsabfrage.

    Als Muster hier mal die function:

    Code:
    function Wiederaufbau()
         if GetGold(1) >= 10000 and GetWood(1) >= 10000 and GetIron(1) >= 10000 
         and GetStone(1) >= 10000 and GetSulfur(1) >= 10000 and GetClay(1) >= 10000 
         and GetMotivation(1) >= 120 then 
         --soll etwas passieren
         return true
       end     
    end
    Wer weiss etwas darüber und kann helfen? Für jede Hilfe dankbar!

    Gruss
    -Flodder-
    Geändert von Flodder (07.02.2008 um 13:55 Uhr)
    Sinnlos ist ein Leben ohne Sinn für nnisnU!

  2. #2
    Wirt
    Registriert seit
    04.10.2007
    Beiträge
    875

    Standard AW: Motivationsabfrage aber wie?

    Verwende Logic.GetAverageMotivation(1)!
    Du musst den Wert aber mit 100 multiplizieren, um den Prozentwert zu erhalten (oder mit 1.2 vergleichen )

  3. #3
    Sägewerker Avatar von Flodder
    Registriert seit
    12.07.2006
    Ort
    Wilstedt (Niedersachsen)
    Beiträge
    177

    Standard AW: Motivationsabfrage aber wie?

    Zitat Zitat von Old McDonald Beitrag anzeigen
    Verwende Logic.GetAverageMotivation(1)!
    Du musst den Wert aber mit 100 multiplizieren, um den Prozentwert zu erhalten (oder mit 1.2 vergleichen )
    Recht herzlichen Dank Old McDonald. Auch für die schnelle Reaktion!
    Wobei ich jetzt nicht sicher bin, ob die Angabe der Motivation tatsächlich eine Prozentangabe ist, oder nur ein Wert. Das müsst ich mal ausprobieren. Wenn es nur ein Wert sein sollte (also hier 120) erübrigt sich m.E. der Multiplikator, oder?

    Wäre das nicht auch etwas für´s Wiki?


    Geändert von Flodder (07.02.2008 um 14:07 Uhr)
    Sinnlos ist ein Leben ohne Sinn für nnisnU!

  4. #4
    Wirt
    Registriert seit
    04.10.2007
    Beiträge
    875

    Standard AW: Motivationsabfrage aber wie?

    Wenn die Motivation 100 % beträgt, gibt die Funktion 1 zurück.

    Das steht eigentlich schon im Wiki in der Logic-Übersicht. Aber wenn Du willst, kannst Du es nochmal explizit irgendwo hinschreiben.

  5. #5
    Sägewerker Avatar von Flodder
    Registriert seit
    12.07.2006
    Ort
    Wilstedt (Niedersachsen)
    Beiträge
    177

    Standard AW: Motivationsabfrage aber wie?

    Zitat Zitat von Old McDonald Beitrag anzeigen
    Das steht eigentlich schon im Wiki in der Logic-Übersicht. Aber wenn Du willst, kannst Du es nochmal explizit irgendwo hinschreiben.
    In der Tat, hab´s nun auch mit Deiner Hilfe gefunden. War mir nur nicht klar, unter welchem Stichwort oder funktion es zu finden ist. Mit dem Suchwort Motivation konnte das Wiki nichts anfangen. Es fand keinen Eintrag, der mit diesem Wort verknüpft ist.

    Daher nochmals:
    Vielen Dank für Deine Mühen und Deine Lösung!
    Sinnlos ist ein Leben ohne Sinn für nnisnU!

  6. #6
    Sägewerker Avatar von Flodder
    Registriert seit
    12.07.2006
    Ort
    Wilstedt (Niedersachsen)
    Beiträge
    177

    Standard AW: Motivationsabfrage aber wie?

    Mit Hilfe von Old McDonald sieht der funktionsfähige code bei mir nun so aus:

    Code:
    function Wiederaufbau()
         if GetGold(1) >= 10000 and GetWood(1) >= 10000 and GetIron(1) >= 10000 
         and GetStone(1) >= 10000 and GetSulfur(1) >= 10000 and GetClay(1) >= 10000 
         and Logic.GetAverageMotivation(1) >=1.2 then
         Logic.GetAverageMotivation(1)
         Message("Hat geklappt")
         return true
       end     
    end
    Auf der Map geprüft. Message kam erst nach jeweiligen Recourcenbestand und Motivation >= 120%

    Keine Ahnung, inwieweit man das hier noch vereinfachen könnte...
    Jedenfalls läuft diese function so problemlos.

    Aufruf obiger Funktion per:
    Code:
    StartSimpleJob("Wiederaufbau")
    Danke Old McDonald !
    Gruss
    -Flodder-
    Sinnlos ist ein Leben ohne Sinn für nnisnU!

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. Na, aber Hallo!
    Von TrollIna im Forum Cafe Paperlapapp (Klön)
    Antworten: 18
    Letzter Beitrag: 27.10.2007, 21:12
  2. Blh- Ich bin durch, aber wo ist der Code fürr Map 16??
    Von Claere im Forum Siedler 4 Bloody History
    Antworten: 2
    Letzter Beitrag: 03.09.2005, 23:59

Stichworte

Berechtigungen

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