PrefabMessages.cs 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #if UNITY_EDITOR
  2. using UnityEngine;
  3. namespace O3DWB
  4. {
  5. public class PrefabWasTransferredToCategoryMessage : Message
  6. {
  7. #region Private Variables
  8. private PrefabCategory _sourceCategory;
  9. private PrefabCategory _destinationCategory;
  10. private Prefab _prefab;
  11. #endregion
  12. #region Public Properties
  13. public PrefabCategory SourceCategory { get { return _sourceCategory; } }
  14. public PrefabCategory DestinationCategory { get { return _destinationCategory; } }
  15. public Prefab Prefab { get { return _prefab; } }
  16. #endregion
  17. #region Public Properties
  18. public PrefabWasTransferredToCategoryMessage(Prefab prefab, PrefabCategory sourceCategory, PrefabCategory destinationCategory)
  19. : base(MessageType.PrefabWasTransferredToCategory)
  20. {
  21. _sourceCategory = sourceCategory;
  22. _destinationCategory = destinationCategory;
  23. _prefab = prefab;
  24. }
  25. #endregion
  26. #region Public Static Functions
  27. public static void SendToInterestedListeners(Prefab prefab, PrefabCategory sourceCategory, PrefabCategory destinationCategory)
  28. {
  29. var message = new PrefabWasTransferredToCategoryMessage(prefab, sourceCategory, destinationCategory);
  30. MessageListenerDatabase.Instance.SendMessageToInterestedListeners(message);
  31. }
  32. #endregion
  33. }
  34. public class PrefabWasRemovedFromCategoryMessage : Message
  35. {
  36. #region Private Variables
  37. private PrefabCategory _prefabCategory;
  38. private Prefab _prefabWhichWasRemoved;
  39. #endregion
  40. #region Public Properties
  41. public PrefabCategory PrefabCategory { get { return _prefabCategory; } }
  42. public Prefab PrefabWhichWasRemoved { get { return _prefabWhichWasRemoved; } }
  43. #endregion
  44. #region Public Properties
  45. public PrefabWasRemovedFromCategoryMessage(PrefabCategory prefabCategory, Prefab prefabWhichWasRemoved)
  46. : base(MessageType.PrefabWasRemovedFromCategory)
  47. {
  48. _prefabCategory = prefabCategory;
  49. _prefabWhichWasRemoved = prefabWhichWasRemoved;
  50. }
  51. #endregion
  52. #region Public Static Functions
  53. public static void SendToInterestedListeners(PrefabCategory prefabCategory, Prefab prefabWhichWasRemoved)
  54. {
  55. var message = new PrefabWasRemovedFromCategoryMessage(prefabCategory, prefabWhichWasRemoved);
  56. MessageListenerDatabase.Instance.SendMessageToInterestedListeners(message);
  57. }
  58. #endregion
  59. }
  60. public class NewPrefabWasActivatedMessage : Message
  61. {
  62. #region Private Variables
  63. private Prefab _newActivePrefab;
  64. #endregion
  65. #region Public Properties
  66. public Prefab NewActivePrefab { get { return _newActivePrefab; } }
  67. #endregion
  68. #region Constructors
  69. public NewPrefabWasActivatedMessage(Prefab newActivePrefab)
  70. : base(MessageType.NewPrefabWasActivated)
  71. {
  72. _newActivePrefab = newActivePrefab;
  73. }
  74. #endregion
  75. #region Public Static Functions
  76. public static void SendToInterestedListeners(Prefab newActivePrefab)
  77. {
  78. var message = new NewPrefabWasActivatedMessage(newActivePrefab);
  79. MessageListenerDatabase.Instance.SendMessageToInterestedListeners(message);
  80. }
  81. #endregion
  82. }
  83. }
  84. #endif