Zweitschlechtestes Gruppenmitglied

XML-Variante AOQML, ihre Möglichkeiten, Ergänzungen und Entwicklung...

Moderatoren: Ratsgruppe Programmierer, A-Team

Zweitschlechtestes Gruppenmitglied

Beitragvon lordhelix » Do 22 Okt, 2020 23:16

HI,

gibt es eine Möglichkeit die Engine dahingehend zu erweitrn, das ich in Gruppen neben Worst und Best auch secondBest und secondWorst auslesen kann?


Konkret habe ich eine Ausweichenprobe gegen zwei Wurfwaffen. Die zwei schlechtesten Helden (sofern Probe missglungen) werden getroffen. Ich erhalte über worst jedoch nur den schlechtesten.
lordhelix
Ordenskrieger
Ordenskrieger
 
Beiträge: 389
Registriert: So 07 Apr, 2019 22:00
Heldenname: Helix

Re: Zweitschlechtestes Gruppenmitglied

Beitragvon Tommek » Fr 23 Okt, 2020 08:38

Wäre das nicht ein klassischer Fall für ein random? Und für überraschende Fernangeriffe gibt es sonst ranged-defence
Benutzeravatar
Tommek
Site Admin
Site Admin
 
Beiträge: 7640
Registriert: Mi 17 Mai, 2006 22:40
Wohnort: Eodatia
Heldenname: Alrik Dormwald
Mitglied bei: Orkwacht

Re: Zweitschlechtestes Gruppenmitglied

Beitragvon lordhelix » Fr 23 Okt, 2020 10:13

Meine Lösung:

Code: Alles auswählen

<p>Als er hört wie ihr eure Waffen zieht, dreht er sich blitzschnell um und wirft euch zwei Dolche entgegen.</p>
<for all="${sys:heroes}" name="heldid">
   <select hero="${heldid}"/>
   <switch name="helden-getroffen">
   <null>
      <!-- Wenn noch kein Held getroffen -->
      <challenge quality="AUSWEICHEN" mod="8" >
      <success>
      </success>
      <failure>
         <store name="held-1" scope="scene"><get attribute="name"/></store>
         <store name="helden-getroffen" scope="scene">1</store>
      </failure>
    </challenge>
   </null>
   <case val="1">
      <!-- Wenn mittlerweile 1 Held getroffen -->
      <challenge quality="AUSWEICHEN" mod="8" >
      <success>
      </success>
      <failure>
         <store name="held-2" scope="scene"><get attribute="name"/></store>
        <store name="helden-getroffen" scope="scene">2</store>
      </failure>
    </challenge>
   </case>
   <case val="2">
      <!-- Wenn 2 Helden getroffen wird nichts weiter ausgeführt -->
   </case>
 </switch>
</for>
<!-- Auswertung und Ausgabe wieviele Helden UND welche Helden getroffen wurden -->
<switch name="helden-getroffen">
  <null>
     <!-- Alle Helden sind ausgewichen -->
  </null>
  <case val="1">
     <!-- ${held-1} wird getroffen -->
  </case>
  <case val="2">
     <!-- ${held-1} und ${held-2} werden getroffen -->
  </case>
</switch>
lordhelix
Ordenskrieger
Ordenskrieger
 
Beiträge: 389
Registriert: So 07 Apr, 2019 22:00
Heldenname: Helix


Zurück zu Questen, Abenteuer und Zufallsbegegnungen (inkl. AOQML)



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste