Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Is it possible to create a function that clones an entity at runtime?

I’d like to add this ability to my utility belt, but I can’t think of any good ways to make it happen. The closest I’ve been able to get is instantiating a new entity in the active scene, and then assigning it a type. However, I’d like to clone an entity in its current state including all the components. Is such a thing possible in craft 3? Thanks!


  • Posts: 327

    Nothing built-in by the look of it, sorry.

  • JohnJohn Admin Mod
    Posts: 708

    @arismoko Cloning isn't possible at the moment but it is something that I've been working on in Codea 4, which uses a new entity component system. This is mainly to support things like prefabs, searialisation, etc...

  • Posts: 35

    My own entity component system wrapper is coming along fairly well, so I’m really happy to see your taking Codea in this direction! I think it’s half possible currently with just lua and some clever uses of tables, but i’d rather wait for a proper solution.

  • edited January 12 Posts: 239

    in my own system, cloning would essentially be creating a new GameObject with the same components as the other one, pulled from the data source that instantiated the original, if i needed to copy the state i would loop through the states of each component using the other GameObject as the reference and set them

  • Posts: 35
    I just use a table to define the template object, and then create a function to spawn and apply the variables to the spawner/emitter. This works really well for particles, but not much more than that.
Sign In or Register to comment.