Ejemplo n.º 1
0
        private void Reset()
        {
            List <Type> partsType           = new List <Type>();
            var         componentDictionary = new Dictionary <Type, Object>();

            WeaponSystemUtility.GetPartTypes(this, gameObject.transform, componentDictionary, weaponLogicObjectList);
        }
Ejemplo n.º 2
0
 public override void OnInspectorGUI()
 {
     base.OnInspectorGUI();
     if (GUILayout.Button("Get required components"))
     {
         WeaponSystemUtility.FillRequirements <WeaponRequireComponentAttribute>(weapon);
     }
 }
Ejemplo n.º 3
0
        protected virtual void Awake()
        {
            logicListField = WeaponSystemUtility.GetAllFieldsWithAttribute(this.GetType(), typeof(LogicListAttribute));

            for (int i = 0; i < weaponLogicObjectList.Count; i++)
            {
                objectFieldList.Add(new ObjectFields <InitializeWeaponComponentAttribute>(weaponLogicObjectList[i]));
            }
            objectFieldList.Add(new ObjectFields <InitializeWeaponComponentAttribute>(this));

            WeaponSystemUtility.FillWeaponLogicList(this, logicListField, weaponLogicObjectList.ToArray());
        }
Ejemplo n.º 4
0
        public virtual void Initialize(params object[] data)
        {
            for (int i = 0; i < objectFieldList.Count; i++)
            {
                WeaponSystemUtility.FillListOfFields(objectFieldList[i].FieldsOwner, objectFieldList[i].FieldsToInitialize, data);
            }

            for (int i = 0; i < _weaponInitialization.Count; i++)
            {
                _weaponInitialization[i].Initialize(data);
            }

            WeaponSystemUtility.FillWeaponLogicList(this, logicListField, data);
        }