//------------------------------------------------------------------------------ // // This code was generated by a tool. // Runtime Version:4.0.30319.42000 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // //------------------------------------------------------------------------------ using Articy.Touhou; using Articy.Touhou.Features; using Articy.Unity; using Articy.Unity.Interfaces; using System; using System.Collections; using System.Collections.Generic; using UnityEngine; namespace Articy.Touhou.Templates { [Serializable()] public class BuffEffectTemplate : IArticyBaseObject, IPropertyProvider { [SerializeField()] private ArticyValueBuffEffectAttackFeature mBuffEffectAttack = new ArticyValueBuffEffectAttackFeature(); [SerializeField()] private ArticyValueBuffEffectFeature mBuffEffect = new ArticyValueBuffEffectFeature(); [SerializeField()] private UInt64 mOwnerId; [SerializeField()] private UInt32 mOwnerInstanceId; public Articy.Touhou.Features.BuffEffectAttackFeature BuffEffectAttack { get { return mBuffEffectAttack.GetValue(); } set { mBuffEffectAttack.SetValue(value); } } public Articy.Touhou.Features.BuffEffectFeature BuffEffect { get { return mBuffEffect.GetValue(); } set { mBuffEffect.SetValue(value); } } public UInt64 OwnerId { get { return mOwnerId; } set { mOwnerId = value; BuffEffectAttack.OwnerId = value; BuffEffect.OwnerId = value; } } public UInt32 OwnerInstanceId { get { return mOwnerInstanceId; } set { mOwnerInstanceId = value; BuffEffectAttack.OwnerInstanceId = value; BuffEffect.OwnerInstanceId = value; } } private void CloneProperties(object aClone, Articy.Unity.ArticyObject aFirstClassParent) { Articy.Touhou.Templates.BuffEffectTemplate newClone = ((Articy.Touhou.Templates.BuffEffectTemplate)(aClone)); if ((BuffEffectAttack != null)) { newClone.BuffEffectAttack = ((Articy.Touhou.Features.BuffEffectAttackFeature)(BuffEffectAttack.CloneObject(newClone, aFirstClassParent))); } if ((BuffEffect != null)) { newClone.BuffEffect = ((Articy.Touhou.Features.BuffEffectFeature)(BuffEffect.CloneObject(newClone, aFirstClassParent))); } newClone.OwnerId = OwnerId; } public object CloneObject(object aParent, Articy.Unity.ArticyObject aFirstClassParent) { Articy.Touhou.Templates.BuffEffectTemplate clone = new Articy.Touhou.Templates.BuffEffectTemplate(); CloneProperties(clone, aFirstClassParent); return clone; } public virtual bool IsLocalizedPropertyOverwritten(string aProperty) { return false; } #region property provider interface public void setProp(string aProperty, object aValue) { int featureIndex = aProperty.IndexOf('.'); if ((featureIndex != -1)) { string featurePath = aProperty.Substring(0, featureIndex); string featureProperty = aProperty.Substring((featureIndex + 1)); if ((featurePath == "BuffEffectAttack")) { BuffEffectAttack.setProp(featureProperty, aValue); } if ((featurePath == "BuffEffect")) { BuffEffect.setProp(featureProperty, aValue); } } } public Articy.Unity.Interfaces.ScriptDataProxy getProp(string aProperty) { int featureIndex = aProperty.IndexOf('.'); if ((featureIndex != -1)) { string featurePath = aProperty.Substring(0, featureIndex); string featureProperty = aProperty.Substring((featureIndex + 1)); if ((featurePath == "BuffEffectAttack")) { return BuffEffectAttack.getProp(featureProperty); } if ((featurePath == "BuffEffect")) { return BuffEffect.getProp(featureProperty); } } return null; } #endregion } }