LocalizeTargetDesc_Type.cs 536 B

12345678910111213141516171819202122232425
  1. using System;
  2. using UnityEngine;
  3. namespace I2.Loc
  4. {
  5. public class LocalizeTargetDesc_Type<T, G> : LocalizeTargetDesc<G> where T : UnityEngine.Object where G : LocalizeTarget<T>
  6. {
  7. public override bool CanLocalize(Localize cmp)
  8. {
  9. return cmp.GetComponent<T>() != null;
  10. }
  11. public override ILocalizeTarget CreateTarget(Localize cmp)
  12. {
  13. T component = cmp.GetComponent<T>();
  14. if (component == null)
  15. {
  16. return null;
  17. }
  18. G g = ScriptableObject.CreateInstance<G>();
  19. g.mTarget = component;
  20. return g;
  21. }
  22. }
  23. }