Пример #1
0
        public void SetData(EntityInstanceData data)
        {
            EntityID = data.EntityID;
            Position = data.Position;

            var components = GetComponents <AEntityComponent>();

            foreach (var component in components)
            {
                component.SetData(data);
            }
        }
Пример #2
0
        public EntitiesData GetEntitiesData()
        {
            var result = new EntitiesData();

            foreach (var entity in entities)
            {
                var instanceData = new EntityInstanceData(System.Guid.NewGuid(), entity.prefab.PrefabID);

                instanceData.Position = new Vector2Int(entity.x, entity.y);

                result.Add(instanceData);
            }

            return(result);
        }
Пример #3
0
        public override void SetData(EntityInstanceData data)
        {
            var fighterData = data.GetComponentData <FighterComponentData>();

            if (fighterData != null)
            {
                HP = fighterData.HP;

                if (HP <= 0)
                {
                    var animator = GetComponentInChildren <Animator>();

                    if (animator != null)
                    {
                        animator.SetBool("Dead", true);
                    }
                }
            }
        }
Пример #4
0
        public EntityInstanceData GetData()
        {
            EntityInstanceData data = new EntityInstanceData(EntityID, PrefabID);

            data.Position = Position;

            var components = GetComponents <AEntityComponent>();

            foreach (var component in components)
            {
                var cData = component.GetData();

                if (cData != null)
                {
                    data.AddComponentData(cData);
                }
            }

            return(data);
        }
Пример #5
0
        public override void SetData(EntityInstanceData data)
        {
            var entityDatabase = FindObjectOfType <EntityDatabase>();

            var invData = data.GetComponentData <InventoryComponentData>();

            if (invData != null)
            {
                for (int i = 0; i < Capacity; i++)
                {
                    string id = invData.GetItem(i);

                    if (id != string.Empty)
                    {
                        var item = entityDatabase.GetInstance(new System.Guid(id));

                        Add(item.GetComponent <Item>());
                    }
                }
            }
        }
Пример #6
0
 public override void SetData(EntityInstanceData data)
 {
 }
Пример #7
0
 public abstract void SetData(EntityInstanceData data);