Seite 1 von 1

Snippet zur Prüfung ob Helden gleich sind

BeitragVerfasst: Do 04 Mär, 2021 02:40
von lordhelix
Ich suche eine einfache Möglichkeit zu prüfen ob die Helden zum Zeitpunkt der Prüfung die gleichen sind, wie bei start.xml

Wenn eine Quest aus mehreren Teilen besteht oder zwischendrin ein pending hat, können die Gruppenmitglieder getauscht werden, trotzdessen eine Quest "läuft". Bisher habe ich über eine Schleife eine Variable gefüllt die als Namen die HeldenIds hat. Diese habe ich dann irgendwann ebenfalls per Schleife geprüft und danach ausgewertet. Gibt es einen besseren und einfacheren Weg?

start.xml ODER erster Questteil
Code: Alles auswählen
<for all="${sys:heroes}" name="heldid">
  <switch name="pendingspeicher">
    <case val="1">
      <set name="pendingspeicher" inc="1" show="none" />
      <store name="heldid2" scope="scene" >${heldid}</store>
    </case>
    <case val="2">
      <set name="pendingspeicher" inc="1" show="none" />
      <store name="heldid3" scope="scene" >${heldid}</store>
    </case>
    <case val="3">
       <store name="heldid4" scope="scene" >${heldid}</store>
    </case>
    <else>
       <set name="pendingspeicher" inc="1" show="none" />
       <store name="heldid1" scope="scene" >${heldid}</store>
    </else>
  </switch>
</for>
<select all="true"/>
<store name="${heldid1}${heldid2}${heldid3}${heldid4}" scope="hero" >true</store>



Pendingszene bzw anderer Questteil
Code: Alles auswählen
<! -- Prüfung ob ALLE Helden Variable haben -->
<for all="${sys:heroes}" name="heldid">
  <select hero="${heldid}"/>
  <has name="${heldid1}${heldid2}${heldid3}${heldid4}" show="none">
    <success>
      <!-- Wenn Held Variable hat, dann + 1 -->
      <set name="pendingszene" inc="1" scope="scene" show="none"/>
    </success>
  </has>
</for>
<!-- Auswertung ob alle Helden die Variable haben -->
<has name="pendingszene" min="4" show="none">
  <success>
    <!-- Alle Helden sind berechtigt den Questteil zu spielen. -->
  </success>
  <failure>
    <!-- Mindestens 1 Held ist nicht berechtigt diesen Questteil zu spielen. -->
  </failure>
</has>


Re: Snippet zur Prüfung ob Helden gleich sind

BeitragVerfasst: Do 04 Mär, 2021 22:53
von Pyromaniac
Ob es jetzt eine Möglichkeit gibt, weiß ich nicht. Bei den KdS durfte sich die Gruppe nicht auflösen. Bei der Fortsetzung sollte nur geprüft werden, ob Teil 1 schon von jedem durchlaufen wurde.

Ein Problem bei deiner Idee könnte werden, dass es eine Held-ID nicht mehr gibt. Wissen die Spieler, dass es mal weitergeht? Sonst wäre dazu nur eine Gruppe in der Lage, die zufällig aus den selben Mitgliedern besteht.

Re: Snippet zur Prüfung ob Helden gleich sind

BeitragVerfasst: Do 04 Mär, 2021 23:47
von lordhelix
Pyromaniac hat geschrieben:Bei der Fortsetzung sollte nur geprüft werden, ob Teil 1 schon von jedem durchlaufen wurde.


Dazu hatte ich heute mit Pergor Kontakt. Er war sich dessen noch nicht sicher. Er überlegt noch, ob er es bei einem Hinweis belässt, die Gruppe wirklich fix macht oder anderes.

Mit deinem Einwand, hast du selbstverständlich Recht. Wenn jemand seinen Helden löscht, kann die Gruppe diese nicht mehr spielen. Interessant wäre, wie oft es diesen Fall gab. Bei 10 Fällen unter 1000 würde es mir egal sein, sofern die Hauptquest wiederholbar ist.
Aber um dem gar nicht erst nahe zu kommen, würde ich dann auf ein fixes Team verzichten. Wenn alle Helden eine entsprechende Variable der Vorquest haben, können sie gemeinsam an der jeweiligen teilnehmen.

Re: Snippet zur Prüfung ob Helden gleich sind

BeitragVerfasst: Do 04 Mär, 2021 23:50
von Tommek
Für das Original musste man auch nicht die alte Gruppe haben. Man konnte ganz neu anfangen oder auch wild mischen.

Interessen verschieben sich ja, und wenn die Magie kommt, wird der eine oder andere Held vielleicht über den Jordan gehen.