Esempio n. 1
0
 private void Awake()
 {
     // clone()을 만들어서 초기값을 저장해둠
     InstantEffectInitialValue     = InstantEffect.Clone(instantEffect);
     PersistEffectInitialValue     = PersistEffect.Clone(persistEffect);
     ConditionalEffectInitialValue = ConditionalEffect.Clone(conditionalEffect);
 }
Esempio n. 2
0
 public static CUseEffect Clone(CUseEffect origin)
 {
     return(new CUseEffect
     {
         IsUseEffectName = origin.IsUseEffectName,
         EffectName = origin.EffectName,
         instantEffect = InstantEffect.Clone(origin.instantEffect),
         persistEffect = PersistEffect.Clone(origin.persistEffect),
         conditionalEffect = ConditionalEffect.Clone(origin.conditionalEffect),
     });
 }
Esempio n. 3
0
 public PersistEffect Copy(PersistEffect origin)
 {
     time = origin.time;
     id   = origin.id;
     TickHpChange.Copy(origin.TickHpChange);
     TickPeriod      = origin.TickPeriod;
     changeAbilities = origin.changeAbilities;
     increaseStack   = origin.increaseStack;
     maxStack        = origin.maxStack;
     stackAccumulateEffect.Copy(origin.stackAccumulateEffect);
     return(this);
 }
Esempio n. 4
0
 public static PersistEffect Clone(PersistEffect origin)
 {
     return(new PersistEffect
     {
         time = origin.time,
         id = origin.id,
         TickHpChange = HpChange.Clone(origin.TickHpChange),
         TickPeriod = origin.TickPeriod,
         // 주의 - 능력치 버프는 강화되는 일 없으리라 생각되므로 얕은 복사 사용
         changeAbilities = origin.changeAbilities,
         increaseStack = origin.increaseStack,
         maxStack = origin.maxStack,
         stackAccumulateEffect = StackAccumulateEffect.Clone(origin.stackAccumulateEffect),
     });
 }