public override LinkerMod CreateUI() { for (int i = 0; i < buffer.Count; i++) { if (buffer[i].index < 0) { var item = buffer[i]; buffer.RemoveAt(i); return(item); } } LinkerMod mod = new LinkerMod(); ModelElement me = new ModelElement(); me.Load(model.ModData); mod.main = me; mod.UI = me.ComponentReflection <T>(); return(mod); }