Пример #1
0
    void CopyValue(EntityBase from, EntityBase to)
    {
        foreach (var item in from.m_compDict)
        {
            if (item.Value is MomentComponentBase)
            {
                MomentComponentBase mc = (MomentComponentBase)item.Value;

                MomentComponentBase copy = mc.DeepCopy();
                to.ChangeComp(item.Key, copy);
            }
        }
    }
Пример #2
0
    void CopyValue(ComponentBase[] from, EntityBase to)
    {
        for (int i = 0; i < from.Length; i++)
        {
            if (from[i] is MomentComponentBase)
            {
                MomentComponentBase mc = (MomentComponentBase)from[i];

                //MomentComponentBase copy = mc.DeepCopy();
                to.ChangeComp(mc.GetType().ToString(), mc);
            }
        }
    }
 public void SaveComp(EntityBase entity)
 {
     foreach (var item in entity.CompDict)
     {
         if (item.Value is MomentComponentBase)
         {
             MomentComponentBase mc = (MomentComponentBase)item.Value;
             compList.Add(mc.DeepCopy());
         }
         else
         {
             compList.Add(item.Value);
         }
     }
 }
Пример #4
0
    public void SaveComp(EntityBase entity)
    {
        compList = new List <ComponentBase>();

        foreach (var item in entity.comps)
        {
            if (item == null)
            {
                continue;
            }
            if (item is MomentComponentBase)
            {
                MomentComponentBase mc = (MomentComponentBase)item;
                compList.Add(mc.DeepCopy());
            }
            else
            {
                compList.Add(item);
            }
        }
    }