I had a working entity about a year ago, and recently tried it out after upgrading to Core, and it seems to have broken with an inscrutable error message.
System.ArgumentException: Undefined resource string ID:0x80070057
at Celeste.Mod.ClonazepamHelper.Entities.OverlayManager.Unload(String tag)
at Celeste.Mod.ClonazepamHelper.Entities.FestivalController.<>c__DisplayClass8_0.<TransitionRoutine>b__2()
at Monocle.Scene.AfterUpdate()
at DMD<System.Void Monocle.Engine:Update(Microsoft.Xna.Framework.GameTime)>(Engine this, GameTime gameTime)
at ExtendedVariants.Variants.NoFreezeFrames.onEngineUpdate(orig_Update orig, Engine self, GameTime gameTime)
at Hook<System.Void ExtendedVariants.Variants.NoFreezeFrames::onEngineUpdate(On.Monocle.Engine+orig_Update,Monocle.Engine,Microsoft.Xna.Framework.GameTime)>(Engine , GameTime )
at SyncProxy<System.Void Monocle.Engine:Update(Microsoft.Xna.Framework.GameTime)>(Engine , GameTime )
at Celeste.Celeste.Update(GameTime gameTime)
at Microsoft.Xna.Framework.Game.Tick()
at Microsoft.Xna.Framework.Game.RunLoop()
at Microsoft.Xna.Framework.Game.Run()
at Monocle.Engine.RunWithLogging()
The Unload function is as follows:
public static void Unload(string tag) {
if (tag == null) {
throw new ArgumentException("Tag must not be null"); }
var player = Engine.Scene.Tracker.GetEntity<Player>();
foreach (var entity in TaggedEntities(tag)) {
if (entity is Trigger t && t.PlayerIsInside && player != null) {
t.OnLeave(player);
player.triggersInside.Remove(t);
}
entity.RemoveSelf();
}
}
Which is itself being called by: this.Level.OnEndOfFrame += () => OverlayManager.Unload(oldRoom);
Not sure what to make of this error message. Any pointers?



?