public unsafe override void LoadToObject(FakeStruct fake, Component game)
        {
            CircleColliderData *data = (CircleColliderData *)fake.ip;
            var obj = game.GetComponent <CircleCollider2D>();

            if (obj == null)
            {
                return;
            }
            obj.offset          = data->offset;
            obj.usedByComposite = data->usedByComposite;
            obj.usedByEffector  = data->usedByEffector;
            obj.isTrigger       = data->isTrigger;
            obj.density         = data->density;
            obj.radius          = data->radius;
            string mat = fake.buffer.GetData(data->sharedMaterial) as string;

            if (mat != null)
            {
                obj.sharedMaterial = new PhysicsMaterial2D(mat);
            }
        }
Exemple #2
0
        public static unsafe FakeStruct LoadFromObject(Component com, DataBuffer buffer)
        {
            var ae = com as CircleCollider2D;

            if (ae == null)
            {
                return(null);
            }
            FakeStruct          fake = new FakeStruct(buffer, BoxColliderData.ElementSize);
            CircleColliderData *data = (CircleColliderData *)fake.ip;

            if (ae.sharedMaterial != null)
            {
                data->sharedMaterial = buffer.AddData(ae.sharedMaterial.name);
            }
            data->offset          = ae.offset;
            data->usedByComposite = ae.usedByComposite;
            data->usedByEffector  = ae.usedByEffector;
            data->isTrigger       = ae.isTrigger;
            data->density         = ae.density;
            data->radius          = ae.radius;
            return(fake);
        }