using System; using System.Collections.Generic; using System.IO; using Continentis.MainGame.Character; using SLSFramework.General; using SLSFramework.UModAssistance; using UnityEngine; using UnityEngine.Serialization; namespace Continentis.MainGame { public partial class MainGameManager : Singleton { public readonly HashSet elementTags = new HashSet() { "Wind", "Fire", "Water", "Earth", "Storm", "Light", "Darkness", "Physics" }; public BasePrefabs basePrefabs; } public partial class MainGameManager { public KeywordData keywordData; public CombatOrganizer organizer; public List playerHeroDataList; public List enemyDataList; } public partial class MainGameManager { protected override void Awake() { base.Awake(); keywordData = ScriptableObject.CreateInstance(); foreach (KeyValuePair pair in ModManager.Database[typeof(KeywordData)]) { KeywordData data = pair.Value as KeywordData; foreach (var keyword in data!.interpretedKeywords) { keywordData.interpretedKeywords.TryAdd(keyword.Key, keyword.Value); } } organizer = ModManager.GetAsset("Basic", "Basic_CombatOrganizer"); Debug.Log($"Organizer exists: {organizer != null}"); foreach (string character in organizer.playerCharacters) { Debug.Log($"Loading player character: {character}"); playerHeroDataList.Add(ModManager.GetData(character)); } foreach (string character in organizer.enemyCharacters) { Debug.Log($"Loading enemy character: {character}"); enemyDataList.Add(ModManager.GetData(character)); } } } public partial class MainGameManager { public static void GenerateInfoText(string content, CombatCharacterViewBase characterView, Color color = default, float size = 1) => Instance.basePrefabs.GenerateInfoText(content, characterView, color, size); } }