Armeen Leihweise :P

  • Hey,


    ich bräuchte für meine aktuelle Karte ein Script, dass so funktioniert, dass ein Held an einer bestimmten Stelle eine Anzahl an verschiedenen Kreaturen erhält, einen Kampf bestehen muss, und die Kreaturen danach wieder abgeben muss.
    Die ersten beiden Punkte sind nicht so das Problem:
    "AddHeroCreatures" und "StartCombat" sind mir bekannt.
    Allerdings muss ich anschließend die Kreaturen wieder entfernen.
    Da der Held aber wahrscheinlich Verluste erleiden wird, kann ich nicht einfach dieselbe Anzahl Kreaturen wieder entfernen.
    Daher brauche ich wohl den Befehl "GetHeroCreatures". Die Frage ist, ob ich eine Zeile wie "GetHeroCreatures("Held", CREATURE_XY) == x" benutzen kann, um der Variablen x diesen Wert zuzuordnen, damit ich anschließend via "RemoveHeroCreatures("Held", CREATURE_XY, x)" dem Helden die aktuelle Anzahl wieder nehmen kann.
    Kann ich auf diese Weise Variablen zuordnen oder muss ich das irgendwie anders machen, wenn ich abfragen will, wie viele Kreaturen noch da sind und diese anschließend entfernen will?

  • da du ihm wohl nicht mehr als 7 verschieden Einheitensorten zukommen lassen wirst, brauchst du doch nur diese zu kontrollieren:


    vor dem Kampf (x1..x7) merken
    x1 = GetHeroCreatures("Held", CREATURE_XY1)


    Einheiten geben:
    AddHeroCreatures("Held", CREATURE_XY1, y1)"


    Kampf


    nach dem Kampf Ergebnis testen:
    dx1 = GetHeroCreatures("Held", CREATURE_XY1) - x1
    (das sind die, die von den gegebenen Einheiten noch über sind)


    if (dx1<0) dx=0
    wenn er mehr als die gegebenen Einheiten verloren hat, hat er Pech gehabt


    RemoveHeroCreatures("Held", CREATURE_XY1, dx1)
    die übriggebliebenen gegebenen Einheiten wegnehmen


    das Ganze für die 7 Einheitentypen ...

    lest Terry Pratchett(RIP) ... und Stephen King, John Katzenbach, Hohlbein, Frank Schätzing, Anne Rice, Andrzej Sapkowski, Anne Bishop, Bernhard Hennen, George R.R. Martin, Markus Heitz, ... (wurde ja langsam Zeit, dass was dazu kommt)

  • Forum

    Hat das Thema geschlossen.