public new object Clone() { return(new CollidablePickupObject("clone - " + ID, //deep ActorType, //deep StatusType, //deep Transform3D.Clone() as Transform3D, //deep EffectParameters.Clone() as EffectParameters, //deep this.IVertexData, //shallow - its ok if objects refer to the same vertices CollisionPrimitive.Clone() as ICollisionPrimitive, //deep ObjectManager, //shallow - reference pickupParameters.Clone() as PickupParameters)); //deep }
public new object Clone() { CollidablePrimitiveObject primitive = new CollidablePrimitiveObject(ID, ActorType, StatusType, Transform3D.Clone() as Transform3D, EffectParameters.Clone() as EffectParameters, IVertexData.Clone() as IVertexData, CollisionPrimitive.Clone() as ICollisionPrimitive, ObjectManager); primitive.ControllerList.AddRange(GetControllerListClone()); return(primitive); }
public new object Clone() { MovingObstacleSpawner spawner = new MovingObstacleSpawner(ID, ActorType, StatusType, Transform3D.Clone() as Transform3D, EffectParameters.Clone() as EffectParameters, IVertexData.Clone() as IVertexData, CollisionPrimitive.Clone() as ICollisionPrimitive, ObjectManager); spawner.ControllerList.AddRange(GetControllerListClone()); return(spawner); }