[Script] Lehrgangsfilter für das Übernehmen von Personal

  • Hallo zusammen,


    für alle die genau so unordentlich Personal ausbilden wie ich, hier ein Skript mit dem ihr die ausgebildeten Personen in jeder Wache seht und optional Wachen ohne passendes Personal ausblenden könnt.


    So sieht das dann aus:


    Voraussetzung ist nur, dass ihr oder euer Verband eine der Wache entsprechenden Schule habt.

    Um es zu nutzen wählt ihr einfach in der bereits vorhandenen Auswahl den Lehrgang aus und setzt, wenn ihr wollt das Häkchen.


    Hinweise:

    • Eventuell braucht die Schule einen freien Klassenraum. Kommentiert bitte, wenn das der Fall ist.
    • Bei vielen Wachen kann es kurz dauern, bis die Wachen geladen sind.
    • Getestet in Firefox mit und ohne LSSMv4

    Hier findet ihr das Skript: https://github.com/Hekxsler/lss-scripts


    Noch viel Spaß beim weiterhin unordentlichen Ausbilden :)

    5 Mal editiert, zuletzt von Hekxsler () aus folgendem Grund: Skript nun auf GitHub

  • Setzt am besten in den Foor-Loop in Zeile 105 einen 100ms Sleep rein, dann ist das Skript auch AGB-konform ^^

    Ein Vakuum, geschaffen durch fehlende Kommunikation,

    füllt sich in kürzester Zeit mit falscher Darstellung, Gerüchten, Geschwätz und Gift. - Cyril Northcote Parkinson


    Der beste Verband in Aachen und Umgebung: leitstellenspiel.de/alliances/1100



    Schraube manchmal am LSSM V4 rum.

  • Ein Request in einer ungebremsten for-Loop ist natürlich nicht ganz so gut. In jQuery würde ich es mit async/await lösen, in JS müsste ich kurz überlegen ... die einfachste Möglichkeit wäre wohl ein sleep einzubauen.

    Aber die Idee das per Onboard-Mitteln abzufragen ist echt nett! Spannend was alles per URL abgefragt werden kann. :-)


    Sehr schöne Arbeit :thumbup:

  • In jQuery würde ich es mit async/await lösen, in JS müsste ich kurz überlegen ... die einfachste Möglichkeit wäre wohl ein sleep einzubauen.

    Ihr alten jQuery-Fanatiker, Async & Await ist eine JS Geschichte und wenn man die fetch-API nutzt, kann man sehr schön mit Promises und somit eben auch await arbeiten ;)


    Wenn man ganz fancy unterwegs sein möchte, kann man natürlich das "Warte bis der Request fertig ist, mindestens jedoch 100ms" wie folgt implementieren:

    JavaScript
    const [response] = Promise.all([
        fetch('url'),
    new Promise(resolve => setTimeout(resolve, 100)),
    ]);

    :P

  • Für gut befunden :thumbup:


    Ich hätte da aber noch einen Wunsch falls du Lust hast:

    Es wäre schön wenn die Gebäude, die Anzahl X an ausgebildetem Personal bereits haben UND dem Wachentyp (BuildingType) für die Ausbildung entsprechen, ausgeblendet werden könnten.


    Beispiel: SEK/MEK wird 42 mal pro BePol benötigt. Wenn die Wache eine BePol ist und exakt 42 Personen mit dieser Ausbildung hat bedeutet es die Wache ist schon mit der Ausbildung fertig. Ich würde im E-Fall quasi das ausgebildete Personal der fertigen Wache auf eine unfertige verschieben => die fertige Wache wäre nicht mehr fertig^^


    Theoretisch funktioniert das momentan auch, aber: wenn ich mir nur die ersten 5/10/25 Wachen anzeigen lasse sind es in jedem Fall komplett fertige Wachen. Heißt ich bin immer gezwungen mir alle anzeigen zu lassen und zu scrollen.


    (alternativ könntest du auch vorgeben lassen welche Gebäudetypen einbezogen werden sollen. Das war jetzt auch nur ein Beispiel für die BePol die auf normalen Pol-Wachen vor-ausgebildet und dann nur noch kostenlos in einem Rutsch verschoben werden können)

  • Danke für das Feedback.


    Ich werde mal schauen, was sich so machen lässt.

    Ich hab selber noch ein paar Ideen, welche eventuell ganz nützlich sein könnten.


    Nächste Woche sollte zumindest ein kleines Update kommen.

  • Update v0.1.1:

    • Wenn alle Wachen angezeigt werden, lädt die Anzahl der Personen nur noch wenn die Wache sichtbar ist
    • Das Laden des Personals wird nun abgebrochen, wenn der Lehrgang geändert wird
    • Erweiterte Einstellungen für die Leute mit etwas mehr Wachen:
      • Es können die ersten X Gebäude übersprungen werden
      • Gebäude mit X Personal können ausgeblendet werden
    • Skript aufgrund der Länge nun auf github