Skip to content

Commit 8882058

Browse files
committed
fix: various item database name fixes
fix: removed unused import in main.dart feat: reimplemented file importing logic of EnchantmentsManager
1 parent 5b797c5 commit 8882058

File tree

9 files changed

+35
-33
lines changed

9 files changed

+35
-33
lines changed

assets/enchantments/medium.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
tier = "medium"
2+
13
[shockingStrike]
24
name = "Shocking Strike"
35
description = "This enchantment is used only by the raid-bosses Tenebris, Banshee, Gatekeeper, and Power Mode Megalith. Currently has no known weapons that work with this enchantment, the game's Anti-Cheat instantly discards it."

assets/enchantments/mythical.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
tier = "mythical"
2+
13
[stone_fetters]
24
name = "Stone Fetters"
35
id = "PERK_DRAGON_SET_STONE"

assets/enchantments/perk.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
tier = "perk"
2+
13
# For the rest of perks
24
[invisibility]
35
name = "Invisibility"

assets/enchantments/simple.toml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
tier = "simple"
2+
13
[critical_protection]
24
name = "Critical Protection"
35
description = "This enchantment is currently available to only two helms: both versions of Fur-Ear Flap helm from New Year 2018 and 2021. The helm Iron Mask which was obtainable from the Starter Pack prior to version 1.6.1 was also initially enchanted with Critical Protection. This enchantment can still be applied to the listed helmets with Stalker. For the rest of helms and armor, it is being removed by Anti-Cheat system."

assets/item_database/armor.toml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@ enchantments = [ "damage_absorption",]
254254
name = "Outworld Vest"
255255

256256
[ARMOR_FACELESS_TUNIC]
257-
name = "Faceless's Tunic"
257+
name = "Faceless Tunic"
258258

259259
[ARMOR_MEMBRANE_CUIRASS]
260260
name = "Membrane Cuirass"
@@ -431,7 +431,7 @@ name = "Candy's Body"
431431
traits = [ "unobtainable",]
432432

433433
[BODY_FEAR]
434-
name = "Tenebris's Body"
434+
name = "Tenebris' Body"
435435
traits = [ "unobtainable",]
436436

437437
[BODY_HUNTER]
@@ -494,7 +494,7 @@ description = "Wasp seems to wear a highly-stylized feminine Snake Harness, with
494494
traits = [ "unobtainable",]
495495

496496
[ARMOR_HUNTRESS]
497-
name = "Huntress's Armor"
497+
name = "Widow's Armor"
498498
description = "Widow seems to wear a highly-stylized feminine Snake Harness, which has draping sleeves and a skirt."
499499
traits = [ "unobtainable",]
500500

@@ -504,7 +504,7 @@ description = "Shogun wears a type of Centurion Mail, which is bigger in size, h
504504
traits = [ "unobtainable",]
505505

506506
[BODY_FUTURE_MAY]
507-
name = "Future May's Body"
507+
name = "Blackness' Body"
508508
traits = [ "unobtainable",]
509509

510510
[BODY_TITAN]
@@ -552,7 +552,7 @@ name = ""
552552
traits = [ "unobtainable",]
553553

554554
[ARMOR_BIG_SHROUD]
555-
name = ""
555+
name = "Shroud's Armor"
556556
description = "Shroud wears an armor that resembles an enlarged version of Half-Life Armor."
557557
traits = [ "unobtainable",]
558558

@@ -583,11 +583,11 @@ name = "Megalith's Body"
583583
traits = [ "unobtainable",]
584584

585585
[BODY_FUNGUS]
586-
name = "Fungus's Body"
586+
name = "Fungus' Body"
587587
traits = [ "unobtainable",]
588588

589589
[BODY_FISH]
590-
name = "Fish's Body"
590+
name = "Vortex's Body"
591591
traits = [ "unobtainable",]
592592

593593
[BODY_HUNGER]
@@ -619,11 +619,11 @@ name = "Whisper's Body"
619619
traits = [ "unobtainable",]
620620

621621
[BODY_PRISTESS]
622-
name = "Pristess's Body"
622+
name = "Pristess' Body"
623623
traits = [ "unobtainable",]
624624

625625
[ARMOR_HYPERION]
626-
name = "Cronos's Armor"
626+
name = "Cronos' Armor"
627627
traits = [ "unobtainable",]
628628

629629
[ARMOR_XMAS14_SANTA]

assets/item_database/helm.toml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ name = "Navigator's Breath Mask"
263263
enchantments = [ "damage_return",]
264264

265265
[HELM_FACELESS_MASK]
266-
name = "Faceless's Mask"
266+
name = "Faceless Mask"
267267

268268
[HELM_VISOR]
269269
name = "Elders' Visor"
@@ -470,7 +470,7 @@ name = "Street Tempest"
470470
traits = [ "summer_fest_25",]
471471

472472
[HEAD_FEAR]
473-
name = "Tenebris's Head"
473+
name = "Tenebris' Head"
474474
traits = [ "unobtainable",]
475475

476476
[BERSTUUK_HEAD]
@@ -584,11 +584,11 @@ name = "Megalith's Head"
584584
traits = [ "unobtainable",]
585585

586586
[HEAD_FUNGUS]
587-
name = "Fungus's Head"
587+
name = "Fungus' Head"
588588
traits = [ "unobtainable",]
589589

590590
[HEAD_FISH]
591-
name = "Fish's Head"
591+
name = "Vortex's Head"
592592
traits = [ "unobtainable",]
593593

594594
[HEAD_FATUM]
@@ -665,7 +665,7 @@ name = "Brick's Head"
665665
traits = [ "unobtainable",]
666666

667667
[HEAD_HYPERION]
668-
name = "Cronos's Head"
668+
name = "Cronos' Head"
669669
traits = [ "unobtainable",]
670670

671671
[HEAD_INVISIBLE]
@@ -677,7 +677,7 @@ name = "Raksha's Head"
677677
traits = [ "unobtainable",]
678678

679679
[HEAD_PRISTESS]
680-
name = "Pristess's Head"
680+
name = "Pristess' Head"
681681
traits = [ "unobtainable",]
682682

683683
[HEAD_FOREST_SPIRIT]

assets/item_database/ranged.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,7 @@ traits = [ "offer", "summer21",]
335335
enchantments = [ "lifesteal",]
336336

337337
[RANGED_BP_S5_TIME_SHIFTER]
338-
name = "Chronos's Razor"
338+
name = "Chronos' Razor"
339339
traits = [ "set_chronos", "xmas22",]
340340
enchantments = [ "time_shift",]
341341

lib/logic/enchantment.dart

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616
* along with this program. If not, see <https://www.gnu.org/licenses/>.
1717
*/
1818

19+
import 'dart:convert';
20+
1921
import 'package:flutter/services.dart';
2022
import 'package:stalker/logic/equipment_type.dart';
2123
import 'package:toml/toml.dart';
@@ -24,19 +26,6 @@ import 'package:xml/xml.dart';
2426
enum EnchantmentTier { simple, medium, mythical, perk }
2527

2628
extension EnchantmentTierExtension on EnchantmentTier {
27-
String get fileName {
28-
switch (this) {
29-
case EnchantmentTier.simple:
30-
return "simple";
31-
case EnchantmentTier.medium:
32-
return "medium";
33-
case EnchantmentTier.mythical:
34-
return "mythical";
35-
case EnchantmentTier.perk:
36-
return "perk";
37-
}
38-
}
39-
4029
int get color {
4130
switch (this) {
4231
case EnchantmentTier.simple:
@@ -121,10 +110,16 @@ class EnchantmentsManager {
121110

122111
static Future<void> loadFromFiles() async {
123112
enchantments.clear();
124-
for (final tier in EnchantmentTier.values) {
125-
final tomlString = await rootBundle
126-
.loadString("assets/enchantments/${tier.fileName}.toml");
113+
final manifestContent = await rootBundle.loadString('AssetManifest.json');
114+
final Map<String, dynamic> manifestMap = json.decode(manifestContent);
115+
116+
for (final file in manifestMap.keys
117+
.where((key) => key.startsWith("assets/enchantments"))
118+
.toList()) {
119+
final tomlString = await rootBundle.loadString(file);
127120
final tomlMap = TomlDocument.parse(tomlString).toMap();
121+
final tier = EnchantmentTier.values.byName(tomlMap["tier"]);
122+
tomlMap.remove("tier");
128123
enchantments.addAll(tomlMap.entries.map((e) {
129124
final id = e.key;
130125
final data = e.value as Map<String, dynamic>;

lib/main.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818

1919
import 'package:dynamic_color/dynamic_color.dart';
2020
import 'package:flutter/material.dart';
21-
import 'package:flutter/services.dart';
2221
import 'package:log_plus/log_plus.dart';
2322
import 'package:shared_preferences/shared_preferences.dart';
2423
import 'package:signals/signals_flutter.dart';

0 commit comments

Comments
 (0)