public static void UpdateRune(Rune rune, bool keepLocked = true, Monster newAssigned = null) { var r = Data.GetRune(rune.Id); if (r == null) { return; } // TODO: modify stats and trigger callbacks rune.CopyTo(r, keepLocked, newAssigned); //r.Assigned?.Current.AddRune(r); Data.IsModified = true; OnRuneUpdate?.Invoke(r, false); }