Filterfunktion in Array - Ausgabe

  • Hallo Leute,

    mich hats gestern wieder nach AutoIt verschlagen & ich sitze nun an einem kleinen Programm zur Auslese von einer Logdatei dran. Die Logdatei ist beispielsweise wie folgt aufgebaut:

    Spoiler anzeigen

    [23:29:46] <Phil Hammer> <Shopped> (normal) perfekter Diamant (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: +68% Schaden an Untoten | Rüstung: +100 zu Angriffswert | Helme: +100 zu Angriffswert | Schilde: Alle Widerstandsarten +19 | | Benötigter Level: 18
    [23:29:49] <Phil Hammer> <Shopped> (normal) perfekter Saphir (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: Erhöht um 10-14 Kälte-Schaden | Rüstung: +38 zu Mana | Helme: +38 zu Mana | Schilde: Kälte-Widerstand +40% | | Benötigter Level: 18
    [23:29:49] <Phil Hammer> <Shopped> (normal) perfekter Saphir (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: Erhöht um 10-14 Kälte-Schaden | Rüstung: +38 zu Mana | Helme: +38 zu Mana | Schilde: Kälte-Widerstand +40% | | Benötigter Level: 18
    [23:29:50] <Phil Hammer> <Stashed> (normal) perfekter Saphir
    [23:29:51] <Phil Hammer> <Stashed> (normal) perfekter Saphir
    [23:29:51] <Phil Hammer> <Stashed> (normal) perfekter Diamant
    [00:07:03] <Phil Hammer> <Kept> (normal) Schlüssel des Terrors (82)
    [00:11:36] <Phil Hammer> <Dropped> (unique) voller Harnisch (94) | Verteidigung: 162 | Haltbarkeit: 61 von 70 | Benötigte Stärke: 80 | Nicht identifiziert {clearInventory}
    [00:33:46] <Phil Hammer> <Kept> (normal) Schlüssel des Hasses (80)
    [03:05:24] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [03:05:25] <ele> <Stashed> (normal) Schlüssel des Terrors
    [03:31:39] <ele> <Kept> (normal) Ist-Rune (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: 30% bessere Chance, magischen Gegenstand zu erhalten | Rüstung: 25% bessere Chance, magischen Gegenstand zu erhalten | Helme: 25% bessere Chance, magischen Gegenstand zu erhalten | Schilde: 25% bessere Chance, magischen Gegenstand zu erhalten | | Benötigter Level: 51
    [03:31:40] <ele> <Stashed> (normal) Ist-Rune
    [04:47:51] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [04:48:02] <ele> <Stashed> (normal) Schlüssel des Terrors
    [05:29:01] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [05:44:35] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [06:35:57] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [06:35:58] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [07:40:09] <ele> <Kept> (unique) Gheeds Glück (75) | Riesen-Zauber | Im Inventar behalten, um Bonus zu erlangen. | Benötigter Level: 62 | 130% Extragold von Monstern | 33% bessere Chance, magischen Gegenstand zu erhalten | Verringert alle Händlerpreise 12%
    [08:24:04] <ele> <Dropped> (magic) gäanisches Amulett des Maßes (91) | Benötigter Level: 45 | +3 zu Elementar-Fertigkeiten (Nur Druide) | +5 zu min. Schaden {clearInventory}
    [12:35:24] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [13:02:30] <ele> <Sold> (unique) Gespensterflucht (94) | Geistergleve | Wurf-Schaden: 123 bis 349 | Einhand-Schaden: 77 bis 247 | Anzahl: 46 | Benötigte Geschicklichkeit: 127 | Benötigte Stärke: 79 | Benötigter Level: 76 | Wurfspieß-Klasse - Langsame Angriffsgeschwindigkeit | +175% Erhöhter Schaden | 11% Abgesaugtes Leben pro Treffer | +15 zu Mana nach jedem Volltreffer | Füllt die Menge auf | Ätherisch (Reparatur nicht möglich.)
    [13:35:59] <ele> <Sold> (unique) Nagelring (75) | Ring | Benötigter Level: 7 | +60 zu Angriffswert | Magie-Schaden reduziert um 3 | Angreifer erleidet Schaden von 3 | 21% bessere Chance, magischen Gegenstand zu erhalten
    [14:35:05] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [15:20:05] <ele> <Dropped> (normal) Schriftrolle der Identifikation (1) {clearInventory}
    [15:20:33] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [15:28:40] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [15:35:05] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [15:43:38] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [16:00:53] <ele> <Sold> (unique) Kosten: 5381 (87) | Magierfaust | leichte Panzerhandschuhe | Verteidigung: 24 | Haltbarkeit: 11 von 18 | Benötigte Stärke: 45 | Benötigter Level: 23 | +1 zu Feuer-Fertigkeiten | +20% Schnellere Zauberrate | Erhöht um 1-6 Feuer-Schaden | +22% Verbesserte Verteidigung | +10 Verteidigung | Mana regenerieren 25%
    [16:31:10] <ele> <Kept> (normal) Ist-Rune (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: 30% bessere Chance, magischen Gegenstand zu erhalten | Rüstung: 25% bessere Chance, magischen Gegenstand zu erhalten | Helme: 25% bessere Chance, magischen Gegenstand zu erhalten | Schilde: 25% bessere Chance, magischen Gegenstand zu erhalten | | Benötigter Level: 51
    [16:31:22] <ele> <Stashed> (normal) Ist-Rune
    [16:49:58] <ele> <Sold> (unique) Goldträger (80) | schwerer Gürtel | Verteidigung: 36 | Haltbarkeit: 9 von 18 | Benötigte Stärke: 45 | Benötigter Level: 27 | +10% Erhöhte Angriffsgeschwindigkeit | +60% Verbesserte Verteidigung | +25 Verteidigung | 64% Extragold von Monstern | 30% bessere Chance, magischen Gegenstand zu erhalten | +2 zu Licht-Radius
    [17:54:28] <ele> <Kept> (normal) Pul-Rune (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: +75% Schaden an Dämonen, | +100 zu Angriffswert gegen Dämonen | Rüstung: +30% Verbesserte Verteidigung | Helme: +30% Verbesserte Verteidigung | Schilde: +30% Verbesserte Verteidigung | | Benötigter Level: 45
    [17:54:28] <ele> <No room for> (rare) Spetum
    [18:06:58] <ele> <Kept> (unique) Wirbelnder Kristall (88) | Einhand-Schaden: 18 bis 42 | Haltbarkeit: 39 von 50 | (Nur Zauberin) | Stab-Klasse - Normale Angriffsgeschwindigkeit | Nicht identifiziert
    [18:10:18] <ele> <No room for> (rare) Spinnenbogen
    [18:13:11] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [18:13:11] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [18:14:04] <ele> <No room for> (rare) großes Szepter
    [18:19:48] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [18:20:35] <ele> <No room for> (rare) Dornen-Handschuhe
    [18:21:37] <ele> <No room for> (rare) kurzer Kriegsbogen
    [18:23:11] <ele> <No room for> (rare) Knochenhelm
    [18:25:48] <ele> <No room for> (rare) Kriegsstab
    [18:26:38] <ele> <No room for> (magic) Riesen-Zauber
    [18:27:52] <ele> <No room for> (rare) leichte Panzerhandschuhe
    [18:31:07] <ele> <No room for> (magic) Riesen-Zauber
    [18:31:22] <ele> <No room for> (rare) Handsichel
    [18:32:45] <ele> <No room for> (rare) Geweih
    [18:32:45] <ele> <No room for> (rare) Handsichel
    [18:33:24] <ele> <No room for> (rare) langer Kampfbogen
    [18:33:58] <ele> <No room for> (rare) Barbarenkrallen
    [18:36:35] <ele> <No room for> (rare) Magier-Plattenrüstung
    [18:37:55] <ele> <No room for> (rare) kurzer Kampfbogen
    [18:38:12] <ele> <No room for> (rare) schwerer Gürtel
    [18:38:17] <ele> <No room for> (rare) schwerer Gürtel
    [18:39:04] <ele> <No room for> (magic) Yatagan
    [18:40:38] <ele> <No room for> (rare) schwerer Gürtel
    [18:41:40] <ele> <No room for> (rare) Wappenschild
    [18:44:49] <ele> <No room for> (rare) Großhelm
    [18:44:49] <ele> <No room for> (rare) Alpha-Helm
    [18:45:30] <ele> <No room for> (magic) Zersetzer-Kopf
    [18:45:40] <ele> <No room for> (magic) Zersetzer-Kopf
    [18:46:42] <ele> <No room for> (magic) Riesen-Zauber
    [18:46:53] <ele> <No room for> (magic) Riesen-Zauber
    [18:47:31] <ele> <No room for> (unique) Rundschild
    [18:47:59] <ele> <No room for> (unique) große Krone
    [18:48:21] <ele> <No room for> (rare) Klingenbogen
    [18:48:21] <ele> <No room for> (rare) Kesselhelm
    [18:48:37] <ele> <No room for> (rare) Falkata
    [18:50:03] <ele> <No room for> (rare) kurzer Kampfbogen
    [18:50:53] <ele> <No room for> (rare) Spinnenbogen
    [18:52:06] <ele> <No room for> (rare) Eschenholzbogen
    [18:52:07] <ele> <No room for> (rare) Hacksäbel
    [18:53:16] <ele> <No room for> (magic) Matriarchenwurfspieß
    [18:54:15] <ele> <No room for> (rare) leichter Gürtel
    [18:55:53] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [18:56:37] <ele> <No room for> (rare) Kriegsstab
    [18:56:38] <ele> <No room for> (rare) Klauen
    [18:56:51] <ele> <No room for> (magic) Mächtiges Szepter
    [18:58:32] <ele> <No room for> (rare) Klauen
    [18:58:33] <ele> <No room for> (rare) Kriegsszepter
    [18:58:57] <ele> <No room for> (magic) Scheren-Quhab
    [18:59:33] <ele> <No room for> (rare) kurzer Kampfbogen
    [19:01:00] <ele> <No room for> (rare) Wyrmleder-Stiefel
    [19:01:10] <ele> <No room for> (rare) Wyrmleder-Stiefel
    [19:01:13] <ele> <No room for> (rare) Wyrmleder-Stiefel
    [19:02:23] <ele> <No room for> (rare) Langbogen
    [19:02:51] <ele> <No room for> (magic) Falkenhelm
    [19:02:51] <ele> <No room for> (unique) Spitzhelm
    [19:02:51] <ele> <No room for> (magic) Kleiner Zauber
    [19:03:37] <ele> <No room for> (rare) Schlagstab
    [19:03:51] <ele> <No room for> (rare) Falkenmaske
    [19:05:39] <ele> <No room for> (magic) Unterarmschwert
    [19:05:39] <ele> <No room for> (rare) Ring
    [19:06:01] <ele> <No room for> (rare) Kettenstiefel
    [19:06:01] <ele> <No room for> (rare) schwere Handschuhe
    [19:06:38] <ele> <No room for> (rare) Knüppel
    [19:06:38] <ele> <No room for> (set) Jäger-Verkleidung
    [19:07:19] <ele> <No room for> (magic) Kleiner Zauber
    [19:07:40] <ele> <No room for> (magic) Kleiner Zauber
    [20:48:13] <ele> <Kept> (normal) Flegel (73) | Einhand-Schaden: 1 bis 24 | Haltbarkeit: 26 von 30 | Benötigte Geschicklichkeit: 35 | Benötigte Stärke: 41 | Knüppel-Klasse - Schnelle Angriffsgeschwindigkeit | +50% Schaden an Untoten | Gesockelt (4)
    [20:48:24] <ele> <Stashed> (normal) Flegel
    [21:23:16] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [21:23:16] <ele> <Stashed> (normal) Schlüssel des Hasses
    [21:38:52] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [21:38:52] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [21:38:54] <ele> <Stashed> (normal) Schlüssel des Terrors
    [21:38:54] <ele> <Stashed> (normal) Schlüssel des Terrors
    [21:55:11] <ele> <Sold> (unique) Infernosprung (75) | Dämonenleder-Stiefel | Verteidigung: 96 | Haltbarkeit: 9 von 12 | Benötigte Stärke: 20 | Benötigter Level: 29 | 5% Chance, bei einem Treffer Level 8 Feuersbrunst zu zauben. | +20% Schneller rennen/gehen | Erhöht um 12-33 Feuer-Schaden | +125% Verbesserte Verteidigung | +15 Verteidigung | +10% zu max. Feuer-Widerstand | Feuer-Widerstand +30% | 62% Extragold von Monstern | +2 zu Licht-Radius
    [22:08:40] <ele> <Sold> (unique) Goldträger (85) | schwerer Gürtel | Verteidigung: 35 | Haltbarkeit: 12 von 18 | Benötigte Stärke: 45 | Benötigter Level: 27 | +10% Erhöhte Angriffsgeschwindigkeit | +46% Verbesserte Verteidigung | +25 Verteidigung | 73% Extragold von Monstern | 30% bessere Chance, magischen Gegenstand zu erhalten | +2 zu Licht-Radius
    [22:17:08] <ele> <Sold> (unique) Haut des Vipernmagiers (94) | Schlangenlederrüstung | Verteidigung: 418 | Haltbarkeit: 13 von 13 | Benötigte Stärke: 33 | Benötigter Level: 29 | +1 zu allen Fertigkeiten | +30% Schnellere Zauberrate | +120% Verbesserte Verteidigung | Alle Widerstandsarten +28 | Magie-Schaden reduziert um 12 | Ätherisch (Reparatur nicht möglich.)
    [22:25:54] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [22:25:55] <ele> <Stashed> (normal) Schlüssel des Terrors
    [22:48:41] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [23:38:43] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [23:39:26] <ele> <Kept> (set) Wirbelnder Kristall (75) | Einhand-Schaden: 18 bis 42 | Haltbarkeit: 38 von 50 | (Nur Zauberin) | Stab-Klasse - Normale Angriffsgeschwindigkeit | Nicht identifiziert
    [00:12:29] <ele> <Kept> (unique) Ring (94) | Nicht identifiziert
    [00:29:34] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [00:30:27] <ele> <Sold> (unique) Magierfaust (87) | leichte Panzerhandschuhe | Verteidigung: 25 | Haltbarkeit: 10 von 18 | Benötigte Stärke: 45 | Benötigter Level: 23 | +1 zu Feuer-Fertigkeiten | +20% Schnellere Zauberrate | Erhöht um 1-6 Feuer-Schaden | +26% Verbesserte Verteidigung | +10 Verteidigung | Mana regenerieren 25%
    [02:18:54] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [02:26:14] <ele> <Kept> (normal) Schlüssel des Terrors (82)
    [02:27:25] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [03:35:18] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [03:58:21] <ele> <Kept> (normal) Schlüssel des Hasses (80)
    [04:03:03] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [05:59:46] <ele> <Dropped> (normal) Ko-Rune (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: +10 zu Geschicklichkeit | Rüstung: +10 zu Geschicklichkeit | Helme: +10 zu Geschicklichkeit | Schilde: +10 zu Geschicklichkeit | | Benötigter Level: 39 {clearInventory}
    [06:17:45] <ele> <Kept> (magic) natürlicher Riesen-Zauber der Vita (95) | Im Inventar behalten, um Bonus zu erlangen. | Benötigter Level: 83 | +1 zu Elementar-Fertigkeiten (Nur Druide) | +41 zu Leben
    [06:17:47] <ele> <Stashed> (magic) natürlicher Riesen-Zauber der Vita
    [06:32:47] <ele> <Sold> (unique) Ohrenkette (85) | Dämonenleder-Schärpe | Verteidigung: 106 | Haltbarkeit: 9 von 22 | Benötigte Stärke: 20 | Benötigter Level: 29 | 7% Abgesaugtes Leben pro Treffer | +160% Verbesserte Verteidigung | +15 Verteidigung | Schaden reduziert um 13% | Magie-Schaden reduziert um 10
    [07:27:18] <ele> <Kept> (superior) guter Wirbel-Schild (85) | Verteidigung: 244 | Chance zu blocken: 39% | Haltbarkeit: 103 von 103 | (Nur Paladin) | Benötigte Stärke: 148 | Benötigter Level: 66 | +13% Erhöhter Schaden | +23 zu Angriffswert | +8% Verbesserte Verteidigung | Erhöht max. Haltbarkeit 15%
    [07:28:33] <ele> <Stashed> (superior) guter Wirbel-Schild
    [07:36:17] <ele> <Kept> (normal) Flegel (85) | Einhand-Schaden: 1 bis 24 | Haltbarkeit: 20 von 30 | Benötigte Geschicklichkeit: 35 | Benötigte Stärke: 41 | Knüppel-Klasse - Schnelle Angriffsgeschwindigkeit | +50% Schaden an Untoten | Gesockelt (4)
    [07:41:17] <ele> <Sold> (unique) Homunkulus (75) | Hierofant-Trophäe | Verteidigung: 192 | Chance zu blocken: 72% | Haltbarkeit: 19 von 20 | (Nur Totenbeschwörer) | Benötigte Stärke: 58 | Benötigter Level: 42 | +2 zu Flüchen (Nur Totenbeschwörer) | +2 zu Fertigkeiten-Level des Totenbeschwörers | +30% Schnellere Abblockrate | 40% Erhöhte Chancen beim Blocken | +171% Verbesserte Verteidigung | +20 zu Energie | Mana regenerieren 33% | Alle Widerstandsarten +40 | +5 zu Mana nach jedem Volltreffer
    [07:43:42] <ele> <Kept> (unique) Ring (75) | Nicht identifiziert
    [07:43:53] <ele> <Stashed> (unique) Ring
    [08:10:21] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [08:10:22] <ele> <Stashed> (normal) Schlüssel der Zerstörung
    [08:27:20] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [08:27:21] <ele> <Stashed> (normal) Schlüssel der Zerstörung
    [08:48:56] <ele> <Sold> (unique) Magierfaust (87) | leichte Panzerhandschuhe | Verteidigung: 24 | Haltbarkeit: 12 von 18 | Benötigte Stärke: 45 | Benötigter Level: 23 | +1 zu Feuer-Fertigkeiten | +20% Schnellere Zauberrate | Erhöht um 1-6 Feuer-Schaden | +21% Verbesserte Verteidigung | +10 Verteidigung | Mana regenerieren 25%
    [09:25:32] <ele> <Sold> (unique) Zerebus' Biss (94) | Blutgeist | Verteidigung: 341 | Haltbarkeit: 10 von 20 | (Nur Druide) | Benötigte Stärke: 86 | Benötigter Level: 63 | +2 zu Gestaltwandler-Fertigkeiten (Nur Druide) | 89% Bonus zu Angriffswert | 9% Abgesaugtes Leben pro Treffer | 33% Chance auf offene Wunden | +2 zu Barbaren-Wut (Nur Druide) | +134% Verbesserte Verteidigung
    [09:29:52] <ele> <Kept> (unique) Wirbelnder Kristall (87) | Einhand-Schaden: 18 bis 42 | Haltbarkeit: 25 von 50 | (Nur Zauberin) | Stab-Klasse - Normale Angriffsgeschwindigkeit | Nicht identifiziert
    [09:42:20] <ele> <Sold> (unique) Witwenmacher (94) | Wächterbogen | Zweihand-Schaden: 58 bis 153 | Benötigte Geschicklichkeit: 146 | Benötigte Stärke: 72 | Benötigter Level: 65 | Bogen-Klasse - Schnelle Angriffsgeschwindigkeit | Feuert magische Pfeile ab. | +190% Erhöhter Schaden | Verteidigung des Ziels ignorieren | 33% Todesschlag | +5 zu Gelenkter Pfeil
    [09:50:47] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [12:06:21] <ele> <Sold> (unique) Ohrenkette (75) | Dämonenleder-Schärpe | Verteidigung: 110 | Haltbarkeit: 11 von 22 | Benötigte Stärke: 20 | Benötigter Level: 29 | 8% Abgesaugtes Leben pro Treffer | +173% Verbesserte Verteidigung | +15 Verteidigung | Schaden reduziert um 14% | Magie-Schaden reduziert um 10
    [12:07:31] <ele> <Sold> (unique) Wächtertreu (87) | Kettenhandschuhe | Verteidigung: 27 | Haltbarkeit: 8 von 16 | Benötigte Stärke: 25 | Benötigter Level: 15 | +25 zu Angriffswert | +27% Verbesserte Verteidigung | +15 Verteidigung | 200% Extragold von Monstern | 27% bessere Chance, magischen Gegenstand zu erhalten | +2 zu Licht-Radius
    [12:10:48] <ele> <Kept> (superior) gute Heilige Targe (88) | Verteidigung: 174 | Chance zu blocken: 50% | Haltbarkeit: 50 von 50 | (Nur Paladin) | Benötigte Stärke: 86 | Benötigter Level: 47 | +45% Erhöhter Schaden | +90 zu Angriffswert | +10% Verbesserte Verteidigung | Erhöht max. Haltbarkeit 13%
    [12:23:00] <ele> <Kept> (unique) Ring (87) | Nicht identifiziert
    [12:23:08] <ele> <Stashed> (unique) Ring
    [12:31:24] <ele> <Kept> (normal) Ohm-Rune (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: +50% Erhöhter Schaden | Rüstung: +5% zu max. Kälte-Widerstand | Helme: +5% zu max. Kälte-Widerstand | Schilde: +5% zu max. Kälte-Widerstand | | Benötigter Level: 57
    [12:31:35] <ele> <Stashed> (normal) Ohm-Rune
    [12:45:39] <ele> <Sold> (unique) Infernosprung (83) | Dämonenleder-Stiefel | Verteidigung: 104 | Haltbarkeit: 8 von 12 | Benötigte Stärke: 20 | Benötigter Level: 29 | 5% Chance, bei einem Treffer Level 8 Feuersbrunst zu zauben. | +20% Schneller rennen/gehen | Erhöht um 12-33 Feuer-Schaden | +148% Verbesserte Verteidigung | +15 Verteidigung | +10% zu max. Feuer-Widerstand | Feuer-Widerstand +30% | 70% Extragold von Monstern | +2 zu Licht-Radius
    [12:46:46] <ele> <Kept> (unique) Ring (75) | Nicht identifiziert
    [12:46:54] <ele> <Stashed> (unique) Ring
    [12:53:35] <ele> <Sold> (unique) Homunkulus (84) | Hierofant-Trophäe | Verteidigung: 179 | Chance zu blocken: 72% | Haltbarkeit: 12 von 20 | (Nur Totenbeschwörer) | Benötigte Stärke: 58 | Benötigter Level: 42 | +2 zu Flüchen (Nur Totenbeschwörer) | +2 zu Fertigkeiten-Level des Totenbeschwörers | +30% Schnellere Abblockrate | 40% Erhöhte Chancen beim Blocken | +153% Verbesserte Verteidigung | +20 zu Energie | Mana regenerieren 33% | Alle Widerstandsarten +40 | +5 zu Mana nach jedem Volltreffer
    [16:19:03] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [16:19:07] <ele> <Stashed> (normal) Schlüssel der Zerstörung
    [16:21:12] <ele> <Kept> (unique) Schlächter-Schutz (82) | Verteidigung: 121 | Haltbarkeit: 28 von 55 | (Nur Barbar) | Benötigte Stärke: 118 | Nicht identifiziert
    [16:21:24] <ele> <Stashed> (unique) Schlächter-Schutz
    [16:44:17] <ele> <Kept> (normal) Schlüssel der Zerstörung (95)
    [16:44:23] <ele> <Stashed> (normal) Schlüssel der Zerstörung
    [17:08:13] <ele> <Sold> (unique) Wächtertreu (75) | Kettenhandschuhe | Verteidigung: 27 | Haltbarkeit: 14 von 16 | Benötigte Stärke: 25 | Benötigter Level: 15 | +25 zu Angriffswert | +26% Verbesserte Verteidigung | +15 Verteidigung | 200% Extragold von Monstern | 30% bessere Chance, magischen Gegenstand zu erhalten | +2 zu Licht-Radius
    [17:09:19] <ele> <Sold> (unique) Alma Negra (87) | Heilige Rondache | Verteidigung: 480 | Chance zu blocken: 68% | Haltbarkeit: 48 von 68 | (Nur Paladin) | Benötigte Stärke: 109 | Benötigter Level: 77 | +2 zu Fertigkeiten-Level des Paladins | +30% Schnellere Abblockrate | 20% Erhöhte Chancen beim Blocken | +47% Erhöhter Schaden | 41% Bonus zu Angriffswert | +191% Verbesserte Verteidigung | Magie-Schaden reduziert um 5
    [17:20:48] <ele> <Sold> (unique) Infernosprung (95) | Dämonenleder-Stiefel | Verteidigung: 94 | Haltbarkeit: 9 von 12 | Benötigte Stärke: 20 | Benötigter Level: 29 | 5% Chance, bei einem Treffer Level 8 Feuersbrunst zu zauben. | +20% Schneller rennen/gehen | Erhöht um 12-33 Feuer-Schaden | +121% Verbesserte Verteidigung | +15 Verteidigung | +10% zu max. Feuer-Widerstand | Feuer-Widerstand +30% | 44% Extragold von Monstern | +2 zu Licht-Radius
    [17:34:45] <ele> <Kept> (superior) guter Monarch (88) | Verteidigung: 140 | Chance zu blocken: 42% | Haltbarkeit: 97 von 97 | Benötigte Stärke: 156 | Benötigter Level: 54 | Erhöht max. Haltbarkeit 13% | Gesockelt (4)
    [17:35:51] <ele> <Stashed> (superior) guter Monarch
    [02:06:56] <Tim Sorc> <Sold> (unique) Kosten: 1505 (88) | Spetum | Zweihand-Schaden: 15 bis 23 | Haltbarkeit: 15 von 28 | Benötigte Geschicklichkeit: 35 | Benötigte Stärke: 54 | Speer-Klasse - Langsame Angriffsgeschwindigkeit | Nicht identifiziert
    [02:10:44] <Tim Sorc> <Kept> (normal) Mal-Rune (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: Monster-Heilung verhindern | Rüstung: Magie-Schaden reduziert um 7 | Helme: Magie-Schaden reduziert um 7 | Schilde: Magie-Schaden reduziert um 7 | | Benötigter Level: 49 {Cubing 2}
    [02:10:52] <Tim Sorc> <Stashed> (normal) Mal-Rune
    [02:14:25] <Tim Sorc> <Kept> (normal) Mal-Rune (1) | Anbringung möglich an gesockelten Gegenständen. | | Waffen: Monster-Heilung verhindern | Rüstung: Magie-Schaden reduziert um 7 | Helme: Magie-Schaden reduziert um 7 | Schilde: Magie-Schaden reduziert um 7 | | Benötigter Level: 49
    [02:14:34] <Tim Sorc> <Stashed> (normal) Mal-Rune
    [03:15:29] <Tim Sorc> <Kept> (normal) Schlüssel des Terrors (82)
    [03:15:38] <Tim Sorc> <Sold> (unique) Nokozan-Relikt (82) | Amulett | Benötigter Level: 10 | +20% Schnellere Erholung nach Treffer | Erhöht um 3-6 Feuer-Schaden | +10% zu max. Feuer-Widerstand | Feuer-Widerstand +50% | +3 zu Licht-Radius
    [03:15:41] <Tim Sorc> <Stashed> (normal) Schlüssel des Terrors
    [03:16:57] <Tim Sorc> <Sold> (unique) Lava-Stoß (88) | Kampf-Panzerhandschuhe | Verteidigung: 139 | Haltbarkeit: 14 von 38 | Benötigte Stärke: 88 | Benötigter Level: 42 | 2% Chance, Level 10 Verzaubern auf Schlag zu zaubern. | +20% Erhöhte Angriffsgeschwindigkeit | Erhöht um 13-46 Feuer-Schaden | +191% Verbesserte Verteidigung | Feuer-Widerstand +24% | Halbierte Dauer der Erstarrung
    [03:26:29] <Tim Sorc> <Kept> (unique) Ring (75) | Nicht identifiziert
    [03:26:38] <Tim Sorc> <Stashed> (unique) Ring
    [03:26:53] <Tim Sorc> <Kept> (normal) Schlüssel des Hasses (80)
    [03:26:54] <Tim Sorc> <Stashed> (normal) Schlüssel des Hasses
    [03:39:37] <Tim Sorc> <Sold> (unique) Bartuc's Cut-Throat (75) | Großklauen | Einhand-Schaden: 86 bis 152 | Haltbarkeit: 37 von 69 | (Nur Assassine) | Benötigte Geschicklichkeit: 79 | Benötigte Stärke: 79 | Benötigter Level: 42 | Klauen-Klasse - Sehr langsame Angriffsgeschwindigkeit | +1 zu Kampfkünsten (Nur Assassine) | +2 zu Assassinen-Fertigkeiten | +30% Schnellere Erholung nach Treffer | +194% Erhöhter Schaden | Erhöht Schaden um 25-50 | 20% Bonus zu Angriffswert | 6% Abgesaugtes Leben pro Treffer | +20 zu Stärke | +20 zu Geschicklichkeit

    Nun, mein Programm sieht derzeit wie folgt aus:

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <GuiListView.au3>
    #include <WindowsConstants.au3>
    #include <File.au3>
    #include <MsgBoxConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Opt("GUIResizeMode",$GUI_DOCKALL)

    [/autoit] [autoit][/autoit] [autoit]

    #Region ### START Koda GUI section ### Form=
    $Window_Title = GUICreate("D2BS Tornister", 1027, 451, 254, 124)
    $iListview = GUICtrlCreateListView("", 10, 10, 1000, 390)
    $button_reload = GUICtrlCreateButton("Reload", 826, 416, 65, 25)
    $button_autoReload = GUICtrlCreateButton("Start Auto-Reload", 896, 416, 105, 25)
    $button_open = GUICtrlCreateButton("Open", 756, 416, 65, 25)
    $comboAction = GUICtrlCreateCombo("", 16, 416, 121, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    $comboType = GUICtrlCreateCombo("", 160, 416, 129, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    $Input1 = GUICtrlCreateInput("Input1", 312, 416, 129, 21)
    $Button1 = GUICtrlCreateButton("Button1", 456, 416, 65, 25)
    GUISetState(@SW_SHOW)
    GUICtrlSetState($button_reload, $GUI_DISABLE)
    GUICtrlSetState($button_autoReload, $GUI_DISABLE)
    #EndRegion ### END Koda GUI section ###

    [/autoit] [autoit][/autoit] [autoit]

    _GUICtrlListView_AddColumn($iListview, "Zeit", 100)
    _GUICtrlListView_AddColumn($iListview, "Aktion", 100)
    _GUICtrlListView_AddColumn($iListview, "Typ", 100)
    _GUICtrlListView_AddColumn($iListview, "Name", 100)
    _GUICtrlListView_AddColumn($iListview, "Beschreibung", 378)

    [/autoit] [autoit][/autoit] [autoit]

    Global $sFilePath = RegRead("HKEY_CURRENT_USER\Software\Loginator", "Path")
    Global $tStart
    Global $tStatus = '0'
    Global $vActionArray[0]

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    if($sFilePath <> '') Then
    _readFile()
    GUICtrlSetState($button_reload, $GUI_ENABLE)
    GUICtrlSetState($button_autoReload, $GUI_ENABLE)
    EndIf

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    While 1
    $nMsg = GUIGetMsg()

    [/autoit] [autoit][/autoit] [autoit]

    Switch $nMsg

    [/autoit] [autoit][/autoit] [autoit]

    Case $nMsg
    if($nMsg == 7) Then
    For $iI2 = 0 To UBound($aItems) - 1
    ;if(($aItems[$iI2][1] <> GUICtrlRead($comboAction))) Then
    ;_ArrayDelete($aItems, $iI2)
    ;EndIf
    Next
    ;_GUICtrlListView_AddArray($iListview, $aItems)
    ;_GUICtrlListView_Scroll($iListview, 0, $vFileSize*20)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    if($nMsg > 0) Then
    ;MSGBox(0, "", $nMsg)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $GUI_EVENT_CLOSE
    $hFileOpen = ""
    if($hFileOpen <> "") Then
    FileClose($hFileOpen)
    EndIf
    Exit

    [/autoit] [autoit][/autoit] [autoit]

    Case $button_reload
    _GUICtrlListView_DeleteAllItems($iListview)
    _readFile()

    [/autoit] [autoit][/autoit] [autoit]

    Case $button_autoReload
    If(GUICtrlRead($button_autoReload) == "Stop Auto-Reload") Then
    GUICtrlSetData($button_autoReload, 'Start Auto-Reload')
    GUICtrlSetState($button_reload, $GUI_ENABLE)
    $tStatus = '0'
    Else
    GUICtrlSetData($button_autoReload, 'Stop Auto-Reload')
    GUICtrlSetState($button_reload, $GUI_DISABLE)
    $tStatus = '1'
    $tDiff = TimerInit()
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Case $button_open
    $sFilePath = FileOpenDialog("Open Log", @WorkingDir, "Textdateien (*.txt)")
    if($sFilePath <> '') Then
    RegWrite("HKEY_CURRENT_USER\Software\Loginator", "Path", "REG_SZ", $sFilePath)
    EndIf
    GUICtrlSetState($button_reload, $GUI_ENABLE)
    GUICtrlSetState($button_autoReload, $GUI_ENABLE)
    _readFile()

    [/autoit] [autoit][/autoit] [autoit]

    EndSwitch

    [/autoit] [autoit][/autoit] [autoit]

    if($tStatus = 1) Then
    if TimerDiff($tStart) > 300000 Then
    _GUICtrlListView_DeleteAllItems($iListview)
    _readFile()
    $tStart = TimerInit()
    EndIf
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _readFile()
    Global $hFileOpen = FileOpen($sFilePath)

    [/autoit] [autoit][/autoit] [autoit]

    If $hFileOpen = -1 Then
    Return False
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $vFileRead = FileRead($sFilePath)
    $vFileSize = _FileCountLines ( $sFilePath )
    _GUICtrlListView_SetItemCount($iListview, $vFileSize)

    [/autoit] [autoit][/autoit] [autoit]

    Global $aItems[$vFileSize][5]

    [/autoit] [autoit][/autoit] [autoit]

    For $iI = 0 To UBound($aItems) - 1
    Global $sFileRead = FileReadLine($hFileOpen, $iI)
    Global $vZeit = StringTrimRight($sFileRead, StringLen($sFileRead)-10)
    Global $vNewString = StringTrimLeft($sFileRead, 10)
    Global $vAktionStart = StringInStr($vNewString, "<", 0, "2")
    Global $vNewString2 = StringTrimLeft($vNewString, $vAktionStart)
    Global $vAktionEnde = StringInStr($vNewString2, ">", 0, "1")
    Global $vAktion = StringTrimRight(StringTrimleft($vNewString, 1), StringLen($vNewString)-($vAktionEnde-1))
    Global $vNewString3 = StringTrimRight($vNewString2, StringLen($vNewString2)-$vAktionEnde+1)

    [/autoit] [autoit][/autoit] [autoit]

    if(_ArraySearch($vActionArray, $vNewString3) == '-1') Then
    _ArrayAdd($vActionArray, $vNewString3)
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Global $vNewString4 = StringTrimLeft($vNewString2, StringLen($vNewString3)+3)
    Global $vNewString5 = StringTrimRight($vNewString4, StringLen($vNewString4)-(StringInStr($vNewString4, ")", 0, "1")-1))
    Global $vNewString6 = StringTrimLeft($vNewString2, StringInStr($vNewString2, ")", 0, "1"))
    Global $vNewString61 = StringSplit($vNewString6, "|")
    Global $vNewString7 = StringInStr($vNewString6, "|", 0, 1)
    if($vNewString7 == "0") Then
    Global $vNewString8 = ""
    Else
    Global $vNewString8 = StringTrimLeft($vNewString6, StringInStr($vNewString6, "|", 0, 1))
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    $aItems[$iI][0] = $vZeit
    $aItems[$iI][1] = $vNewString3
    $aItems[$iI][2] = $vNewString5
    $aItems[$iI][3] = StringReplace($vNewString61[1], "{clearInventory}", "")
    $aItems[$iI][4] = $vNewString8
    Next
    _GUICtrlListView_AddArray($iListview, $aItems)
    _GUICtrlListView_SetColumnWidth($iListview, 0, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 1, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 2, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 3, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 4, $LVSCW_AUTOSIZE)
    GUICtrlSetData($comboAction, _ArrayToString($vActionArray))
    _GUICtrlListView_Scroll($iListview, 0, $vFileSize*20)

    [/autoit] [autoit][/autoit] [autoit]

    EndFunc

    [/autoit]

    Ich habe folgende Ansicht wenn das Programm alles anzeigt:
    http://prntscr.com/462p23

    Ich möchte nun die 2te Spalte filtern, sprich: Wenn ich in der ComboBox "stashed" auswähle möchte ich dass sämtliche Einträge mit einem anderen Ergebnis gelöscht werden. Dies hab ich wie folgt versucht zu lösen:

    [autoit]

    For $iI2 = 0 To UBound($aItems) - 1
    ;if(!($aItems[$iI2][1] == GUICtrlRead($comboAction))) Then
    ;_ArrayDelete($aItems, $iI2)
    ;EndIf
    Next
    ;_GUICtrlListView_AddArray($iListview, $aItems)
    ;_GUICtrlListView_Scroll($iListview, 0, $vFileSize*20)

    [/autoit]

    in $aItems stehen die Zeilen aus der .txt schön bearbeitet wie ich sie brauche. In Spalte 2 halt "stashed" usw. Nun dachte ich mir "hey, gehst du die gesamte Array durch, überprüfst den 2ten Wert & falls er falsch ist, löscht du die gesamte Zeile & fängst von vorne an. Vielleicht nicht die schnellste & eleganteste Lösung, aber so denk ich mir das mal. Nunja - ich bekomme jedoch einen Fehler...

    Zitat

    "C:\Users\Schrubber\Documents\AutoIt\D2BS Tornister.au3" (56) : ==> Array variable has incorrect number of subscripts or subscript dimension range exceeded.:
    if(($aItems[$iI2][1] <> GUICtrlRead($comboAction))) Then
    if((^ ERROR

    Jedoch hab ich absolut keine Ahnung, woran das liegt :( Jemand nen Tipp?

    Grüße,
    Schrubber

    Einmal editiert, zuletzt von Schrubber (25. Juli 2014 um 17:50)

  • Wenn du ein Element aus dem Array löscht verringert sich die Anzahl der Elemente im Array.

    Bei der For Schleife wird "UBound($Array) - 1" nur einmal ausgeführt.

    Probier es mal mit einer Do Schleife.

    [autoit]

    $iI2 = 0
    Do
    ;if(!($aItems[$iI2][1] == GUICtrlRead($comboAction))) Then
    ;_ArrayDelete($aItems, $iI2)
    ;EndIf
    $iI2 += 1
    Until $iI2 = UBound($aItems)
    ;_GUICtrlListView_AddArray($iListview, $aItems)
    ;_GUICtrlListView_Scroll($iListview, 0, $vFileSize*20)

    [/autoit]
  • Hey,

    danke für die frühe Hilfe. Die Ausgabe danach ist etwas komisch. Es fehlen Einträge, jedoch kann ich nicht sagen welche genau weil trotzdme immernoch etwas falsches drinsteht.

    Ich hatte mir überlegt, eine Art "Filterfunktion" direkt bei _readFile() zu machen & nur Einträge zu erstellen welche den Ansprüchen entsprechen. Jedoch sieht das Ergebnis dann so aus:

    Screenshot:
    http://prntscr.com/463g9j

    Quelltext:

    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <ListViewConstants.au3>
    #include <GuiListView.au3>
    #include <WindowsConstants.au3>
    #include <File.au3>
    #include <MsgBoxConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <Array.au3>

    [/autoit][autoit][/autoit][autoit]

    Opt("GUIResizeMode",$GUI_DOCKALL)

    [/autoit][autoit][/autoit][autoit]

    #Region ### START Koda GUI section ### Form=
    $Window_Title = GUICreate("D2BS Tornister", 1027, 451, 254, 124)
    $iListview = GUICtrlCreateListView("", 10, 10, 1000, 390)
    $button_reload = GUICtrlCreateButton("Reload", 826, 416, 65, 25)
    $button_autoReload = GUICtrlCreateButton("Start Auto-Reload", 896, 416, 105, 25)
    $button_open = GUICtrlCreateButton("Open", 756, 416, 65, 25)
    $comboAction = GUICtrlCreateCombo("", 16, 416, 121, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    $comboType = GUICtrlCreateCombo("", 160, 416, 129, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
    $Input1 = GUICtrlCreateInput("Input1", 312, 416, 129, 21)
    $Button1 = GUICtrlCreateButton("Button1", 456, 416, 65, 25)
    GUISetState(@SW_SHOW)
    GUICtrlSetState($button_reload, $GUI_DISABLE)
    GUICtrlSetState($button_autoReload, $GUI_DISABLE)
    #EndRegion ### END Koda GUI section ###

    [/autoit][autoit][/autoit][autoit]

    _GUICtrlListView_AddColumn($iListview, "Zeit", 100)
    _GUICtrlListView_AddColumn($iListview, "Aktion", 100)
    _GUICtrlListView_AddColumn($iListview, "Typ", 100)
    _GUICtrlListView_AddColumn($iListview, "Name", 100)
    _GUICtrlListView_AddColumn($iListview, "Beschreibung", 378)

    [/autoit][autoit][/autoit][autoit]

    Global $sFilePath = RegRead("HKEY_CURRENT_USER\Software\Loginator", "Path")
    Global $tStart
    Global $tStatus = '0'
    Global $vActionArray[0]
    Global $vFilter1 = ' '

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    if($sFilePath <> '') Then
    _readFile()
    GUICtrlSetState($button_reload, $GUI_ENABLE)
    GUICtrlSetState($button_autoReload, $GUI_ENABLE)
    EndIf

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    While 1
    $nMsg = GUIGetMsg()

    [/autoit][autoit][/autoit][autoit]

    Switch $nMsg

    [/autoit][autoit][/autoit][autoit]

    Case $nMsg
    if($nMsg == 7) Then
    $vFilter1 = GuiCtrlRead($comboAction)
    _readFile()
    EndIf

    [/autoit][autoit][/autoit][autoit]

    if($nMsg > 0) Then
    ;MSGBox(0, "", $nMsg)
    EndIf

    [/autoit][autoit][/autoit][autoit]

    Case $GUI_EVENT_CLOSE
    $hFileOpen = ""
    if($hFileOpen <> "") Then
    FileClose($hFileOpen)
    EndIf
    Exit

    [/autoit][autoit][/autoit][autoit]

    Case $button_reload
    _GUICtrlListView_DeleteAllItems($iListview)
    _readFile()

    [/autoit][autoit][/autoit][autoit]

    Case $button_autoReload
    If(GUICtrlRead($button_autoReload) == "Stop Auto-Reload") Then
    GUICtrlSetData($button_autoReload, 'Start Auto-Reload')
    GUICtrlSetState($button_reload, $GUI_ENABLE)
    $tStatus = '0'
    Else
    GUICtrlSetData($button_autoReload, 'Stop Auto-Reload')
    GUICtrlSetState($button_reload, $GUI_DISABLE)
    $tStatus = '1'
    $tDiff = TimerInit()
    EndIf

    [/autoit][autoit][/autoit][autoit]

    Case $button_open
    $sFilePath = FileOpenDialog("Open Log", @WorkingDir, "Textdateien (*.txt)")
    if($sFilePath <> '') Then
    RegWrite("HKEY_CURRENT_USER\Software\Loginator", "Path", "REG_SZ", $sFilePath)
    EndIf
    GUICtrlSetState($button_reload, $GUI_ENABLE)
    GUICtrlSetState($button_autoReload, $GUI_ENABLE)
    _readFile()

    [/autoit][autoit][/autoit][autoit]

    EndSwitch

    [/autoit][autoit][/autoit][autoit]

    if($tStatus = 1) Then
    if TimerDiff($tStart) > 300000 Then
    _GUICtrlListView_DeleteAllItems($iListview)
    _readFile()
    $tStart = TimerInit()
    EndIf
    EndIf

    [/autoit][autoit][/autoit][autoit]

    WEnd

    [/autoit][autoit][/autoit][autoit]

    Func _readFile()
    Global $hFileOpen = FileOpen($sFilePath)

    [/autoit][autoit][/autoit][autoit]

    If $hFileOpen = -1 Then
    Return False
    EndIf

    [/autoit][autoit][/autoit][autoit]

    $vFileRead = FileRead($sFilePath)
    $vFileSize = _FileCountLines ( $sFilePath )
    _GUICtrlListView_SetItemCount($iListview, $vFileSize)

    [/autoit][autoit][/autoit][autoit]

    Global $aItems[$vFileSize][5]

    [/autoit][autoit][/autoit][autoit]

    For $iI = 0 To UBound($aItems) - 1

    [/autoit][autoit][/autoit][autoit]

    Global $sFileRead = FileReadLine($hFileOpen, $iI)

    [/autoit][autoit][/autoit][autoit]

    if(StringInStr($sFileRead, $vFilter1) > 0) Then
    Global $vZeit = StringTrimRight($sFileRead, StringLen($sFileRead)-10)
    Global $vNewString = StringTrimLeft($sFileRead, 10)
    Global $vAktionStart = StringInStr($vNewString, "<", 0, "2")
    Global $vNewString2 = StringTrimLeft($vNewString, $vAktionStart)
    Global $vAktionEnde = StringInStr($vNewString2, ">", 0, "1")
    Global $vAktion = StringTrimRight(StringTrimleft($vNewString, 1), StringLen($vNewString)-($vAktionEnde-1))
    Global $vNewString3 = StringTrimRight($vNewString2, StringLen($vNewString2)-$vAktionEnde+1)

    [/autoit][autoit][/autoit][autoit]

    if(_ArraySearch($vActionArray, $vNewString3) == '-1') Then
    _ArrayAdd($vActionArray, $vNewString3)
    EndIf

    [/autoit][autoit][/autoit][autoit]

    Global $vNewString4 = StringTrimLeft($vNewString2, StringLen($vNewString3)+3)
    Global $vNewString5 = StringTrimRight($vNewString4, StringLen($vNewString4)-(StringInStr($vNewString4, ")", 0, "1")-1))
    Global $vNewString6 = StringTrimLeft($vNewString2, StringInStr($vNewString2, ")", 0, "1"))
    Global $vNewString61 = StringSplit($vNewString6, "|")
    Global $vNewString7 = StringInStr($vNewString6, "|", 0, 1)
    if($vNewString7 == "0") Then
    Global $vNewString8 = ""
    Else
    Global $vNewString8 = StringTrimLeft($vNewString6, StringInStr($vNewString6, "|", 0, 1))
    EndIf

    [/autoit][autoit][/autoit][autoit]

    $aItems[$iI][0] = $vZeit
    $aItems[$iI][1] = $vNewString3
    $aItems[$iI][2] = $vNewString5
    $aItems[$iI][3] = StringReplace($vNewString61[1], "{clearInventory}", "")
    $aItems[$iI][4] = $vNewString8
    EndIf
    Next
    _GUICtrlListView_AddArray($iListview, $aItems)
    _GUICtrlListView_SetColumnWidth($iListview, 0, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 1, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 2, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 3, $LVSCW_AUTOSIZE)
    _GUICtrlListView_SetColumnWidth($iListview, 4, $LVSCW_AUTOSIZE)
    GUICtrlSetData($comboAction, _ArrayToString($vActionArray))
    _GUICtrlListView_Scroll($iListview, 0, $vFileSize*20)

    [/autoit][autoit][/autoit][autoit]

    EndFunc

    [/autoit]

    Jedoch fügt er trotzdem den Eintrag hinzu....

  • Das Skript ist mir ehrlich gesagt zu lang um es durchschauen zu wollen.
    Bekommst du das noch als Minimalbeispiel hin?

    Ansonsten wäre noch eine Beispieldatei sehr hilfreich. So kann man es bisher ja nicht testen.

    RG778
    Gute Idee.
    Eine andere Idee bei zu löschenden Einträgen aus Arrays ist es, das Array von hinten zum Anfang durchzugehen:

    Elemente eines Array in einer For-Schleife löschen
    [autoit]

    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $Array[] = [1,2,3,4,5,6,7,8,9,10]

    [/autoit] [autoit][/autoit] [autoit]

    For $i = UBound($Array) - 1 To 0 Step -1
    If Mod($i, 2) Then _ArrayDelete($Array, $i)
    Next

    [/autoit] [autoit][/autoit] [autoit]

    _ArrayDisplay($Array)

    [/autoit]


    Das Ganze hat dann auch einen zweiten Vorteil. Wenn man von hinten durchgeht verringert man die Anzahl der in ArrayDelete notwendigen Verschiebungen von Elementen.
    Es sollte also auch etwas schneller sein.

    Edit: Tschuldigung - Beispieldatei ist doch dabei.
    Der Grund für die Lücken in der Listview ist folgendes: Du arbeitest mit GUICtrlListView_AddArray().
    Dabei erstellst du ein neues Array mit der Größe der Gesamtdaten.
    Eingetragen wird aber nicht in jede Zeile - die bleibt einfach leer. Die Größe des Arrays bleibt weiterhin gleich - hast halt nur ein paar leere Zeilen dazwischen.
    Und diese Zeilen werden dann natürlich auch in die ListView eingetragen.
    Kurz: Nimm für jeden Eintrag _GUICtrlListView_AddItem() statt einem gesamten _GUICtrlListView_AddArray.

    Einmal editiert, zuletzt von AspirinJunkie (25. Juli 2014 um 08:44)