> LeekScript
LeekScript 4 ist die vierte Version der LeekScript-Sprache, die am 1. Juli 2022 veröffentlicht wurde. Diese Seite fasst alle neuen Funktionen dieser Version zusammen.
In den LeekScript-Versionen 1 bis 3 waren Arrays sowohl Listen ([1, 2, 3, 4]) als auch assoziative Tabellen (['a': 5, 'b': 12]) . Ab LeekScript 4 werden die beiden Aspekte in zwei unterschiedliche Typen unterteilt: Listen (Array) und Tabellen (Map). Diese beiden neuen Typen sind effizienter als der alte gemeinsame Typ und bieten eine größere Übersichtlichkeit in der Verwendung.
Eine Array-Liste ist eine fortlaufende Folge von Elementen, beginnend bei Index 0. Sie sind äquivalent zu ArrayList von Java oder Vector von C++. Sie können schnell auf ein Element mit seiner Position zugreifen, ein Element an einer beliebigen Position einfügen/löschen.
array[10] = v.Map zurückgibt).Array verwendet alle Funktionen der Kategorie "Liste" der Dokumentation.Eine „Map“-Tabelle ist ein Objekt, das einen Schlüssel mit einem Wert verknüpft. Sie entsprechen HashMap von Java oder unordered_map von C++, die Paare von (Schlüssel, Wert) sind nicht geordnet. Schlüssel können jeden Typs haben: Zahl (Integer oder Real), Zeichenfolge, Objekt usw. Wir können schnell einen Wert abrufen, der einem bestimmten Schlüssel zugeordnet ist. Dieser neue Typ ersetzt den "assoziativen" Aspekt der alten Arrays
Map verwendet alle Funktionen der Kategorie "Tabelle" der Dokumentation mit dem Präfix "map".var-Tabelle = [:]var table = neue Map()arraySome(list, predicate): gibt true zurück, wenn predicate für mindestens ein Element der Liste true zurückgibt.arrayEvery(list, predicate): gibt true zurück, wenn predicate true für alle Elemente der Liste zurückgibt.removeAll(list, element): entfernt alle "element"-Elemente aus der Liste.arrayFrequencys(list): gibt eine Tabellenassoziation zurück (Element => Menge).arrayChunk(list, size): gibt eine Liste zurück, die Unterlisten der Größe N enthält.arrayUnique(list): gibt ein neues Array ohne Duplikate zurück.arrayRandom(list, n): gibt eine Liste von N zufälligen Elementen zurück.Da die neuen Listen und Karten viel effizienter und leichter im Betrieb sind, war es notwendig, eine Grenze auf der Ebene des RAM (Arbeitsspeicher des Programms) neu festzulegen. In der Tat ist es mit sehr wenig Bedienung möglich, problemlos Gigabyte RAM zu füllen.
Das RAM-Limit ist auf 100 MB für jede KI (Entität + Beschwörung) pro Kampf festgelegt, was 12.500.000 Listen-, Tabellen- oder Objektelementen entspricht. Dieses Limit ist in LS4 wirksam, weil die alten Tabellen dieses RAM-System nicht verwenden, sie brauchen es nicht, weil ihr Betriebsverbrauch groß genug ist.
Die Funktionen „getMaxRAM()“ und „getUsedRAM()“ werden hinzugefügt, um den RAM-Verbrauch in Echtzeit zu überwachen.
Ganzzahlen werden jetzt auf 64 Bit statt wie zuvor auf 32 Bit dargestellt (in allen Versionen von LeekScript). Die Erhöhung ermöglicht Berechnungen mit größeren Zahlen und mehr Bits für binäre Manipulationen.
Die Syntax "Pfeilfunktion" ist jetzt verfügbar, um anonyme Funktionen einfacher zu schreiben:
In Konstruktoren, Methoden und statischen Methoden ist es jetzt möglich, Standardwerte für jeden Parameter zu verwenden:
Den Zugriffslisten wurden zwei neue Möglichkeiten hinzugefügt:
list[-1] gibt das letzte zurück, list[-2] gibt das vorletzte zurück.list[10:20] gibt eine neue Liste zurück, die die Elemente von Position 10 (einschließlich) bis 20 (ausschließlich) enthält.list[10:20:3] gibt die Elemente an Position 10, 13, 16, 19 zurück.list[20:10:-3] gibt die Elemente an Position 20, 17, 14, 11 zurückarraySlice(start, end, increment)-Funktion, die subArray ersetzt, hat das gleiche Verhalten wie die list[start:end:increment]-Syntax.##Chan
Impossible de charger les données du jeu.
Vérifiez votre connexion et réessayez.