| | 1 | | using System; |
| | 2 | |
|
| | 3 | | namespace DCL.ECSComponents |
| | 4 | | { |
| | 5 | | public class AvatarModifierFactory |
| | 6 | | { |
| | 7 | | private IAvatarModifier hideModifier; |
| | 8 | | private IAvatarModifier hidePassportModifier; |
| | 9 | |
|
| | 10 | | public IAvatarModifier GetOrCreateAvatarModifier(AvatarModifier modifier) |
| | 11 | | { |
| | 12 | | switch (modifier) |
| | 13 | | { |
| | 14 | | case AvatarModifier.HideAvatars: |
| 2 | 15 | | if (hideModifier == null) |
| 2 | 16 | | hideModifier = new HideAvatarsModifier(); |
| 2 | 17 | | return hideModifier; |
| | 18 | | break; |
| | 19 | | case AvatarModifier.DisablePassports: |
| 0 | 20 | | if (hidePassportModifier == null) |
| 0 | 21 | | hidePassportModifier = new HidePassportModifier(); |
| 0 | 22 | | return hidePassportModifier; |
| | 23 | | default: |
| 0 | 24 | | return null; |
| | 25 | | } |
| | 26 | | } |
| | 27 | |
|
| | 28 | | public void Dispose() |
| | 29 | | { |
| 0 | 30 | | hideModifier = null; |
| 0 | 31 | | hidePassportModifier = null; |
| 0 | 32 | | } |
| | 33 | | } |
| | 34 | | } |