5 [RequiredByCorePackage]
12 Identifier elemName =
new Identifier(parentElement.
Name.ToString());
15 foreach (var element
in parentElement.
Elements())
20 else if (elemName ==
"randomevents")
22 foreach (var element
in parentElement.
Elements())
27 else if (elemName ==
"eventprefabs")
29 foreach (var subElement
in parentElement.
Elements())
31 if (subElement.NameAsIdentifier() ==
"traitorevent")
43 else if (elemName ==
"eventsprites")
46 foreach (var subElement
in parentElement.
Elements())
48 var prefab =
new EventSprite(subElement,
this);
49 EventSprite.Prefabs.Add(prefab, overriding);
53 else if (elemName ==
"eventset")
55 var prefab =
new EventSet(parentElement,
this);
58 else if (elemName ==
"clear")
63 EventSprite.Prefabs.AddOverrideFile(
this);
68 DebugConsole.ThrowError($
"RandomEventsFile: Invalid {GetType().Name} element: {parentElement.Name} in {Path}",
75 XDocument doc = XMLExtensions.TryLoadXml(Path);
76 if (doc ==
null) {
return; }
87 EventSprite.Prefabs.RemoveByFile(
this);
91 public override void Sort()
96 EventSprite.Prefabs.SortAll();
Base class for content file types, which are loaded from filelist.xml via reflection....
ContentPackage? ContentPackage
IEnumerable< ContentXElement > Elements()
static readonly PrefabCollection< EventPrefab > Prefabs
Event sets are sets of random events that occur within a level (most commonly, monster spawns and scr...
static readonly PrefabCollection< EventSet > Prefabs
void LoadFromXElement(ContentXElement parentElement, bool overriding)
override void UnloadFile()
RandomEventsFile(ContentPackage contentPackage, ContentPath path)