private void ApplyDye(IMultiDyeable multiDyeable, byte index) { string results; bool success = multiDyeable.attemptToDye(color, index); if (multiDyeable is IMultiDyeableCustomText customText) { results = customText.DisplayResults(color, index, success); } else { results = ResultsOfDyeText(multiDyeable, index, success); } CleanupAndReturn(results); }