//------------------------------------------------------------------------------ // // 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 BulletTemplate : IArticyBaseObject, IPropertyProvider { [SerializeField()] private ArticyValueBulletFeature mBullet = new ArticyValueBulletFeature(); [SerializeField()] private ArticyValueEntityParamViewFeature mEntityParamView = new ArticyValueEntityParamViewFeature(); [SerializeField()] private ArticyValueEntityParamBattleFeature mEntityParamBattle = new ArticyValueEntityParamBattleFeature(); [SerializeField()] private ArticyValueEntityParamFeature mEntityParam = new ArticyValueEntityParamFeature(); [SerializeField()] private UInt64 mOwnerId; [SerializeField()] private UInt32 mOwnerInstanceId; public Articy.Touhou.Features.BulletFeature Bullet { get { return mBullet.GetValue(); } set { mBullet.SetValue(value); } } public Articy.Touhou.Features.EntityParamViewFeature EntityParamView { get { return mEntityParamView.GetValue(); } set { mEntityParamView.SetValue(value); } } public Articy.Touhou.Features.EntityParamBattleFeature EntityParamBattle { get { return mEntityParamBattle.GetValue(); } set { mEntityParamBattle.SetValue(value); } } public Articy.Touhou.Features.EntityParamFeature EntityParam { get { return mEntityParam.GetValue(); } set { mEntityParam.SetValue(value); } } public UInt64 OwnerId { get { return mOwnerId; } set { mOwnerId = value; Bullet.OwnerId = value; EntityParamView.OwnerId = value; EntityParamBattle.OwnerId = value; EntityParam.OwnerId = value; } } public UInt32 OwnerInstanceId { get { return mOwnerInstanceId; } set { mOwnerInstanceId = value; Bullet.OwnerInstanceId = value; EntityParamView.OwnerInstanceId = value; EntityParamBattle.OwnerInstanceId = value; EntityParam.OwnerInstanceId = value; } } private void CloneProperties(object aClone, Articy.Unity.ArticyObject aFirstClassParent) { Articy.Touhou.Templates.BulletTemplate newClone = ((Articy.Touhou.Templates.BulletTemplate)(aClone)); if ((Bullet != null)) { newClone.Bullet = ((Articy.Touhou.Features.BulletFeature)(Bullet.CloneObject(newClone, aFirstClassParent))); } if ((EntityParamView != null)) { newClone.EntityParamView = ((Articy.Touhou.Features.EntityParamViewFeature)(EntityParamView.CloneObject(newClone, aFirstClassParent))); } if ((EntityParamBattle != null)) { newClone.EntityParamBattle = ((Articy.Touhou.Features.EntityParamBattleFeature)(EntityParamBattle.CloneObject(newClone, aFirstClassParent))); } if ((EntityParam != null)) { newClone.EntityParam = ((Articy.Touhou.Features.EntityParamFeature)(EntityParam.CloneObject(newClone, aFirstClassParent))); } newClone.OwnerId = OwnerId; } public object CloneObject(object aParent, Articy.Unity.ArticyObject aFirstClassParent) { Articy.Touhou.Templates.BulletTemplate clone = new Articy.Touhou.Templates.BulletTemplate(); 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 == "Bullet")) { Bullet.setProp(featureProperty, aValue); } if ((featurePath == "EntityParamView")) { EntityParamView.setProp(featureProperty, aValue); } if ((featurePath == "EntityParamBattle")) { EntityParamBattle.setProp(featureProperty, aValue); } if ((featurePath == "EntityParam")) { EntityParam.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 == "Bullet")) { return Bullet.getProp(featureProperty); } if ((featurePath == "EntityParamView")) { return EntityParamView.getProp(featureProperty); } if ((featurePath == "EntityParamBattle")) { return EntityParamBattle.getProp(featureProperty); } if ((featurePath == "EntityParam")) { return EntityParam.getProp(featureProperty); } } return null; } #endregion } }